350 likes | 433 Views
Load Sensitive Routing Protocol for Providing QoS in Best Effort Network. Motivation. Real time applications like audio and video conferencing, VoIP requires QoS from the Internet to have satisfactory performance.
E N D
Load Sensitive Routing Protocol for Providing QoSin Best Effort Network IIT Bombay
Motivation • Real time applications like audio and video conferencing, VoIP requires QoS from the Internet to have satisfactory performance. • Internet largely support best effort traffic and Open Shortest Path First (OSPF) is one of the most widely used routing protocols. • In OSPF, when a packet experiences congestion, the routing subsystem cannot send it through alternate path. Thus, it fails in providing Quality of Service. So there is a need to provide QoS routing in networks. IIT Bombay
Advantages of LSR algorithm • The Load Sensitive Routing algorithm implements QoS routing in a better way. • It localizes the QoS routing changes to the region where QoS has deteriorated • no flooding • Less overhead • scalability. • It chooses loop free alternate paths for routing packet • No separate loop detection • Interoperate with OSPF routers IIT Bombay
Control Messages • Congestion notification • Sent to all the neighbors when a link congestion is detected • When neighbors receive this congestion notification they reroute packets through alternate next hop (three different ways of finding the alternate next hops are explained later) • Congestion over • Sent to all the neighbors when a link congestion is over • Neighbors revert back to routing packets through OSPF next hops IIT Bombay
LSR (Contd) • LSR eligible neighbor • Different nexthop used for alternate path • Chosen based on OSPF property (which leads to loop free routing) • hop_count(ospf_nexthop, D) < hop_count(curr_node, D) • ospf_cost(ospf_nexthop, D) < ospf_cost(curr_node, D) • If Node(Q) is neighbor of Node(P) for destination Node(D) and • a’ * hop_count(Q, D) + b’ * ospf_cost(Q, D) < a’ * hop_count(P, D) + b’ * ospf_cost(P, D) (from the above ospf property) • => hop_count(Q, D) + b * ospf_cost(Q, D) < hop_count(P, D) + b * ospf_cost(P, D) Then Node (Q) will be LSR eligible neighbor for Node(P). b is called LSR Coefficient. • The task is then to determine LSR coefficient b IIT Bombay
LSR Contd… • Calculation of LSR coefficients • b is global (same for all nodes) for a particular destination • b is local • b is global • LSR: b is chosen such that the total number of alternate paths (for a particular destination) is maximized. • Check for each possible values of b and set it to the one that gives maximum number of alternate paths • E-LSR : Maximize total number of alternate paths subject to the constraint that maximum number of nodes have at least one alternate path IIT Bombay
The Efficient Load Sensitive RoutingAlgorithm (E-LSR) • Objective of LSR • Maximize total number of alternate paths in network. • Objective of E-LSR • Maximize total number of alternate paths subject to the constraint that maximum number of nodes have at least one alternate path. IIT Bombay
Proposed Algorithm for Coefficient Calculation • Less than and Greater than Constraints on b value. • Node(P) forwards packet to Node(Q) if • HC(Q, D) + b * OC(Q, D) < HC(P, D) + b * OC(P, D) • If (HC (Q, D) < HC (P, D) and OC(Q, D) ≤ OC(P, D)) • b ≥ 0 • If (HC(Q, D) < HC(P, D) and OC(Q, D) > OC(P, D)) • b < ((HC(P, D) – HC(Q, D) / (OC(Q, D) – OC(P, D)) • If (HC(Q, D) ≥ HC(P, D) and OC(Q, D) < OC(P, D)) • b > (HC(Q, D) - HC(P, D)) / (OC(P, D) - OC(Q, D)) IIT Bombay
Coefficient Calculation (Contd…) • Necessary parameters • gi: ithGreater than Constraint for destination d. • li: ithLess than Constraint of Node(i) for destination d. OC(A, C) = 6, OC(E, C) = 5, OC(F, C) = 8, OC(G, C) = 9 HC(A, C) = 2, HC(E, C) = 3, HC(F, C) = 1, HC(G, C) = 1 E – A: 3 + 5 * b < 2 + 6 * b => b > 1 (greater than constraint) F – A: 1 + 8 * b < 2 + 6 * b => b < 1/2 (less than constraint) G – A: 1 + 9 * b < 2 + 6 * b => b < 1/3 (less than constraint) IIT Bombay
Coefficient Calculation (Contd…) • Sort the greater than constraints such that • g1 < g2 < g3 < … < gm • Sort the less than constraints such that • l1 < l2 < l3 < … < ln IIT Bombay
Coefficient Calculation (Contd…) • Different Cases for Coefficient Calculation Algorithm IIT Bombay
Coefficient Calculation (Contd…) IIT Bombay
Coefficient Calculation (Contd…) • Objective Function • Calculates two parameters • n: Number of nodes having at least one alternate path. • m: Total number of alternate paths other than n. • Returns N * N * n + m IIT Bombay
Local Coefficient Based LSR (L-LSR) • b is local • For a particular destination, each node can choose its own local L-LSR coeffiecient denoted as b(vi,D) • but L-LSR coefficient is assigned such a way that the loop-free property is still maintained • Calculation of b is more complex • We use a graph theoretic approach IIT Bombay
Building QoS graph • Edges along the ospf path have a weight of infinity • For all other edges (called cross-edge) • weight is assigned as per the “out-degree” of the node • But while calculating out-degree of a node do not include any ospf edges • weights are assigned to the cross edge according to the out-degree • cross-edges are added to the sink-tree only for nodes along the QoS paths IIT Bombay
Example Topology IIT Bombay
Example sink tree IIT Bombay
Example QoS graph • QoS path:A-B-C-D IIT Bombay
Building Acyclic QoS graph • Addition of cross-edges could introduce loops • We use minimum feedback arc set (FAS) algorithm to break the cycles in the graph • we actually remove edges with maximum weight (in the cycle) while breaking cycle • we want to target a node which has more alternate path (more weight) • this acyclic graph represents the alternate paths through which nodes can send packets during congestion IIT Bombay
Calculating L-LSR coefficient • Calculated from the acyclic QoS graph • If Node(vi) can choose Node(vj) as its L-LSR next hop then HC(vj, D) + b(vj, D) * OC(vj,D) < HC(vi, D) + b(vi, D) * OC(vi,D) • b’(vj, D) – b’(vi, D) < weight(vj, vi) (1) where weight(vj, vi) = HC(vi, D) - HC(vj, D) (2) b’(vi, D) = b(vi, D) * OC(vi,D) IIT Bombay
Calculating L-LSR coefficient • (1) can be represented as a constraint graph • there is a directed edge from Node(vj) to Node(vi) with weight weigth(vj, vi) • constrained graph can be obtained by reversing the direction of edges of acyclic QoS graph and assigning weights according to (2) • Finally, the L-LSR coefficients are calculated using (1) IIT Bombay
Constraint Graph of example topology IIT Bombay
Calculating L-LSR coefficient • for assigning b traversal starts from D similar to BFS. • But a node is visited only when all its incoming edges are visited • From D we first visit Y and Z (cannot visit X from D) and compute b for Y and Z (such that (1) is satisfied) • In the next round we visit Y and then we can visit X and determine its b IIT Bombay
Simulation Setup • Simulation Parameters • Congestion Threshold 90% • Congestion detection Interval 1 sec • Cost of link is assigned as • Cost = 1000000 / bandwidth in bps • Traffic Scenarios • Scenario A • Voice Traffic : • CBR with bandwidth 64kbps( packet size :160bytes, Interval: 0.02 sec) • Scenario B • Data Traffic : • Exponential ON / OFF ( packet size : 576 bytes, mean ON period : 50 msec and mean OFF period :50msec, average rate : 128 kbps) • Cross Traffic • Randomly selected Source and Destination exchange Traffic which follows Poisson traffic with average rate of 32kbps (sent in both the scenario A and B) IIT Bombay
Simulation Topology • Two QoS paths: 0-1-2-3-4-5 10-9-8-7-6-5 IIT Bombay
Delay Scenario-A Path(10,5) IIT Bombay
Delay Scenario-B Path(10,5) IIT Bombay
PPD Scenario-A Path(10,5) IIT Bombay
PPD Scenario-B Path(10,5) IIT Bombay
Delay Scenario-A Path(0,5) IIT Bombay
Delay Scenario-B Path(0,5) IIT Bombay
PPD Scenario-A Path(0,5) IIT Bombay
PPD Scenario-B Path(0,5) IIT Bombay
Conclusion • We presented an OSPF-based Load Sensitive Routing protocol • Three different methods of selecting alternate paths • based on loop free property of OSPF, hence • does not need separate loop detection • can interoperate with OSPF routers • provides QoS in terms of delay and packet drop • L-LSR performs the best among the LSR family of protocols • much better performance than OSPF IIT Bombay
References • A. Sahoo, “An OSPF Based Load-Sensitive QoS Routing Algorithm using Alternate Paths,” in IEEE International Conference on Computer Communication Networks, October 2002. • G. Apostolopoulos, R. Guerin, S. Kamat, A. Orda, A. Przygienda, and D.Williams. “QoS routing mechanisms and OSPF extensions”. Internet Request for Comments (RFC2676), April 1999. • A. Segall, P. Bhagwat, and A. Krishna. “QoS Routing Using Alternate Paths”. Journal of High Speed Networks, 7(2): 141–158, 1998. • Z. Wang and J. Crowcroft. “Shortest path first with emergency exits”. ACM SIGCOMM 90, pages 166–176, Sept 1990. • Andrew S. Tanenbaum. Computer Networks. Prentice-Hall India, Fourth edition, 2003. • Camil Demetrescu and Irene Finocchi. Combinatorial algorithms for feedback problems in directed graphs.Inf. Process Lett. 86(3) :129-136 ,2003 IIT Bombay