Link-State & Ant-like Algorithm Behaviour for Single-Constrained Routing T.Michalareas. L.Sacks Telecommunication System Research Group Electrical & Electronics Department University College London (UCL), London, UK Abstract—In this paper we examine the steady state behaviour of the Link State routing protocol and the AntNet algorithm in simple topologies under uniform load. We show that under our scenario conditions both algorithms behave in the same operational region. We discuss also the applied statistical methodology and the necessary measurements for throughput behaviour in steady state.
I. I NTRODUCTION In [1] Dorigo et al. have presented a distributed algorithm for asymmetric best effort IP networks based on the biological paradigm of ants foraging behaviour. The authors have simulated their version of the algorithm called AntNet at the NFSNET topology (at the time) using Monte Carlo methods. They compared AntNet with other 4 routing algorithms and using the average packet delay and the throughput metrics. In this paper we simulate a similar version of this algorithm in three network topologies, a tree, a cycle and a general graph. The total throughput is used as a comparison metric with another routing algorithm, which is basically the Dijkstra algorithm run by a link-state protocol. The simulator used is ns-2 and a number of statistical test have been performed to validate our results. II. O UR
VERSION OF
A NT N ET ALGORITHM
The AntNet algorithm is based on the use of agents from individual nodes to sample the network’s state and form a view of it. Then the nodes use these views for making decisions on which interface to use for forwarding packets. The agents and the nodes themselves have no notion of optimization and they don’t have any knowledge of the optimal routes. The property of route optimality comes as an outcome of the collective behaviour of agents. In that sense this property is emergent. This is in contrast to link-state or distance vector algorithms where the participating units (network nodes) know the total cost of the subpath the forward a packet to. To perform the forwarding network nodes use pheromone tables a dynamic version of routing tables. A pheromone table has an entry for every possible destination (or aggregates) like in traditional routing tables. Instead of having a single interface to use for forwarding a packet heading to the node with the associated key ad-
dress the pheromone tables have a vector with as many entries as possible interfaces in that network node. For every interface there is an associated value in [0,1]. This value is the indicator of the goodness of that interface for forwarding traffic towards the associated destination address. At the original version of AntNet these values are treated as probabilities for using an interface, that is: forwarding of users and routing protocol’s packets is probabilistic using the vector as the probability distribution. In our version of the algorithm we have changed the forwarding of user packets to be deterministic using the interface with maximum goodness value (which is called also pheromone). The pheromone tables can be initialized to the uniform distribution or any other initial distribution. In our scenario we use the uniform distribution. of Every node with id k has also a list
estimates of the arithmetic mean and the associated variances for trip times from that node to all others in the network. This data structure is the view has for a node values the delay reaching any other node. The are used when the nodes update the pheromone tables along with measurements from the agents. To update its data structures in an asymmetrical network every node has two types of agents. The forward ant agent is spawned in regular intervals from all possible nodes s towards destinations nodes d, which are selected randomly. Every forward ant has a memory stack. The forward ants are forwarded towards their destination using the pheromone tables and they use the same queues as all other packets. Whenever a node receives a forward ant, it checks whether it has arrived in this node before and if it had (cycle detection) it removes all the entries of the cycle from ant’s stack. Then it pushes the arrival time into the agent’s memory stack. When a forward ant reaches its destination it spawns a backward ant agent at which it transfers its memory and terminates. The backward ant follows the reverse path the stack indicates and use its values to update the !" # $$% & data structure and the pheromone table of every intermediate node. When it arrives at the source of the initial forward ant
it terminates. The update rules for the pheromone table have to conserve the sum of the every vector goodness values to 1 (see Equation-II).
' $2143 $576$5 <;>=?A@CBD &E>
( )+*,.-0/ / -98:
(1)
We follow the update rules from [1], estimating a new parameter r’ whenever a backward ant reaches a node, coming from a node f. This r’ value is used to update the goodness values of the vector that is associated with the source node of the backward ant. The entry of the vector that corresponds to the interface that the associated forward ant used in its journey is increased (rule r+ in Equation-2) and the other are decreased (rule r- in Equation-3) where FG and FH ( are the last probability values assigned to neighbors of node k for destination d.
CN
-
I C KML F G K O- L F./ J P 1 5Q/. J ./ J 8 8 8S-U R T
(2) (3)
The estimation of r’ involves a number of steps. Initially a raw estimation of r’ is computed using Equation4. T is the observed trip ant, isInitsEquation-4, !"time # $$of% &the . This mean value as stored in list rule saturates out of range values 1. The second step OVW towith depends on the comparison of a arbitrary small OV is less that the threshold value, the threshold X . If algorithm considers that the observations on the mean are stable. In this case the previously computed of r’ <"Zvalue $[M (as is decreased or increased by the quantity Y in [1]).
\ ] ^`a_ b Dc d
a _ bfe / T / (4) @g= hB / : is increased : At the other case
Finally the value obtained at the second step is filtered through a power law and bounded in the interval of [0,1]. The reasoning for the second step is that the algorithm should discriminate the case where the traffic fluctuations follow the same statistics and the case that this statistics change. At the first case poor r’ values are increased and good r’ values are decreased. At the second case, where the algorithm cannot consider r’ a reliable measure of goodness, it tries to find a solution by amplifying the good r’ values and suppressing the poor ones. For more observations on the behaviour of Ant-like algorithms and the semantics of the parameter values look at [1][3]. III. T HE
SIMULATION SCENARIO
In our simulation we use three simple network topologies to estimate how different is the behaviour of the
Ant-like algorithm compared to a Link State algorithm at steady state. In our case we used as an example of Link State algorithm, LS that uses Dijkstra algorithm internally to compute routes. For comparison reasons we also use a static routing algorithm called Session routing. Session routing is called only at the begining of the simulation, to compute shortest paths while LS uses a network protocol to exchange information between peer routes in the fashion OSPF does. All algorithms estimate a single path for every destination node. LS and Session routing schemes use a deterministic rule to select that path if more equally good exist, while the Ant algorithm does that stochastically. The topologies considered, is a Tree, a Cycle and a General graph. The Tree is a topology that offers no alternative routes for any node in the network. The Cycle topology is the other extreme that offers the same number of alternative route for every node as interfaces. The example of General Graph is an intermediate situation where the nodes have connectivity between 2 and 3. The topologies are as in Figure-1. a)
b)
c)
Fig. 1. Topologies Used for Simulation Scenarios
The LS and the Session algorithm have no parameters associated with them. The Ant-like algorithm has a number of parameters associated with the discovering properties like the parameters c,a, a’, X , h(the exponential of the power law). In our simulations we kept the same parameters values as in [1]. In our scenario the traffic is generated by a number of FTP sessions established between every possible source destination source. The behaviour of the FTP sessions is basically Poisson-like and uses the TCPlib (described in [4]). We vary the number of active sessions between source and destination pairs according to a uniform distribution with minimum parameter a 0 and a varying maximum parameter b. Because we are interested in the steady state performance of the algorithm all connections start simultaneously after 100sec from the beginning of the simulation. Every simulation lasts for 100sec. IV. S TATISTICAL M ETHODOLOGY M EASUREMENTS
AND
In order to validate our results statistically we repeated five (5) times every experiment with a different seed. We selected their values based on the internal seed values that the ns-2 Simulator is using if the user selects a heuristic way to set the values. The distances between the random seeds are close to one million. The value of the seed
Fig. 2. Comparison in terms of Total Throughput for the Tree Topology
Fig. 3. Comparison in terms of Total Throughput for the Cycle Topology
changes the sequence at which the sessions start transmitting packets. We are interested in the total packets that have been successfully forwarded under a routing scheme. To measure that for every simulation we sample the number of successfully acknowledged packets from the TCP layer every 0.05 seconds during the 100sec long period the sessions are active. For steady state behaviour we are interested in averaging out the behaviour of TCP sessions due to the initial condition and the Slow-start phase. To succeed that we also sample the current window size of the TCP layer every 0.05 seconds. In our simulations we use TCP Tahoe. In this version TCP increases the window size exponentially during its Slow-start phase and linearly at the congestion avoidance phase. We are interesting in identifying the end of the first Slow-start phase that is due to the beginning of the simulation. We use the differential of the window size for that purpose. We chop our statistical sample until the differential is stable. To compare the behaviour of the algorithms we estimate the total throughput of each of our experiments for each of them. We estimate the average of the total throughput over the different samples. We also use the advanced Anderson-Darling(A2) test rather than the commonly used Kolmogorov-Smirnov test of normality(see [2] for reasoning) to check whether the total throughput measurements fir the normal curve. We also estimate the 95% confidence interval for every scenario as we increase the average load.
for estimating the 95% confidence interval for our data. The measurements are summarized in Figure-2, Figure-3, Figure-4. At the y-axis we show the achieved throughput in Mbits/sec for a specific scenario. At the x-axis we show the maximum number of active sessions for each source-destination pair in the network. The y-axis error bars show the 95% confidence intervals of average total throughput over the 5 samples we have for every scenario). The results for the other topologies follow the same trends.
V. R ESULTS All our Anderson-Darling tests of normality showed a reasonably good fit of our data to the normal curve distribution. That means that we can use the z .025 value
Fig. 4. Comparison in terms of Total Throughput for the Cycle Topology
We can see that the routing schemes have similar achieved throughput measurements. The behaviour of the averaged total throughput of the network is always between the 95% confidence interval zone.
VI. S UMMARY We have presented the Ant-like algorithm and the methodology for evaluating the achieved throughput for routing algorithms in steady state under uniform TCP traffic. We also show that for the case of uniform load both LS and the Ant-like algorithm behave similarly in 3 different topologies. R EFERENCES [1] [2] [3] [4]
G.D. Caro, M. Dorigo, ”AntNet: A Mobile Agents Approach to Adaptive Routing”, Technical Report IRIDIA 97-12. Vern Paxson, ”Empirically-Derived Analytic Models of WideArea TCP Connections : Extended Report”, June 1993, UC, Lawrence Berkeley Laboratory T. Michalareas, ”Stigmergy for Routing and Network Management”, Transfer Thesis for Ph.D. at EE Department, UCL, London, August 2000 S. Jamin, P. Danzig, R. Caceres, D. Mitzel, D. Estrin, “An Empirical Workload Model for Driving Wide-Area TCP/IP Network Simulations,” Journal of Internetworking 3:1, pp. 1-26, March 1992.