Download presentation
Presentation is loading. Please wait.
1
CMPE 252A: Computer Networks
Lecture 17 CMPE252A Fall 2004
2
Announcements Homework 5 posted. Tutorial on ns-2: Monday, 11.29.
Due on Dec. 1st. Tutorial on ns-2: Monday, CMPE252A Fall 2004
3
Today’s plan Reliable multicast transport. CMPE252A Fall 2004
4
Reliable Multicast Transport
CMPE252A Fall 2004
5
Protocols SRM. RMTP. PGM. pgmcc. RLM. CMPE252A Fall 2004
6
Challenges Heterogeneity. Scalability. Implosion: feedback.
Exposure: repair. CMPE252A Fall 2004
7
Mechanisms Error recovery. Congestion control. CMPE252A Fall 2004
8
Error recovery Sender-reliable. Receiver-reliable. CMPE252A Fall 2004
9
Sender-reliable Receiver ACKs.
Wait for ACKs from all receivers. Re-send on timeout or selective ACK. : easy resource management. : wait for ACK. -: receiver state in sender not scalable. -: ACK implosion. CMPE252A Fall 2004
10
Receiver-reliable Receiver NACKs lost packet.
: no state at sender - good for multicast. -: does not provide 100% reliability. : NACK implosion. CMPE252A Fall 2004
11
Implosion Src CMPE252A Fall 2004
12
Implosion Src CMPE252A Fall 2004
13
Implosion Src CMPE252A Fall 2004
14
Implosion Src CMPE252A Fall 2004
15
Implosion Src CMPE252A Fall 2004
16
Implosion Src CMPE252A Fall 2004
17
Implosion Src CMPE252A Fall 2004
18
Implosion Src CMPE252A Fall 2004
19
Implosion Src CMPE252A Fall 2004
20
Implosion Src CMPE252A Fall 2004
21
Implosion Src CMPE252A Fall 2004
22
Implosion Src CMPE252A Fall 2004
23
Implosion Src CMPE252A Fall 2004
24
Retransmission Who retransmits? How to retransmit? Problem: exposure
Sender- versus receiver-based. How to retransmit? Unicast, multicast, scoped multicast, retransmission group, … Problem: exposure CMPE252A Fall 2004
25
Exposure Src CMPE252A Fall 2004
26
Exposure Src CMPE252A Fall 2004
27
Exposure Src CMPE252A Fall 2004
28
Exposure Src CMPE252A Fall 2004
29
Exposure Src CMPE252A Fall 2004
30
Exposure Src CMPE252A Fall 2004
31
Exposure Src CMPE252A Fall 2004
32
Exposure Src CMPE252A Fall 2004
33
Exposure Src CMPE252A Fall 2004
34
Exposure Src CMPE252A Fall 2004
35
Exposure Src CMPE252A Fall 2004
36
Exposure Src CMPE252A Fall 2004
37
Exposure Src CMPE252A Fall 2004
38
Exposure Src CMPE252A Fall 2004
39
Exposure Src CMPE252A Fall 2004
40
Exposure Src CMPE252A Fall 2004
41
Router-assisted recovery
“Ideal router”. A single request is sent upstream. A single repair is multicast from the nearest repairer to the subtree down the lossy link. R A R A A A A router receiver R A CMPE252A Fall 2004
42
Scalable Reliable Multicast
CMPE252A Fall 2004
43
Scalable Reliable Multicast
SRM. Originally designed for wb. Receiver-reliable. NACK-based. Every member may multicast NACK or data. Need much more elaborate explaination of why SRM is designed this way, e.g., get the previous microsoft guy’s slides of SRM, showing (1) why NACK instead of ACK; (2) why need NACK suppression and retransmission suppression; *Maybe* a little bit discussion of why not use tree-like structure: because these replication applications are essentially PEER-TO-PEER, and all members are senders. We believe in this situation, random suppression with a “good” timer will perform better than dynamic/static tree structures. CMPE252A Fall 2004
44
SRM Request Suppression
Src CMPE252A Fall 2004
45
SRM Request Suppression
Src CMPE252A Fall 2004
46
SRM Request Suppression
Src CMPE252A Fall 2004
47
SRM Request Suppression
Src CMPE252A Fall 2004
48
SRM Request Suppression
Src CMPE252A Fall 2004
49
SRM Request Suppression
Src CMPE252A Fall 2004
50
SRM Request Suppression
Src CMPE252A Fall 2004
51
SRM Request Suppression
Src CMPE252A Fall 2004
52
SRM Request Suppression
Src CMPE252A Fall 2004
53
SRM Request Suppression
Src CMPE252A Fall 2004
54
SRM Request Suppression
Src CMPE252A Fall 2004
55
SRM Request Suppression
Src CMPE252A Fall 2004
56
SRM Request Suppression
Src CMPE252A Fall 2004
57
Deterministic Suppression
time d d data 2d d session msg d d nack repair = sender 3d = repairer d 4d = requestor Delay = C1dS,R CMPE252A Fall 2004
58
SRM Star Topology Src CMPE252A Fall 2004
59
SRM Star Topology Src CMPE252A Fall 2004
60
SRM Star Topology Src CMPE252A Fall 2004
61
SRM Star Topology Src CMPE252A Fall 2004
62
SRM Star Topology Src CMPE252A Fall 2004
63
SRM Star Topology Src CMPE252A Fall 2004
64
SRM Star Topology Src CMPE252A Fall 2004
65
SRM Star Topology Src CMPE252A Fall 2004
66
SRM Star Topology Src CMPE252A Fall 2004
67
SRM Star Topology Src CMPE252A Fall 2004
68
SRM Star Topology Src CMPE252A Fall 2004
69
SRM Star Topology Src CMPE252A Fall 2004
70
SRM Star Topology Src CMPE252A Fall 2004
71
SRM: Stochastic Suppression
time 2d d data 1 d repair session msg d 2 NACK d 3 = sender Delay = U[0,C2] +C1dS,R = repairer = requestor CMPE252A Fall 2004
72
SRM (summary) NACK/Retransmission suppression.
Delay before sending. Delay based on RTT estimation. Deterministic + Stochastic components. Periodic session messages. Full reliability (e.g., last packet lost). Estimation of distance matrix among members. CMPE252A Fall 2004
73
What’s missing? Losses at link (A,C) causes retransmission to the whole group. Solution: only retransmit to those members who lost the packet. Request from nearest member. A B E F S C D 0.99 sender receiver CMPE252A Fall 2004
74
Local Recovery Application-level hierarchy. TTL scoped multicast.
Router supported. CMPE252A Fall 2004
75
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. CMPE252A Fall 2004
76
Tree-based protocol Solution to feedback implosion and local recovery.
Receivers are grouped into local regions under designated receivers (DR). DR representative of local region. Only DRs send feedback to source. Receivers send feedback to DR (ACK processor). DR does local recovery based on feedback from receivers. CMPE252A Fall 2004
77
Tree-based hierarchy Receivers grouped into local regions.
Receiver unicasts periodic ACKs to its ACK Processor (AP), AP unicasts its own ACK to its parent. DR R1 R2 DR R3 DR R4 R5 Receiver dynamically chooses closest statically configured Designated Receiver (DR) as its AP. R R R R R R DR DR/AP R receiver R* router CMPE252A Fall 2004
78
Choosing DRs Pre-defined set of receivers that can act as DRs.
DRs periodically send special packet using multicast tree. TTL decremented at each hop. Receiver chooses DR whose packet has highest TTL = closest DR. CMPE252A Fall 2004
79
Error control DR checks retransmission requests periodically.
Multicast or unicast retransmission. Based on percentage of requests. Immediate transmission request. Used for late joining receivers. Data cache: buffers entire file during session. CMPE252A Fall 2004
80
Congestion Control Retransmission requests as congestion indicator.
Window-based. Sender computes number of retransmission requests over pre-configured time interval. If threshold exceeded, cwnd=1. Otherwise, cwnd=cwnd+1 up to pre-configured maximum window size. CMPE252A Fall 2004
81
RMTP: Comments : Heterogeneity : Position of DR critical
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 CMPE252A Fall 2004
82
PGM Cisco’s reliable multicast protocol. Single source protocol.
CMPE252A Fall 2004
83
Protocol overview NACK-based with probabilistic suppression.
Repair only forwarded to “NACKers”. Can make use of router support. Feedback aggregation. Selective repair forwarding. Source path message (SPM): generated hop-by-hop by PGM routers. CMPE252A Fall 2004
84
PGM: Request forwarding
NACK + random delay. Forwarded upstream towards the source. Only one NACK is forwarded for every packet loss. SPM: identify next PGM router upstream. S R A R A A2 A A1 R router A receiver NACK RTX SPM CMPE252A Fall 2004
85
PGM Repair Src CMPE252A Fall 2004
86
PGM Repair Src (x) CMPE252A Fall 2004
87
PGM Repair Src (x) (x) Data loss CMPE252A Fall 2004
88
PGM Repair Src CMPE252A Fall 2004
89
PGM Repair Src (x+1) Next sequence number sent; nodes will notice the
loss. CMPE252A Fall 2004
90
PGM Repair Src (x+1) CMPE252A Fall 2004
91
PGM Repair Src (x+1) CMPE252A Fall 2004
92
PGM Repair Src (x?) noticing the loss, sending a NACK
CMPE252A Fall 2004
93
PGM Repair Src (x?) (x) (x?) (x?) (x?) (x?) CMPE252A Fall 2004
94
PGM Repair Src (x?) NACKS have now created state at necessary routers
CMPE252A Fall 2004
95
PGM Repair Src out goes the repair (x) (x) (x) (x) CMPE252A Fall 2004
96
PGM Repair Src (x) (x) (x) CMPE252A Fall 2004
97
PGM Repair Src (x) (x) CMPE252A Fall 2004
98
PGM Repair Src CMPE252A Fall 2004
99
PGM Repair Src CMPE252A Fall 2004
100
Problem: Repeated Retransmissions
Src CMPE252A Fall 2004
101
Repeated Retransmissions
Src CMPE252A Fall 2004
102
Repeated Retransmissions
Src data loss CMPE252A Fall 2004
103
Repeated Retransmissions
Src CMPE252A Fall 2004
104
Repeated Retransmissions
Src Next sequence number CMPE252A Fall 2004
105
Repeated Retransmissions
Src CMPE252A Fall 2004
106
Repeated Retransmissions
Src CMPE252A Fall 2004
107
Repeated Retransmissions
Src CMPE252A Fall 2004
108
Repeated Retransmissions
Src (x) CMPE252A Fall 2004
109
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
110
Repeated Retransmissions
Src repair (x) (x) CMPE252A Fall 2004
111
Repeated Retransmissions
Src (x) CMPE252A Fall 2004
112
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
113
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
114
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
115
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
116
Repeated Retransmissions
Src (x) (x) (x) (x) CMPE252A Fall 2004
117
Repeated Retransmissions
Src (x) (x) (x) (x) (x) CMPE252A Fall 2004
118
Repeated Retransmissions
Src 2nd. repair (x) (x) (x) (x) (x) CMPE252A Fall 2004
119
Repeated Retransmissions
Src (x) (x) (x) (x) CMPE252A Fall 2004
120
Repeated Retransmissions
Src (x) (x) CMPE252A Fall 2004
121
Repeated Retransmissions
Src CMPE252A Fall 2004
122
Repeated Retransmissions
Src CMPE252A Fall 2004
123
PGM Summary Pros: Cons: Avoids sending repairs everywhere.
Routers need to look at multicast transport state (sequence numbers). Can result in duplicate repairs (depending on timing). CMPE252A Fall 2004
124
pgmcc Single-rate multicast congestion control mechanism.
Single rate as opposed to hierarchical rate decomposition. Single-source multicast. Developed for PGM. But does not require router support. CMPE252A Fall 2004
125
pgmcc features End-to-end. Use ACKs and NACKs. Window-based.
Sender-based RTT measurements. Representatives (ackers). Receiver with worst throughput. CMPE252A Fall 2004
126
Protocol overview Sender monitors receiver reports (NACKs).
Select acker. Window-based congestion control (a la TCP) between sender and acker. Acker sends ACKs for every data packet. CMPE252A Fall 2004
127
Protocol components (1)
Receiver reports: Sent as part of NACKs. Used to determine lowest throughput receiver, or acker. Reports receiver’s measured loss rate. Used to measure RTT. CMPE252A Fall 2004
128
Protocol components (2)
Acknowledgments: Acker generates an ACK for each data packet received. Contain loss report. Sequence number of ack’ed packet. Bitmap with status of most recent 32 packets. CMPE252A Fall 2004
129
Protocol components (3)
Window-based controller Window-based congestion control between sender and acker. Similar to TCP: AIMD. When sessions starts, slow-start up to small ssthresh. CMPE252A Fall 2004
130
Acker election and tracking
Acker is receiver with lowest throughput. Uses TCP relation between throughput and loss, i.e., Bias in favor of current acker. CMPE252A Fall 2004
131
RLM Receiver-driven Layered Multicast. Use multiple multicast groups.
Receiver initiated rate adaptation. Cope with heterogeneity. Use multiple multicast groups. Assemble content by combining data from multiple groups. Receivers add/remove layers Applicable to video. CMPE252A Fall 2004
132
RLM Layered video encoding. Each layer uses its own multicast group.
Basic layer. Additional layer for enhanced video. Each layer uses its own multicast group. On spare capacity, receivers add layer. On congestion, receivers drop layer. CMPE252A Fall 2004
133
Layered media streams R1 R1 10Mbps 10Mbps 512Kbps S R R 10Mbps 128Kbps
CMPE252A Fall 2004
134
When to add layer? Join experiments used to probe for bandwidth.
Receivers try to add layers at specific times. Spontaneous subscription to next layer. If join-experiment causes congestion, receiver drops layer. Otherwise, receiver succeeds. CMPE252A Fall 2004
135
RLM Adaptation Learning strategy. Shared learning.
Receivers learn over time level of subscription that causes congestion. Join-timer performing exponential backoff. Shared learning. For large groups, receivers learn from one another. Receiver multicasts join message; if experiment fails, other receivers know. CMPE252A Fall 2004
136
Join experiments Layer 3 timer exponentially increased Congestion
4 3 B 2 A 1 time CMPE252A Fall 2004
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.