Presentation is loading. Please wait.

Presentation is loading. Please wait.

15-744: Computer Networking L-17 Multicast Reliability and Congestion Control.

Similar presentations


Presentation on theme: "15-744: Computer Networking L-17 Multicast Reliability and Congestion Control."— Presentation transcript:

1 15-744: Computer Networking L-17 Multicast Reliability and Congestion Control

2 L -15; 3-7-01© Srinivasan Seshan, 20012 Multicast Issues Reliable transfer Congestion control Assigned reading [F+97] A Reliable Multicast Framework for Ligh-Weight Sessions and Application Level Framing [MJV96] Receiver-driven Layered Multicast

3 L -15; 3-7-01© Srinivasan Seshan, 20013 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

4 L -15; 3-7-01© Srinivasan Seshan, 20014 Loss Recovery Sender-reliable Wait for ACKs from all receivers. Re-send on timeout or selective ACK Per receiver state in sender not scalable ACK implosion Receiver-reliable Receiver NACKs (resend request) lost packet Does not provide 100% reliability NACK implosion

5 L -15; 3-7-01© Srinivasan Seshan, 20015 R1 Implosion S R3R4 R2 21 R1 S R3R4 R2 Packet 1 is lostAll 4 receivers request a resend Resend request

6 L -15; 3-7-01© Srinivasan Seshan, 20016 Retransmission Re-transmitter Options: sender, other receivers How to retransmit Unicast, multicast, scoped multicast, retransmission group, … Problem: Exposure

7 L -15; 3-7-01© Srinivasan Seshan, 20017 R1 Exposure S R3R4 R2 21 R1 S R3R4 R2 Packet 1 does not reach R1; Receiver 1 requests a resend Packet 1 resent to all 4 receivers 1 1 Resend request Resent packet

8 L -15; 3-7-01© Srinivasan Seshan, 20018 Ideal Recovery Model S R3R4 R2 2 1 S R3R4 R2 Packet 1 reaches R1 but is lost before reaching other Receivers Only one receiver sends NACK to the nearest S or R with packet Resend request 11 Resent packet Repair sent only to those that need packet R1

9 L -15; 3-7-01© Srinivasan Seshan, 20019 R1 Aside: Using the Routers S R3R4 R2 Routers do transport level processing: Buffer packets Combine ACKs Send retransmissions Model solves implosion and exposure, but not scalable Violates end-to-end argument NACK RTX Router

10 L -15; 3-7-01© Srinivasan Seshan, 200110 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

11 L -15; 3-7-01© Srinivasan Seshan, 200111 SRM Originally designed for wb Receiver-reliable NACK-based Every member may multicast NACK or retransmission

12 L -15; 3-7-01© Srinivasan Seshan, 200112 R1 SRM Request Suppression S R3 R2 21 R1 S R3 R2 Packet 1 is lost; R1 requests resend to Source and Receivers Packet 1 is resent; R2 and R3 no longer have to request a resend 1 X X Delay varies by distance X Resend request Resent packet

13 L -15; 3-7-01© Srinivasan Seshan, 200113 Deterministic Suppression d d d d 3d Time data nack repair d 4d d 2d 3d = Sender = Repairer = Requestor Delay = C 1  d S,R

14 L -15; 3-7-01© Srinivasan Seshan, 200114 SRM Star Topology S R2 21 R3 Packet 1 is lost; All Receivers request resends Packet 1 is resent to all Receivers X R4 Delay is same length S R2 1 R3R4 Resend request Resent packet

15 L -15; 3-7-01© Srinivasan Seshan, 200115 SRM: Stochastic Suppression data d d d d Time NACK repair 2d session msg 0 1 2 3 Delay = U[0,D 2 ]  d S,R = Sender = Repairer = Requestor

16 L -15; 3-7-01© Srinivasan Seshan, 200116 SRM (Summary) NACK/Retransmission suppression Delay before sending Delay based on RTT estimation Deterministic + Stochastic components Periodic session messages Full reliability Estimation of distance matrix among members

17 L -15; 3-7-01© Srinivasan Seshan, 200117 What’s Missing? Losses at link (A,C) causes retransmission to the whole group Only retransmit to those members who lost the packet [Only request from the nearest responder] Sender Receiver A B E F S CD 0.99 00 0 00

18 L -15; 3-7-01© Srinivasan Seshan, 200118 Local Recovery Application-level hierarchy Fixed v.s. dynamic TTL scoped multicast Router supported

19 L -15; 3-7-01© Srinivasan Seshan, 200119 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

20 L -15; 3-7-01© Srinivasan Seshan, 200120 RMTP Reliable Multicast Transport Protocol by Purdue and AT&T Research Labs Designed for file dissemination (single- sender) Deployed in AT&T’s billing network

21 L -15; 3-7-01© Srinivasan Seshan, 200121 RMTP: Fixed Hierarchy Rcvr unicasts periodic ACK to its Designated Receiver (DR) DR unicasts its own ACK to its parent Rcvr chooses closest statically configured (DR) Mcast or unicast retransmission Based on percentage of requests Scoped mcast for local recovery D R2 R5 S R3 R4 R1 RRRR D RR D D DR R Receiver R* Router

22 L -15; 3-7-01© Srinivasan Seshan, 200122 RMTP: Comments  : Heterogeneity Lossy link or slow receiver will only affect a local region  : Position of DR critical Static hierarchy cannot adapt local recovery zone to loss points

23 L -15; 3-7-01© Srinivasan Seshan, 200123 Overview Pragmatic General Multicast

24 L -15; 3-7-01© Srinivasan Seshan, 200124 Pragmatic General Multicast Cisco’s reliable multicast protocol NACK-based, with suppression Repair only forwarded to the NACKers

25 L -15; 3-7-01© Srinivasan Seshan, 200125 R1 Pragmatic General Multicast S R3R4 R2 21 R1 S R3R4 R2 Packet 1 reaches only R1; R2, R3, R4 request resends Packet 1 resent to R2, R3, R4; Not resent to R1 1 1 X 11 1 Routers remember resend requests 11 1 Resend requestResent packet

26 L -15; 3-7-01© Srinivasan Seshan, 200126 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

27 L -15; 3-7-01© Srinivasan Seshan, 200127 Light-weight Multicast Service (LMS) Enhance multicast routing with selective forwarding LMS extends router forwarding - what routers are meant to do in the first place No packet storing or processing at routers Strictly IP: no peeking into higher layers

28 L -15; 3-7-01© Srinivasan Seshan, 200128 The LMS Concept Heavy-weight model LMS: Receiver acts as surrogate R Control messages R Router stores packets, receives NACKs and sends retransmissions Router chooses a receiver as a surrogate Router steers all control messages to surrogate Router relays messages from surrogate to the subtree

29 L -15; 3-7-01© Srinivasan Seshan, 200129 LMS: Definitions Replier Receiver volunteered to answer requests Turning point Where requests start to move downstream Directed mcast Mcast to a subtree R1 S R3R6 R2 Replier link R4R5 Turning point Replier

30 L -15; 3-7-01© Srinivasan Seshan, 200130 R1 LMS with Replier Links S R3R6 R2 21 Packet 1 reaches only R1; R2 requests resend Resend requests from each receiver follow replier links 1 X Resend request Replier link R4R5 R1 S R3R6 R2 Resend request Replier link R4R5

31 L -15; 3-7-01© Srinivasan Seshan, 200131 R1 LMS with Replier Links S R3R6 R2 Request from replier links go up towards the Source Packet 1 is resent to all Receivers Resend request Replier link R4R5 R1 S R3R6 R2 1 Resent packet Replier link R4R5

32 L -15; 3-7-01© Srinivasan Seshan, 200132 LMS: Comments Replier problems Selection? Fault tolerance? Works with unidirectional shared trees (PIM) Needs to relay requests from core/RP to sender Difficulties with bi-directional shared trees Needs per-source state

33 L -15; 3-7-01© Srinivasan Seshan, 200133 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

34 L -15; 3-7-01© Srinivasan Seshan, 200134 Multicast Congestion Control What if receivers have very different bandwidths? Send at max? Send at min? Send at avg? R R R S ???Mb/s 100Mb/s 1Mb/s 56Kb/s R

35 L -15; 3-7-01© Srinivasan Seshan, 200135 Video Adaptation: RLM Receiver-driven Layered Multicast Layered video encoding Each layer uses its own mcast group On spare capacity, receivers add a layer On congestion, receivers drop a layer Join experiments used for shared learning

36 L -15; 3-7-01© Srinivasan Seshan, 200136 Layered Media Streams S R R1 R2 R3 R 10Mbps 512Kbps 128Kbps 10Mbps R3 joins layer 1, fails at layer 2 R2 join layer 1, join layer 2 fails at layer 3 R1 joins layer 1, joins layer 2 joins layer 3

37 L -15; 3-7-01© Srinivasan Seshan, 200137 Drop Policies for Layered Multicast Priority Packets for low bandwidth layers are kept, drop queued packets for higher layers Requires router support Uniform (e.g., drop tail, RED) Packets arriving at congested router are dropped regardless of their layer Which is better? Intuition vs. reality!

38 L -15; 3-7-01© Srinivasan Seshan, 200138 RLM Intuition Uniform Better incentives to well-behaved users If oversend, performance rapidly degrades Clearer congestion signal Allows shared learning Priority Can waste upstream resources Hard to deploy RLM approaches optimal operating point Uniform is already deployed

39 L -15; 3-7-01© Srinivasan Seshan, 200139 RLM Intuition

40 L -15; 3-7-01© Srinivasan Seshan, 200140 Receiver-Driven Layered Multicast Each layer a separate group Receiver subscribes to max group that will get through with minimal drops Dynamically adapt to available capacity Use packet losses as congestion signal Assume no special router support Packets dropped independently of layer

41 L -15; 3-7-01© Srinivasan Seshan, 200141 RLM Join Experiment Receivers periodically try subscribing to higher layer If enough capacity, no congestion, no drops  Keep layer (& try next layer) If not enough capacity, congestion, drops  Drop layer (& increase time to next retry) What about impact on other receivers?

42 L -15; 3-7-01© Srinivasan Seshan, 200142 Join Experiments 1 2 3 4 Time Layer

43 L -15; 3-7-01© Srinivasan Seshan, 200143 RLM Scalability? What happens with more receivers? Increased frequency of experiments? More likely to conflict (false signals) Network spends more time congested Reduce # of experiments per host? Takes longer to converge

44 L -15; 3-7-01© Srinivasan Seshan, 200144 RLM Receiver Coordination Receiver advertises intent to add layer Other receivers Avoid conflicting experiments If experiment fails, will see increased drops => don’t try adding layer! (shared learning) OK to try adding lower layer during higher layer experiment Won’t cause drops at higher layer!

45 L -15; 3-7-01© Srinivasan Seshan, 200145 Overview Reliability Scalable Reliable Multicast Reliable Multicast Transport Protocol Lightweight Multicast Service Receiver-driven Layered Multicast Other Issues

46 L -15; 3-7-01© Srinivasan Seshan, 200146 Inferring Topology What if packet is lost on link? All children of link will not get packet Idea: use loss “fingerprints” to identify siblings Siblings will have the most similar fingerprints Various techniques to build tree from collection of fingerprints

47 L -15; 3-7-01© Srinivasan Seshan, 200147 Session Messages SRM Identify what node knows about global state Multimedia & other applications Identify list of members Communicate loss rates  possibly for congestion control or other feedback What if it is a large group? Periodic transmissions can flood network!!

48 L -15; 3-7-01© Srinivasan Seshan, 200148 Next Lecture: QOS & IntServ QOS IntServ Architecture Assigned reading [She95] Fundamental Design Issues for the Future Internet [CSZ92] Supporting Real-Time Applications in an Integrated Services Packet Network: Architecture and Mechanisms


Download ppt "15-744: Computer Networking L-17 Multicast Reliability and Congestion Control."

Similar presentations


Ads by Google