Search Heuristics for Load Balancing in IP-networks

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Search Heuristics for Load Balancing in IP-networks"

Transcription

1 Search Heuristics for Load Balancing in IP-networks Mattias Söderqvist Swedish Institute of Computer Science 3rd March 25 SICS Technical Report T25:4 ISSN ISRN:SICS-T--25/4-SE Abstract Two of the most commonly used intra-domain Internet routing protocols are Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS). In both these protocols the traffic is routed along shortest paths to the destination without considering other traffic demands or load in the network. The weight of the links, and thereby the shortest paths, can be set by the network operator. This creates the possibility for the network operator to redirect traffic from congested links to less utilised links and achieve a more efficient use of the network. We study three different heuristics for the problem of finding a set of OSPF/IS-IS weights that optimises the performance of the network. We evaluate the heuristics in topologies with power-law properties and compare the obtained results with those from a standard weight setting recommended by Cisco (a major router vendor) as well as with those from an optimal multi-commodity flow routing. Our main conclusion is that one of the heuristics performs better than the rest of the heuristics and achieves results reasonable close to optimum. The overall results for all heuristics are better than the standard weight setting recommended by Cisco. Keywords: load balancing, IP-networks, power-law topologies, search heuristics. This projects is funded in part by the Swedish Agency for Innovation Systems (Vinnova) via the EvaluNet project, the Swedish Foundation for Strategic Research (SSF) through the Winternet project, and the European Commission via the Ambient Networks project.

2 Contents 1 Background Internet routing Related work Routing The general routing problem Link state routing The OSPF weight setting problem Optimal routing Difference between OSPF/IS-IS and general routing Search heuristics Local search Objective function Local search techniques Guiding the search with hash tables Speeding up evaluation Changing few weights Reasons to avoid weight changes Algorithm description Strictly descending search Objective function Local search technique Creating the neighbourhood Power-laws and the Internet Topology Power-laws Rank exponent Degree exponent Eigenexponent Hop-plot exponent Origin of power-laws Topology generator models First model (AB1) Second model (AB2) Third model (BT) Numerical Experiments Normalising s Performance of the algorithms Discussion Cost variation Hot spots Conclusions and further work References 4

3 1 Background The traffic volume on the Internet increases as the demand for Internet services increases. This increase in traffic volume leads to a higher frequency of overloaded connections in the network, causing a decrease in performance. To achieve better performance in the network and better utilisation of network resources, balancing the traffic in the network becomes important. When link loads approach link capacities, the network becomes congested with resulting packet loss and back-off in TCP. Balancing, or traffic engineering, is performed in order to redirect traffic from congested links to less utilised links and achieve a more efficient utilisation of the network. Two of the most commonly used intradomain Internet routing protocols on the Internet today are the link state protocols Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS). The traffic is normally routed without consideration of traffic demands or the capacity of the links in the network. Hence, there is a possibility that some links become overloaded. On the other hand, if the traffic demands and the capacities are taken into consideration, it is possible to improve the utilisation of the network and thus decrease the number of overloaded links. In this Master s thesis, the problem of finding a routing that optimises the utilisation of resources in networks using link state protocols is explained, and three different heuristics to address the problem are evaluated. Internet topologies with power-law properties is explained and the heuristics are evaluated in such topologies. Earlier the heuristics have been studied in random topologies and in a few real topologies, but not for topologies with power-law properties. In addition it is interesting to compare the different heuristics against each other, since this has not been done before. Different scenarios with hot spots, where the traffic to a router increases significantly, are also considered. Different types of routings are described and a mathematical formulation for the lower bound of the problem of optimising the routing is given. In all experiments the results are compared against this lower bound. The heuristics evaluated in this thesis are not the only ones proposed for the optimising the routing and a short overview of other methods for the problem is also given in this thesis. The rest of this thesis is organised as follows. First we give an introduction to Internet routing and present related work. In Section 2 we introduce different types of routings and formulate the OSPF weight setting problem. Section 3 present the three heuristics that are evaluated. Power-laws in Internet topologies is presented in Section 4. In Section 5 we present the evaluated instances and the methods used to generate them. Here we also present the results obtained for the heuristics and provide comments about the obtained results. 1.1 Internet routing The Internet Protocol (IP) is the communication protocol that is the basis of the Internet. One of the main design principles of the Internet Protocol is the end-to-end principle. This principle means that as much of the complexity of the network as possible should occur at the end points of the system. Translated to the Internet this means that client computers make the communications operations, while the Internet Protocol simply moves datagrams across the network. The Internet Protocol handles the transmission of data on the Internet, 1

4 but there is no direct link between the packet s source and destination; it is a connectionless system. To make the packet arrive at its destination, the Internet Protocol needs a routing mechanism that finds a route from the source to the destination and delivers the packet along this route. It is also desirable that this routing is efficient, in terms of transmission time, use of network resources, etc. In the most commonly used routing protocols the traffic is routed along the shortest path from the source to the destionation. The shortest path is calculated using the weights that is assigned to each link. Hence, by changing the weights of the links it is also possible to change the routing. This type of routing is simple, but it makes it diffucult to achieve load balancing. However, there are several heuristics that can calculate weights that improve routing performance, and some of them are discussed in this Master s thesis. 1.2 Related work There are several ways to approach the problem of optimising the routing and a number of different heuristics for the problem have been proposed. It is possible to use some kind of local search heuristic like the ones proposed in [12, 13, 17]. All these heuristics work in different ways and with, on the whole, good performance. Attempts to create heuristics have also been made with both genetic algorithms [1, 16] and hybrid genetic algorithms [7, 19, 2]. In a genetic or hybrid genetic algorithm it is desirable to have a simple cost function that is quick to evaluate. Unfortunately the cost function for the problem of optimising the routing involves computing the shortest paths between all pairs which makes it relatively slow to evaluate. Despite this drawback the mentioned genetic and hybrid genetic algorithms are reported to perform well [7, 1, 16, 2]. 2

5 2 Routing There are several different types of routings, each one with different rules and restrictions. In this section we describe general routing and routing on the Internet, and discuss differences between them. 2.1 The general routing problem The general routing problem can be defined as the problem of optimising the use of existing resources in a network while routing the traffic according to given traffic demands. The network can be seen as a directed graph G(N, A), A N N. The nodes (N) in the graph represent routers and the arcs (A) represent the links between the routers. Each arc a A has a capacity c a which is the capacity of the link that the arc a represents. To optimise the routing in the network we also need a demand matrix which tells us how much traffic is sent between each node pair. The entry D(s, t) in the demand matrix is the amount of traffic sent from node s to node t. However, the demand matrix can be difficult to estimate as the traffic in the network is changing constantly. It is possible to compensate for this by optimising the network while considering multiple demand matrices [13]. To optimise the routing we also need a formal objective. For that we need a measure to quantify the routing cost. To this end we define the utilisation, u a, of an arc to be the load, l a, on the arc divided by the capacity of the arc: u a = l a c a. (1) The objective can be defined in several ways, one straight forward approach is to minimise the maximum utilisation over all arcs. If the objective value being minimised is Ω, the function becomes Ω = max a A (u a). (2) Another slightly more complicated approach is to associate a cost function f, which depends on the arc s utilisation. And then minimise a function that summarises the cost over all arcs. Ω = a A f(u a ) (3) The cost function proposed by Fortz and Thorup [12] is a function that summarises the cost over all arcs in the graph. The equation of the cost function for the graph is Φ = a A Φ a (l a ). (4) For each arc, a A, the cost depends on the load, l a, on the arc and on the capacity, c a, of the arc. The cost function, Φ a, associated with each arc tries to resemble the characteristics of the delay function in an M/M/1 queue. An M/M/1 queue is a queue where the arrivals are Poisson distributed and enter an infinite buffer with an exponential service time distribution. One server is being used and the entries in the queue are handled first-come-first-served. The 3

6 notation used is due to D. G. Kendall and has now become a standard notation in the queueing literature. The cost function is a piecewise continuous linear increasing convex function with Φ a () = and derivative 1 for l a /c a < 1/3, 3 for 1/3 l a /c a < 2/3, Φ 1 for 2/3 l a(l a ) = a /c a < 9/1, (5) 7 for 9/1 l a /c a < 1, 5 for 1 l a /c a < 11/1, 5 for 11/1 l a /c a <. Equation (5) is illustrated in Figure 1. Clearly this function gives low costs to arcs with low utilisation and penalises arcs with loads approaching or exceeding the maximum capacity of the arc. The function Φ a gives an arc which has the load exactly equal to its capacity a cost of This cost is shown by the dashed line in the Figure 1. The general routing problem consists of routing the traffic, given by the demand matrix D, in the graph G while minimising an objective function. In the general routing problem, the flow between an origin node and a destination node can be arbitrarily split among several different paths arc cost utilisation Figure 1: Cost function for load on a link 2.2 Link state routing In link state or shortest path first (SPF) routing protocols, such as OSPF [15] and IS-IS [8], each router collects information about the network topology. Each router puts together information about all its outgoing links in a Link State Advertisement (LSA) that is flooded to all other routers in the network. This can be described as telling the world who your neighbours are. In that way, all routers in the network will obtain the same information about the network topology. Each router that receives an LSA adds that information to its description of the 4

7 topology and resends the LSA to its neighbours. Eventually all routers have an identical database describing the networks topology. In particular the database contains information about the cost for each link in the network, described by a single dimensionless metric. From the database a routing table is derived. In this routing table each destination that the router can forward packages to is represented by a cost and a set of paths, where a path is described by its type and next hop. All the traffic from a router will be forwarded along the path stated in the routing table. The cost and the path is calculated by the router using Dijkstra s shortest path algorithm [4]. The cost for each link can also be seen as the length or the weight of that link and is set by the network operator. Changing this cost for a link will affect all shortest paths containing that link and it may lead to new shortest paths between some pair of routers with subsequent updates in the routing tables. Hence it is possible to achieve load balancing in the network by changing the costs for the links. If this is done properly congested links and inefficient use of the network can be avoided. Changing the link weights is also the only way in which a network operator can change the routing. However, since manual tuning of the routing metric is far from trivial, the weights are usually left at their default values. The recommended value is normally the inverse of the link s capacity [9]. The straight forward approach, to increase the weight on overloaded links, may lead to a routing of the traffic where other links become overloaded and it is very unpredictable. Unfortunately there is no simple way to change the link weights as the problem of finding weights to optimise the routing in the network is known to be NP-hard [12]. By using search heuristics it is possible to obtain a set of weights that increases the overall performance of the network. Different heuristics for optimisation of the link costs have been proposed [7, 1, 12, 13, 16, 17]. An extension to OSPF is Equal-cost multi-path (ECMP) which allows splitting of traffic flows between multiple paths of equal cost. The traffic is split evenly among all equal-cost paths, which will make the different paths share the load that otherwise would have been put on one single path. In the OSPF and IS-IS protocols a weight is assigned to each link by the network operator, and the shortest paths from each router to each destination are computed using these weights as lengths of the links. 2.3 The OSPF weight setting problem Clearly the weights set by the network operator in a OSPF or IS-IS network will influence the routing performance as they determine along which paths the traffic is routed. The OSPF weight setting problem consists of assigning positive integer weights to each arc a A such that the routing cost is optimised when the demands are routed according to the rules of the OSPF or the IS-IS protocol. Unfortunately when taking the restrictions of the OSPF or IS-IS protocols into consideration the problem of finding weights that optimises the routing, in terms of cost or max utilisation, is NP-hard [12]. 2.4 Optimal routing With linear programing (LP) it is possible to find an optimal solution to the general routing problem. We define two different LP-problems, the first one has equation 4 as objective function and the second one is formulated with 5

8 equation 2 as objective function. In both problems the input is a directed graph G with n nodes and m arcs and a demand matrix D. To formulate the problem as an LP-problem, we use the variables defined in Section 2.1. Further let f t a denote the traffic flow on arc a with destination node t. The characteristic cost function used for the arcs, Φ a is the one given by equation (5). The problem can now be formulated as the LP-problem: subject to min Φ = aɛa Φ a (6) u:(u,v) A Φ a l a a A (7) Φ a 3l a 2 3 c a a A (8) Φ a 1l a 16 3 c a a A (9) Φ a 7l a c a a A (1) Φ a 5l a c a a A (11) Φ a 5l a c a a A (12) 3 l a = tɛn f t (u,v) f t a a A (13) u:(v,u) A f t (u,v) = { D(v, t) if v t u N D(u, t) if v = t t, v N. (14) Constraints (7) to (11) define the cost on each arc, where c a is the capacity on arc a. Constraints (13) define the load on each arc l a as the sum of all flows with different destinations on the arc. Constraints (14) is the flow conservation constraints, (u, v) is the arc from node u to node v. Further, u : (u, v) means all the arcs that are going to node v and u : (v, u) means all the arcs that are going out from v. The flow conservation constraints dictates that all incoming flow to a node must be forwarded if the flow has another destination node. Totally there are mn + 2m variables and n 2 + 7m constraints in the problem, where m is the number of arcs and n is the number of nodes in the graph. In order to solve the problem of minimising the maximum utilisation over all links we have to modify the LP-problem slightly. First we introduce a variable u that we want to minimise. The new constraints are that the utilisation on all links should be less or equal to u. The LP-problem is then as follows: 6

9 subject to min u (15) l a c a u a A (16) l a = tɛn f t a a A u:(u,v) A f t (u,v) u:(v,u) A f t (u,v) = { D(v, t) if v t u N D(u, t) if v = t t, v N. This last LP-problem has mn + m + 1 variables and n 2 + 2m constraints. It can be seen that the last two constraints are the same as (13) and (14), in the previous problem. But the constraints given by (16) are different from the previous formulation, it states that the utilisation of each arc has to be less than or equal to u. Both problems have been solved using the function linprog in MATLAB. As shown, the general routing problem can be formulated as an uncapacitated multi-commodity flow problem, which is a linear programing problem. In particular, it allows arbitrary routing whereas in OSPF/IS-IS routing the traffic needs to be routed along shortest paths and can only be split evenly along those, not arbitrary along all paths. This makes the general routing problem a relaxation of the OSPF weight setting problem. Hence the general routing problem can be used as a lower bound to the OSPF weight setting problem. This lower bound is useful when evaluating the results from the heuristics, we know that it is not possible to obtain better results than the lower bound. It enables us to measure how far away from this limit the results are. 2.5 Difference between OSPF/IS-IS and general routing In this section we illustrate the differences between OSPF/IS-IS routing and optimal routing with a simple example. The graph in Figure 2 illustrates a network with four nodes and eight links. The capacity of each link is 4 units and the traffic demands from node A to node D is 6 units and 2 units from node C to node D. With general routing this can be done by splitting the traffic from A to D over two paths. The first path is A B D with 2/3 of the traffic sent over this path. The second path is A C D with 1/3 of the traffic. The second traffic demand is sent directly from C to D. It can be seen in Table 1 that this routing does not overload any of the links. Table 1: Utilisation on the links with optimal routing. Link l 1 l 2 l 3 l 4 Utilisation With OSPF/IS-IS routing the traffic has to be sent along a shortest path. Hence with the same network and traffic demands as before, the best OSPF/IS- IS routing we can find is the one where all traffic from A to D is sent over the 7

10 B l l 2 1 A D l 3 l 4 C Figure 2: Example graph for OSPF/IS-IS and general routing. path A B D and the traffic from C to D is directed directly between the two nodes. However, this will overload the links l 1 and l 2 and give them a utilisation of 1.5. In Table 2 we can see the utilisations for the links with this routing and we notice that link l 3 will have no traffic at all. Table 2: Utilisation on the links with OSPF/IS-IS routing. Link l 1 l 2 l 3 l 4 Utilisation By taking advantage of ECMP we can improve the previous situation. With ECMP we can split the traffic from A to D equally over two paths. The first path is A B D and the second one is A C D. Like in the previous case, The traffic from C to D is routed directly between the two nodes. This routing is an improvement, but it still contains overloaded links. The utilisations for the links with this routing is depicted in Table 3. Table 3: Utilisation on the links with ECMP routing. Link l 1 l 2 l 3 l 4 Utilisation From the examples we see that the optimal routing does not congest any links, whereas both the OSPF/IS-IS routing and ECMP routing overload one ore several links. The ECMP routing has an advantage over OSPF/IS-IS as it overloads only one link compared to two. 8

11 3 Search heuristics The heuristics evaluated are local search heuristics with the objective to optimise the routing cost in a network by evaluating different OSPF weights. A capacitated graph G = (N, A) and a demand matrix is given as input to the heuristics and the output consists of a set of weights, where each weight is associated with an arc in the graph. To find the set of weights that constitute the output, a local search is performed. The heuristics evaluate points in a search space, where a point is represented by a set of weights. A neighbour to a point is another set of weights produced by changing the value of one or more weights from the first point. In the heuristics, different neighbours are produced and the cost of each one is calculated using a cost function. From each heuristic the neighbour with the best cost is the one that will be the output. Each heuristic is explained in further detail in the following sections. 3.1 Local search The first heuristic we study is the local search proposed by Fortz and Thorup [12]. Each part in the heuristic is explained in the following sections Objective function In order to optimise the set of link weights, an objective function, Φ, is introduced. The formal objective of the local search is to minimise this cost function, which is the sum of the resulting costs over all arcs. The objective function used in this heuristic is described by equations (4) and (5) Local search techniques The local search performs 5 iterations, each iteration involves selecting a number of neighbours of a given point and then calculating the cost for all these neighbours. The neighbour with the best cost is then passed forward to the next iteration as the new point to select neighbours of. The cost of the best neighbour will also be compared to the best cost found in all iterations so far and if appropriate the currently best solution is updated. A solution of the weight setting problem is completely characterised by its vector w = (w a ) a A of weights. The weights in the vector are all limited to be in the range [1,..., 2]. This restricted range increases the chance of even splitting due to multiple shortest paths form a node to some destination [12]. Further the OSPF and IS-IS protocols state that the link weights should be integers. Each vector can be seen as a point in the search space. A neighbour solution can be produced in two different ways, single weight change and evenly balancing flows. Single weight change: In this method the value of a single weight in w is changed and a new point in the search space is created. Evenly balancing flow: This method aims at splitting the flow as evenly as possible between different arcs by taking advantage of ECMP to minimise the load on the 9

12 arcs. Splitting the flow between several paths can be done if there are multiple shortest paths (with the same distance) between the source and destination node. One way to obtain this is by changing the weights on the outgoing arcs from the source node such that all paths between the source and the destination have equal lengths. Since all weights still have to be in the range [1,..., 2] the lengths of the paths have to be chosen such that no arc get a weight outside this range. As an example consider the graph in Figure 3. The traffic from node A to node E can be split by the three different paths that exist between the nodes. In order for the routing to split the flow in this way the paths need to have the same length. This can be arranged by changing the weights on the links l 1, l 2, l 3, such that the distances of l 1 + P 1 and l 2 + P 2 and l 3 + P 3 are all equal. B P 1 A l 1 l 2 C P 2 E l 3 D P 3 Figure 3: Splitting the flow among several paths Guiding the search with hash tables When the neighbours are created, it is possible that the same weight setting will arise and be evaluated multiple times. To avoid this and increase the efficiency of the algorithm a hash table is used. The hash table is a boolean table T with all values set to false at the beginning. The hash table records if a hash value, produced by the the corresponding hash function h(w), has already been encountered. Let w be the solution produced at a given iteration, the corresponding value T (h(w)) in the hash table is then set to true and none of the subsequent solutions that are mapped to the same hash value will be evaluated. As the hash table is a boolean table it does not handle collisions at all. This leads to roughly 1% [12] of all produced neighbours being eliminated without evaluation because of collisions in the hash table. There is a risk that several of those neighbours are potentially good solutions that the local search would benefit from evaluating. However, in many cases there are several weight settings that have the same cost, so chances are that a weight setting with the same cost will be found elsewhere. The neighbours eliminated through collisions in the hash table are essentially random, also the heuristic does not evaluate the entire search space and is already highly randomised when deciding which points to evaluate. Altogether this means that the collisions in the hash table are not as critical as they first may seem to be [12] Speeding up evaluation A drawback with the neighbourhood structure in the local search is that the number of neighbours of a given solution is very large and evaluating the cost of 1

13 all neighbours may be too time consuming. To reduce the time spent exploring the neighbourhood only a randomly selected set of neighbours is evaluated. When the search starts, 2% of the neighbourhood is evaluated. Then every time the current best solution is improved the size of the sampling is divided by three and every time it is not improved the sampling size is multiplied by two, with the exception that at least 1% of the neighbourhood is evaluated. Normally the cost evaluation involves computing the shortest distances between all pairs of nodes from scratch, but when only a few weights are changed the cost evaluation can be more efficient by using the previous calculations and considering only those paths that change. For further details see the algorithm by Ramalingam and Reps [18]. 3.2 Changing few weights The second heuristic is proposed by Fortz and Thorup in [13]. As their previous heuristic, described in Section 3.1, this version also has as its objective to route demands through an OSPF/IS-IS based network as efficiently as possible Reasons to avoid weight changes This heuristic also considers a second objective; to change as few weights as possible, which can be done in situations where the network or the traffic changes. There are two major reasons why the number of weight changes should be kept to a minimum. First, every weight change is disruptive for a network as it may take several seconds before the change has been spread to all routers and they can compute the new shortest paths. Meanwhile the routers may have very diverging opinions of the weights and shortest paths which can create loops, leading to a chaotic behaviour. This drawback may be acceptable if the weight changes are not too frequent. The second disadvantage with changing many weights is that a human network operator controls the weight configuration and makes sure that the resulting routing satisfies a divers set of requirements. These requirements can include congestion control, but also other network specific requirements. If the network operator only has to change a few weights it would be easier to understand what the effects on the routing will be Algorithm description The algorithm for few weight changes takes the same input parameters as the local search in Section 3.1, a capacitated graph G, a demand matrix D and in addition an original weight setting w. It also uses the same cost function Φ (equation 5) as in the previous local search. The heuristic for improving a weight setting starts from the original weight setting w. As in the previous heuristic (Section 3.1.4) exploring the entire neighbourhood would be too time consuming. In order to reduce the number of neighbours to explore, random sampling is applied to the neighbourhood. The sample size is set so that from the original weight setting a neighbourhood with approximately 1 neighbours is created, each one by making a single weight change to the original weight setting. When all neighbours are evaluated the 1 best are kept in a family F. The next iteration starts from F instead of w and from each weight setting in F about 1 single weight changes are made, creating a neighbourhood with 11

14 roughly 1 new weight settings. From these 1 neighbours, the 1 best ones are once again kept in a family F and a new iteration can begin. Since only one weight changes in each iteration the number of weight changes in the final solution will not be more than the number of iterations the heuristic performs. Hence it is possible to control the number of changed weights in the solution by limiting the number of iterations. 3.3 Strictly descending search Another heuristic for the OSPF weight setting problem is proposed by Ramakrishnan and Rodrigues in [17]. Their approach is to use a combinatorial approximation algorithm which finds a locally optimal solution. As in the previous two methods described in Section 3.1 and Section 3.2, an objective function that is composed of the arcs costs, is used to calculate the cost for a weight setting, which in turn is used to compare different weight settings. The cost function for each arc used in this heuristic is different than the previous one, but follows the same principle; arcs with a high utilisation will be associated with a high cost and arcs with a low utilisation will be associated with a low cost. Also the way the search is performed differs from the two previous methods: in this heuristic the search is strictly descending Objective function In order to optimise the set of arc weights, an objective function, Φ, is introduced. The formal objective of the local search is to minimise this objective function, which is the sum of the resulting costs over all arcs. As in Section the cost for each arc, a A, depends on the load, l(a), on the arc and on the capacity, c(a), of the arc, but the cost function Φ a associated with each arc is different and has the equation. Φ a (l(a)) = l(a) c(a) l(a). (17) Equation (17) is illustrated in Figure 4, which shows that the equation approaches infinity as the arc load approaches the capacity of the arc. The equation also gives negative values to arcs that have a higher load than capacity. As the goal for the heuristic is to minimise the objective function, the restriction l(a) < c(a) has to be imposed on all arcs, or the costs for the arcs with l(a) c(a) has to be handled specially. We can also rewrite the cost function Φ a slightly to avoid the problem. We let Θ a be the new cost function for the arcs, { Φa, if l(a) < c(a) Θ a = (18), otherwise. This function clearly avoids the problem of associating overloaded arcs with negative costs, but also makes it impossible to decide which of two weight settings with overloaded arcs is better Local search technique The local search algorithm is strictly descending, it starts from a point P and stops when it reaches a locally optimal solution. Each iteration in the search 12

15 arc cost utilisation Figure 4: Cost function for load on an arc starts from the best point found so far, P, and all the neighbours of P are found and evaluated with the objective function. If the neighbour with the best value is better than P the search continues with the best neighbour as the starting point in the next iteration, otherwise a locally optimal solution is found and the search ends Creating the neighbourhood The neighbourhood of a point in the search space consists of several different points that all are represented by different weight settings. When a neighbour point is created, it is done in such a way that the load on one arc will decrease. This method starts with an arc a and a set p a with the node pairs that have paths over a. Here the goal is to increase the weight on the arc a such that at least one path is diverted from that arc. This will occur when the distances between a pair of nodes is shorter over a different path than the path containing a. To find the weight increase for arc a first the arc is removed from the graph, all the shortest paths between the pairs in p a will thus change. Then those node pairs are sorted in increasing order with respect to their distance increase (the difference between their distances after and before arc a was removed). Now the paths with the least increases in distances are the paths that should be diverted from a. To divert the path with the least distance increase, the weight on a has to be increased with a value greater than the least distance change, and to divert that path only, the value also has to be smaller than the next-to-least distance change. Ramakrishnan and Rodrigues choose the exact midpoint between the least and next-to-least distance change as the value for the weight increment. When the weight is changed the neighbour is produced and no more weights will be changed. One problem that needs to be solved to use this method in practise is that it can produce non integer arc weights and the OSPF and IS-IS specifications dictate that the weights should be integers. 13

16 If the weights are not too large this can in most cases be solved by multiplying all weights by a common factor, such that all weights obtain integer values. Ramakrishnan and Rodrigues do not consider an algorithm to create new neighbours that takes advantage of ECMP in their search heuristic. However it is simple to modify their algorithm such that it produces neighbours intended for ECMP routing. It can be noticed that if the weight increase is set to be equal to the least distance change there will be two shortest paths with the same distance between the pair of nodes, and if ECMP is used the flow can be split evenly between the two paths. We illustrate the method of finding new neighbours by a short example. Figure 5 shows a network with five nodes and ten links. The link weights are shown in Table 4. For this example the traffic demands are as follows; A to C is 2 units, B to C is 4 units and E to C is 1 units. All link capacities are 4 units. B l 1 l 5 l 2 l 6 A D l 9 E l 1 l 3 l 4 l 7 l 8 C Figure 5: Diverting a flow from link l 8. Table 4: Weights for the links in the graph in Figure 5. Link l 1 l 2 l 3 l 4 l 5 l 6 l 7 l 8 l 9 l 1 Weight The shortest distances between all origin-destination (OD) pairs for this weight setting are given in Table 5. Table 5: OD pairs and their shortest path distances. From \ To A B C D E A B C D E The utilisation on each link, when we do the routing according to the OSPF 14

17 protocol (with or without ECMP), for this weight setting is shown in Table 6. The table shows that the link l 8 will be overloaded, with an utilisation of 1.5. Table 6: Utilisation on the links with original weight setting. Link l 1 l 2 l 3 l 4 l 5 l 6 l 7 l 8 l 9 l 1 Utilisation To find another weight setting that can decrease the utilisation on link l 8 we calculate the new weight for the link. We do this by first removing the link and recalculate the shortest distances for all OD pairs. This gives us the new shortest distances in Table 7. Table 7: OD pairs and their shortest path distances with link l 8 removed. From \ To A B C D E A B C D E Now we consider the paths that have changed distances. The ones with the smallest change is A D, A E and B C, which all change by 1 unit. The one with the second smallest distance change is the path D C, which change by 9 units. This gives us 1 = 1 and 2 = 9. The weight on link l 8 is now updated by adding ( )/2 to its old value, giving it the new weight 7. This update will divert the shortest path from B to C from both the links l 5 and l 8 so that its new route is B A C and thus decreasing the load on the links l 5 and l 8. The new utilisations are presented in Table 8. Table 8: Utilisation on the links with new weight setting. Link l 1 l 2 l 3 l 4 l 5 l 6 l 7 l 8 l 9 l 1 Utilisation This weight setting has a lower maximum utilisation, but there is still an overloaded link. If we take advantage of ECMP there is a possibility to improve the routing even more. The idea is to split the traffic between several different paths. We start with the original weight setting and calculate a new weight for l 8. This time, instead if adding the average of 1 and 2 to the old weight we only add 1. This makes the paths B A C and B D C equally long and the traffic from B to C will be split between them. The utilisations given by this weight setting are presented in Table 9. Table 9: Utilisation on the links with ECMP weight setting. Link l 1 l 2 l 3 l 4 l 5 l 6 l 7 l 8 l 9 l 1 Utilisation This weight setting is better than the two previous ones as it does not overload any links. 15

18 4 Power-laws and the Internet Topology The structure of the Internet topology can appear to be uncontrolled and random, however Faloutsos et al. [11], show that the Internet can be described accurately with power-laws. These simple power-laws provide a novel perspective of the Internet structure and concisely describe skewed distributions of topology properties, such as the node out-degree. Where the out-degree is the number of outgoing links from a node. Other metrics, that are based on average, minimum or maximum, do not describe skewed distributions very well, because certain information about the network topology is not taken into consideration. With a profound understanding of the Internet power-laws it is possible to construct topology models that generate topologies that are more accurate and similar to the real Internet compared to what previous models produce. With better models it is also possible to evaluate algorithms and protocols for the Internet in more realistic topologies. The ideal would be to use real Internet topologies, but such information is difficult to obtain and typically proprietary. 4.1 Power-laws In general, power laws can be written as: y x a, where x, y are the measured values of interest, a is a constant and means proportional to. In the following definition it is assumed that G is an undirected graph representing the topology of an Internet instance. When the x and y values are plotted in a log-log scale a linear fit is obtained and it is possible to calculate the correlation coefficient for the values. Faloutsos et al. [11] define three different power-laws and evaluate them against four different Internet instances. The power-laws hold for all instances with a correlation coefficient of at least 96%. However, four instances is a rather small material to verify the power-law assumption from. The evolution of the Internet could rather quickly change the structure of the network topology to violate the power-law assumption. Siganos et al. [21] show that the power-laws where not just a coincidence in those four instances, but they are valid over several years and for thousands of instances Rank exponent This power-law describes properties of the out-degrees of the nodes. The outdegree of a node is defined as the number of links leaving the node. Let the rank of node be its index in the order of decreasing out-degree, then the rank of node v is r v. Also let the out-degree of node v be d v. With these definitions the first power-law says that the out-degree, d v of a node v is proportional to the rank of the node, r v, to the power of a constant, R. d v r R v (19) The rank exponent, R, can differ for different graphs, depending on the characteristics of the graph Degree exponent The second power-law describes the distribution of the out-degrees in a graph. Let D d be the Complementary Cumulative Distribution Function or CCDF, of 16

19 out-degree d. The CCDF is the percentage of nodes that have a out-degree greater than the out-degree d. The power-law states that the CCDF, D d, of a out-degree, d, is proportional to the out-degree to the power of a constant, D. D d d D (2) The degree exponent, D, is the slope of the plot of the CCDF for all out-degrees versus the out-degrees in log-log scale. This power-law suggests that the outdegrees of Internet nodes are not arbitrary Eigenexponent The eigenvalues, λ i, of a graph is defined as the eigenvalues of the graph s adjacency matrix. It has previously been found that the eigenvalues of a graph are related to some basic graph properties such as the diameter, the number of edges in the graph and the number of spanning trees [11]. In addition to these properties there is a power-law for the topology s eigenvalues. When the eigenvalues are sorted in decreasing order, λ i is the i:th eigenvalue and the eigenvalues are proportional to their order to the power of a constant. λ i i ε (21) The constant ε is called the eigenexponent and it takes different values depending on the type of graph that the eigenvalues belong to Hop-plot exponent With the hop-plot exponent it is possible to get an approximation of the size of a neighbourhood within some distance. Let the distance between two nodes be the number of hops, link traversals, between them. Further let P (h) be the total number of pairs of nodes, including self pairs and counting all other pairs twice, within h hops. Then the total number of pairs of nodes, P (h), within h hops, is proportional to the number of hops to the power of a constant, H. P (h) h H, h δ. (22) Where the hop-plot exponent H is a constant and δ is the diameter of the graph measured in number of hops. 4.2 Origin of power-laws So far we have seen three different power-laws, but we have not examined any possible causes for the appearance of them. If we understand the reasons why power-laws arise it can help us to create models that can be used to generate topologies with power-laws properties. Below, four possible causes for powerlaws are presented. Preferential connectivity suggests how a new node connects to other nodes. New nodes tend to connect to existing nodes that already are highly connected or popular. Medina et al. [14] find that preferential connectivity is a necessary condition for the rank exponent power-law as well as for the out-degree exponent power-law to hold. 17

20 Incremental growth dictates that new nodes join the network in an incremental way. New nodes are connected to other nodes already in the network and the network gradually increases in size by the continual addition of new nodes. Geographical distribution of nodes is the factor that determines how nodes are distributed in space. This can be done in different ways, a heavy-tailed distribution or a random distribution. Locality of edge connections is another possible cause for power-laws. New nodes tend to connect to existing node(s) that are close in distance. Both preferential connectivity and incremental growth are suggested by Albert and Barabási [2], Both are attempts to explain how a network evolves. Medina et al. [14] examine these two possible causes and suggest two other factors for power-laws, geographical distribution of nodes and locality of edge connections. They find both preferential connectivity and incremental growth to be key contributors to the existence of the power-laws, whereas the other two causes have minor impact on the power-law properties of a topology. Their evaluation result in the topology generator BRITE [5], which is used in this study to make test topologies. 4.3 Topology generator models With the causes for power-laws given in the previous section as a basis it is possible to create models for generation of topologies with power-law properties. The topologies used for testing in this project are all generated with BRITE using three different models that are all described below. All three models construct a graph G with a set of nodes N and a set of arcs A. Furthermore, k i is the out-degree of node i First model (AB1) The first attempt to create such a model was made by Albert and Barabási [2], who based their model on both preferential connectivity and incremental growth. To generate the topology the model starts with a small number, m, of connected nodes and at every time step a new node is added and connected to m (m m ) other nodes already present in the topology. In this way incremental growth is incorporated. To also obtain preferential connectivity in the model, the probability that a new node connects to node i depends on the out-degree, k i, of node i. The probability that node i will be chosen as the end point of an arc from a new node is k i Π 1 (k i ) = v N k. (23) v Second model (AB2) An extended version of the previous model is provided by Albert and Barabási [3]. As the previous model this one starts with m connected nodes. At each time step, one of the following three operations is performed. 18

21 With probability p add m (m m ) new arcs. For this a node is randomly selected as the starting point of the new arc and the other end of the arc is selected to be node i with probability Π 2 (k i ) = k i + 1 v N (k v + 1). (24) This is repeated until m new arcs have been added. With probability q, rewire m arcs. This is done by randomly selecting a node i and an arc a ij going out from that node. The arc is then modified so that it connects node i with node j, where node j is chosen with probability Π 2 (k j ). This is repeated until m arcs are rewired. With probability (1 p q) a new node is added. The new node is connected to m other nodes. The probability that the new node will connect to node i is given by Π 2 (k i ). For this model, p and q need to fulfil the conditions, p 1 and q 1 p Third model (BT) The third model for generating power-law topologies is proposed by Bu and Towsley [6] and it is another modification of the first model by Albert and Barabási [2]. In this model the probability that a node i will be chosen as the end point for a new arc is slightly redefined as Π 3 (k i ) = k i β v N (k v β). (25) Where < β < 1 is a parameter that controls the impact of preferential connectivity. The smaller the value of β is, the less preference is given to nodes with high degrees. Like in the previous models this one also starts with a small number, m, of connected nodes and in each time step, one of the following two operations is performed. With probability p, add m (m m ) new arcs. For each end of each arc, node i is chosen as the node to connect to with probability Π 3 (k i ). With probability (1 p) a new node is added. Each one of the new node s m arcs is connected to node i already in the network with probability Π(k i ). In this model p is restricted to p 1. 19

22 5 Numerical Experiments Here we present our results obtained for ten different networks. For each network we compare the results from the following methods: OPT, the optimal solution to the general routing problem. Included for comparison as it is a lower bound for the other methods., the heuristic proposed by Fortz and Thorup [12] described in Section 3.1, starting from a random weight setting., the heuristic for few weight changes proposed by Fortz and Thorup [13] and described in Section 3.2, here with one weight change. In the starting point all weights are set to the inverse of the links capacity., the heuristic for few weight changes proposed by Fortz and Thorup [13] and described in Section 3.2, here with three weight changes. In the starting point all weights are set to the inverse of the links capacity., the heuristic proposed by Ramakrishnan and Rodrigues [17] and described in Section 3.3. In our tests we have used the cost function for arcs given by equation (5) proposed by Fortz and Thorup, instead of the cost function originally proposed by Ramakrishnan (equation (17)). The main reason for this is that the latter gives negative values for overloaded arcs, making it difficult to compare two different weight settings (as described in Section 3.3.1). ECMP, the heuristic proposed by Ramakrishnan and Rodrigues [17] with the ECMP extension described in Section Also for this heuristic we have used equation (5) as the cost function for each arc. InvCap, this method sets the weight of an link inversely proportional to its capacity as recommended by Cisco [9]. Like OPT this one is also included for comparison as it is a weight setting normally used. For each topology the algorithms were run with different scaling on the traffic demands. The scalings were obtained by multiplying the traffic demand matrix with scalars. All algorithms except InvCap use different weight settings for different scalings. In the results both the cost and the max utilisation is presented for each topology and for each scaling. For all algorithms except OPT the cost and the max utilisation is computed using the same weight setting. But for OPT the cost and the max utilisation are computed independently, using different objective functions. Each algorithm was run once for each traffic demand scaling, except for the two largest scalings for topology 1, where ten different runs were made and the average value is presented. All topologies have been created using BRITE, using the three models described in Section 4.3 with equal capacities on all links. The topologies all have correlation coefficients above 96% for the rank exponent power-law and for the degree exponent power-law. Table 1 shows all topologies used for testing along with their number of nodes and number of edges and the model used to create it. 2

Search Heuristics for Load Balancing in IP-networks

Search Heuristics for Load Balancing in IP-networks Search Heuristics for Load Balancing in IP-networks MATTIAS SÖDERQVIST Master s Degree Project Stockholm, Sweden 25 TRITA-NA-E538 Numerisk analys och datalogi Department of Numerical Analysis KTH and Computer

More information

2004 Networks UK Publishers. Reprinted with permission.

2004 Networks UK Publishers. Reprinted with permission. Riikka Susitaival and Samuli Aalto. Adaptive load balancing with OSPF. In Proceedings of the Second International Working Conference on Performance Modelling and Evaluation of Heterogeneous Networks (HET

More information

Simulation of Heuristic Usage for Load Balancing In Routing Efficiency

Simulation of Heuristic Usage for Load Balancing In Routing Efficiency Simulation of Heuristic Usage for Load Balancing In Routing Efficiency Nor Musliza Mustafa Fakulti Sains dan Teknologi Maklumat, Kolej Universiti Islam Antarabangsa Selangor normusliza@kuis.edu.my Abstract.

More information

OSPF -Open Shortest Path First

OSPF -Open Shortest Path First OSPF -Open Shortest Path First Abstract: This report discusses about the OSPF protocol, its advantages, some issues faced while designing large OSPF networks. Keywords: Internal Gateway Protocol (IGP),

More information

Some optimization issues arising in Internet traffic engineering

Some optimization issues arising in Internet traffic engineering Some optimization issues arising in Internet traffic engineering Talk given at University of Arizona Tucson, Arizona November 16, 2006 2005 Mauricio G. C. Resende AT&T Labs Research Florham Park, New Jersey

More information

Routing in Switched Networks

Routing in Switched Networks Routing in Switched Networks Chapter 12 CS420/520 Axel Krings Page 1 Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route Efficiency Resilience

More information

Traffic Engineering With Traditional IP Routing Protocols

Traffic Engineering With Traditional IP Routing Protocols Traffic Engineering With Traditional IP Routing Protocols Bernard Fortz Jennifer Rexford Mikkel Thorup Institut d Administration et de Gestion Internet and Networking Systems Universite Catholique de Louvain

More information

Load Balancing by MPLS in Differentiated Services Networks

Load Balancing by MPLS in Differentiated Services Networks Load Balancing by MPLS in Differentiated Services Networks Riikka Susitaival, Jorma Virtamo, and Samuli Aalto Networking Laboratory, Helsinki University of Technology P.O.Box 3000, FIN-02015 HUT, Finland

More information

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3 CHAPTER 9 The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3 OSPF Open Shortest Path First (OSPF) is a link state Internet routing protocol.

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Network Tomography and Internet Traffic Matrices

Network Tomography and Internet Traffic Matrices Network Tomography and Internet Traffic Matrices Matthew Roughan School of Mathematical Sciences 1 Credits David Donoho Stanford Nick Duffield AT&T Labs-Research Albert

More information

IP Traffic Engineering over OMP technique

IP Traffic Engineering over OMP technique IP Traffic Engineering over OMP technique 1 Károly Farkas, 1 Zoltán Balogh, 2 Henrik Villför 1 High Speed Networks Laboratory Department of Telecommunications and Telematics Technical University of Budapest,

More information

Link-State Routing Can Achieve Optimal Traffic Engineering: From Entropy To IP

Link-State Routing Can Achieve Optimal Traffic Engineering: From Entropy To IP Link-State Routing Can Achieve Optimal Traffic Engineering: From Entropy To IP Dahai Xu, Ph.D. Florham Park AT&T Labs - Research Joint work with Mung Chiang and Jennifer Rexford (Princeton University)

More information

Introduction to LAN/WAN. Network Layer

Introduction to LAN/WAN. Network Layer Introduction to LAN/WAN Network Layer Topics Introduction (5-5.1) Routing (5.2) (The core) Internetworking (5.5) Congestion Control (5.3) Network Layer Design Isues Store-and-Forward Packet Switching Services

More information

A hierarchical multicriteria routing model with traffic splitting for MPLS networks

A hierarchical multicriteria routing model with traffic splitting for MPLS networks A hierarchical multicriteria routing model with traffic splitting for MPLS networks João Clímaco, José Craveirinha, Marta Pascoal jclimaco@inesccpt, jcrav@deecucpt, marta@matucpt University of Coimbra

More information

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks T.Chandrasekhar 1, J.S.Chakravarthi 2, K.Sravya 3 Professor, Dept. of Electronics and Communication Engg., GIET Engg.

More information

Network (Tree) Topology Inference Based on Prüfer Sequence

Network (Tree) Topology Inference Based on Prüfer Sequence Network (Tree) Topology Inference Based on Prüfer Sequence C. Vanniarajan and Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology Madras Chennai 600036 vanniarajanc@hcl.in,

More information

Traffic Engineering in SDN/OSPF Hybrid Network

Traffic Engineering in SDN/OSPF Hybrid Network 2014 IEEE 22nd International Conference on Network Protocols Traffic Engineering in SDN/OSPF Hybrid Network Yingya Guo, Zhiliang Wang, Xia Yin, Xingang Shi,and Jianping Wu Department of Computer Science

More information

Social Media Mining. Graph Essentials

Social Media Mining. Graph Essentials Graph Essentials Graph Basics Measures Graph and Essentials Metrics 2 2 Nodes and Edges A network is a graph nodes, actors, or vertices (plural of vertex) Connections, edges or ties Edge Node Measures

More information

Performance of networks containing both MaxNet and SumNet links

Performance of networks containing both MaxNet and SumNet links Performance of networks containing both MaxNet and SumNet links Lachlan L. H. Andrew and Bartek P. Wydrowski Abstract Both MaxNet and SumNet are distributed congestion control architectures suitable for

More information

Internet Traffic Engineering

Internet Traffic Engineering Internet Traffic Engineering by Optimizing OSPF Weights Bernard Fortz Service de Mathématiques de la Gestion Institut de Statistique et de Recherche Opérationnelle Université Libre de Bruxelles Brussels

More information

Min-cost flow problems and network simplex algorithm

Min-cost flow problems and network simplex algorithm Min-cost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.

More information

Evaluation And Implementation Of The Open Shortest Path First (OSPF) Routing Protocol

Evaluation And Implementation Of The Open Shortest Path First (OSPF) Routing Protocol Evaluation And Implementation Of The Open Shortest Path First (OSPF) Routing Protocol G.C NWALOZIE 1, V.N OKOROGU 2, A.C OKAFOR 3, A.O UMEH 4 1, 2, 3,4 Electronic and Computer Engineering Department, Nnamdi

More information

How Well do Traffic Engineering Objective Functions Meet TE Requirements?

How Well do Traffic Engineering Objective Functions Meet TE Requirements? How Well do Traffic Engineering Objective Functions Meet TE Requirements? Simon Balon,FabianSkivée, and Guy Leduc Research Unit in Networking, EECS Department- University of Liège, Institut Montefiore,

More information

Chapter Nine. Introduction to Metropolitan Area Networks and Wide Area Networks

Chapter Nine. Introduction to Metropolitan Area Networks and Wide Area Networks Chapter Nine Introduction to Metropolitan Area Networks and Wide Area Networks Data Communications and Computer Networks: A Business User s Approach Seventh Edition After reading this chapter, you should

More information

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING CHAPTER 6 CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING 6.1 INTRODUCTION The technical challenges in WMNs are load balancing, optimal routing, fairness, network auto-configuration and mobility

More information

Social Media Mining. Network Measures

Social Media Mining. Network Measures Klout Measures and Metrics 22 Why Do We Need Measures? Who are the central figures (influential individuals) in the network? What interaction patterns are common in friends? Who are the like-minded users

More information

Routing Basics. Chapter Goals. What Is Routing? CHAPTER

Routing Basics. Chapter Goals. What Is Routing? CHAPTER CHAPTER 5 Chapter Goals Learn the basics of routing protocols Learn the differences between link-state and distance vector routing protocols Learn about the metrics used by routing protocols to determine

More information

Internet Control Message Protocol (ICMP)

Internet Control Message Protocol (ICMP) SFWR 4C03: Computer Networks & Computer Security Jan 31-Feb 4, 2005 Lecturer: Kartik Krishnan Lecture 13-16 Internet Control Message Protocol (ICMP) The operation of the Internet is closely monitored by

More information

USING SPECTRAL RADIUS RATIO FOR NODE DEGREE TO ANALYZE THE EVOLUTION OF SCALE- FREE NETWORKS AND SMALL-WORLD NETWORKS

USING SPECTRAL RADIUS RATIO FOR NODE DEGREE TO ANALYZE THE EVOLUTION OF SCALE- FREE NETWORKS AND SMALL-WORLD NETWORKS USING SPECTRAL RADIUS RATIO FOR NODE DEGREE TO ANALYZE THE EVOLUTION OF SCALE- FREE NETWORKS AND SMALL-WORLD NETWORKS Natarajan Meghanathan Jackson State University, 1400 Lynch St, Jackson, MS, USA natarajan.meghanathan@jsums.edu

More information

A New Forwarding Policy for Load Balancing in Communication Networks

A New Forwarding Policy for Load Balancing in Communication Networks A New Forwarding Policy for Load Balancing in Communication Networks Martin Heusse Yvon Kermarrec ENST de Bretagne BP 83, 985 Brest Cedex, France Martin.Heusse@enst-bretagne.fr Abstract We present in this

More information

Analysis of Internet Topologies: A Historical View

Analysis of Internet Topologies: A Historical View Analysis of Internet Topologies: A Historical View Mohamadreza Najiminaini, Laxmi Subedi, and Ljiljana Trajković Communication Networks Laboratory http://www.ensc.sfu.ca/cnl Simon Fraser University Vancouver,

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

Edges = communication links Vertices = computers, switches, routers, etc. For packet inbound at a particular vertex, determine what output edge to use

Edges = communication links Vertices = computers, switches, routers, etc. For packet inbound at a particular vertex, determine what output edge to use IP Routing Networks as Graphs Networks are graphs Edges = communication links Vertices = computers, switches, routers, etc For packet inbound at a particular vertex, determine what output edge to use Routers

More information

Chapter 10 Link-State Routing Protocols

Chapter 10 Link-State Routing Protocols Chapter 10 Link-State Routing Protocols CCNA2-1 Chapter 10 Note for Instructors These presentations are the result of a collaboration among the instructors at St. Clair College in Windsor, Ontario. Thanks

More information

cfl 2001 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional

cfl 2001 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional cfl 1 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or

More information

Optimization of IP Load-Balanced Routing for Hose Model

Optimization of IP Load-Balanced Routing for Hose Model 2009 21st IEEE International Conference on Tools with Artificial Intelligence Optimization of IP Load-Balanced Routing for Hose Model Invited Paper Eiji Oki Ayako Iwaki The University of Electro-Communications,

More information

On the effect of forwarding table size on SDN network utilization

On the effect of forwarding table size on SDN network utilization IBM Haifa Research Lab On the effect of forwarding table size on SDN network utilization Rami Cohen IBM Haifa Research Lab Liane Lewin Eytan Yahoo Research, Haifa Seffi Naor CS Technion, Israel Danny Raz

More information

Internet Control Message Protocol (ICMP):

Internet Control Message Protocol (ICMP): SFWR 4C03: Computer Networks and Computer Security January 6-9 004 Lecturer: Kartik Krishnan Lectures 10-1 Internet Control Message Protocol (ICMP): The operation of the Internet is closely monitored by

More information

Internet Firewall CSIS 4222. Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS 4222. net15 1. Routers can implement packet filtering

Internet Firewall CSIS 4222. Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS 4222. net15 1. Routers can implement packet filtering Internet Firewall CSIS 4222 A combination of hardware and software that isolates an organization s internal network from the Internet at large Ch 27: Internet Routing Ch 30: Packet filtering & firewalls

More information

Routing in packet-switching networks

Routing in packet-switching networks Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call

More information

Route Optimization in IP Networks

Route Optimization in IP Networks Route Optimization in IP Networks Jennifer Rexford Abstract The performance and reliability of the Internet depend, in large part, on the operation of the underlying routing protocols. Today s IP routing

More information

Performance Analysis of Interior Gateway Protocols

Performance Analysis of Interior Gateway Protocols pp. 59-63 Krishi Sanskriti Publications http://www.krishisanskriti.org/areee.html Performance Analysis of Interior Gateway Protocols Sukhkirandeep Kaur 1, Roohie Naaz Mir 2 1 Student, C.S.E Deptt., NIT

More information

CS335 Sample Questions for Exam #2

CS335 Sample Questions for Exam #2 CS335 Sample Questions for Exam #2.) Compare connection-oriented with connectionless protocols. What type of protocol is IP? How about TCP and UDP? Connection-oriented protocols Require a setup time to

More information

Computer Network Topologies: Models and Generation Tools

Computer Network Topologies: Models and Generation Tools Consiglio Nazionale delle Ricerche Technical Report n. 5/200 Computer Network Topologies: Models and Generation Tools Giuseppe Di Fatta, Giuseppe Lo Presti 2, Giuseppe Lo Re CE.R.E. Researcher 2 CE.R.E.,

More information

Lecture (05) OSPF. By: Dr. Ahmed ElShafee. Dr. Ahmed ElShafee, ACU : Fall 2016, Practical App. Networks II

Lecture (05) OSPF. By: Dr. Ahmed ElShafee. Dr. Ahmed ElShafee, ACU : Fall 2016, Practical App. Networks II Lecture (05) OSPF By: Dr. Ahmed ElShafee ١ Dr. Ahmed ElShafee, ACU : Fall 2016, Practical App. Networks II Overview OSPF is an interior gateway protocol and a classless link state routing protocol. Because

More information

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh Distance Vector Routing Protocols Routing Protocols and Concepts Ola Lundh Objectives The characteristics of distance vector routing protocols. The network discovery process of distance vector routing

More information

On the Trade-Off between Control Plane Load and Data Plane Efficiency in Software Defined Networks

On the Trade-Off between Control Plane Load and Data Plane Efficiency in Software Defined Networks 1 Technion - Computer Science Department - Tehnical Report CS-01-0 - 01 On the Trade-Off between Control Plane Load and Data Plane Efficiency in Software Defined Networks Abstract Software Defined Networking

More information

Section Notes 3. The Simplex Algorithm. Applied Math 121. Week of February 14, 2011

Section Notes 3. The Simplex Algorithm. Applied Math 121. Week of February 14, 2011 Section Notes 3 The Simplex Algorithm Applied Math 121 Week of February 14, 2011 Goals for the week understand how to get from an LP to a simplex tableau. be familiar with reduced costs, optimal solutions,

More information

CSE 3461: Introduction to Computer Networking and Internet Technologies. Packet Switching. Presentation G

CSE 3461: Introduction to Computer Networking and Internet Technologies. Packet Switching. Presentation G CSE 3461: Introduction to Computer Networking and Internet Technologies Packet Switching Presentation G Study: 10.5, 10.6, 12.1, 12.2, 13.1, 13.2, 18.3, 18.4 Gojko Babić 10-09-2012 The Network Core mesh

More information

Scaling 10Gb/s Clustering at Wire-Speed

Scaling 10Gb/s Clustering at Wire-Speed Scaling 10Gb/s Clustering at Wire-Speed InfiniBand offers cost-effective wire-speed scaling with deterministic performance Mellanox Technologies Inc. 2900 Stender Way, Santa Clara, CA 95054 Tel: 408-970-3400

More information

Traffic Engineering approaches using Multicriteria Optimization Techniques

Traffic Engineering approaches using Multicriteria Optimization Techniques Traffic Engineering approaches using Multicriteria Optimization Techniques Pedro Sousa, Paulo Cortez 3, Miguel Rio 2, Miguel Rocha Dept. of Informatics, University of Minho, Portugal, {pns,mrocha}@di.uminho.pt

More information

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage Lecture 8: Routing I Distance-vector Algorithms CSE 3: Computer Networks Stefan Savage This class New topic: routing How do I get there from here? Overview Routing overview Intra vs. Inter-domain routing

More information

Analysis of Internet Topologies

Analysis of Internet Topologies Analysis of Internet Topologies Ljiljana Trajković ljilja@cs.sfu.ca Communication Networks Laboratory http://www.ensc.sfu.ca/cnl School of Engineering Science Simon Fraser University, Vancouver, British

More information

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM 152 APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM A1.1 INTRODUCTION PPATPAN is implemented in a test bed with five Linux system arranged in a multihop topology. The system is implemented

More information

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing Pietro Belotti, Antonio Capone, Giuliana Carello, Federico Malucelli Tepper School of Business, Carnegie Mellon University, Pittsburgh

More information

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed. Congestion Control When one part of the subnet (e.g. one or more routers in an area) becomes overloaded, congestion results. Because routers are receiving packets faster than they can forward them, one

More information

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

More information

Routing with OSPF. Introduction

Routing with OSPF. Introduction Routing with OSPF Introduction The capabilities of an internet are largely determined by its routing protocol. An internet's scalability, its ability to quickly route around failures, and the consumption

More information

Chapter 4. Distance Vector Routing Protocols

Chapter 4. Distance Vector Routing Protocols Chapter 4 Distance Vector Routing Protocols CCNA2-1 Chapter 4 Note for Instructors These presentations are the result of a collaboration among the instructors at St. Clair College in Windsor, Ontario.

More information

6.02 Practice Problems: Routing

6.02 Practice Problems: Routing 1 of 9 6.02 Practice Problems: Routing IMPORTANT: IN ADDITION TO THESE PROBLEMS, PLEASE SOLVE THE PROBLEMS AT THE END OF CHAPTERS 17 AND 18. Problem 1. Consider the following networks: network I (containing

More information

Introduction to Metropolitan Area Networks and Wide Area Networks

Introduction to Metropolitan Area Networks and Wide Area Networks Fundamentals of Networking and Data Communications, Sixth Edition 9-1 Introduction to Metropolitan Area Networks and Wide Area Networks Chapter 9 Learning Objectives After reading this chapter, students

More information

Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012. Network Chapter# 19 INTERNETWORK OPERATION

Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012. Network Chapter# 19 INTERNETWORK OPERATION Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012 Network Chapter# 19 INTERNETWORK OPERATION Review Questions ٢ Network Chapter# 19 INTERNETWORK OPERATION 19.1 List

More information

Two Approaches to Internet Traffic Engineering for End-to-End Quality of Service Provisioning

Two Approaches to Internet Traffic Engineering for End-to-End Quality of Service Provisioning Two Approaches to Internet Engineering for End-to-End Quality of Service Provisioning Kin-Hon Ho, Michael Howarth, Ning Wang, George Pavlou and Stylianos Georgoulas Centre for Communication Systems Research,

More information

Traffic Engineering with Traditional IP Routing Protocol

Traffic Engineering with Traditional IP Routing Protocol Traffic Engineering with Traditional IP Routing Protocol By: B. Fortz, J. Rexford and M. Thorup Presentation by: Douglas Chan Why traffic engineering? Self-managing mechanisms that are already in place

More information

Traffic Engineering With Traditional IP Routing Protocols

Traffic Engineering With Traditional IP Routing Protocols Traffic Engineering With Traditional IP Routing Protocols Bernard Fortz Jennifer Rexford Mikkel Thorup Institut d Administration et de Gestion Internet and Networking Systems Universite Catholique de Louvain

More information

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

More information

State Space Representation and Search

State Space Representation and Search 1. Introduction In this section we examine the concept of a state space and the different searches that can be used to explore the search space in order to find a solution. Before an AI problem can be

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2. Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given

More information

Open Shortest Path First

Open Shortest Path First 46 CHAPTER Chapter Goals Discuss the use of autonomous systems. Describe the use of the Sorts Path First algorithm. Discuss the additional features of OSPF. Background (OSPF) is a routing protocol developed

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Master s Thesis. A Study on Active Queue Management Mechanisms for. Internet Routers: Design, Performance Analysis, and.

Master s Thesis. A Study on Active Queue Management Mechanisms for. Internet Routers: Design, Performance Analysis, and. Master s Thesis Title A Study on Active Queue Management Mechanisms for Internet Routers: Design, Performance Analysis, and Parameter Tuning Supervisor Prof. Masayuki Murata Author Tomoya Eguchi February

More information

Inet-3.0: Internet Topology Generator

Inet-3.0: Internet Topology Generator Inet-3.: Internet Topology Generator Jared Winick Sugih Jamin {jwinick,jamin}@eecs.umich.edu CSE-TR-456-2 Abstract In this report we present version 3. of Inet, an Autonomous System (AS) level Internet

More information

Graphs and Network Flows IE411 Lecture 1

Graphs and Network Flows IE411 Lecture 1 Graphs and Network Flows IE411 Lecture 1 Dr. Ted Ralphs IE411 Lecture 1 1 References for Today s Lecture Required reading Sections 17.1, 19.1 References AMO Chapter 1 and Section 2.1 and 2.2 IE411 Lecture

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Solution sheet Mid-Semester Test 2009

Solution sheet Mid-Semester Test 2009 Solution sheet Mid-Semester Test 2009 Question 1 Short Answer Questions 1.1 Match the following to one or more layers of the OSI model: a) Communicates directly with the user s application program application

More information

Good luck, veel succes!

Good luck, veel succes! Final exam Advanced Linear Programming, May 7, 13.00-16.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam

More information

LOAD BALANCING MECHANISMS IN DATA CENTER NETWORKS

LOAD BALANCING MECHANISMS IN DATA CENTER NETWORKS LOAD BALANCING Load Balancing Mechanisms in Data Center Networks Load balancing vs. distributed rate limiting: an unifying framework for cloud control Load Balancing for Internet Distributed Services using

More information

CHAPTER 2. QoS ROUTING AND ITS ROLE IN QOS PARADIGM

CHAPTER 2. QoS ROUTING AND ITS ROLE IN QOS PARADIGM CHAPTER 2 QoS ROUTING AND ITS ROLE IN QOS PARADIGM 22 QoS ROUTING AND ITS ROLE IN QOS PARADIGM 2.1 INTRODUCTION As the main emphasis of the present research work is on achieving QoS in routing, hence this

More information

PART III. OPS-based wide area networks

PART III. OPS-based wide area networks PART III OPS-based wide area networks Chapter 7 Introduction to the OPS-based wide area network 7.1 State-of-the-art In this thesis, we consider the general switch architecture with full connectivity

More information

Best Practices in Core Network Capacity Planning

Best Practices in Core Network Capacity Planning White Paper Best Practices in Core Network Capacity Planning Architectural Principles of the MATE Portfolio of Products What You Will Learn Core network capacity planning is the process of ensuring that

More information

The TSP is a special case of VRP, which means VRP is NP-hard.

The TSP is a special case of VRP, which means VRP is NP-hard. 49 6. ROUTING PROBLEMS 6.1. VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles,

More information

EQ-BGP: an efficient inter-domain QoS routing protocol

EQ-BGP: an efficient inter-domain QoS routing protocol EQ-BGP: an efficient inter-domain QoS routing protocol Andrzej Beben Institute of Telecommunications Warsaw University of Technology Nowowiejska 15/19, 00-665 Warsaw, Poland abeben@tele.pw.edu.pl Abstract

More information

UNIT 2 MATRICES - I 2.0 INTRODUCTION. Structure

UNIT 2 MATRICES - I 2.0 INTRODUCTION. Structure UNIT 2 MATRICES - I Matrices - I Structure 2.0 Introduction 2.1 Objectives 2.2 Matrices 2.3 Operation on Matrices 2.4 Invertible Matrices 2.5 Systems of Linear Equations 2.6 Answers to Check Your Progress

More information

STRATEGIC CAPACITY PLANNING USING STOCK CONTROL MODEL

STRATEGIC CAPACITY PLANNING USING STOCK CONTROL MODEL Session 6. Applications of Mathematical Methods to Logistics and Business Proceedings of the 9th International Conference Reliability and Statistics in Transportation and Communication (RelStat 09), 21

More information

Strategic planning in LTL logistics increasing the capacity utilization of trucks

Strategic planning in LTL logistics increasing the capacity utilization of trucks Strategic planning in LTL logistics increasing the capacity utilization of trucks J. Fabian Meier 1,2 Institute of Transport Logistics TU Dortmund, Germany Uwe Clausen 3 Fraunhofer Institute for Material

More information

A Review And Evaluations Of Shortest Path Algorithms

A Review And Evaluations Of Shortest Path Algorithms A Review And Evaluations Of Shortest Path Algorithms Kairanbay Magzhan, Hajar Mat Jani Abstract: Nowadays, in computer networks, the routing is based on the shortest path problem. This will help in minimizing

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

Wide Area Networks. Learning Objectives. LAN and WAN. School of Business Eastern Illinois University. (Week 11, Thursday 3/22/2007)

Wide Area Networks. Learning Objectives. LAN and WAN. School of Business Eastern Illinois University. (Week 11, Thursday 3/22/2007) School of Business Eastern Illinois University Wide Area Networks (Week 11, Thursday 3/22/2007) Abdou Illia, Spring 2007 Learning Objectives 2 Distinguish between LAN and WAN Distinguish between Circuit

More information

Introduction to Dynamic Routing Protocol

Introduction to Dynamic Routing Protocol Introduction to Dynamic Routing Protocol Routing Protocols and Concepts Ola Lundh Objectives Describe the role of dynamic routing protocols and place these protocols in the context of modern network design.

More information

Campus Network Design Workshop

Campus Network Design Workshop Campus Network Design Workshop Introduction to OSPF This document is a result of work by the Network Startup Resource Center (NSRC at http://www.nsrc.org). This document may be freely copied, modified,

More information

Beyond the Stars: Revisiting Virtual Cluster Embeddings

Beyond the Stars: Revisiting Virtual Cluster Embeddings Beyond the Stars: Revisiting Virtual Cluster Embeddings Matthias Rost Technische Universität Berlin September 7th, 2015, Télécom-ParisTech Joint work with Carlo Fuerst, Stefan Schmid Published in ACM SIGCOMM

More information

Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers

Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers Ho Trong Viet, Yves Deville, Olivier Bonaventure, Pierre François ICTEAM, Université catholique de Louvain (UCL), Belgium.

More information

Network Traffic Modelling

Network Traffic Modelling University of York Dissertation submitted for the MSc in Mathematics with Modern Applications, Department of Mathematics, University of York, UK. August 009 Network Traffic Modelling Author: David Slade

More information

Markov chains and Markov Random Fields (MRFs)

Markov chains and Markov Random Fields (MRFs) Markov chains and Markov Random Fields (MRFs) 1 Why Markov Models We discuss Markov models now. This is the simplest statistical model in which we don t assume that all variables are independent; we assume

More information

Introduction to Metropolitan Area Networks and Wide Area Networks

Introduction to Metropolitan Area Networks and Wide Area Networks Introduction to Metropolitan Area Networks and Wide Area Networks Chapter 9 Learning Objectives After reading this chapter, you should be able to: Distinguish local area networks, metropolitan area networks,

More information

Interior Gateway Protocols (RIP and OSPF)

Interior Gateway Protocols (RIP and OSPF) Interior Gateway Protocols (RIP, OSPF) Interior Gateway Protocols (RIP and OSPF) What is Routing? To ensure information is delivered to the correct destination at a reasonable level of performance Forwarding

More information

Optimum Path Computation Algorithms for Multimedia and Real Time Services over IP-Networks

Optimum Path Computation Algorithms for Multimedia and Real Time Services over IP-Networks Optimum Path Computation Algorithms for Multimedia and Real Time Services over IP-Networks 1 Optimum Path Computation Algorithms for Multimedia and Real Time Services over IP-Networks Rajiv kumar, Yuvraj

More information

Routing in Road Networks: the toll booth problem

Routing in Road Networks: the toll booth problem Routing in Road Networks: the toll booth problem Fernando Stefanello, Luciana S. Buriol, Marcus Ritt Instituto de Informática Universidade Federal do Rio Grande do Sul Caixa Postal 15.064 91.501-970 Porto

More information