Computers and Industrial Engineering Vol. 25, Nos 1-4, pp. 167-170, 1993 Printed in Great Britain. All rights reserved
0360-835219356.00+0.00 Copyright © 1993 PergamonPress Ltd
A PROPOSED TESTBED FOR EVALUATING ADAPTIVE ROUTING ALGORITHMS
Susan M. West Department of Industrial Engineering University of Central Florida Orlando, FL 32816
William W. Swart, Ph.D. Muzaffar A. Shalkh, Ph.D. Department of Industrial Engineering School of Business University of Central Florida Florida Institute of Technology Orlando, FL 32816 Melbourne, FL 32901
ABSTRA(~T This paper discusses a newly-designed tool for evaluating routing algorithms in computer-communication networks. It is called the Adaptive Routing Testbed (ART). When implemented, ART will provide an efficient, effective means for evaluating the performance of routing algorithms in point-topoint networks. The method of simulation was chosen for this tool due to its advantages over analytical methods for this application. ,4 major contribution of ART is its flexibili.ty. It will simulate and evaluate the performance of a wide variety of routing algorithms under any valid network topology, switching mechanism, and traffic load. It will also simulate variations in the topology and traffic load while the algorithm is operating. Another significant contribution of ART is that the flexibility is provided without requiring the user to have programming skills. This is accomplished through a fully parameter-driven design. The specifications of the networks, traffic, component life, and routing algorithmz" are based on assigning values to parameters. The testbed will apply rules of logic when querying the user for parameter values: the next set of values requested will be based on previous re~wonses.
INTRODUCTION Computer-communications networks (CCNs) have become commonplace in both the government and private sectors. Many companies, agencies, and scholastic institutions use multiple computers which are interconnected via transmission links. The primary motivation for interconnection is to provide additional services and resources to the computer users at a reduced cost. Access to additional processing power, storage space, data, and application programs is an important benefit, while the sharing of hardware and software among many users reduces the cost to each user. Secondary motivations for networking include increased reliability and elimination of data exchange through hard copy or removable disks. Technological advances resulting in faster, cheaper communications have made interconnection even more desirable. Due to the prevalence of CCNs, a growing area of interest is in network performance. The performance is a function of the characteristics of the computers, the links, and the protocols employed in the network. The protocols govern the operation of the network through management of the communication between the computers; this communication is in the form of message traffic. One responsibility of the network is to direct the messages from their sources to their destinations; this is the function of the routing protocol. If each computer had a direct connection with every other computer in the network, routing
167
would be quite simple. However, the computers in most networks are not fully interconnected. The routing of the messages is accomplished through a decision-making mechanism installed in the network nodes. This mechanism is implemented in algorithms and data structures. The routing mechanism should seek to optimize network performance. Optimal performance can be measured in such terms as minimizing routing costs or message delay, or maximizing throughput or reliability. The selection of a routing algorithm for a network is not a simple procedure. Most algorithms are designed to operate in only certain types of networks: wide-area, packet radio, satellite, etc. The mechanism used to send messages within a network also affects the routing algorithm selection. Messages may be always assigned to one physical transmission path, or split into packets which can each travel along a different path. The general traffic characteristics in the network also affect the routing algorithm selection. Large file transfers, multiple destination data, or bursty traffic place different constraints on a routing algorithm. An added complication is that the traltic patterns could continually change throughout the operation oftbe network. When selecting an algorithm, it would be ideal to have some estimated measures for the performance in the target network of the algorithms under consideration. These measures could be obtained by the implementation of the study algorithms in the actual network. This method has several important limitations: implementation time may be significant, the network users would be inconvenienced by the tests, and the end result may be that the algorithms are found to be inadequate. It is also possible that the network exists only in the planning stages and, therefore, can not be used to test the algorithms. There has been much research in the selection of routing algorithms for networks and in developing improved algorithms. An investigation was conducted to determine a more efficient means of selecting a routing algorithm than implementation in the target network of the algorithms under study.
LITERATURE REVIEW After reviewing the relevant literature on routing algorithms, it was determined that there are many different types of routing algorithms and tools for evaluating them. A complete review of these is given
168
Proceedings of the 15th Annual Conference on Computers and Industrial Engineering
in [1]. A classification scheme for NON-ADAPTIVE ADAPTIVE the different types of algorithms was developed by synthesizing schemes found in the literature [2, 3, 4] and CENTRAL DISTRIBUTED CENTRAL ISOLATED DISTRIBUTE[ is shown in Figure 1. A brief review of the evaluation tools is given here. FIGURE i. Routing Algorithm Class'ifications' They consisted many of either analytical or simulation models. individual commodity flow values on each link. In Kleirtrock's [2] work in the field of queueing Schwartz solution process made use of an iteration theory, he applied his theory to computer networks. technique due to the non-linear expression in terms of An open queueing network (OQN) was defined which the flow variables. This method also lead to alternate corresponded well to a computer network. An OQN paths. is a network where customers enter the system, move The second method discussed by Schwartz for from one queueing facility to another, and exit the finding an optimal routing scheme is much more system. A history of previous studies on series of common. This method determines the shortest path queueing facilities and their behavior was given. An between each source and destination node pair in the important result of this work was called Jackson's network. Several common shortest path algorithms Theorem. For arbitrary OQNs with external Poisson were discussed. arrivals to the nodes, exponential servers at each node, Bazaraa and Jarvis [5] discussed linear and feedback and departures allowed, the total arrival programming methods for solving network flow process at each node is not generally Poisson. The problems. The Transportation, Transshipment, theorem states, however, that the network acts like a Minimal Cost Flow, Shortest Path, and network of M/M/m queues; the solution to the Multicommodity Minimum Cost Flow (MMCF) network is then in the product form. problems were all related to the routing problem. The delay analysis of OQNs under fixed routing With the exception of the MMCF problem, the was also discussed. This analysis requires Kleinrock's problems were formulated as linear programs and Independence Assumption. Since messages in the solved using the Simplex Method. Several solution network generally keep their message length as they methods for the Shortest Path problem were given: the travel through it, there is dependence between service standard linear programming solution, a more efficient times at successive queues. The assumption states algorithm, and a labeling algorithm The MMCF that the dependence can be ignored. Using the delay problem formulation was similar to the Schwartz analysis, the Traffic Flow Assignment problem, which minimization problem. The difference is in the corresponds to a routing problem, was solved. This objective function where Schwartz minimized network problem is where the average message delay in the average message delay instead of costs. In the cost network is minimized in terms of assigning the average case, the objective function was linear in terms of the traffic flow to each link. The link capacities, network decision variables. The linear programming solution topology, and nodal delays are fixed. The constraints involved a decomposition technique. This solution are the source to destination flow requirements and also may result in alternate paths. flow conservation laws. This is a non-linear Sauer, MacNair, and Kurose [6] published a paper optimization problem since the delay is non-linear in on the Research Queueing Package (RESQ) which is terms of the traffic flows. The problem was solved by implemented in the programming language PL/I. The the Flow Deviation method and resulted in an package uses both numerical and simulation methods alternate routing assignment. for analyzing queueing networks. RESQ provides a In Schwartz [3], a discussion was given on two modeling language to represent a system such as a different methods for solving the routing problem. CCN in the form of a queueing network. Macro-like The first method assumes that an optimal solution for constructs are available to define the queue and server the routing problem exists when the network-wide models. This package provides numerical solution average message delay is minimized. This expression methods such as Convolution or Mean Value Analysis. is given in terms of the number of links in the network, These are only used on networks with product form link capacities, traffic input to the network, fixed link solutions. Networks which violate product form delays, and the variables which were solved for: the solutions are solved through simulation. It supports average traffic flow on each link. The expression that studies of routing of an alternate form with was given was based on the same assumptions as probabilities assigned to servers. It can also be of an Kleinrock's OQN model. The minimization was adaptive form with routing based on current network formulated as a constrained optimization problem. states, such as queue lengths. In these cases, the This formulation corresponded to Kleinrock's with decision logic and necessary variables must be only a few differences. The most important difference programmed in the RESQ language by the user. is that Schwartz solved the problem as a Awcock and King [7] developed an event-oriented multicommodity flow problem. The traffic flow on a simulation model written in FORTRAN called link was composed of different commodities which NETSIM to evaluate the performance of adaptive corresponded to different source to destination routing algorithms. This high-level simulation models message flows. Kleinrock solved for the average flow user-defined topologies, traffic flow as a rate, route values for each link, while Schwartz solved for the
WEST et al.: Adaptive Routing Algorithms
tables calculated at specified intervals, and only ALGORITHM NETWORK decentralized routing TRAFFIC algorithms. In order to study a particular routing algorithm, FIGURE 2. the user must replace or modify the appropriate FORTRAN routines. Doner [8] published a paper on GENESIM, an event-oriented simulator developed to study adaptive routing algorithms for large networks. The simulator models: user-defined topologies, message lengths, and message generation times; simplex, duplex, broadcast, or multicast channels; and node or channel failures. The simulator was written in the simulation language MODULA. It is partially a parameter-driven simulator and partially user-coded. The topology definitions and initial parameter values are input via parameters in a hierarchical menu interface. The node, channel, link, and routing algorithm definitions, however, must be coded in MODULA. Hebert and Denz [9] published a paper on a process-oriented simulation model called the Internetted System Model (ISM). It was designed to simulate internetted heterogeneous computer systems. The simulation models: user-specified topologies, message arrivals (generated independently or dependently on other messages), message lengths, and source-destination node pairs; stationary or mobile nodes; packet-switched networks; and node or channel failures. The non-graphical components of ISM were developed in the simulation language SIMSCRIPT II.5 [10]. Although the model was not designed specifically to analyze routing, three types of routing can be modeled: fixed, one form of alternate, or one form of adaptive. The tool does not provide a module for the user to program in a different algorithm. LIMITATIONS OF CURRENT TOOLS Analytical. Many conditions in actual CCNs were not included in the analytical models: • non-Poisson, changing, or state-dependent arrivals • non-Exponential, changing, or state-dependent service times • dependencies between service and arrival times • message priorities • finite queue sizes • link and node failures • acknowledgment traffic Since these conditions were not included, the optimal routes produced may not really be optimal. Simulation. The simulation tools which exist to study routing were also found to have limitations. For example, many of the simulations were developed only to demonstrate the performance of a particular algorithm. The types of limitations found were categorized into three major areas: • Inflexibility: inability to analyze an algorithm under different network topologies or varying traffic conditions
1
ADAPTIVE ROUTING TESTBED
169
PERFORMANCE
Adaptive Routing Testbed •
Narrow in Scope: inability to analyze multiple algorithms or changes to an algorithm; may require programming to include or modify an algorithm Minimal Outout: limit in the number of performance measures gathered or computed
ADAPTIVE ROUTING TESTBED The Adaptive Routing Testbed (ART) tool is proposed in order to provide an efficient, effective means of evaluating the performance of routing algorithms in CCNs. ART is designed as a simulation, since, in general, simulation has s e r i a l advantages over analytical modeling when the system being modeled is complex: • over-simplifying or unrealistic assumptions do not have to be made • allows observation of the behavior of a system which is not in steady-state • allows observation of the behavior over time • has a descriptive rather than predictive nature • descriptive nature makes model easier to understand • provides many measures of performance rather than a limited number of expected values • handles changes to input values without requiring new model ART was also designed to overcome the limitations of the current routing algorithm simulations. It has the following major characteristics: • Flexible: handles different network topologies, network component failures and repairs, and varying traffic loads • Wide Scone: allows for analyzing many different routing algorithms or modifications to algorithms without programming • Sim,.ificant Outvut: provides automatic collection of a wide range of performance measurements Figure 2 is a high-level functional diagram of the testbed. It will accept a routing algorithm specification, a network topology, and traffic characteristics, and produce a performance analysis. The characteristics of ART can only be provided by making the testbed fully parameter-driven. This means that the specification of the networks, traffic, component life, and routing algorithms are based on assigning values to specific parameters. The testbed will also apply rules of logic when querying the user for parameter values, basing the next set of values requested on the previous responses. A parameterdriven model is especially important since the typical network analyst may not have simulation programming skills. Due to the large scope of the testbed, it is divided into several components; they are described in the following paragraphs. A diagram of the interactions between the components is given in Figure 3.
Proceedings of the 15th Annual Conference on Computers and Industrial Engineering
170
Tonoloav Oener~tor:
functions
USER
The
of
this
l~
QUERY
l/~
QUERY
l~
QUERY
I ~ Q UERY
,
IRESPONS~ I RESPONSk~ I RESPONS~I RESPONS~bl component are to query the user for the 1 I ToPOOGYl I T FIC II FAILURE I I GOR='I | I G~E~,O~ I I G ~ E ~ O R I I GE~E~°~ I IGE~E~°R I topology characteristics, check the validity of the / T ~,- ~ , ~ ,4, OuERY~ network topology, and create the necessary data structures to simulate the nodes and links. ENTITIES CONTROL T LE OLLE¢ TT E ME G EMENTS Traffic Generator: The functions of this component are to F I G U R E 3. Testbed Component Interaction query the user for the traffic characteristics, Measurement Collector: The major function of this check the validity of the traffic, and create the data component is to monitor the system by collecting data message generators for the network. A given type of on the performance of the network and the routing traffic is uniquely identified by the tuple: sourcealgorithms. This data is then used to calculate the destination-message type. The message lengths and performance statistics and will be formatted into an interarrival times can be specified from fixed values, output report for the user. probability distributions, or empirical data. Network Simulator: The function of this Failer¢ Generator: The functions of this component component is to model the network, traffic, and are to query the user for the failure and repair routing algorithm as specified by the user. statistics, check the validity of the failures, and create
l
si
Tio.
I
the data structures necessary to model the failures and repairs in the network nodes and links. The time between failures and repair times can be specified from fixed values, probability distributions, or empirical data, Ahtorithm Generator: The functions of this component are to query the user for the routing algorithm characteristics, check the validity of the algorithm, and to create the necessary data structures to model the routing algorithm. A section of the parameter querying structure, a tree, for this component is shown in Figure 4. Simulation Controller: The major function of this component is to manage the simulation. This includes checking the inputs from the other components for consistency, creating any additional data structures required, activating the appropriate processes, scheduling the appropriate events, passing control to the Network Simulator, and terminating the simulation according to the user-speeified termination criteria. NODES HAVE GLOBAL(G) OR LOCAL(L) KNOWLEDGE?
STATUS MESSAGE SIZE? PRIORITY OF MESSAGE?
ROUTING EXCHANGE MSG SIZE? PRIORITY OF MESSAGE? ACK ROUTING MESSAGE?
ACK LENGTH? ORITY?
LOOp PREVENTION?
%
MESSAGE HAS LAST OR PATH(P) VISITED?
F I G U R E 4. A S e c t i o n o f t h e A l g o r i t h m Generator Parameter Tree
,I
I,
CONCLUSIONS A significant review was conducted of the research on routing algorithm performance evaluation tools. The conclusion of this review was that there existed a need for a flexible, easy-to-use tool. The Adaptive Routing Testbed (ART) tool was designed to meet this need and provide an efficient, effective means for evaluating the performance of routing algorithms in point-to-poim networks. The next step is the implementation of ART based on the design in [1]. REFERENCES [I] Susan M. West. "A proposed adaptive routing testbed for computer-communication networks", Master's thesis, Universityof Central Florida, 1993. [2] Leonard Kleim'ock. Oueueitm Systems, Volume II: Conmuter Affolications. John Wiley & Sons, New York, 1976. [3] MishaSchwartz, TelecommunicationsNetworks: Protocols, Modoling and Analysis. Addison-Wesley Publishing Company, Reading, Massachusetts. 1987. [4] AndrewS. Tannebaum, CompBtcrNetworks. Prentice-Hall, Inc., EnglewoodCliffs, New'Jersey, 1981. [5] Mokhtar S. Bazaraa and John J. Jarws, Linear Proarammin~ and Network Flo~. John Wiley & Sons, New York, 1977. [6} Charles H. Sauer, Edward A. MacNair, and James F. Kuros¢, "The Research Qucueing package: past, present, and future", in Procoedings 1982 National Computer Conference. June. 1982, pp. 273-280. [7] M J. Aweock and T. E G King, "A systems dynamics model for communications networks", Royal Simmls and Radar EstablishmenLMemorandum3866, 1985. [8] John R. Doner, "GENESIM", IEEE Journal on S¢|ectgd Areas in Communications. Vol. 6, No. t, pp. 172-179, 1988. [9] Stephen E. Hcbcrt and M~. L. Denz. " I n t ¢ ~ System Model: a computer network simulation tool", Harris Corporation, 1989. [I0]SIMSCRIPT II.5 Progrmmmng Language, CA.C.I., Inc., Los Angeles,California, 1983.