Presentation is loading. Please wait.

Presentation is loading. Please wait.

CMPE 252A: Computer Networks

Similar presentations


Presentation on theme: "CMPE 252A: Computer Networks"— Presentation transcript:

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 = C1dS,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


Download ppt "CMPE 252A: Computer Networks"

Similar presentations


Ads by Google