Download - QOS Routing: The Precomputation Perspective
QOS Routing: The Precomputation Perspective
Ariel Orda and Alexander Sprintson
Presented by: Jing, Niloufer, Tri
2
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
3
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.
4
QoS Routing Is Complex
• Many requirements specified which translate to constraints on path selection.
• Need to consider global network resources also.
• Identity of optimal path is connection dependent but doing path selection for every request is expensive.
5
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
6
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)
7
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)
8
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|)
9
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.
10
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
11
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)
a
b
d
e
c
50
30
20
10
25
30
40
Border node
Border node
S’
Output:(To be used at layer 2)TC[s’,e,1] = 50TC[s’,e,2] = 25TC[s’,e,3] = 25TC[s’,e,4] = 25
12
a
b
d
e
c
Border node
Border node
S’
13
14
S’
15
16
17
18
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 node
FOR 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)
19
PRECOMPUTATION SCHEME FOR ADDITIVE METRICS & PSEUDO-POLYNOMIAL SOLUTION
Bottleneck metric:Weight of the path = Weight of the worse link
Additive metric:Weight of the path = Sum of the weight of all links
NP-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.
20
Additive QoS Constraints (Delay)
• Mathematic Approach:– Example: Pseudo-Polynomial Solution for RSP problem
• Heuristic Approach:– Example: RTP
21
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
22
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
23
RTP Overview (Cont.)• RTP can be viewed as a sub layer of the transport layer
24
RTP Overview (Cont.)
25
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
26
What RTP Provides: (Cont.)
• Payload type identification– Specifies the payload format as well as the
encoding/compression schemes
27
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
28
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
29
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
30
What RTCP Provides: (Cont.)
• Control information scaling – Control traffic is limited to at most 5% of the overall
session traffic
31
Useful Links
• Http://www.cis.ohio-state.edu
• http://www.cs.columbia.edu
• Http://www.Seas.upenn.edu
• Http:// www4.informatik.uni-erlangen.De
32
Conclusion
• There are different approaches to tackle QoS constraints:– Algorithmic based
• Bottleneck
• Additive
– Heuristic based
Don’t let NP-Hard stop us!!
33