1 / 29

QoS Routing Mechanisms and OSPF Extensions

QoS Routing Mechanisms and OSPF Extensions. Roch A. Guerin, Ariel Orda, and Douglas Williams. Propose extensions to OSPF to support QoS They discuss path selection algorithms link advertisement mechanisms. Goal:

doctor
Télécharger la présentation

QoS Routing Mechanisms and OSPF Extensions

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. QoS Routing Mechanisms and OSPF Extensions Roch A. Guerin, Ariel Orda, and Douglas Williams

  2. Propose extensions to OSPF to support QoS • They discuss • path selection algorithms • link advertisement mechanisms

  3. Goal: • improve likelihood of being routed on a path capable of providing the desired QoS • As little impact on existing OSPF protocol as possible • trade off between simplicity and optimality

  4. Framework • Network design: • both best-effort and QoS packets • all routers are QoS capable • routers can advertise the amount of resources they have left • focus on unicast

  5. flow specifies its desired QoS • protocol returns a path based on requirements • path could be next-hop or full path • once a path is identified the flow is pinned to it

  6. Simplifications • Focus on satisfying bandwidth requirements over minimum number of hops • does not take into account delay sensitive flows

  7. Protocol metrics • Link available bandwidth - current amount of available bandwidth • Hop count - used as a measure of path cost, assume that a path with less hops would consume less network resources

  8. Exact pre-computed paths • Based on Bellman-Ford shortest path algorithm • modify BF to compute maximum available bandwidth on link • At ith iteration of BF we can identify the path with the maximum available bandwidth among paths of at most i hops

  9. On-demand Computationof Paths • More useful in instances where there are a limited number of requests for QoS requests • Based on how often you update the routing tables, on demand can yield better routes due to more updated information • no need to store a routing table

  10. Uses Dijkstra’s algorithm • Since Dijkstra is already used in OSPF implementation would be easier • As algorithm runs only consider links which can support the bandwidth requirement • Sort the list of next hops based on maximum available bandwidth

  11. Approximate Pre-Computed Paths • Dijkstra-based • Quantize bandwidth values • may result in loss of accuracy • The range of possible bandwidth values are mapped onto fixed number of quantized values (for example low, medium, and high)

  12. Minimum hop count paths are computed for each of the quantized values • flows are then assigned to the path that can carry the smallest value equal to or greater than what it requests • While the algorithm runs, for each of the quantized values it removes from consideration all links which cannot support the required bandwidth

  13. Complexity of Path Selection Algorithms • Worst case Dijkstra O(M log N) • Worst case Bellman-Ford 0(H*M) • M: number of edges • N: number of links • H: upper bound on the number of hops in a shortest path

  14. H can be as large as N-1, but in practice is usually much smaller • can impose restriction on H making H<<N effectively making the complexity O(M) • Bellman-Ford also allows hop count as a secondary criterion without modifications such as quantizing

  15. If we use approximate pre-computed path selection with Q quantized values its worst case complexity is O(Q*(M log N)) • comparable to Bellman-Ford at the expense of sub-optimal solutions

  16. Advertisement of Link State Information • Assumed that each router maintains updated database of the network topology, including the current available bandwidth of each link • Link-state information distribution is according to OSPF specification • The important question is when to distribute this information

  17. An ideal situation would be one where all routers have the most up to date view of the network • This would call for very frequent updates, one every time the available bandwidth on a link changes • neither scalable nor practical

  18. Could use periodic updates • Major changes in available bandwidth could go unnoticed for a full period • Better to use a hybrid of the two strategies • Send an update when the current value of the link is above or below some threshold (say 2)

  19. This implies that when a flow needs b units of bandwidth links with advertised bandwidths of 2b are “safe” and we can discard paths with b/2. • This leads to a new metric, certainty • There are several ways to incorporate this into the path selection process

  20. Probabilistic Approach • The bandwidth value can be thought of as a random variable in the range (bl/2, 2*bl) where bl is the last advertised value • assuming uniform distribution you can compute for each bandwidth requirement b the success probability of the link and then run the Bellman Ford algorithm on it

  21. This would mean that we would need to compute a different path for each value of b • Thus this approach is too complex in the case of pre-computed routes.

  22. Simple Approach • Run the standard Bellman Ford algorithm outputting a N*H routing table • let 0.5 <= a <= 1 be the risk proneness of the decision maker, where lower values indicate a higher level of risk • let Hr be the number of hops the decision maker is willing to trade for safety

  23. Then with a request for b units of bandwidth: • from the table get hmin, the minimal number of hops for a path with at least a*b units • from the table get hmax, the minimal number of hops on a “safe” path • if hmin + Hr >= hmax choose the safe path • otherwise choose the path from the table with maximal bandwidth having at most hmin + Hr hops

  24. Elaborating on Approach #2 • A problem of approach #2 is that efficient paths may be disregarded • We can extend approach #2 by: • erasing the links with values less than b/2 • assigning a cost of 0 to safe links • assigning a cost of 1 to links in the range (b/2,2b) • run the Bellman Ford algorithm with the new cost function

  25. This results in a huge table which identifies for each bandwidth value and for each number of hops, a path with no more than h hops that has a minimal number of non-safe links with respect to the bandwidth value • gives the decision maker more options

  26. higher complexity in terms of running time and table size • since there are a maximum of M distinct bandwidth values the time and space complexity is O(M*H*M) and O(M*H*N)

  27. Reducing the Complexity of Approach #3 • Want to handle the problems of the simple approach without the complexity of the previous approach • Let bmax be the maximal value a link bandwidth can attain • Issue an update when a threshold is crossed • The update advertises the threshold that is closest to its current bandwidth value

  28. This way the ratio between the actual and advertised bandwidth values are kept within the .5 … 2 range • The number of different advertised values is now O(log(bmax)) instead of O(M) as in the previous approach • time and space complexity are reduced to O(M*H*log(bmax)) and O(N*H*log(bmax))

  29. Conclusions • The algorithms presented provide tradeoffs between complexity, accuracy, and ease of implementation • focused mainly on bandwidth • future work: • relationship with call admission • validating their claims with simulation

More Related