330 likes | 418 Views
QOS Routing: The Precomputation Perspective. Ariel Orda and Alexander Sprintson Presented by: Jing, Niloufer, Tri. Outline of the Presentation. Introduction Algorithm for hierarchical network, bottleneck wt. Clustering Algorithm Find Algorithm
E N D
QOS Routing: The Precomputation Perspective Ariel Orda and Alexander Sprintson Presented by: Jing, Niloufer, Tri
Outline of the Presentation • Introduction • Algorithm for hierarchical network, bottleneck wt. • Clustering Algorithm • Find Algorithm • Pseudo-Polynomial Solution for Additive weights • RTP and RTCP • Conclusion
Motivation • QOS path selection that • meets connection demand • uses fewer resources in network. • Use Precomputation instead of On-Demand for QOS path selection. • Use hierarchical structure to improve the computational complexity.
QoS Routing Is Complex • Many requirements specified which translate to constraints on path selection. • Need to consider globalnetworkresources also. • Identity of optimal path is connection dependent but doing path selection for every request is expensive.
Making it Simpler • Individual Connection requirements: • Translate different types of QOS requirements to Bottleneck requirements. Easier than additive. • Global Network Optimization: • Use hop minimization. Fewer hops Fewer resources. • Computations for each Request: • Do Precomputation. Rate of requests < rate of changes in network state
Restricted Shortest Path Problem • Given are source node s, destination node d and a QOS requirement w. Find a path p from s to d such that: • W(p) <= w • C(p)<= C(p1) for every other path p1 that satisfies the restriction W(p) <= w • there does not exist another path p2 for which C(p2) = C(p) and W(p2) <= W(p)
Bottleneck weight Hop cost • Given are a source node s, a destination node d, and a bottleneck QoS requirement w. Find a path p from s to d such that: • W(p) <= w • |p|<= |p1| for every other path p1 that satisfies the restriction W(p) <= w • there does not exist another path p2 for which |p2| = |p| and W(p2) <= W(p)
Simple Precomputation Scheme • Use Bellman-Ford algorithm. • Compute minimum weight for each possible hop count between s and d. • Upon connection request, choose minimum hop value for which the corresponding path meets QoS requirement of connection. • Precomputation Complexity: O(MH) • Find Complexity: O(logH + |p|)
Clustering Algorithm • Input: • Layer i peer group C • Node s’ • Arrays TC’[v1,v2,h] for peer groups at level i-1 that make up this peer group C • Output: - Compute TC[s’,v,h] for all v and h, where v is border node of C and h is hop count.
Bottleneck Weight, Hop Cost Algorithm for Hierarchical NW • For each peer group, at each layer, considering each border node as s’, call Algorithm for Clustering
S’ 20 b c 10 30 40 Border node 50 a d 25 S: (a,b,1,10) (b,c,1,20) (a,e,1,25) (b,d,1,30) (d,e,1,30) (c,d,1,40) (b,e,1,50) 30 e Output:(To be used at layer 2) TC[s’,e,1] = 50 TC[s’,e,2] = 25 TC[s’,e,3] = 25 TC[s’,e,4] = 25 Border node
S’ b c Border node a d e Border node
FOR THE FIRST LAYER (ACTUAL NETWORK).Identify peer group that contains the destination node.Remove all links that do not meet the constraints.Use Breath First Search, find “best” path from the border nodes to the destination nodeFOR ALL OTHER LAYERS (layer 2 to k).Identify peer group that contains the destination node.Use pre-computed data (Tc array) and Dijkstra to find “best” path from the border nodes to the destination node.Repeat the process until reach the last layer (layer k)
PRECOMPUTATION SCHEME FOR ADDITIVE METRICS & PSEUDO-POLYNOMIAL SOLUTIONBottleneck metric:Weight of the path = Weight of the worse linkAdditive metric:Weight of the path = Sum of the weight of all linksNP-hard problemBecause need to exhaust the solution space O(M C)M: number of links C: all of possible value of weightPseudo-polynomial because the value of C does not correlate (polynomial) to number of links or vertices in the network.
Additive QoS Constraints (Delay) • Mathematic Approach: • Example: Pseudo-Polynomial Solution for RSP problem • Heuristic Approach: • Example: RTP
RTP Overview • RTP (Real-time Transport Protocol) • Designed as an end-to-end transport protocol that is suitable for unicast or multicast transmission of real-time data • Used in combination with other transport protocols---typically on top of UDP
RTP Overview (Cont.) • Why Not TCP? • RTP is primarily designed for multicast, the connection-oriented TCP does not scale well and therefore is not suitable • For real-time data, reliability is not as important as timely delivery
RTP Overview (Cont.) • RTP can be viewed as a sub layer of the transport layer
What RTP Provides: • Timestamping • Set according to the instant the first octet in the packet was sampled • Used to reconstruct the original timing in order to play out the data in correct rate • Sequence numbering • Used to place the incoming data packets in the correct order • Also used used for packet loss detection
What RTP Provides: (Cont.) • Payload type identification • Specifies the payload format as well as the encoding/compression schemes
What RTP does NOT provide: • Does not make any QoS commitments • Does not guarantee reliable, timely, or in-order delivery • Does not enforce any error treatment measures
RTCP Overview • RTCP (Real-Time Control Protocol) • Designed as a control protocol that works in conjunction with RTP • Used to convey feedback on quality of data delivery and information of membership in an RTP session
What RTCP Provides: • QoS monitoring and congestion control • By sending feedbacks to applications about the quality of data distribution • Source identification • Information may include user's name, telephone number, email address and other information
What RTCP Provides: (Cont.) • Control information scaling • Control traffic is limited to at most 5% of the overall session traffic
Useful Links • Http://www.cis.ohio-state.edu • http://www.cs.columbia.edu • Http://www.Seas.upenn.edu • Http:// www4.informatik.uni-erlangen.De
Conclusion • There are different approaches to tackle QoS constraints: • Algorithmic based • Bottleneck • Additive • Heuristic based Don’t let NP-Hard stop us!!