440 likes | 548 Views
Supporting Application Network Flows with Multiple QoS Constraints. Amit Mondal, Northwestern University Puneet Sharma, HP Labs Sujata Banerjee, HP Labs Aleksandar Kuzmanovic, Northwestern University. IP multiplay. Same IP/access network is used for different
E N D
Supporting Application Network Flows with Multiple QoS Constraints Amit Mondal, Northwestern University Puneet Sharma, HP Labs Sujata Banerjee, HP Labs Aleksandar Kuzmanovic, Northwestern University
IP multiplay Same IP/access network is used for different applications with diverse QoS requirements Supporting Application Network Flows with Multiple QoS Constraints
Real-time and interactive multimedia applications have multiple QoS requirements IP routing Best effort service Destination-based routing Packets for different applications with varied QoS requirements traverse the same Internet path to a destination No widespread deployment of Quality-of-Service QoS and the Internet “high throughput” “low delay” Supporting Application Network Flows with Multiple QoS Constraints
QoS provisioning using overlay networks • Build Overlay Backbone • Deploy overlay nodes at strategic locations in the Internet. • Provide support for per-flow forwarding • e.g. Anagran Flow Aware Routers • Flow route management architecture • Discover and setup end-to-end paths for individual flows with diverse flow QoS requirements • Monitor end-to-end flow performance to trigger path adaptation Supporting Application Network Flows with Multiple QoS Constraints
AS1 AS3 AS4 AS2 Overlay flow QoS management architecture Configure intermediate overlay nodes for per-flow forwarding Sensing local link characteristics Find a path to X with b/w > b, delay < d and loss < l% Adapt to different path dynamically as current path fails to meet QoS parameters End user Overlay node Physical link Logical link Supporting Application Network Flows with Multiple QoS Constraints
Our contribution • Design a scalable QoS routing protocol which finds path under multiple constraints • Propose a distributed algorithm for dynamic path adaptation • Evaluate accuracy, efficiency and scalability of the protocol using large-scale simulation and compare with other existing approaches • Built a functional prototype using Click modular router Supporting Application Network Flows with Multiple QoS Constraints
Design challenges • Multiple QoS metrics • Finding a feasible path using Dijkstra’s algorithm is NP-Complete • Randomized and approximation algorithms • Single composite metric derived from multiple metrics • Paths might not meet individual QoS constraints • Dynamic overlay-link properties • Increases control message overhead Supporting Application Network Flows with Multiple QoS Constraints
Overview of our multi-constraint QoS routing protocol • Path vector protocol to disseminate path information • Tag with QoS parameters • How to aggregate path information when multiple QoS metrics are considered? • Distribute the best paths for each metrics • What about QoS requests which could be served by paths which are not in the best path set? • On-demand route discovery Supporting Application Network Flows with Multiple QoS Constraints
Advertise best path for each metric B/w Loss X X X AS1 (10ms, 0.01%, 1Mbps) AS3 (5ms, 0.01%, 768Kbps) AS5 AS1 (2ms, 0.01%, 128Kbps) AS3 (3ms, 0.02%, 378Kbps) AS5 AS1 (2ms, 0.0%, 128Kbps) AS3 (3ms, 0.005%, 378Kbps) AS5 MCQoS: Multi-constraints QoS routing protocol Tag QoS characteristics Delay Local link info B A QoS Path Table Supporting Application Network Flows with Multiple QoS Constraints
undecideable best b/w best delay Aggregating path information infeasible BW feasible • What about QoS requests in the undeciable region? Delay There will feasible requests that can be supported but the source node might not know about those paths, thus cannot admit flows based on local information The source node already knows a path if the QoS request falls in the feasible region There cannot exist a feasible path in the network if the QoS request falls in the infeasible region Supporting Application Network Flows with Multiple QoS Constraints
On-demand route discovery • Admit or deny flow based on local QoS table if in feasible or infeasible region • Otherwise, On-demand route discovery for requests in undecideable region • Exploit advertisement received from neighbors to reduce search space while route discovery undecideable infeasible BW feasible Delay C A B E D Supporting Application Network Flows with Multiple QoS Constraints
5ms 10ms 10ms 4ms 5Mbps 5Mbps 12Mbps 12Mbps 100ms 100ms 106ms 105ms 50Mbps 50Mbps 50Mbps 50Mbps best b/w best delay 2ms 2ms 5Mbps 5Mbps 8ms 8ms 20Mbps 20Mbps An example C (5ms, 100Mbps) A B (1ms, 100Mbps) E (2ms, 20Mbps) D Requests: 10ms, 3Mbps OK ABD…E 10ms, 3Mbps OK 120ms, 15Mbps OK 120ms, 15Mbps OK ABC…E 10ms, 100Mbps X 10ms, 100Mbps X ---- 15ms, 15Mbps OK ABD…E 15ms, 15Mbps ??? Supporting Application Network Flows with Multiple QoS Constraints
Route maintenance • Path restoration through path patching • Each intermediate node knows the QoS requirements from the node to the destination • Upstream node periodically pushes QoS requirements to downstream nodes • As a node detects QoS violation, it triggers alternate path search at local node • Notify upstream node if no alternative path D F H A C E G B Supporting Application Network Flows with Multiple QoS Constraints
Evaluation • Event-driven simulator • GT-ITM to generate random flat topology • Outdegree min(10, size/2) • Assign link metrics from actual planetlab link measurement data Supporting Application Network Flows with Multiple QoS Constraints
Convergence time of MCQoS • Convergence time: how long does it take to stabilize for a given network snapshot? • Restabilization time: how long does it take to stabilize once a link metric changes? • QRON: Link state based multi-QoS routing protocol using composite metric approach Being path vector based protocol MCQoS takes longer time to converge, but does not involve any NP-hard computation, thus scale with network size Supporting Application Network Flows with Multiple QoS Constraints
Message overhead of path dissemination Message overhead of MCQoS is comparable to Link-State based (QRON) protocol Supporting Application Network Flows with Multiple QoS Constraints
Depletion area K-hop path: paths in the undecidabe region discovered within k-hops of on-demand route discovery process Global feasible region: feasible region at the source node if the source node knew all alternative paths like link-state protocol Depletion area Depletion area: part of global feasible QoS region not known at the source node because many alternate paths are suppressed Supporting Application Network Flows with Multiple QoS Constraints
Overhead of on-demand path discovery How many hops does it take to discover the entire depletion area? We measure the fraction of depletion area discovered within k hops from the source node More than 90% of the depletion area is discovered within 3 hops Supporting Application Network Flows with Multiple QoS Constraints
Comparison with other approaches • Composite Metric = K1*delay + k2/bw where k1=1, k2 = 10^7, delay in sec, bw in bps • False positive: flow is admitted but the path does not meet the QoS • False negative: there exists a feasible path but the flow is not admitted Supporting Application Network Flows with Multiple QoS Constraints
Comparison with other approaches Supporting Application Network Flows with Multiple QoS Constraints
Comparison with other approaches • Lui et al. proposed line segment based approach to for topology aggregation in delay-bw plane. Tam et al. designed a distance vector based QoS protocol using the line-segment approach • False positive: Fraction of undecidable region that is actually infeasible, but the approach labels as feasible. • False negative: Fraction of undecidable region that is feasible, but the approach labels as infeasible. Supporting Application Network Flows with Multiple QoS Constraints
Comparison with other approaches Supporting Application Network Flows with Multiple QoS Constraints
Comparison with other approaches • A feasible path with a composite metric might not satisfy individual QoS metrics. • The line-segment based approach often suffers from loss/distortion. • Our hybrid approach has no false positive and false negative percentage can be reduced to less than one 1% by 3-hop on-demand route discovery. Supporting Application Network Flows with Multiple QoS Constraints
QoS violation ratio in dynamic environment • 100 node topology • Generate QoS requests with certain arrival rate with bw [5Mbps, 55Mbps] and delay [100ms,400ms] • Each flows last between 5 to 10 minute • We simulate the network behavior for 10 min • New flows arrive before network stabilizes • Expect to observe QoS violation The QoS violation ratio is negligible even with arrival rate of 600 conn/sec. Supporting Application Network Flows with Multiple QoS Constraints
Flow id nexthop Y:p->X:q C Prototype QoS path setup (Y:p -> X:q, Dms, L%, BKbps) Peers (path ads) Local link Characteristics MCQoSd S3 Control Plane Rt. discovery req, Rt. discovery reply QoS Path table Flow setup req Flow setup Click Router Data Plane DataIn DataOut Supporting Application Network Flows with Multiple QoS Constraints
Conclusion • Designed a scalable multiple constraints QoS flow route management protocol • hybrid approach of path vector routing and on-demand route discovery • Keep balance between flow setup time and control message overhead • No complex NP-hard computation • Performed large-scale simulations to demonstrate the efficiency and scalability of the approach • Built a prototype using Click modular router Supporting Application Network Flows with Multiple QoS Constraints
Thank You! & Questions ? Supporting Application Network Flows with Multiple QoS Constraints
AS1 AS3 AS4 AS2 Overlay flow QoS management architecture Configure intermediate overlay nodes for per-flow forwarding Sensing local link characteristics We are not addressing the problem of overlay node placement nor building a overlay network! It is in fact orthogonal to the problem we are addressing here. Find a path to X with b/w > b, delay < d and loss < l% Adapt to different path dynamically as current path fails to meet QoS parameters End user Overlay node Physical link Logical link Supporting Application Network Flows with Multiple QoS Constraints
32 AS1 AS3 AS5 X cost Path vector dest dest nexthop X A Path vector protocol • Advertise local reachability • Receive reachability information from neighbors • Collect local link information • Aggregate received advertisements • Disseminate the aggregated path information Local link info B A Path Table Forwarding table Supporting Application Network Flows with Multiple QoS Constraints
Advertise best path for each metric B/w Loss X X X AS1 (2ms, 0.01%, 128Kbps) AS3 (3ms, 0.02%, 378Kbps) AS5 AS1 (10ms, 0.01%, 1Mbps) AS3 (5ms, 0.01%, 768Kbps) AS5 AS1 (2ms, 0.0%, 128Kbps) AS3 (3ms, 0.005%, 378Kbps) AS5 Flow id nexthop MCQoS: Multi-constraints QoS routing protocol Tag QoS characteristics Delay Local link info B A QoS Path Table Y:p->X:q C Forwarding table Supporting Application Network Flows with Multiple QoS Constraints
No of hops required to discover entire depletion area? More than 90% of the times the entire depletion area is discovered within 5-hops Supporting Application Network Flows with Multiple QoS Constraints
Flow id nexthop Y:p->X:q C System Implementation QoS path setup (Y:p -> X:q, Dms, L%, BKbps) Peers (path ads) Local link Characteristics OQoSd S3 Control Plane Rt. discovery req, Rt. discovery reply QoS Path table Flow setup req Flow setup Click Router Data Plane DataIn DataOut Supporting Application Network Flows with Multiple QoS Constraints
Classification of services • Best effort • File transfer, E-mail, Web-surfing • New Services require Quality-of-Experience • VOIP, IPTV, VoD, Video conferencing • Quality-of-Experience includes • Speed (bandwidth) • Interactivity (low delay, jitter, loss) Supporting Application Network Flows with Multiple QoS Constraints
Design challenges • Multiple QoS metrics • Finding a feasible path using Dijkstra’s algorithm is NP-Complete • Another approach is to use single composite metric derived from multiple metrics • some paths might not meet each QoS metric requirement individually • Dynamic overlay-link properties • Increases control message overhead • limits scalability • Adaptive Routing • Monitor to detect violation and adopt alternate path in such cases. Supporting Application Network Flows with Multiple QoS Constraints
Supporting Application Network Flows with Multiple QoS Constraints
Future work • Scalability analysis of the protocol • Formal correctness proof of the routing protocol • Implementing dynamic path adaptation/Route maintenance algorithm • Planetlab experiment with large and complex topologies Supporting Application Network Flows with Multiple QoS Constraints
Our goal • Design scalable flow route management architecture to • Efficiently discover paths to meet requests with multiple QoS constraints • Flow establishment • Configure overlay nodes in the path for per-flow forwarding • Route Maintenance • Adapt to alternate path dynamically to continually guarantee flow QoS requirements Supporting Application Network Flows with Multiple QoS Constraints
Classification of QoS metrics • Additive metric e.g. delay delay(A-B-C-D) = delay(AB) + delay(BC) + delay(CD) • Multiplicative metric e.g. loss loss(A-B-C-D) = 1 – (1-loss(AB))(1-loss(BC))(1-loss(CD)) • Concave metric e.g. bandwidth bw(A-B-C-D) = min { bw(AB), bw(BC), bw(CD)} • Jitter, Cost are also additive • Wang and Crowcroft proved that finding path subject to n additive and m multiplicative constraints is NP-Complete if n+m >= 2 Supporting Application Network Flows with Multiple QoS Constraints
D C nrg048 A B G H 378Kbps VLC client 256Kbps E F sauvignon nrg002 nrg049 nrg090 VLC server HP Labs LAN Default path Preliminary evaluation • Evaluated in controlled environment • Emulab • Planetlab expt • Live demo with VLC media player in Lab setup Supporting Application Network Flows with Multiple QoS Constraints
nrg048 378Kbps VLC client 256Kbps sauvignon nrg002 nrg049 nrg090 VLC server HP Labs LAN Default path Demo Topology Requests: - 300 Kbps - 128 Kbps Supporting Application Network Flows with Multiple QoS Constraints
Evaluation Metrics • Control overhead/scalability • Path vector + On-demand route discovery • Flow admission delay • On-demand route discovery + Flow setup time • Amortized value depends on % of QoS flow requests that fall in the undecideable region • Planetlab measurements for path characteristics distribution • MEDISYN for synthetic QoS requests generation • Convergence time • Worst case path vector • Improved using frequent updates with interest-based path information dissemination Supporting Application Network Flows with Multiple QoS Constraints
Finding a feasible path under multiple constraints - hard problem Optimal path with single derived metric often does not meet individual requirements High cost of flooding link state information in large network Distributed path computation makes path finding easy even under multiple constraints. No complex graph search No flooding of individual link metrics or updates instead distribute aggregated path metrics Advertising all alternative paths may not be feasible, how to choose the best path/a representative path under multiple metrics ? Design Choice Link State Path Vector Supporting Application Network Flows with Multiple QoS Constraints
D C A B G H E F Emulab Experiment Overlay topology Supporting Application Network Flows with Multiple QoS Constraints
Route Maintenance • Path restoration through path patching • Trigger alternate path search at local node • Notify upstream node if no alternative path • End-to-end session delay monitoring to figure out delay violation D F D A C E G B C E A B D F Supporting Application Network Flows with Multiple QoS Constraints