23
ELSEVIER Fuzzy Sets and Systems 85 (1997) 131-153 FU2ZY sets and systems Fuzzy routing Wolfgang Arnold a, Hans Hellendoorn b,*, Rudolf Seising a0 *, Christoph Thomas b, Andreas Weitzel a a University of Federal Armed Forces Munich, Faculty Jbr Informatics, Werner-Heisenberg-Wey 39, D-85577 Neubiberq, Germany bSiemens AG, Corporate Research and Development. D-81730 Munich, Germany Received October 1995 Abstract Most older routing strategies are analytical in nature and therefore can, due to complexity reasons, only consider one or two input parameters. During the last years there is a general tendency to take into account more parameters using non- analytic methods to master the complexity. Fuzzy logic is an excellent heuristic method to come to grips with the complexity problem in communication and computer networks. Two examples show the use of fuzzy logic to routing; first we will show the use of explicitly available information in the form of routing tables, then we will show the use of implicitly available information in the form of experience and heuristic knowledge in distributed networks. Keywords." Fuzzy set theory; Network routing; Communication networks; Fuzzy decision analysis 1. Introduction In this paper we introduce Zadeh's fuzzy set theory [33] in the field of computer and telecommuni- cation networks. Fuzzy theory is particularly appropri- ate to deal with linguistic notions and uncertainty and enables inferencing of linguistic variables in rule based systems. Fuzzy methods have been very successful in the areas of intelligent control, data analysis, multi- criteria analysis, decision support, etc. A recent paper proposed to use fuzzy models in the areas of telecom- munications, network management and queueing theory [7]. In this paper we focus on an optimization problem, viz., the routing problem in communica- tion networks. This problem is encountered in every network that does not allow the sender to reach the * Corresponding authors. E-mail: rudolfiseising@unibwmuench- en.de; [email protected]. receiver in a single transmission hop but, instead, must traverse a path of intermediate links. There- fore the routing problem is one of the archetypical combinatorial optimization problems. In general, computer networks offer different routes to a given destination. Traditional routing techniques are based on graph-theoretical solutions which find the shortest path connecting a source node to a destina- tion node. In ARPANET, the predecessor of INTER- NET, the routing algorithm was a distributed adaptive and asynchronous distance vector algorithm which is based on the Bellman-Ford algorithm [ 17]; in 1979 it was replaced by a link state algorithm based on the Dijkstra original algorithm [ 11 ]. Today in INTERNET a routing algorithm called RIP (Routing Information Protocol) is used. With regard to broadband networks the use of traditional routing techniques may be too simplistic because all conventional routing strategies are based 0165-0114/97/$17.00 Copyright (~) 1997 Elsevier Science B.V. All rights reserved SSDI 01 65-0114(95)00357-6

Fuzzy routing

Embed Size (px)

Citation preview

E L S E V I E R Fuzzy Sets and Systems 85 (1997) 131-153

FU2ZY sets and systems

Fuzzy routing W o l f g a n g A r n o l d a, H a n s H e l l e n d o o r n b,*, R u d o l f S e i s i n g a0 *,

C h r i s t o p h T h o m a s b, A n d r e a s W e i t z e l a

a University of Federal Armed Forces Munich, Faculty Jbr Informatics, Werner-Heisenberg-Wey 39, D-85577 Neubiberq, Germany bSiemens AG, Corporate Research and Development. D-81730 Munich, Germany

Received October 1995

Abstract

Most older routing strategies are analytical in nature and therefore can, due to complexity reasons, only consider one or two input parameters. During the last years there is a general tendency to take into account more parameters using non- analytic methods to master the complexity. Fuzzy logic is an excellent heuristic method to come to grips with the complexity problem in communication and computer networks. Two examples show the use of fuzzy logic to routing; first we will show the use of explicitly available information in the form of routing tables, then we will show the use of implicitly available information in the form of experience and heuristic knowledge in distributed networks.

Keywords." Fuzzy set theory; Network routing; Communication networks; Fuzzy decision analysis

1. Introduction

In this paper we introduce Zadeh 's fuzzy set theory [33] in the field of computer and telecommuni- cation networks. Fuzzy theory is particularly appropri- ate to deal with linguistic notions and uncertainty and enables inferencing of linguistic variables in rule based systems. Fuzzy methods have been very successful in the areas of intelligent control, data analysis, multi- criteria analysis, decision support, etc. A recent paper proposed to use fuzzy models in the areas of telecom- munications, network management and queueing theory [7]. In this paper we focus on an optimization problem, viz., the routing problem in communica- tion networks. This problem is encountered in every network that does not allow the sender to reach the

* Corresponding authors. E-mail: rudolfiseising@unibwmuench- en.de; [email protected].

receiver in a single transmission hop but, instead, must traverse a path of intermediate links. There- fore the routing problem is one of the archetypical combinatorial optimization problems.

In general, computer networks offer different routes to a given destination. Traditional routing techniques are based on graph-theoretical solutions which find the shortest path connecting a source node to a destina- tion node. In ARPANET, the predecessor of INTER- NET, the routing algorithm was a distributed adaptive and asynchronous distance vector algorithm which is based on the Bel lman-Ford algorithm [ 17]; in 1979 it was replaced by a link state algorithm based on the Dijkstra original algorithm [ 11 ]. Today in INTERNET a routing algorithm called RIP (Routing Information Protocol) is used.

With regard to broadband networks the use of traditional routing techniques may be too simplistic because all conventional routing strategies are based

0165-0114/97/$17.00 Copyright (~) 1997 Elsevier Science B.V. All rights reserved SSDI 01 65-0114(95)00357-6

132 W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131-153

on the analysis of only one routing metric. Inte- grated broadband communication networks based on the Asynchronous Transfer Mode (ATM) will have to handle a great variety of services, different load classes, and variable bit-rates. These new require- ments need new routing strategies to consider a va- riety of parameters like topological and load-specific parameters. Fuzzy methods can be used to solve this complex task. In this paper we propose fuzzy routing systems for modern communication networks de- pending on local and global parameters. To compare the fuzzy routing systems with traditional ones, we have developed network simulations. The results are analyzed to estimate the impact of the systems on the performance of the networks.

Section 2 gives a brief survey of the field of com- puter networks. Then we consider traffic problems associated with the transmission of information, es- pecially the routing problem. Section 3 addresses the graph-theoretical basis of the routing strategies in net- works. It shows the use of fuzzy set theory in simi- lar problem environments and the connection between routing and these problems.

In Sections 4 and 5 we present two fuzzy routing systems for computer networks. The first system con- siders global parameters to propagate the data to the destination node, the second system is specialized in the use of local information.

Section 6 will give an outlook to modern broadband networks, standardized with the ATM and possible applications of fuzzy methods in this area.

2. A short survey on networks and routing

In the last years, there has been a tendency from large centralized computers to smaller decentralized systems. Single computers serving all of the organi- zation's computational needs have been replaced by a large number of separate but interconnected com- puters. These systems are computer networks. First there were telephone networks, but the worlds of data and voice communication have grown closer together. New network options have been introduced during the last forty years, e.g. message switching, time division multiplexing, fiber optical networks. Today there are efforts to integrate different services using broadband network technology like ATM.

2.1. A reference model for networks

Today, computer networks are highly complex systems. They may contain many thousands of com- ponents providing interconnections of computers, printers, terminals, and others. Whereas traditional computer systems contain computers with only one manufacturer's equipment and technology, modern computer systems are built by components of different manufacturers. These heterogeneous networks have to be designed in a highly structured way especially if these heterogeneous networks are connected. If a message has to be propagated from the sender to the receiver in another network, many problems arise: different network addresses, different protocols, and many more.

Standards for connecting heterogeneous computer systems for distributed applications processing are given in the reference model of the Open System Interconnection (OSI), defined by the International Organization for Standardization (ISO). This model organizes the communication functions for open sys- tems. Therefore it is designed as a series of layers in a hierarchical way.

The OSI model has seven layers. Each one has been created by the need of a different level of abstraction and performs a well-defined function. The interface between two layers is defined by the specification of the services, which the lower layer offers to the upper one. The communication between equal layers on dif- ferent systems is defined by protocols, which can be seen as a set of rules and conventions.

Fig. 1 illustrates this reference model. Layers 1, 2, 3, and 4 constitute the transport system to handle the message transmission from the sender to the re- ceiver, whereas the three remaining layers 5, 6, and 7 (resp. session layer, presentation layer, and appli- cation layer) present the application system. In this paper we are interested in the routing function of the third layer. Routing is managed in this network layer. The routing function selects each link in the network, across which a message is to be transported. Choosing the best route from the sending node to the destination node is one of the main functions of the third layer in the ISO-OSI reference model.

To transmit traffic, two general approaches, known as circuit switching and store-and-forward switch- ing, can be used. Circuit switching establishes an

W. Arnold et al./Fuzzy Sets and Systems 85 (1997) 131-153 133

layer

7 I a..l at,on I"" .......................................................................................................................................... "'1 I

I P resen'ati°n I"" .......................................................................................................................................... ""'1 preseo,at n I

i s=sio° I"'. .......................................................................................................................................... ,'"t session

I transp°rt I "''~ .......................................................................................................................................... " '1 trans._.~rt

[ net_work network t". ............... ""1 network F","I"''.,-I network

~ - , . i ............... i.,..[~-~ink ,.I .......... i,,,.] link

host A host B communication subnet

Fig. 1. I S O - O S I r e f e r e n c e m o d e l .

exclusive physical connection between the commu- nication partners. This is the technique used in tele- phone systems, and in ISDN too. Circuit switching leads to inefficient utilization of channels, because the required bandwidth has to be statically reserved in advance. That is why it is rarely used for data net- works. An alternative possibility is store-and-forward switching. With this technique blocks of data, sent by a source, are stored in the first switching node and then forwarded later when the outgoing link is free, one hop at a time. Each block is received entirely, in- spected for errors, and retransmitted in case of error. We can divide this store-and-forward technique into message switchiny and packet switching. In the first case messages are sent as unit entities, in the second case messages are broken into packets. These packets have to be buffered in the switching node memories.

Circuit switching and packet switching differ in many ways, but the key advantage of the latter is that it acquires and releases the bandwidth as it is needed, each communication link is fully utilized whenever it has any traffic to send. In circuit switch- ing, unused bandwidth on an allocated circuit is just wasted, in contrast with packet switching it may be

utilized by other packets from unrelated senders to unrelated receivers. The Broadband Integrated Ser- vices Digital Networks (B-ISDN) and its standard Asynchronous Transfer Mode (ATM) will be based on multiplexing and switching of fixed-size labelled packets of information, called A TM-cells. With re- gard to future networks discussed in this paper, we restrict our considerations to packet switching net- works.

The OSI layers can offer two different types of ser- vices to the layers above them: connectionless and connection-oriented. The prototype of a connection- less service is the postal system. Each packet or letter is routed through this system independent of all other packets or letters and each of them carries the full des- tination address. I f one sends two packets to the same addressee, they may arrive in reverse order, whereas the order in connection-oriented services cannot inter- change. This kind of service is modelled in the same way as the telephone system. I f a connection is estab- lished, it can be used until it is terminated. Often, in- stead of connection-oriented services the term virtual circuit service (and instead of connectionless service, the term datagram service), is used.

134 I~ Arnold et al. IFuzzy Sets and Systems 85 (1997) 131-153

2.2. Internetworking 2.3. Routing strategies

To connect different subnetworks, some coordi- nation authority has to be established. Therefore a new sublayer called internet sublayer, as a part of the network layer, has been created. Now, spe- cial nodes called gateways or routers can combine the subnets to an internet. The beginning of in- ternetworking was the ARPANET project in the seventies. Four computers of the University of California, connected by telephone cable, made up this first internet in 1969. In 1971 ARPANET consisted of 15 nodes and in 1972 already 37 computers were connected. Later, local area net- works and workstations were affiliated. In 1986, the National Science Foundation (NSF) estab- lished a distributed union for supercomputers in USA, the NSFNET. This INTERNET backbone encloses the old ARPANET and many other net- works. Today, more than 30 000 computer networks in more than 70 states of the world belong to this INTERNET.

Several aspects can be used to classify communica- tion networks. We already mentioned the division as- sociated with different switching techniques. Another division can be made with regard to the area they cover, their total data rate, or their ownership. These characteristic features lead to the distinction in LANs (Local Area Networks) and WANs (Wide Area Net- works). LANs link computers and peripheral devices within a limited geographical area. Often they pro- vide communication facilities within a building or a campus and only span several kilometers. An exten- sion of a network over several thousand kilometers is named a WAN. Apart from the LANs and WANs, an- other category of communication networks are MANs (Metropolitan Area Networks). MANs cover an entire city, and they share some of the characteristics of both LANs and WANs. MANs provide an interconnection of LANs.

Another classification of computer networks is according to its topology, which means the way in which the nodes are interconnected. The cost of a fully meshed network is high. To provide common access to shared resources at low cost the topologies of local area networks usually have the form of a bus, ring, star, and tree. Further classifications are possible.

To handle the routing of packets as they move through the network, a path or a set of paths must be set up to connect a given source with a given desti- nation. Routing tables, indicating the appropriate out- going link for an individual packet with a given destination address, are stored within each node.

To establish the appropriate routing table entries in each node along a path, specific routing strategies have been developed. Here, we give some classifications. One of the simplest strategies to find a path to a given destination is fixed routing, which uses fixed routing tables. The quality of this route does not depend on dynamic network conditions, but it is practicable to determine in this way the best route for an estimated network traffic. A new decision on optimal paths has to be made if the network topology is modified. In case of stable load the advantages of this strategy are simplicity and reliability, but the lack of flexibility is a drawback in situations of congestion or error events.

Another simple routing strategy is broadcasting each data packet from the destination to all other net- work nodes. This is a necessary procedure in case of topological changes like errors or repairings to inform all network members, but it is a primitive routing strategy, for instance if the sender could not localize the receiver. A variation of broadcasting is flooding. Here, the source node sends the packets to its neigh- bor stations and each neighbor station transmits it on all outgoing links with the exception of the link it has come from. This flooding technique is very robust: all packets will reach their destination if there is at least one connection between source node and desti- nation node. The disadvantage of this technique is the generation of very high traffic load in the network. A consequence is a high delay for all messages in the network.

Less traffic is generated by random routing, where each network station chooses only one link to transmit an incoming packet by chance, except the input link. Random routing is robust like flooding, but it makes sense only in certain topologies.

The opposite of fixed routing is adaptive routing, which means accommodated changes of routing deci- sions in case of dynamical changes in network topol- ogy or in traffic load. Adaptive routing strategies may be classified by the used network information. Global

14~ Arnold et al./ Fuzzy Sets and Systems 85 (1997) 131-153 135

strategies utilize all available information about the network to decide for the optimal path. If there is a central station in the network to collect and evaluate all routing information, it is called centralized routing.

On the contrary, a local routing strategy uses local accessible information, for instance the queue- ing lengths of all outgoing links. Algorithms using these strategies are called isolated routing algorithms. For example, the Hot-Potato-Algorithm is isolated and adaptive. In this routing algorithm each station tries to forward an incoming packet as fast as possi- ble. To that end it compares the queueing lengths for all outgoing links to append the packet to the shortest queue.

Distributed routing strategies are mixtures of global and local routing. An example is the delta routing. Here, each station sends information via each path to a central network station. This central station computes a set of best paths, which differ in their initial link cost by at most a delta value. When this delta is chosen very small, there is only one best path, otherwise all best paths are equivalent. The first case leaves the routing decision to the central station, in the second case each node determines the outgoing link by local information.

Most routing strategies need information about the network topology, the traffic load, and the cost of paths. If centralized routing is used, there is a cen- tral node, called routing control center. This central node collects status information of each network node (e.g., a list of neighbors, current queue lengths, current topology, the amount of traffic processed per line since the last report, etc.). Then the routing control center can build new routing tables and distribute them to all stations. One drawback of centralized routing is the vulnerability of the central station. To have a second computer as a substitute routing center is a possible solution. Decentralized routing is more complex but also more robust.

Another kind of routing strategy is multipath rout- ing or bifurcated routing. Delta routing is a good ex- ample for bifurcated routing, when delta is big enough. If there are more than one optimal paths, the load can be distributed. One can weigh the possible paths by probabilities or reserve various paths for differ- ent load classes. Multipath routing minimizes the de- lay for propagating data packets through the network. The minimum delay may be another routing decision

parameter besides cost and length of a path. In this paper we will see which criteria can be used to de- termine an optimal path through the network. Such a criterion is called a routing metric.

3. The use of fuzzy in networks

Fuzzy set theory has a fairly long tradition, in par- ticular with respect to its scientific development. Its basic idea was the use in system theory to describe and implement uncertain notions and general concepts. Zadeh later applied fuzzy set theory to logic, to lin- guistics, and, more generally, to artificial intelligence. Bezdek, Zimmennann, and many others applied fuzzy set theory in the area of decision making, multicriteria analysis, optimization, operational research, etc. An- other interesting field to apply fuzzy concepts is graph theory.

A normal graph G consists of a pair of vertices V and edges E, G = (V,E); E is a nonfuzzy relation on V x V, i.e., E consists of pairs of vertices. A fuzzy graph [24, 13] G is a pair (V ,E) where /7" is a fuzzy set on V and/~ is a fuzzy relation on V x V such that

/~ (v, v') ~< min(p f(v),/z¢(v')). (1)

This means that the fuzzy value of a connection be- tween two nodes v and v ~ is strictly related to the val- ues of the nodes themselves, in other words, the edge cannot be 'more important' or 'more valuable' than its endpoints. It is, however, unclear why each node should have a membership degree and why the mem- bership degree of each edge should be smaller than or equal to those of its endpoints. Therefore we define a fuzzy graph as (~ = (V, f '), where

/~ = {p~(v, v')//(v, v')I (v, v') C E × E}. (2)

It is possible with these new definitions to redefine graph-theoretical notions like transitivity, shortest path, fully connected graph, etc. Many people who have read the title of this paper might have thought about such a theory. There really are approaches to fuzzify the already mentioned Ford's algorithm or the shortest path Floyd's algorithm. In the case of Floyd's algorithm, the conventional algorithm calcu- lates the length ~ij of the path from node i to node j , and modifies it recursively by min(fij,~,ik q-#kj)

136 W.. Arnold et al./Fuzz)' Sets and Systems 85 (1997) 131-153

r 3 I

r4 r4 ~) P4 [ P4 [

v

d30 P3 P3 d3 I I

P2 d2 I

r 1 Pl dl I

Fig. 2. The earliest beginning time r i and latest ending time di of task vi.

where k E V. It is easy to see that a fuzzy length ~ij can, in the same way as above, be updated by

~m(?ij, Lk • ?kj), (3)

where ~ and min are the extended addition and min- imum operations.

In the same way, it is possible to extend Ford's al- gorithm. This algorithm comes closer to routing, the vertices represent, e.g., a set of tasks, the edges repre- sent the order of time the tasks have to be performed. Let P(i) be the set of vertices immediately preceding vertex i and S(i) be the set of vertices immediately following vertex i. The algorithms to compute the ear- liest starting time ri and the latest ending time d~ of task vi become

/7 i = m - ~ ( ~ . ~ p / ) , d i = m~n(t~ ~ pj), (4) . j E P ( i ) ' j E S ( i )

where Pi denotes the ill-known duration,/~i denotes the earliest starting time, and di denotes the latest ending time of task v~ (cf. Fig, 2, see [13] for a more extensive description and references).

We will briefly explain why we did not use one of these approaches. Therefore we will use an example from Dubois and Prade that they presented in a paper on fuzzy temporal reasoning [14]. In this paper they use fuzziness to describe uncertainty in linguistic no- tions about time as was previously being done by sev- eral researchers. Every period of time is labelled by a

fuzzy set; fuzzy rules or fuzzy arithmetic operations can then be used to get a form of reasoning about time. That this has close similarity to fuzzy graph theory, in particular the kind of Ford given above, may be ex- plained with the following example: "John's vacation time starts by mid-March. He will go to India for at least three weeks." The notions 'mid-March' and 'at least three weeks' can be represented by fuzzy sets. The similarity to fuzzy graphs lies in the fact that it might be uncertain when he goes to India, but how long he will stay there does not depend on this fact. So, there is a vertex describing his vacation time and a consecutive vertex describing the length of his hol- idays. The time he will be back depends on these two independent facts.

If one wants to know when John will come back it is possible to reason with these fuzzy notions (or do arithmetic with these fuzzy numbers) to come to a fuzzy set describing the fuzzy interval of time when John might be back again. This fuzzy interval has a semantics based on Zadeh's possibility theory [35], i.e., it represents the set of possible values of data that the conclusion can take. The problem with such a kind of reasoning is the increment of uncertainty propor- tional to the length of the inference chain. Each step of the inference chain enlarges the uncertainty of the final conclusion. The same effect takes place if we add or subtract a large amount of fuzzy numbers [20]. To illustrate this problem we use an example origi- nally given by Fall [16]: "Consider a taxicab driving

w. Arnold et al./Fuzzy Sets and Systems 85 (1997) 131-153 137

between a hotel and the airport. Assume it is known that 'faring to airport' takes about 30min but may op- timistically go down to 20 min, while a traffic jam may slow down the trip to 50 min, i.e., is described by the fuzzy number A(x; 20,30, 50) [12]. Suppose further- more the waiting time at the airport is A(x; 10, 30, 50), the fare to the hotel takes A(x; 20, 30, 50), and the wait at the hotel takes A(x; 20, 30,40)." If one wants to know the location of the taxicab, given the fact that he is not at the airport at, e.g., 1 pm, one will get a very uncertain conclusion, based on a long chain of uncertainties.

In this paper on fuzzy methods for routing we use a different, perhaps theoretically less interesting, ap- proach. It is based not only on our extensive expe- rience with fuzzy and neural-fuzzy traffic technology [21 ] but also on industrial control and sensor analysis. In all of these applications there is

• knowledge about the process presented in the form of fuzzy rules, and

• information in the form of, usually relatively poor, sensor data.

We use fuzzy logic as a technique to put more in- telligence in applications. In Zadeh's words: to in- crease the MIQ (Machine Intelligence Quotient) of machines and processes. This has to do with the more general demand for more intelligence in devices and process control. In traffic technology, for example, we expect that the highway can recognize the kind and number of cars that drive on it. Furthermore it has to do with the fact that more and more information about devices and processes becomes available. This particularly holds for communication and computer networks. A further consideration is the lack of appro- priate models in many applications, which also holds particularly for networks, although a large number of data and expert knowledge are available.

In traffic technology, for example, Siemens uses fuzzy set theory to be able to incorporate all incom- ing, usually very poor, sensor data plus the human knowledge about traffic flow with regard to time and location. In a highway traffic regulation system this resulted in a fuzzy system that was able to detect acci- dents five minutes earlier than was possible in the con- ventional system. It can deal with insecure sensor data by magnetic loops in the road, it derives its knowledge from the speed density difference, the trend factor, the

traffic volume trend, also from weather data, from day time, etc.

Another system that was built was a parking fore- casting system. In many large cities, systems are im- plemented that tell a driver when he enters the city about the situation of the parking garages downtown. Usually this is done as follows: there are signs with the following information etc. The meaning of these signs is

P Marienplatz 361

P Stachus 120

that the current situation in the parking garage 'Marienplatz' is 361 free places and the current situa- tion in the parking garage 'Stachus' is 120 free places. When it is still a long way to the parking garage it often happens that people drive in the direction of one of these parking garages and the closer they come to the parking place, the less free places appear on new signs. When they finally reach the parking garage it is full. A better concept here would be to have signs that forecast the situation of a parking garage after the estimated driving time towards the garage, e.g., like

P Marienplatz full

P Stachus free

To make such a prognosis one needs a lot of knowl- edge about the estimated traffic situation in the city and about the expected number of other cars also driv- ing to the parking garage. This last number depends on the general interest to go downtown, which again depends on a large number of influence parameters like:

Number of cars driving into and out of the parking garage. This is not a fuzzy variable but a crisp num- ber. For short-time prognoses this is the most impor- tant parameter. If one knows the utilization rate of a parking garage and its derivative, one can safely fore- cast the next ten minutes.

Traffic density. In the system we have been using four sensors on different places downtown that

138 W. Arnold et a l . /Fuzzy Sets and Systems 85 (1997) 131 153

Day of Week ~ X I Traffic Density

Time of Day _ _ _ _ Season ~ _ ~ R~l~£2i!:e//~ Temp°ral Need ~ , ~ ~

I oa,,ac,ty I" / I

~ Special Situations Rainfall

Sunshine ~ ' ~ ¢ ~ [Forecast] Fig. 3. The structure of the fuzzy rulebase for the parking problem.

together give a global estimation of the momentary traffic density. A better, but much more expensive, method that we are studying is to take into account the information of all 'intelligent' traffic lights, i.e., those traffic lights that have sensors that can measure the number of cars passing by. This would give an almost complete picture of the traffic flow through the city.

Time. There are several kinds of time: time of the day (during the early afternoon many people go shop- ping), day of the week (on Monday the situation is different from Saturday, Thursday evening the shops are opened in Germany), season (December is very busy, in the beginning of January many people bring back unwanted presents).

Weather conditions. It is extremely difficult to describe the influence of weather on the behavior of people. However, it makes a big difference between a cold and wet day and a warm and sunny day when many people drive outside.

Special trq~c situations. Examples are roadworks, holidays, etc. It is extremely difficult to handle these situations in the system. We used a simple method that classifies the special situations on a scale between 0 and 1. The expert should be able to estimate each situation.

Special situations like pop concerts, parades, pro- cessions. This may lead to the situation that some parking garages are better reachable than other ones.

The system should lead the cars to the first class of parking garages first.

In Fig. 3 we have given an overview of the fuzzy system. If we consider all the inputs we will find that 'Special Situations', 'Day of Week', and 'Holi- day' cannot be considered as fuzzy variables. Never- theless, 'Special Situations' can be considered fuzzy, because, although every special situation is different, they can be subdivided into fuzzy classes. 'Holiday' is a Boolean variable, although also here one can imag- ine some scaling or classes of holidays, e.g., how many schools are closed. 'Day of Week' is definitely crisp.

The other variables are all considered as fuzzy variables. It was important to talk with experts from Siemens Traffic Technology about partitioning the domains. Several variables can be partitioned with, say, three to seven equally divided fuzzy sets, others, however, need special treatment. This, in particular, holds for 'Time of Day' and 'Season'. The fuzzy variable 'Time of Day' is subdivided into seven fuzzy values, viz., night, early morning, morning, noon, afternoon, evening, and late evening. The determina- tion of each fuzzy set corresponding to each of these fuzzy values is a complex task, that returns during the tuning process. 'Season' is subdivided into five fuzzy values, viz., the four seasons and December. Here, e.g., summer is not defined by the position of the sun (June 21-September 21), but by the feeling of the people that are going to buy clothes, etc. More

W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131 153 139

specifically, this means that spring and autumn are defined by relatively steep, small fuzzy sets, whereas summer and winter have a large support interval.

Each rulebase consists of a number of rules. The weather rulebase determines the influence of the weather on the traffic situation. Rules are, e.g., as follows:

RULE SUB_Rule_l_good weather_l IF (Temperature IS high)

AND (Rainfall IS dry) AND (Sunshine IS sunny) THEN (Weather IS small_traffic)

END

This means that when it is nice weather (hot, not raining, sunny) it will be relatively quiet downtown in comparison to other weather conditions.

A rule in the Temporal Need rulebase is for example

This system is currently being extended by new components and more information to come to a com- plete traffic system manager that knows everything about traffic flows inside and outside larger cities. Incoming information that is very hard to deal with are traffic light sensoring systems and special events.

In this paper we extend these fuzzy traffic concepts to the traffic of data through communication networks. Here also, e.g., time of the day or day of the week are important input parameters although they are not dealt with in conventional routing systems. In this paper we use on the one hand explicitly available informa- tion in the form of routing tables to obtain improved routing techniques (Section 4), and on the other hand implicitly available information in the form of experi- ence and heuristic knowledge in distributed networks (Section 5).

4. A shortest path routing scheme

RULE SUB_Rule_II_Day_of_week_5 IF (Holiday IS false)

AND (Time_of_day IS evening) AND (Day_of_Week IS NOT weekend) AND (Day_of_Week IS NOT Thursday) THEN (Temporal_need IS low)

END

This means that on a normal day (Thursday evening shops are opened, not a holiday, not during the week- end) it is relatively quiet during the evening. This is independent of the weather situation.

In the main rulebases there are rules that express the prognosis for the time after I h. An example of such a rule is

RULE Rule_II_8 IF (Capacity IS critical)

AND ((TemporaIJaeed IS high) OR (Yemporal~aeed IS very_high)) THEN (Forecast IS parking_garage_full)

END

So, if the parking garage is almost full and it is to be expected that many vehicles are driving towards the parking garage then the prognosis is that it will be full within 1 h.

The subject of this section is the examination of the applicability of fuzzy methods to shortest path rout- ing in computer communication networks. As already mentioned in Section 2, routing is an important per- formance factor in wide area networks (WANs). The goal of shortest path routing is to find the 'best' path through a network depending on a graph-theoretical view of the network [ 1 ].

Shortest path routing strategies are based on infor- mation about the network topology. According to a metric (like transmission delay) a length or weight is assigned to each link in the network. Then a shortest path algorithm (i.e., Dijkstra or Bellman-Ford) cal- culates the shortest paths from a given source node to any other node in the network [1 1, 17]. In a dis- tributed, adaptive routing algorithm each node has to accomplish the following tasks (see Fig. 4): • share the information with other nodes, • calculate the 'shortest' paths to all other nodes

(based on the topology information), • collect information about the network.

The problem we are facing now is: Where are the drawbacks of this strategy and where are sensible ap- plications for fuzzy methods? • Calculating the shortest paths is done by a shortest

path algorithm - a problem which is well known and solved.

140 14~ ArnoM et aL / Fuzz), Sets and Systems 85 (1997) 131-153

collect/measure topology I ntormation

J I flood routing l ] information over the

Ir -ork receive flooded

[ information I from other nodes

/ compute routing directory [ with shortest path algorithm]

Fig. 4. Structure of a shortest path routing algorithm.

• Sharing the information is most commonly done by flooding: every node in the network sends its routing information to all neighbors. Information which is already known is ignored.

• There are numerous criteria which can be used for the routing decision. This is exactly the area where fuzzy systems can show their strength. In all common shortest path routing strategies only

one parameter is used as routing information. Dif- ferent routing algorithms use different parameters, like transmission delay, number of hops, etc. But the routing decision is based exclusively on this one parameter, so the network traffic is optimized only considering, e.g., the delay time; other important cri- teria for a networking company like link costs are not taken into account.

The idea of our approach is to use more than only one parameter and to use a fuzzy system to obtain a crisp link length/link weight from a set of parameters. This link weight can easily be used as input for a shortest path algorithm.

To show that this idea leads to a reasonable routing strategy we implemented a fuzzy link eval- uator (FLE) with SIEFuzzv, a fuzzy development tool from Siemens. We also implemented a net- work simulation model using the FLE with OPYET, a well-known simulation system for telecommuni- cation and computer networks. This fuzzy router is based mainly on the routing algorithm used in ARPANET. We have chosen the ARPANET rout- ing algorithm as this is the best documented and because this provides a well-defined test envi- ronment. First, we will briefly describe the con- ventional part of the used routing algorithm and then will discuss the fuzzy shortest path router in detail.

4, I. Conventional solution

During the operating life of the ARPANET dif- ferent routing algorithms were used: the first one (a distance vector algorithm, based on the Bellman- Ford algorithm) implemented in 1969 revealed severe disadvantages as the network grew from only a few stations in the beginning to several hundreds in the seventies. The major problem was long lived loops and oscillations due to too short measurement intervals and too long routing messages. In 1979 (ARPANET II) it was replaced by a link state routing algorithm, which used a variant of the Dijkstra algo- rithm to calculate the shortest paths (the shortest path first (SPF) algorithm). Routing in the ARPANET experienced its last revision in 1989 when a new link metric was installed.

Our fuzzy shortest path routing strategy is based upon the SPF routing algorithm used in the eighties. It is an adaptive distributed algorithm in a datagram ori- ented network: a message is split into several packets which are sent separately through the network. Every node decides autonomously where to send the arriv- ing packets. This decision depends on the measured parameters and may change as the traffic situation in the network changes. The nodes need basically two data structures for the routing task:

I. The routing table - a list in which each other node in the network (the destination node) is assigned the neighbor (of the source node) to whom the packet has to be forwarded (see Table 1).

For each arriving packet the node only has to check the packet's destination and the routing table indicates to which node the packet has to be sent.

2. The network database: in the simplest case a directed, weighted graph representing the network. Based on this database the routing table is calculated and kept up to date using a shortest path algorithm.

The ARPANET II routing strategy used the packet's transmission delay as parameter for the rout- ing decision. The delay on each link to the neighbor nodes is measured using the acknowledgements for

Table I Routing table

Destination node 2 3 4 5 Route traffic via node 2 3 2 2

W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131-153 141

transmitted packets. We are using the following very similar method to measure the delay. Every packet is time-stamped with its arrival time and its send time. The difference of these two values plus a constant for the transmission time yields the delay of the packet. In constant intervals of time the average delay of all packets which have traversed a line is computed. If this average varies too much from the average of the previous period, the network database and the routing table are updated and the new link states are distributed to all other nodes so that they can also update their databases and routing tables.

The distribution of this information is performed by the simple flooding algorithm. Every node sends copies of the flooding packet containing the update information to all its neighboring nodes except to the one from which the packet was received. This algo- rithm guarantees that the update messages are spread fast enough over the network.

4.2. Fuzzy shortest path routing in detail

As already mentioned above we tried to improve the nonfuzzy routing strategy by using a Fuzzy Link Evaluator (FLE), which computes an evaluation for each outgoing link. This evaluation is then used as input for the SPF algorithm. After measuring the rel- evant parameters the FLE computes a quality num- ber which is used to compute the routing table and which is flooded (as link state) over the network (see Fig. 5).

As fuzzy systems can easily handle complex situ- ations we selected the following eight parameters as sensitive input parameters for our fuzzy system:

collect/measure topology nforrnation

J I fuzzy system: evaluate links I

N ~ llcod rout ng information I

compute routing directory with shortest path algorithm

Fig. 5. Structure of the fuzzy routing algorithm.

Link capacity. A link with a high capacity can carry more traffic and is therefore less prone to over- load in comparison to a link with low capacity.

Transmission cost. The transmission costs are an important factor in commercial networks: for some applications it might be useful/cheaper to use the less expensive links even if they are slower than others.

Transmission time. The transmission time is the time the signal needs to travel from one node to an- other. It is another important characteristic of a con- nection between two nodes. It depends on the physical properties of the link media (e.g., copper cable with a certain length or satellite connection).

Transmission delay. The transmission delay is even of major importance for the routing decision as this parameter changes more frequently than all the others. It is the sum of transmission time, processing time and queueing time.

Change of transmission delay. The change of transmission delay is considered, as one can assume that, e.g., an increasing delay will still increase in the next second.

Link security. The link security is taken into ac- count because a secure link can be regarded as a better choice in comparison to a link which is likely to fail.

Node security. A node which often fails should be avoided if possible.

Packet security. The packet security is the last security parameter, representing the security that a packet does not get lost in consequence of over- load situations. Voice or picture transmission needs lower security than, e.g., the transmission of banking data.

In the FLE these parameters are represented with linguistic variables and grouped into three categories to get a systematical design. The first three parameters are used to represent the cost-performance relation of the evaluated link. The next two represent the delay situation on the link and the last three represent the security of the link, which may also be viewed as a trust in the link (Fig. 6).

For these three groups (performance, timing, security) three rulebases are designed to compute three intermediate variables describing the three link characteristics of interest and serving as input for the main rulebase that computes the link evaluation.

As the designs of the linguistic variables and the rulebases are not yet optimized we do not describe

142 Hd Arnold et al./Fuzzy Sets and Systems 85 (1997) 131 153

I capacity [ ~

[ costs ~ [link evaluation]

[transmissi°n time ~

change ot delay

delay

link security

node security I

packet security

Fig. 6. The fuzzy link evaluator.

node node_l node_2 node 3

( node_ n~:le_.5 node_6 node 7

Fig. 7. The simulation network.

them in detail. To get a usable crisp number as out- put from the fuzzy system we compute the reciprocal value of the defuzzified link weight, as the domain of the variable weight is the interval [0, 1]; low val- ues mean a 'good link' and high values represent 'bad links'. This is done by 'Procunit 1 '. 'Procunit 2' just assigns weight to an accessible output variable.

The general strategy of the FLE is: 1. Use links with low delay. 2. I f there are two links with equal delay use the

one with higher security and/or better performance. The FLE has been integrated into a simulation net-

work to examine the behavior in a closed loop (see Fig. 7).

As our routing algorithm is distributed and adaptive each node performs the routing task. The node model

data packet generator

r ~ ~ ~ t l

recieve2 transmit2

Fig. 8. The model for a router node.

is kept quite simple as is shown in Fig. 8. Each node can be connected to up to three duplex links (receiver i is associated with the same link as transmitter i) and packets are generated in each node. The heart of each node is the processor module which performs the routing task as described above.

With this simulation network we tested how the fuzzy routing strategy reacted on a node failure, on 'bad ' links with a high transmission time, rather high costs and low security, and how it acted in comparison to a router without a fuzzy component.

As we did not use quantities from real networks for our simulation, we only can judge the behavior of the

w. Arnold et al./Fuzzy Sets and Systems 85 (1997) 131-153 143

fuzzy shortest path router qualitatively. However, the simulations show that using the FLE has an obvious influence on the routing decision. Especially the 'bad links' were better recognized by the fuzzy router than by the nonfuzzy router. We expected this result be- cause the fuzzy router has better 'knowledge' about the situation in the network.

This is one of the main advantages of our fuzzy routing algorithm. A fuzzy system can easily handle more than just one input. The design and tuning of the FLE can easily be done by a network expert, and changes to an existing system are quite simple because a well-designed fuzzy system is easier to understand than huge sets of formulas. Furthermore a fuzzy router can easily be adapted to changing network conditions.

5. A distributed local routing scheme

The algorithm in this section is designed to work in a distributed way based on node-local information and load parameters in packet switched networks. The advantage of this kind of algorithms is that they cause minimal additional load to the networks for forwarding routing information [32].

The algorithm shows that some advantages of the fuzzy theory are still maintained in the environment of communication networks, i.e., the use of many dif- ferent parameters in a routing algorithm and the easy maintenance of fuzzy systems by the use of linguistic rules and variables. Common routing algorithms like the RIP algorithm only use one parameter of the net- work to control the packet flow. Today's applications require more specific routing algorithms with the pos- sibility to treat different kind of load in a different and appropriate manner. Therefore the objectives for the design of the fuzzy routing algorithm are: • Optimizing the network wide parameters packet

loss rate and network latency. • Supporting different load classes by the use of ap-

propriate packet headers. • Supporting network management by easy mainte-

nance of the algorithm.

5.1. Previous work on this topic

The starting point of the development is an earlier proposed two-level adaptive routing scheme for packet

switched computer communication networks. It was developed by Boorstyn and Livne in 1981 [8]. They show that under certain conditions this adaptive rout- ing scheme optimizes the global average node delay in the network.

One could find an easy solution for this problem: a packet is to be put into the queue at the outgoing link, which has the lowest expected waiting time. Another strategy could be to put the packet into the shortest queue. Other reasonable strategies can be found. If the node operates in this way, packets will wander aim- lessly through the network and the total performance will be abysmal.

The Boorstyn approach combines the routing func- tion with the benefit of higher performance at the node by choosing 'good' queues. Briefly, this ap- proach is as follows. Consider a node as a single queue with several servers (output links). For a particular commodity, i.e., a packet with a certain destination, the use of some of these servers would cause the packets to be sent along 'bad' paths - either too long or too congested. Thus, for each commodity and each node a subset of allowable links is to be specified. So each commodity has its own subset of links. These restrictions force packets to use 'good' paths. This is the first level of the adaptive routing scheme.

The second level is to choose one out of these 'good' paths. This decision is based on the argument given above, the chosen queue is the one where the waiting time is to be expected lowest. This level is the dynamic part of the algorithm because it uses the current node situation for its decision.

This routing scheme causes a significant per- formance increase in average node waiting time and global average time delay. The algorithm does not use application specific parameters and load specific information. Also, the algorithm divides the parameters into two classes, static parame- ters in the first stage and dynamic parameters in the second stage. Dependencies between parame- ters of both classes do not influence the routing decision.

Based on this algorithm a fuzzy solution should withdraw these disadvantages. The algorithm deals with the output selection policy of a router. Therefore a model of a router has to be developed which is based on queueing theory.

144 W. Arnold et al./ Fuzz)' Sets and Systems 85 (1997) 131 153

pscket.gen deaig- ator

out.q_2 layer.2.2

Fig. 9. A detailed model for a router node.

xrnt.O

B xrnt_l

B xmt.2

5.2. A model o f a router node

The model of a router node in a communication network is held as simple as possible. All arriving packets are put into one waiting queue. This also holds for packets arriving from layer 4 of the OSI model. Thus, the input selection policy is a FIFO strat- egy. The server for this waiting queue is the routing algorithm itself. It determines the probability distri- bution of the service. For analytical reasons we have chosen an exponential distribution of the service time for each packet, other distributions would be more realistic. When a packet is served by the routing algorithm, it is put into the waiting queue attached to the outgoing link which is chosen by the routing algorithm. The servers of these waiting queues are located in layer 2 of the OSI model. So the routing algorithm does not influence these servers. We as- sume the servers of layer 2 to have an exponentially distributed service time for each packet. The queue lengths are bounded to a finite value, Therefore it may happen that a packet will only find full packet queues, which may cause the loss of the packet. Fig. 9 shows the used model.

The model assumes the following. The packet header of OSI layer 3 contains the address of the tar- get router node. This may be a three byte long address

information; the length of this information is deter- mined by the absolute number of router nodes and the inherent redundancy of this information. Furthermore we assume the packet to contain two two-bit fields for priority and loss tolerance information about this packet. This leads to four values for each of these pa- rameters. Without this information a user influence on the routing strategy would be too difficult to realize.

The here stated algorithm can be divided into pieces that represent the three functional components of a router. The first and second parts are nonfuzzy, they represent the input selection policy and the switching policy of a router.

The output selection policy uses first a fuzzy de- cision module to determine a performance value for each outgoing link at the node. In a second step the outgoing link with the highest value is determined.

The fuzzy decision module uses several parameters to determine a performance value for an outgoing link. Some of these parameters like the minimum number of hops to the target node are static, that means, these parameters can be assumed constant for a long pe- riod. Here, however, long is relative: it depends on the speed of the communication network and the packet throughout. Other parameters may change with each packet, for example, packet priority or queue length. These parameters will now be discussed.

W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131-153 145

5.3. Network parameters and design o f the fuzzy decision module

The first of these parameters is the relative queue length at each outgoing link. It is defined as the ab- solute queue length (expressed in bits) divided by the maximum queue length. Therefore the relative queue length is independent of the maximum queue length and is defined on the interval [0, 1]. This makes it eas- ier to compare this parameter for different kinds of network installations in a router.

lQi.j - - , ( 5 ) lQ, reli./ • lQ, maxi.j

where lQ,, is the absolute queue length at the queue which leads to the outgoing link from node i to node j , and lQ, max,.j is the maximum number of bits which the queue can contain.

If all packets got the same length, it is possible to count the packets in the waiting queue:

NQi" (6) lQ, reli. j .-- NQ, max,. i ,

where NQ~., is the number of packets which are located in the queue at this moment, and NQ, maxi, i is the maxi- mum number of packets which the queue can contain. This kind of measurement is considerably faster.

The next parameter is the relative link load:

,~i j Pi, j := ----~-', (7)

C/j

where ~-i,j is the current link load on the link from node i to node j in bit/s and Ci,) is the link capacity of the link from node i to node j in bit/s. Therefore, Pi,j is normalized on the interval [0, 1 ].

The use of the link capacity leads to another prob- lem which also shows the need of a fuzzy treatment of these parameters. The capacity of a link in OSI layer 3 can only be estimated; it depends on the overhead of the routing protocols of the lower OSI layers and their technical implementation. It may change with the de- gree of service or with other effects like transmission conditions for radio or satellite links. A model with a, for example, probabilistic view of these effects would cause too much complexity to the routing algorithm.

Another load dependent parameter is the load dif- ference between the load before and after a queue. The

load before the queue is determined by the routing al- gorithm whereas the load after the queue is determined by the lower OSI layers. This may be viewed as a kind of internal congestion control but it is also an instru- ment to obtain an early warning system for faults on this link. If the link has a high fault rate, packets have to be retransmitted very often. So the serving rate of the lower OSI layers may decrease and the difference between the incoming packets per time at the queue and the transmitted packets will increase.

~i,j, in - - /~i,j, out mpi, j , in_ou t .-- Ci,j , ( 8 )

where 2i,j, in is the load, which arrives at the queue, leading to the link from node i to node j , and J'i,j, out =

)Li, j is the load which is transmitted over this link. Another parameter which can only be estimated is

the expected time delay of a packet from the point where it is put into the outgoing waiting queue to the point when it joins the incoming waiting queue at the next node. This delay is influenced by the lower layers too.

IQ,., 1 ttransi.i : : Ci,j "~- tdelay Jr- ~ *

le, in ..~-. - - Ci,j '

lp, served hi, j, in

Ci, j Ci,j

(9)

w h e r e /delay is the signal transmission time depend- ing on the used media, lp, served is the length of the packet currently served by layer 2, the factor ½ con- siders the fact that half of the packet has already been served, 1p, in is the length of the currently handled packet within the fuzzy module.

Another time parameter is the difference of the time zones of nodes. This parameter is more static and the influence is not very big. The reason why this para- meter can have influence on a decision is that the traf- fic through the node at normal job time, for example from 8 am to 4pm, is much higher than at night hours. If two possible paths are assigned the same value by the rest of the parameters, it will be more reasonable to put the packet into the queue which leads to a node where it is night than into a queue which leads to a node where it is, e.g., 9 am. An observation is that this parameter is originally a topological and therefore a nonlocal parameter. The question is whether a topo- logical parameter can be treated as a local parameter.

146 I~ Arnold et al. / Fuzzy Sets and Systems 85 (1997) 131-153

Here, the instance of this parameter is a table in each node which contains the appropriate information. This table can be set up at node initialization time and must only be changed if a node changes its location, which does not happen very often in real networks. The cost of this information is the same as the cost of a local parameter because of the static behavior of this pa- rameter. In that sense this parameter is a local one.

The next parameter is the packet loss probability, that means, a packet is totally lost and only higher lay- ers of the OSI model may recognize this failure. This probability is usually very small and it is only mea- sured for demonstration purposes and to inspect the function of an error rate dependent routing algorithm. Real applications have other criteria for avoiding links, and the development of such application profiles is a field of current research.

The header of each packet provides two more in- put parameters. These are the packet loss tolerance and the packet priority. Both represent the applica- tion needs. Packets with high loss tolerance may use links with a high packet loss probability. Packets with low tolerance have to use trustworthy links. Similarly, packets with a high priority should use links with a low expected transmission time, but packets with a low priority have no restrictions on time conditions of a link.

The last input parameter of the here stated fuzzy decision module is an array which contains the min- imum number of necessary hops to each node in the network for each outgoing link. It differs from node to node and provides a minimum of topological informa- tion for the routing algorithm. It can be set up in the initialization procedure of each node. It is only to be altered if topological changes like link failures occur.

The mathematical definition of the elements of the array is given by the graph-theoretical formula

max(11 - hoPmin, 1 ), aj, n : = 3'J~i,n E ~ [ ~ i ,n = {i,j . . . . . n}, (10)

0, else,

where ;~i,n is a path from node i where the packet is currently located to node n which is the destination node of the packet using the link from node i to node j , if this link exists. Another assumption concerns the path: every node appears only once, which means that circles are not allowed, c~ is the connectivity graph of the network. Each connection in this graph represents

a link in the real network. The parameter hopmin is the minimum path length based on counting the visited nodes which a packet has to pass. The number 1 t results from the fact that we assume that if hopmin is greater than 10 the path length does not play a role anymore. Another convention is the zero element of this array. If an element aj, n is zero, there is no path from node i to node n using a link from node i to node j . From these parameters every input variable of the fuzzy routing algorithm can be derived directly.

There are two more variables besides the input and output variables: These are used by the algorithm to represent abstract measures during the evaluation pro- cess. They may be eliminated after an optimization, but during the design of the algorithm they are help- ful to check parts of the functionality of the algorithm. These variables represent the security rating and the speed rating of a link.

For these reasons the fuzzy part of the algorithm is designed as given in Fig. 10.

As shown above, the fuzzy algorithm contains three rulebases. Rulebase 1 determines the security rating of the link, rulebase 2 the speed rating of the link. Both ratings are used with the relative queue length as an input for rulebase 3. This rulebase determines the per- formance value for the link. So, here is a point where a network provider can easily influence the weighting of the different criteria which finally determines the routing decision.

Let us examine rulebase 3. It contains eleven rules where the first ten rules are all of the same kind. They have only one fuzzy set of the variables 'link security' and 'link speed' in their premise and a corresponding fuzzy set of the output variable in their conclusion, like

IF link security IS very small T H E N output values IS very bad.

This allows to weight the security criteria relative to the speed criteria only by setting appropriate rule weights. The last rule of this rulebase acts as an 'emergency break'. If an overflow of the waiting queue is likely it should not be used by packets which can use another link to reach their target node. Only those packets which have no choice may still use this link. The rule is

IF relative queue length IS full T H E N output values IS very bad.

W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131-153 147

I packet loss probability i ~

i ' \_ ] utilization difference I f

I queue length I-~rulebase 3 / \ ~ pedormance [ , . - , \ / L va'ue J

[ topological array ~ .

I transmission time

I packet priority I . . . ~ ' ~ ' ~ j , , / I ....... I

I timezone difference r ~

Fig. 10. A fuzzy module to find a routing decision.

This rule has a hundred times higher weight than the other rules. So, if the situation at the waiting queue gets critical, the performance value will decrease. This does not hold when all waiting queues are congested, in this case this node is overloaded anyhow.

5.4. Results of static and dynamic analysis n l

The analysis of the algorithm can be divided into a static and a dynamic part. The static analysis was done with SIEFUZZY which was also used to build the fuzzy decision module. This analysis just sets all parameters to certain values and traces what happens to the output in case one parameter is changed. The dynamic analysis uses a simulation of a network to examine the effects when many parameters change continuously in a time interval. We used OPNET where we linked fuzzy modules to perform the routing inside of the nodes.

The fuzzy decision module shows the following be- havior: • the influence of the packet loss tolerance increases

with the packet failure rate, • the influence of the packet priority increases with

the transmission time, • the link performance value decreases with increas-

ing transmission time,

Fig. 11. A simple network for dynamic analysis.

• the link performance value increases with the topo- logical link value,

• if the queue is filled more than 90%, the perfor- mance value decreases rapidly. The results show that the routing algorithm behaves

under static conditions in many parts in the wished manner. The problem is that in a dynamic system some hidden dependencies may appear. For these reasons, a dynamic analysis of the algorithm has to be made. The analysis is based on simulations with an ideal node model. This model is given through the above made assumptions about the router node. In the recent work this model has been used in two simulated net- works. The first one has only four nodes and only one of these nodes, no, can put packets onto the network. The other three nodes just do some measurement and protocol work. The structure is shown in Fig. 11.

148 I4L Arnold et a l . /Fuzzy Sets and Systems 85 (1997) 131-153

n l I15

Fig. 12. The simulation network.

Two aspects are verified using this network. The first is whether the decision module is recognizing dif- ferent load types, and, secondly, whether the packets are appropriately routed. Therefore, the following net- work parameters were varied: the load in packets per second, the packet priority and packet loss tolerance, the link capacities, the transmission times, and others.

During the dynamic analysis of this network the following results are obtained. The algorithm reacts very sensitively to changes of the loss tolerance and the packet loss rate. The sensitivity to these para- meters decreases if the load at this node increases and the node gets exhausted. Then the effect appears that packets are routed through all possible links. This is expected because if the load on one link gets too high, the attached queue will get filled. If still more pack- ets travel through this link they may get lost because of queue overflow. This is offending the objective of optimization of the packet loss. Therefore, the 'queue rule' is implemented, which is preventing the negative aspects of the load specific routing.

The other load dependent parameter is the priority. The algorithm reacts in the beginning sensitively on the packet priority. If a packet has a high priority, it is routed through links with a low expected transmis- sion time. But, as the system is now dynamic, this leads to longer queue lengths at these links which causes an increment in the expected transmission time. After a short time, the expected transmission time on all links is nearly equal which makes priority depend- ing routing impossible. The desired effect to have a low total transmission time for packets with a high priority cannot be guaranteed. Other means have to be added like reserving link capacities. Only in cases

where the waiting time cannot compensate the differ- ence between transmission times, the priority depen- dent routing takes effect.

5.5. Comparison with common routin9 schemes

The second network is an eight-node network (see Fig. 12). The nodes are connected with full duplex links. All links have the same characteristics. They have a link capacity of 64 kbit/s. The error rate and the transmission time are set to zero. The routing al- gorithm has a service rate of 256 kbit/s, the lower layers have a service rate of 64 kbit/s that is equal to the link capacity. The packet lengths are exponen- tially distributed with a mean of 1 kbit. Because the packet lengths are exponentially distributed, the ser- vice time of a packet is exponentially distributed too. Each waiting queue at the outgoing links has a max- imum capacity of 64 kbit, each waiting queue at the arriving links has a maximum capacity of 256 kbit. It follows that the maximum waiting time of a packet in each waiting queue is 1 s.

Two types of nodes can be recognized. Nodes with two attached links, and nodes with three links. Each node generates packets for all other nodes; the target addresses are equally distributed. All nodes create the same mean number of packets in a time interval. Therefore, this network has a high degree of symmetry and the mathematical analysis is relatively simple.

This network is used to compare the fuzzy deci- sion module with the RIP routing algorithm and a simple implementation of the Boorstyn solution. At last, the performance of the fuzzy routing algorithm is

W. Arnold et aL / Fuzzy Sets and Systems 85 (1997) 131-153 149

compared with a mathematical solution, which is con- sidered optimal for some parameters. To make the algorithms comparable, most link specific parameters are held constant for each link, as seen above. So the fuzzy algorithm cannot gain advantage by using pa- rameters which the other algorithms were not devel- oped for.

The comparison of the RIP algorithm and the fuzzy algorithm shows the following results. With a gen- erated load of 50 kbit/s at each node the fuzzy algorithm has significant advantages. The mean total end-to-end delay of a packet decreases by a factor of 2.4. The variance of the end-to-end delay decreases by a factor of 10.6. The effect can be seen in Figs. 13(a) and (b).

If the load is raised to an amount of 100 kbit/s, the RIP algorithm is about 17% better in end-to-end de- lay than the fuzzy algorithm. This can be explained by the fact that this load causes a relative service rate of 179% on the links, which connect the two four- node clusters. The fuzzy algorithm tries to save pack- ets from getting lost and buffers them in other links. Indeed, the fuzzy algorithm loses less packets than the RIP algorithm. This buffering results in congested queues at other nodes, and therefore a higher waiting time for packets in these nodes. This behavior can yet not be corrected, because the fuzzy algorithm has to know more about the topological structure of the net- work. The RIP algorithm does not save any packets at all, so they just get lost and will not prevent other packets from travelling through the network.

The implementation of the Boorstyn solution showed the effect that a very simple implementation of the first stage which divides the links in good and bad paths, is highly dependent on the topological pre- sumptions. When the first stage does not care about these facts, a good routing performance is a mere coincidence and cannot react on dynamic changes of the load flow through the network; this also holds for the RIP algorithm.

A mathematical analysis of the given network leads to an optimal solution for the global end-to-end delay. It is given by the bifurcated routing scheme, which leads to a linear program for the optimal load distri- bution in the network. In the given network the opti- mum load distribution leads to the following total load flows. The links which connect the four-node cluster will henceforth be called type-i links. They all have a

load flow of

• ~i = 87. ( 1 1 )

The other links that connect nodes within these clus- ters are called type-ii links. Each of these links has a total load flow of

flqi = 57. (12)

The total network wide load flow is then given by

2tot = 16 • s 7 + 4 • 78-7 = 167. (13)

The total network wide generated load is

7tot = 87- ( 1 4 )

The mean number of hops which a packet takes from the source to the sink node is

~tot hop - . (15) 7tot

The mean percentage of packets travelling from nodes with two links h 2 and nodes with three links h3 is

8 . s 7 h2 - - - - - - 0.357; h3 = 1 - h2 = 0.643. (16)

)~tot

Every solution that leads to these mean load flows is an optimal solution for the problem. Now the first stage of the Boorstyn algorithm becomes clear. Only minimum hop paths are 'good paths'. If two paths with a minimum hop number exist, both paths are treated as 'good paths'. This scheme provides the above load distribution over the network and it is indeed a very simple scheme for the first stage. But this depends on the fact that the offered load at each node obeys the above made assumptions. If the load situation changes, the routing scheme is no longer optimal.

From these values the node internal parameters can be derived; therefore, the restriction for the queue length is removed. Then, the waiting queues behave in the model like M/M/l-queues if the interarrival times of the incoming traffic can be assumed as exponen- tially distributed. The calculation is performed for a

= 50 kbit/s. The packet arrival rate at a node with two outgoing

links is given by

'~in,2 = 7 + ~ 7 = 1 2 1 . 4 2 9 ( 1 7 )

150 W. Arnold et al./Fuzzy Sets and Systems 85 (1997) 131-153

j/ /

/

I o o o I

J:l , ~

III

E o 0 o I ,

• o o o

° o

&

o

o

q -

- - r e .

W. Arnold et a l . /Fuzzy Sets and Systems 85 (1997) 131 153 151

/

f f

f f

f f

°° ° , oo

0 0 0

, , ' : ,

;2"7

..':

. . . . . . . . . - L - "

I

I

I

I,.~,",~:~n~;~.. i~ ¸'' J

4

e .

6

E 0

~9 z

t~_

152 W. Arnold et al./Fuzzy Sets and Systems 85 (1997) 131-153

expressed in packets per second. In this formula the first 7 is the load which the node offers to the network. The second V denotes the remaining load which the network routes through this node. Then the mean delay in the routing algorithm and the incoming queue is given by

1 /w, in,2 - - '~in - - '4in.2 - - 0.007, (18)

Similarly, for a node with three links, the incoming waiting queue behaves as follows:

)~in,3 = 178.571 and tw, in,3 = 0.013. (19)

Then the mean time delay it takes the packets through the incoming queues and the routing algorithm is given by

tw, in = tw, in,2 * h2 q- tw, in,3 * h3 = 0.011. (20)

For the outgoing queues it is necessary to divide the two types of links. For both types the following values are obtained:

2ou t , i = 57.143 and /w, out, i = 0.146 (21)

for the first type and

•out, ii = 37.714 and tw,out, ii = 0.035 (22)

for the second type. Then the mean time delay which it takes the packets to get through the waiting queues at the outgoing links and the connected servers is

16 * ,~out, ii * / w , o u t , ii + 4 * ,~out, i * / w , out, i

tw, out = 16 * 2out, ii + 4 * 2out.i

= 0.067. (23)

At last the mean global end-to-end delay is given by

tete = tw, in + hop * (tw, in +/w, out)

=0.167. (24)

During the simulations the fuzzy algorithm resulted in a mean global end-to-end delay of 0.222 s, this is 32.93% more than the optimal value. This is surely not optimal, but for an algorithm which knows nearly nothing about the topology this is a pretty good result. Another point for the fuzzy algorithm is that the bi- furcated routing strategy is difficult to implement and causes too much overhead on the network which is

not taken into consideration in the above calculation. It is significant that no implementation of a bifurcated routing strategy has been reported up to this time.

6. Conclusion and further work

In this work we have presented two fuzzy rout- ing schemes for communication networks. The first scheme replaces the usual link evaluation function which is used in shortest path algorithms with a fuzzy evaluation module. It is a global, distributed routing strategy. The second scheme provides local, distributed routing using information like queueing length, transmission delay, security, etc.

Both approaches lead to the following advantages. For the price of a little more of storage space and of cpu time the use of a fuzzy link evaluator (as 'little routing expert') in a shortest path routing algorithm shows a way to interesting alternatives to the conven- tional methods. The flexibility and easy management of a fuzzy system allow more complex routing strate- gies. This is an interesting perspective - especially in view of further broadband networks with a great variety of different data (speech, video, file transfer, etc. ).

Every routing strategy depends on owner require- ments, a fuzzy router can easily be adapted to differ- ent routing criteria. With the help of fuzzy methods it is possible to expand the router's perspective and to take the type of service, e.g., the transported data, into consideration.

To get more precise information about the perfor- mance of a fuzzy shortest path router a quantitative analysis has to be done. Tuning the linguistic vari- ables and the rulebases might be promising and a different set of input parameters, which acts accord- ing to other goals of the routing strategy, could be tested.

A fuzzy algorithm may work in different environ- ments, e.g., in high speed networks or telephone net- works, without a significant decrease in performance. Not only the routing problem may benefit from the application of fuzzy methods, but still more problems can be found where the application of fuzzy methods is reasonable. In modern communication system tech- nologies, e.g., ATM, decision problems arise, which

W. ArnoM et al./Fuzzy Sets and Systems 85 (1997) 131-153 153

require the use of application specific information, for example, during the initialization phase of a connec- tion. These application fields make further work on the introduced topic most promising.

References

[1] W. Arnold, Anwendung von Fuzzy-Methoden auf Shortest- Path Routing Algorithmen in Rechnerkommunikationsnetzen, Diplomarbeit at the University of Federal Armed Forces Munich, ID-31/94 (1994).

[2] G.R. Ash, Design and control of networks with dynamic nonhierarchical routing, IEEE Comm. Mag. 28 (10) (1990) 34-40.

[3] G.R. Ash and S.D. Schwartz, Network routing evolution, in: A. Kershenbaum, M. Malek and M. Wall, Eds., Network Management and Control (Plenum Press, New York, 1990) 357-367.

[4] S. Bahk and M.E. Zarki, Dynamic multi-path routing and how it compares with other dynamic routing algorithms for high speed wide area networks, Comp. Comm. Rev., SIG-COMM #92, Comm. Arch. and Protocols (Baltimore, 1992).

[5] P.R. Bell and J. Kamal, Review of point-to-point network routing algorithms, IEEE Comm. Mag. 24 (1) (1986) 34-38.

[6] D. Bertsekas and R. Gallager, Data Networks (Prentice-Hall, Englewood Cliffs, N J, 2nd ed., 1992).

[7] A.R. Bonde and A. Ghosh, A comparative study of fuzzy versus 'fixed' threshold for robust queue management in cell-switching networks, IEEE Trans. Networking 2 (1994) 337-344.

[8] R.R. Boorstyne and A. Livne, A technique for adaptive routing in networks, IEEE Trans. Comm. 29 (1981) 474-480.

[9] W.H. Cameron and J. Regnier, State-dependent traffic mana- gement for telephone networks, IEEE Comm. Mag. 28 (10) (1990) 42-53.

[10] G.A. Cope and P.B. Key, Distributed dynamic routing schemes, IEEE Comm. Mag. 28 (10) (1990) 54-64.

[11] E. Dijkstra, A note on two problems in connection with graphs, Numer. Math. 1 (1959) 269-271.

[12] D. Driankov and H. Hellendoorn, Fuzzy-Control (Springer, Berlin, 1993).

[ 13] D. Dubois and H. Prade, Fuzzy Sets and Systems (Academic Press, Orlando, 1980).

[14] D. Dubois and H. Prade, Processing fuzzy temporal knowledge, 1EEE Trans. Systems Man Cybernet. 19 (1989) 729- 744.

[15] A. Ephremides and S. Verdu, Control and optimization methods in communication network problems, IEEE Trans. Automat. Control 34 (1989) 930-942.

[16] T.C. Fall, Evidential reasoning with temporal aspects, Proc. AAAI Conf. (Philadelphia, 1986) 891-895.

[17] L.R. Ford, Jr. and D.R. Fulkerson, Flows in Networks (Princeton University Press, Princeton, 1962).

[18] D.R. Fulkerson, Ed., Studies in Graph Theory, Part I, Studies in Mathematics (The Mathematical Association of America, 1975).

[19] I. Gitman and W.-N. Hsieh, Routing strategies in computer networks, Computer 17 (6) (1984) 46-56.

[20] H. Hellendoorn, Fuzzy numbers and approximate reasoning, Ann. Univ. Sci. Budapest. Sect. Comput. 12 (1991) 113-119.

[21] H. Hellendoorn, Fuzzy neural traffic control and forecasting, Proc. FUZZ-IEEE/IFES'95 (Yokohama, 1995).

[22] A. Khanna and J. Zinky, The Revised ARPANET Routing Metric, SIGCOMM '89 Symp., Comm. Arch. and Protocols (ACM Press, Austin, 1989) 45-56.

[23] J.M. McQuillan, I. Richer and E.C. Rosen, The new routing algorithm for the ARPANET, IEEE Trans. Comm. 28 (1980) 711-719.

[24] A. Rosenfeld, Fuzzy graphs, in: LA. Zadeh et al., Eds., Fuzzy Sets and their Applications to Cognitive and Decision Processes (Academic Press, New York, 1975) 77-95.

[25] H. Rudin, On routing and delta-routing: a taxonomy and performance comparison of techniques for packet-switched networks, IEEE Trans. Comm. 24 (1976) 43-59.

[26] M. Schwartz, Telecommunication Networks, Protocols, Modeling and Analysis (Addison-Wesley, Reading, MA, 1987).

[27] M. Schwartz and Th.E. Stern, Routing techniques used in communication networks, IEEE Trans. Comm. 28 (1980) 539-552.

[28] J.M. Snyder, A routing architecture for very large networks undergoing rapid reconfiguration, SIGCOMM '89 Syrup., Comm. Arch. and Protocols (ACM Press, Austin, Texas, 1989) 57-63.

[29] W. Stallings, Data and Computer Communications (Macmillan, New York, 2nd ed., 1988).

[30] A.S. Tanenbaum, Computer Networks (Prentice-Hall, Englewood Cliffs, NJ, 1989).

[31] R.E. Thomas, Optimum path problems, in: F.T. Boesch, Ed., Large-Scale Networks: Theory and Desiyn (IEEE Press, New York, 1976) 11-15.

[32] A. Weitzel, Lasttypenabh~ingiges Routing in Kommun- ikationsnetzwerken mit Fuzzy-Methoden, Diplomarbeit at the University of Federal Armed Forces Munich, ID-23/94 (1994).

[33] L.A. Zadeh, Fuzzy sets, InJbrm. and Control g (1965) 383-358.

[34] L.A. Zadeh, The concept of a linguistic variable and its application to approximate reasoning I, Inform. Sci. 8 (1975) 199 - 249.

[35] L.A. Zadeh, Fuzzy sets as a basis for a theory of possibility, Fuzzy Sets and Systems 1 (1978) 3-28.