Performance-oriented Congestion Control

Size: px
Start display at page:

Download "Performance-oriented Congestion Control"

Transcription

1 Performance-oriented Congestion Control Mo Dong, Qingxi Li, Doron Zarchy*, P. Brighten Godfrey and Michael Schapira* University of Illinois at Urbana Champaign *Hebrew University of Jerusalem

2 Mo Dong Qingxi Li Brighten Godfrey Doron Zarchy and Michael Schapira University of Illinois at Urbana-Champaign Hebrew University of Jerusalem

3 TCP Est

4 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP 3

5 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP 3

6 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP Who can be not happy with TCP? 3

7 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP are Who can be not happy with TCP? 3

8 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP 3

9 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP Point Solutions 4

10 TCP Est High BDP Wireless Satellite Inter-DC Intra-DC BIC H-TCP Compound CUBIC FAST TCP Westwood Vegas Veno Hybla STAR Illinois SABUL ICTCP DCTCP 10X 10X 17X 4X Unstable,RTT Unfair, Bufferbloat, Crash on Changing Networks,.. Point Solutions + Performance Far from Optimal 4

11

12 TCP fails to achieve consistent high performance

13 Why is it so hard?

14 6

15 Reno 1 pkt loss cwnd/2 Scalable ACK cwnd+1 CUBIC Time pass 1ms cwnd+f(t,cwn,rtt) FAST RTT increase x% Reduce cwnd to f(x)% HTCP 100 ACK cwnd+f(cwnd)/cwnd 6

16 Event Action Reno 1 pkt loss cwnd/2 Scalable ACK cwnd+1 CUBIC Time pass 1ms cwnd+f(t,cwn,rtt) FAST RTT increase x% Reduce cwnd to f(x)% HTCP 100 ACK cwnd+f(cwnd)/cwnd 6

17 Hardwired Mapping Event Action Reno 1 pkt loss cwnd/2 Scalable ACK cwnd+1 CUBIC Time pass 1ms cwnd+f(t,cwn,rtt) FAST RTT increase x% Reduce cwnd to f(x)% HTCP 100 ACK cwnd+f(cwnd)/cwnd 6

18 Hardwired Mapping Event Action 6

19 Event Action 7

20 Event Action Action 1 Network Action 2 N 7

21 Event Action Action 3 Network Action 4 7

22 Event Action Action 3 Network Action 4 7

23 Why? Event Action Action 3 Network Action 4 7

24 Why? Event Action Assumed Network Action 3 Network Action 4 7

25 Why? Event Action Assumed Network = Action 3 Real Network Network Action 4 Performance 7

26 Why? Event Action Assumed Network = Action 3 Real Network Network Action 4 Performance 7

27 Flow f sends at R Event Action 8

28 Flow f sends at R Event Action Packet Loss 8

29 Flow f sends at R Event Action Network Packet Loss 8

30 Flow f sends at R Event Action Network f causes most congestion Packet Loss 8

31 Flow f sends at R Event Action Network Dec R a lot f causes most congestion Packet Loss 8

32 Flow f sends at R Event Action Network Dec R a lot Packet Loss shallow buffer overflow 8

33 Flow f sends at R Event Action Network Dec R a lot Packet Loss shallow buffer overflow 8

34 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little shallow buffer overflow 8

35 Flow f sends at R Event Action Network Dec R a lot Dec R a little Packet Loss other high rate flow causing congestion 8

36 Flow f sends at R Event Action Network Dec R a lot Dec R a little Packet Loss other high rate flow causing congestion 8

37 Flow f sends at R Event Action Network Dec R a lot Dec R a little Packet Loss Maintain R other high rate flow causing congestion 8

38 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little Maintain R loss is random 8

39 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little Maintain R loss is random 8

40 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little Maintain R Increase R loss is random 8

41 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little Maintain R Increase R loss is random 8

42 Flow f sends at R Event Action Network Dec R a lot Packet Loss Dec R a little Maintain R Increase R 8

43 Flow f sends at R Event Action Network Dec R a lot No event-control mapping optimal Packet Loss Dec R a little for all network scenarios Maintain R Increase R 8

44 What is the right rate to send? 9

45 What is the right rate to send? 9

46 What is the right rate to send? 9

47 What is the right rate to send? 9

48 What is the right rate to send? 9

49 What is the right rate to send? 10

50 What is the right rate to send? rate result 11

51 What is the right rate to send? rate r utility u U= f(tpt, loss rate, latency, etc.) e.g. U = tpt x (1 loss rate) 12

52 What is the right rate to send? rate r1 utility u1 U= f(tpt, loss rate, latency, etc.) e.g. U = tpt x (1 loss rate) No matter how complex the network, rate r > utility u 13

53 14

54 r1 14

55 r1 u1 14

56 r1 u1 r2 14

57 r1 u1 r2 u2 14

58 r1 r2 u1 u2 u1>u2? 14

59 r1 r2 u1 u2 u1>u2? move to r1 14

60 r1 r2 u1 u2 u1>u2? move to r1 move to r2 14

61 Performance-oriented Congestion Control move r1 r2 u1 u2 u1>u2? to r1 move to r2 15

62 Performance-oriented Congestion Control move r1 r2 u1 u2 u1>u2? to r1 move to r2 Observe real performance 15

63 Performance-oriented Congestion Control move r1 r2 u1 u2 u1>u2? to r1 move to r2 Observe real performance Control based on empirical evidence 15

64 Performance-oriented Congestion Control move r1 r2 u1 u2 u1>u2? to r1 move to r2 yields Observe real performance Control based on empirical evidence Consistent high performance 15

65 98 Mbps 102 Mbps this flow causing congestion X X X X X u1 u2 u1>u2? move to 98 Mbps 98 Mbps 102 Mbps random loss X X X u1 u2 u1>u2? move to 102 Mbps 16

66 Consistent High Performance 4X 17X 10X InterDC Throughput (Mbps) PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks 0.1 Throughput (Mbps) 100 PCC TCP illinois TCP CUBIC 10 Lossy Networks Relative throughput of long-rtt flow 1.2 Solves RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) Throughput (Mbps) Bottleneck Buffersize (KB) 15X Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) Loss Rate Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Close to Optimal Time(s) Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks 17 5X in median Global Commercial Internet

67 Elephant 18

68 Where is Congestion Control? r1 r2 u1 u2 u1>u2? move to r1 move to r2 19

69 Where is Congestion Control? r1 r2 u1 u2 u1>u2? move to r1 move to r2 Selfishly maximizing utility 19

70 Where is Congestion Control? r1 r2 u1 u2 u1>u2? move to r1 move to r2 Selfishly maximizing utility => non-cooperative game 19

71 Where is Congestion Control? r1 r2 u1 u2 u1>u2? move to r1 move to r2 Selfishly maximizing utility => non-cooperative game Do we converge to a fair Nash equilibrium? 19

72 A class of utility functions converge to a fair and efficient Nash Equilibrium 20

73 A class of utility functions converge to a fair and efficient Nash Equilibrium u i (x) = T i * sigmoid(l i 0.05) x i * L i 20

74 A class of utility functions converge to a fair and efficient Nash Equilibrium u i (x) = T i * sigmoid(l i 0.05) x i * L i throughput sending rate observed loss rate 20

75 A class of utility functions converge to a fair and efficient Nash Equilibrium u i (x) = T i * sigmoid(l i 0.05) x i * L i Cut off loss rate at 5% Loss Rate 20

76 TCP Dynamics 21

77 TCP Dynamics AIMD as a hack to asymptotic fairness 21

78 TCP Dynamics AIMD as a hack to asymptotic fairness c 21 t

79 TCP Dynamics AIMD as a hack to asymptotic fairness c 21 t

80 TCP Dynamics AIMD as a hack to asymptotic fairness c 21 t

81 TCP Dynamics AIMD as a hack to asymptotic fairness c Moving away from convergence 21 t

82 PCC Dynamics c 22 t

83 PCC Dynamics PCC does not need AIMD because it looks at real performance c 22 t

84 PCC Dynamics PCC does not need AIMD because it looks at real performance c 22 t

85 PCC Dynamics PCC does not need AIMD because it looks at real performance c High Utility 22 t

86 PCC Dynamics PCC does not need AIMD because it looks at real performance c Game Theory Force High Utility 22 t

87 Throughput (Mbps) Throughput (Mbps) TCP Flow1 Flow2 Flow3 Flow PCC Convergence Time (s) Flow1 Flow2 Flow3 Flow Time (s) 23

88 Consistent High Performance 24

89 Consistent High Performance 100 Throughput (Mbps) 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Bottleneck Buffersize (KB) 24

90 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) 24

91 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) Loss Rate PCC TCP illinois TCP CUBIC 10 Lossy Networks 24

92 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate 24

93 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) 24

94 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) 24

95 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) 1000 Goodput (Mbps) IntraDC Incast PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb Number of Senders 24

96 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) Number of Senders 24

97 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) 24

98 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Buffer Size(KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) 24

99 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Relative throughput of long-rtt flow Buffer Size(KB) RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) 24

100 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Relative throughput of long-rtt flow Buffer Size(KB) 1.2 Solves RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) 24

101 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Relative throughput of long-rtt flow Buffer Size(KB) 1.2 Solves RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) InterDC 24

102 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 4X vs Illinois 1.23X vs UDT InterDC 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Relative throughput of long-rtt flow Buffer Size(KB) 1.2 Solves RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) 24

103 0.1 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 4X vs Illinois 1.23X vs UDT InterDC 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Relative throughput of long-rtt flow Buffer Size(KB) 1.2 Solves RTT Unfairness PCC TCP CUBIC TCP New Reno RTT of Long-RTT flow (ms) Global Commercial Internet 24

104 0.1 Consistent High Performance X vs Hybla 10 PCC TCP Hybla TCP Illinois 1 TCP CUBIC TCP New Reno Satellite Networks Throughput (Mbps) Bottleneck Buffersize (KB) Similar to ICTCP Goodput (Mbps) IntraDC Incast Number of Senders PCC data=256kb PCC data=128kb PCC data=64kb TCP data=256kb TCP data=128kb TCP data=64kb SendingRate(Mbps) Throughput (Mbps) 4X vs Illinois 1.23X vs UDT InterDC 100 PCC TCP illinois 10X vs Illinois TCP CUBIC 10 Lossy Networks Loss Rate Close to Optimal PCC TCP Illinois TCP CUBIC Rapidly Changing Networks Time(s) Throughput (Mbps) 15X less buffer Shallow Network Buffer 20 PCC 10 TCP Pacing 0 TCP CUBIC Solves RTT Unfairness PCC TCP CUBIC TCP New Reno X median vs CUBIC 1.48X vs UDT + 4X less loss Global Commercial Internet Relative throughput of long-rtt flow Buffer Size(KB) RTT of Long-RTT flow (ms) 24

105 Consistent High Performance Global Commercial Internet 25

106 PCC vs TCP vs Take a Flight 100G Data 26

107 PCC vs TCP vs Take a Flight Utah, U.S. > Berlin, Germany Illinois, US > Waseda, Japan Georgia, US > Stockholm, Sweden Georgia, US > Ljubljana, Slovenia Missouri, US > Rennes, France Massachusetts US > Seoul, Korea 100G Data PCC TCP CUBIC Take a Flight 0:0:00:00 1:18:27:30 3:12:55:00 5:7:22:30 7:1:50:00 26

108 PCC vs TCP vs Take a Flight Utah, U.S. > Berlin, Germany Illinois, US > Waseda, Japan Georgia, US > Stockholm, Sweden Georgia, US > Ljubljana, Slovenia Missouri, US > Rennes, France Massachusetts US > Seoul, Korea 100G Data PCC TCP CUBIC Take a Flight 0:0:00:00 1:18:27:30 3:12:55:00 5:7:22:30 7:1:50:00 26

109 PCC vs TCP vs Take a Flight Utah, U.S. > Berlin, Germany Illinois, US > Waseda, Japan Georgia, US > Stockholm, Sweden Georgia, US > Ljubljana, Slovenia Missouri, US > Rennes, France Massachusetts US > Seoul, Korea 100G Data PCC TCP CUBIC Take a Flight 0:0:00:00 1:18:27:30 3:12:55:00 5:7:22:30 7:1:50:00 26

110 PCC vs TCP vs Take a Flight Utah, U.S. > Berlin, Germany Illinois, US > Waseda, Japan Georgia, US > Stockholm, Sweden Georgia, US > Ljubljana, Slovenia Missouri, US > Rennes, France Massachusetts US > Seoul, Korea 100G Data PCC TCP CUBIC Take a Flight 0:0:00:00 1:18:27:30 3:12:55:00 5:7:22:30 7:1:50:00 26

111 Consistent High Performance Rapidly Changing Networks BW: Mbps; RTT: ms; Loss Rate: 0-1% Change every 5 seconds Sending Rate (Mbps) Time(s) Optimal 27

112 Consistent High Performance Sending Rate (Mbps) Rapidly Changing Networks BW: Mbps; RTT: ms; Loss Rate: 0-1% Change every 5 seconds Time(s) Optimal TCP Illinois TCP CUBIC 28

113 Consistent High Performance Rapidly Changing Networks BW: Mbps; RTT: ms; Loss Rate: 0-1% Change every 5 seconds SendingRate(Mbps) Time(s) Optimal PCC TCP Illinois TCP CUBIC 29

114 Long list of things we have done but don t have time to talk about More stories about the fact that TCP is broken Proof of Nash Equilibrium and Convergence Concrete Implementation of PCC Performance monitoring Details of learning control algorithm Implementation designs and optimizations Performance Evaluation Plaenetlab detailed explanation Satellite like network Lossy Links TCP friendliness RTT fairness Shallow buffer networks Inter data center networks small buffer networks Reactiveness and stability tradeoff Jain index fairness Benefit of Randomized Control Trials Details of TCP friendliness evaluation Emulated satellite networks Emulated datacenter networks Cure RTT unfairness Does not fundamentally harm short flow FCT Evaluation in the wild vs non-tcp protocols Flexibility by pluggable utility function 30

115 Cellular Networks Deep queue and bufferbloat Highly dynamic available bandwidth PCC Flexible (latency sensitive) utility function Handling small causality window 31

116 Flexible Utility Function 32

117 Flexible Utility Function Same Rate Control Algorithm 32

118 Flexible Utility Function Same Rate Control Algorithm + 32

119 Flexible Utility Function Same Rate Control Algorithm + Different Utility Function = Flexibility 32

120 Latency Sensitive Utility Function Power = Tpt/RTT TCP Latency Sensitive Deep Queue 33

121 Latency Sensitive Utility Function Power = Tpt/RTT TCP Latency Sensitive Deep Queue Codel 33

122 Latency Sensitive Utility Function Power = Tpt/RTT TCP Latency Sensitive Deep Queue Codel 33

123 Latency Sensitive Utility Function Power = Tpt/RTT TCP PCC Latency Sensitive Deep Queue Codel 33

124 Small Causality Window r1 r2 u1 u2 u1>u2? move to r1 move to r2 34

125 Small Causality Window Figure drawn using Mahimahi by K. Winstein et. al. ( 35

126 Small Causality Window PCC V2 Fast convergence to optimal in tiny causality window Fast reaction to causality disruption Handling noisy measurement 36

127 Rate control based on empirically observed performance yields Consistent high performance Better stability than TCP Flexible performance objectives PCC V2 is coming 37

128 38

129 speedier.net 38

130 speedier.net/pcc 39

131 40

132 Backup Slides 40

133 Software Components Sender Performance Oriented Control Module Sending Rate Control Sending Module Data Receiver (Sending Rate, Utility) Sent Packet Log Network Utility Function Performance Metrics (tpt., loss rate, RTT) Monitor Module SACK 41

134 Software Components Sender Performance Oriented Control Module Sending Rate Control Sending Module Data Receiver (Sending Rate, Utility) Sent Packet Log Network Utility Function Performance Metrics (tpt., loss rate, RTT) Monitor Module SACK 41

135 Performance Oriented Control observed utility rate 42

136 Performance Oriented Control observed utility rate 42

137 Performance Oriented Control observed utility rate 42

138 Performance Oriented Control observed utility rate 43

139 Performance Oriented Control observed utility? r rate 43

140 Performance Oriented Control observed utility? r(1 ε) r rate 43

141 Performance Oriented Control observed utility? r(1 ε) r r(1+ ε) rate 43

142 Performance Oriented Control observed utility? randomized controlled trials r(1 ε) r r(1+ ε) rate 43

143 Performance Oriented Control observed utility? randomized controlled trials r(1 ε) r r(1+ ε) rate 43

144 Performance Oriented Control observed utility? randomized controlled trials r(1 ε) r r(1+ ε) rate 43

145 Performance Oriented Control observed? utility?? randomized controlled trials r(1 ε) r r(1+ ε) rate 43

146 Performance Oriented Control observed? utility?? randomized controlled trials ε min = 0.01 r r(1 2ε) r(1+ 2ε) rate 43

147 Online Learning Control observed utility r 0 rate 44

148 Online Learning Control observed utility r 0 r 0 (1+ 2ε) r 1 rate 44

149 Online Learning Control observed utility r 0 r 0 (1+ 2ε) r 1 (1+ 3ε) r 1 r 2 rate 44

150 Online Learning Control observed utility r 0 r 0 (1+ 2ε) r 1 (1+ 3ε) r 2 (1+ 4ε) r 1 r 2 r 3 rate 44

151 Online Learning Control observed utility? r 0 r 0 (1+ 2ε) r 1 (1+ 3ε) r 2 (1+ 4ε) r 1 r 2 r 3 rate 44

152 Deployment No hardwired support, packet header, protocol change needed Where to deploy CDN backbone, Inter-data center, dedicated scientific nw In the Wild? 45

153 TCP Friendliness 46

154 TCP Friendliness Is PCC TCP-friendly? 46

155 TCP Friendliness Is PCC TCP-friendly? Wrong Question 46

156 TCP Friendliness 47

157 TCP Friendliness PCC s default utility function is not TCP Friendly 47

158 TCP Friendliness PCC s default utility function is not TCP Friendly But not that bad 47

159 TCP Friendliness PCC s default utility function is not TCP Friendly But not that bad 47

160 TCP Friendliness PCC s default utility function is not TCP Friendly But not that bad IE11 47

161 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution 48

162 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution u i (x) = T i * sigmoid α (L i 0.05)* sigmoid β ( rtt n rtt n 1 1) x i * L i rtt n 48

163 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution 49

164 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution TCP vs TCP TCP vs PCC 49

165 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution TCP vs TCP TCP vs PCC 49

166 TCP Friendliness PCC s default utility function is not TCP Friendly Different utility functions can be a solution TCP vs TCP TCP vs PCC 49

167 Deployability: Short Flow FCT PCC does not fundamentally harm FCT Flow Completion Time (ms) PCC-95th TCP-95th PCC-average TCP-average PCC-median TCP-median Network Load (%)

168 Consistent High Performance 100 Global Commercial Internet Percentage of Trials Throughput Improvement Ratio 51 PCC vs TCP CUBIC

169 Consistent High Performance 100 Global Commercial Internet Percentage of Trials %, 10X Throughput Improvement Ratio 51 PCC vs TCP CUBIC

170 Consistent High Performance Percentage of Trials Global Commercial Internet Throughput Ratio over TCP CUBIC PCC_d 52

171 Consistent High Performance Percentage of Trials Global Commercial Internet Default utility function Throughput Ratio over TCP CUBIC PCC_d 52

172 Consistent High Performance Percentage of Trials Global Commercial Internet Default utility function Throughput Ratio over TCP CUBIC PCC_f PCC_d 53

173 Consistent High Performance Percentage of Trials Global Commercial Internet Friendly Utility Function Default utility function Throughput Ratio over TCP CUBIC PCC_f PCC_d 53

174 Consistent High Performance Global Commercial Internet Friendly Utility Function Default utility function 54

175 Intra-continent 2.33X median Consistent High Performance Global Commercial Internet Friendly Utility Function Default utility function Inter-continent 25X median 54

176 Consistent High Performance Global Commercial Internet 55

177 Consistent High Performance Global Commercial Internet 1.48X Median 4X less loss 55

178 Consistent High Performance Satellite Network 17X WINDS System 56

179 Consistent High Performance Lossy Networks 100Mbps, 30ms, varying loss rate TCP s throughput collapse 10X with 0.5% loss 19X 57

180 Consistent High Performance Treat RTT Unfairness 100Mbps, 10ms short RTT flow Varying RTT of long RTT one 58

181 Consistent High Performance A possible solution to the bufferbloat problem 100Mbps, 30ms Link 90 pkts, 90% tpt 6 pkts, 90% tpt 59

182 Consistent High Performance Inter Datacenter and Dedicated High Speed Network 60

183 Consistent High Performance Inter Datacenter and Dedicated High Speed Network 123% 60

184 Consistent High Performance Mitigate Incast 61

185 Long list of things we have done but don t have time to talk about 62

Performance-oriented Congestion Control

Performance-oriented Congestion Control Performance-oriented Congestion Control Mo Dong, Qingxi Li, Doron Zarchy*, P. Brighten Godfrey and Michael Schapira* University of Illinois at Urbana Champaign *Hebrew University of Jerusalem Qingxi Li

More information

PCC: Performance-oriented Congestion Control

PCC: Performance-oriented Congestion Control PCC: Performance-oriented Congestion Control Michael Schapira Hebrew University of Jerusalem and Compira Labs (co-founder and chief scientist) Performance-oriented Congestion Control PCC: Re-architecting

More information

5 years of research on GENI: From the Future Internet Back to the Present

5 years of research on GENI: From the Future Internet Back to the Present 5 years of research on GENI: From the Future Internet Back to the Present P. Brighten Godfrey University of Illinois at Urbana-Champaign GENI NICE Workshop November 10, 2015 5 years of research on GENI:

More information

Advanced Congestion Control (Hosts)

Advanced Congestion Control (Hosts) Advanced Congestion Control (Hosts) 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 5 th edition. J.F. Kurose and K.W. Ross Congestion Control

More information

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness Recap TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness 81 Feedback Signals Several possible signals, with different

More information

TCP Congestion Control

TCP Congestion Control 6.033, Spring 2014 TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina Sharing the Internet How do you manage resources in a huge system like the Internet, where users with different

More information

Tuning, Tweaking and TCP

Tuning, Tweaking and TCP Tuning, Tweaking and TCP (and other things happening at the Hamilton Institute) David Malone and Doug Leith 16 August 2010 The Plan Intro to TCP (Congestion Control). Standard tuning of TCP. Some more

More information

15-744: Computer Networking TCP

15-744: Computer Networking TCP 15-744: Computer Networking TCP Congestion Control Congestion Control Assigned Reading [Jacobson and Karels] Congestion Avoidance and Control [TFRC] Equation-Based Congestion Control for Unicast Applications

More information

Congestion Control For Coded TCP. Doug Leith

Congestion Control For Coded TCP. Doug Leith Congestion Control For Coded TCP Doug Leith Outline Why do error-correction coding at the transport layer? Congestion control on lossy paths Implementation & performance measurements Why error-correction

More information

TCP Congestion Control Beyond Bandwidth-Delay Product for Mobile Cellular Networks

TCP Congestion Control Beyond Bandwidth-Delay Product for Mobile Cellular Networks TCP Congestion Control Beyond Bandwidth-Delay Product for Mobile Cellular Networks Wai Kay Leong, Zixiao Wang, Ben Leong The 13th International Conference on emerging Networking EXperiments and Technologies

More information

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018 CS 43: Computer Networks 19: TCP Flow and Congestion Control October 31, Nov 2, 2018 Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability

More information

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki CUBIC Qian HE (Steve) CS 577 Prof. Bob Kinicki Agenda Brief Introduction of CUBIC Prehistory of CUBIC Standard TCP BIC CUBIC Conclusion 1 Brief Introduction CUBIC is a less aggressive and more systematic

More information

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

Lecture 21: Congestion Control CSE 123: Computer Networks Alex C. Snoeren Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren Lecture 21 Overview" How fast should a sending host transmit data? Not to fast, not to slow, just right Should not be faster than

More information

CS644 Advanced Networks

CS644 Advanced Networks What we know so far CS644 Advanced Networks Lecture 6 Beyond TCP Congestion Control Andreas Terzis TCP Congestion control based on AIMD window adjustment [Jac88] Saved Internet from congestion collapse

More information

ADVANCED TOPICS FOR CONGESTION CONTROL

ADVANCED TOPICS FOR CONGESTION CONTROL ADVANCED TOPICS FOR CONGESTION CONTROL Congestion Control The Internet only functions because TCP s congestion control does an effective job of matching traffic demand to available capacity. TCP s Window

More information

PCC Vivace: Online-Learning Congestion Control

PCC Vivace: Online-Learning Congestion Control PCC Vivace: Online-Learning Congestion Control Mo Dong and Tong Meng, UIUC; Doron Zarchy, The Hebrew University of Jerusalem; Engin Arslan, UIUC; Yossi Gilad, MIT; Brighten Godfrey, UIUC; Michael Schapira,

More information

Congestion Control In the Network

Congestion Control In the Network Congestion Control In the Network Brighten Godfrey cs598pbg September 9 2010 Slides courtesy Ion Stoica with adaptation by Brighten Today Fair queueing XCP Announcements Problem: no isolation between flows

More information

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD Overview 15-441 Computer Networking Lecture 9 More TCP & Congestion Control TCP congestion control TCP modern loss recovery TCP modeling Lecture 9: 09-25-2002 2 TCP Congestion Control Changes to TCP motivated

More information

Congestion Control for High Bandwidth-delay Product Networks

Congestion Control for High Bandwidth-delay Product Networks Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Chi-Yao Hong Adapted from slides by Dina Katabi CS598pbg Sep. 10, 2009 Trends in the Future

More information

Implementation Experiments on HighSpeed and Parallel TCP

Implementation Experiments on HighSpeed and Parallel TCP Implementation Experiments on HighSpeed and TCP Zongsheng Zhang Go Hasegawa Masayuki Murata Osaka University Outline Introduction Background of and g Why to evaluate in a test-bed network A refined algorithm

More information

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data? Congestion Control End Hosts CSE 51 Lecture 7, Spring. David Wetherall Today s question How fast should the sender transmit data? Not tooslow Not toofast Just right Should not be faster than the receiver

More information

CS268: Beyond TCP Congestion Control

CS268: Beyond TCP Congestion Control TCP Problems CS68: Beyond TCP Congestion Control Ion Stoica February 9, 004 When TCP congestion control was originally designed in 1988: - Key applications: FTP, E-mail - Maximum link bandwidth: 10Mb/s

More information

BBR Congestion Control: IETF 100 Update: BBR in shallow buffers

BBR Congestion Control: IETF 100 Update: BBR in shallow buffers BBR Congestion Control: IETF 100 Update: BBR in shallow buffers Neal Cardwell, Yuchung Cheng, C. Stephen Gunn, Soheil Hassas Yeganeh Ian Swett, Jana Iyengar, Victor Vasiliev Van Jacobson https://groups.google.com/d/forum/bbr-dev

More information

TCP Veno: Solution to TCP over Wireless

TCP Veno: Solution to TCP over Wireless TCP Veno: Solution to TCP over Wireless Franklin FU Presented by Franklin Fu Asst Professor School of Computer Engineering Nanyang Technological University Singapore January 31, 2004, 5:00am Singapore

More information

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Outline Introduction What s wrong with TCP? Idea of Efficiency vs. Fairness XCP, what is it? Is it

More information

An experimental study of the learnability of congestion control

An experimental study of the learnability of congestion control An experimental study of the learnability of congestion control Anirudh Sivaraman, Keith Winstein, Pratiksha Thaker, Hari Balakrishnan MIT CSAIL http://web.mit.edu/remy/learnability August 31, 2014 1 /

More information

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long 6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long Please read Chapter 19 of the 6.02 book for background, especially on acknowledgments (ACKs), timers,

More information

Lecture 15: Datacenter TCP"

Lecture 15: Datacenter TCP Lecture 15: Datacenter TCP" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mohammad Alizadeh Lecture 15 Overview" Datacenter workload discussion DC-TCP Overview 2 Datacenter Review"

More information

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

TCP so far Computer Networking Outline. How Was TCP Able to Evolve TCP so far 15-441 15-441 Computer Networking 15-641 Lecture 14: TCP Performance & Future Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 Reliable byte stream protocol Connection establishments

More information

Principles of congestion control

Principles of congestion control Principles of congestion control Congestion: Informally: too many sources sending too much data too fast for network to handle Different from flow control! Manifestations: Lost packets (buffer overflow

More information

SharkFest 18 Europe. To send or not to send?.. How TCP Congestion Control algorithms work. Packet Corporation. Packettrain.NET

SharkFest 18 Europe. To send or not to send?.. How TCP Congestion Control algorithms work. Packet Corporation. Packettrain.NET SharkFest 18 Europe To send or not to send?.. How TCP Congestion Control algorithms work Vladimir John Gerasimov Doe Packet Corporation Packettrain.NET About me In IT since 2005 Working for Unitop (integration,

More information

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University Congestion Control Daniel Zappala CS 460 Computer Networking Brigham Young University 2/25 Congestion Control how do you send as fast as possible, without overwhelming the network? challenges the fastest

More information

TCP EX MACHINA: COMPUTER-GENERATED CONGESTION CONTROL KEITH WINSTEIN AND HARI BALAKRISHNAN. Presented by: Angela Jiang

TCP EX MACHINA: COMPUTER-GENERATED CONGESTION CONTROL KEITH WINSTEIN AND HARI BALAKRISHNAN. Presented by: Angela Jiang TCP EX MACHINA: COMPUTER-GENERATED CONGESTION CONTROL KEITH WINSTEIN AND HARI BALAKRISHNAN Presented by: Angela Jiang Network congestion Cause: Sources trying to send data faster than the network can process

More information

WHY WE STILL NEED STANDARDIZED INTERNET SPEED MEASUREMENT MECHANISMS FOR END USERS

WHY WE STILL NEED STANDARDIZED INTERNET SPEED MEASUREMENT MECHANISMS FOR END USERS ITU Kaleidoscope 2015 Trust in the Information Society WHY WE STILL NEED STANDARDIZED INTERNET SPEED MEASUREMENT MECHANISMS FOR END USERS Eneko Atxutegi, Fidel Liberal, Eduardo Saiz and Eva Ibarrola University

More information

Data Center TCP (DCTCP)

Data Center TCP (DCTCP) Data Center TCP (DCTCP) Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, Murari Sridharan Microsoft Research Stanford University 1

More information

A Bottleneck and Target Bandwidth Estimates-Based Congestion Control Algorithm for High BDP Networks

A Bottleneck and Target Bandwidth Estimates-Based Congestion Control Algorithm for High BDP Networks A Bottleneck and Target Bandwidth Estimates-Based Congestion Control Algorithm for High BDP Networks Tuan-Anh Le 1, Choong Seon Hong 2 Department of Computer Engineering, Kyung Hee University 1 Seocheon,

More information

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

CS4700/CS5700 Fundamentals of Computer Networks

CS4700/CS5700 Fundamentals of Computer Networks CS4700/CS5700 Fundamentals of Computer Networks Lecture 15: Congestion Control Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu

More information

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Investigating the Use of Synchronized Clocks in TCP Congestion Control Investigating the Use of Synchronized Clocks in TCP Congestion Control Michele Weigle Dissertation Defense May 14, 2003 Advisor: Kevin Jeffay Research Question Can the use of exact timing information improve

More information

Flow and Congestion Control Marcos Vieira

Flow and Congestion Control Marcos Vieira Flow and Congestion Control 2014 Marcos Vieira Flow Control Part of TCP specification (even before 1988) Goal: not send more data than the receiver can handle Sliding window protocol Receiver uses window

More information

6.033 Computer System Engineering

6.033 Computer System Engineering MIT OpenCourseWare http://ocw.mit.edu 6.033 Computer System Engineering Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. L13: Sharing in network

More information

cs/ee 143 Communication Networks

cs/ee 143 Communication Networks cs/ee 143 Communication Networks Chapter 4 Transport Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Recap: Internet overview Some basic mechanisms n Packet switching n Addressing n Routing o

More information

CS Networks and Distributed Systems. Lecture 10: Congestion Control

CS Networks and Distributed Systems. Lecture 10: Congestion Control CS 3700 Networks and Distributed Systems Lecture 10: Congestion Control Revised 2/9/2014 Transport Layer 2 Application Presentation Session Transport Network Data Link Physical Function:! Demultiplexing

More information

Lecture 14: Congestion Control"

Lecture 14: Congestion Control Lecture 14: Congestion Control" CSE 222A: Computer Communication Networks George Porter Thanks: Amin Vahdat, Dina Katabi and Alex C. Snoeren Lecture 14 Overview" TCP congestion control review Dukkipati

More information

The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat

The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat BITAG TWG Boulder, CO February 27, 2013 Kathleen Nichols Van Jacobson Background The persistently full buffer problem, now called bufferbloat,

More information

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015.

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015. Course Reference Model Computer Networks 7 Application Provides functions needed by users Zhang, Xinyu Fall 204 4 Transport Provides end-to-end delivery 3 Network Sends packets over multiple links School

More information

TCP Incast problem Existing proposals

TCP Incast problem Existing proposals TCP Incast problem & Existing proposals Outline The TCP Incast problem Existing proposals to TCP Incast deadline-agnostic Deadline-Aware Datacenter TCP deadline-aware Picasso Art is TLA 1. Deadline = 250ms

More information

Performance Analysis of TCP Variants

Performance Analysis of TCP Variants 102 Performance Analysis of TCP Variants Abhishek Sawarkar Northeastern University, MA 02115 Himanshu Saraswat PES MCOE,Pune-411005 Abstract The widely used TCP protocol was developed to provide reliable

More information

Congestion Control for High Bandwidth-Delay Product Networks

Congestion Control for High Bandwidth-Delay Product Networks Congestion Control for High Bandwidth-Delay Product Networks Presented by: Emad Shihab Overview Introduce the problem of XCP (what the protocol achieves) (how the protocol achieves this) The problem! TCP

More information

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks Zongsheng Zhang Go Hasegawa Masayuki Murata Osaka University Contents Introduction Analysis of parallel TCP mechanism Numerical

More information

ATL : An Adaptive Transport Layer Protocol Suite for Next Generation Wireless Internet

ATL : An Adaptive Transport Layer Protocol Suite for Next Generation Wireless Internet ATL : An Adaptive Transport Layer Protocol Suite for Next Generation Wireless Internet O. B. Akan and F. Akyildiz IEEE Trans. On Selected Areas in Communications, vol. 22, no. 5, 2004 First paper deals

More information

Computer Networking

Computer Networking 15-441 Computer Networking Lecture 17 TCP Performance & Future Eric Anderson Fall 2013 www.cs.cmu.edu/~prs/15-441-f13 Outline TCP modeling TCP details 2 TCP Performance Can TCP saturate a link? Congestion

More information

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Transport Layer Services Design Issue Underlying

More information

CUBIC: A New TCP-Friendly High-Speed TCP Variant

CUBIC: A New TCP-Friendly High-Speed TCP Variant CUBIC: A New TCP-Friendly High-Speed TCP Variant Sangtae Ha, Injong Rhee and Lisong Xu Presented by Shams Feyzabadi Introduction As Internet evolves the number of Long distance and High speed networks

More information

Congestion Control. Brighten Godfrey CS 538 January Based in part on slides by Ion Stoica

Congestion Control. Brighten Godfrey CS 538 January Based in part on slides by Ion Stoica Congestion Control Brighten Godfrey CS 538 January 31 2018 Based in part on slides by Ion Stoica Announcements A starting point: the sliding window protocol TCP flow control Make sure receiving end can

More information

QUIC evaluation. HTTP Workshop. 28 July 2015 Münster - Germany. G. Carlucci, L. De Cicco, S. Mascolo. Politecnico di Bari, Italy

QUIC evaluation. HTTP Workshop. 28 July 2015 Münster - Germany. G. Carlucci, L. De Cicco, S. Mascolo. Politecnico di Bari, Italy QUIC evaluation HTTP Workshop 28 July 2015 Münster - Germany G. Carlucci, L. De Cicco, S. Mascolo Politecnico di Bari, Italy Goal FOCUS OF THE TALK We want to answer to these questions: Can QUIC be safely

More information

Bandwidth Allocation & TCP

Bandwidth Allocation & TCP Bandwidth Allocation & TCP The Transport Layer Focus Application Presentation How do we share bandwidth? Session Topics Transport Network Congestion control & fairness Data Link TCP Additive Increase/Multiplicative

More information

Operating Systems and Networks. Network Lecture 10: Congestion Control. Adrian Perrig Network Security Group ETH Zürich

Operating Systems and Networks. Network Lecture 10: Congestion Control. Adrian Perrig Network Security Group ETH Zürich Operating Systems and Networks Network Lecture 10: Congestion Control Adrian Perrig Network Security Group ETH Zürich Where we are in the Course More fun in the Transport Layer! The mystery of congestion

More information

Where we are in the Course. Topic. Nature of Congestion. Nature of Congestion (3) Nature of Congestion (2) Operating Systems and Networks

Where we are in the Course. Topic. Nature of Congestion. Nature of Congestion (3) Nature of Congestion (2) Operating Systems and Networks Operating Systems and Networks Network Lecture 0: Congestion Control Adrian Perrig Network Security Group ETH Zürich Where we are in the Course More fun in the Transport Layer! The mystery of congestion

More information

XCP: explicit Control Protocol

XCP: explicit Control Protocol XCP: explicit Control Protocol Dina Katabi MIT Lab for Computer Science dk@mit.edu www.ana.lcs.mit.edu/dina Sharing the Internet Infrastructure Is fundamental Much research in Congestion Control, QoS,

More information

TCP SIAD: Congestion Control supporting Low Latency and High Speed

TCP SIAD: Congestion Control supporting Low Latency and High Speed TCP SIAD: Congestion Control supporting Low Latency and High Speed Mirja Kühlewind IETF91 Honolulu ICCRG Nov 11, 2014 Outline Current Research Challenges Scalability in

More information

TCP Westwood: Efficient Transport for High-speed wired/wireless Networks

TCP Westwood: Efficient Transport for High-speed wired/wireless Networks TCP Westwood: Efficient Transport for High-speed wired/wireless Networks Mario Gerla, Medy Sanadidi, Ren Wang and Massimo Valla UCLA Computer Science 1 Outline 1. TCP Overview 2. Bandwidth Estimation and

More information

One More Bit Is Enough

One More Bit Is Enough One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM 05, Philadelphia, PA 08 / 23 / 2005 Motivation #1: TCP doesn t work well in high b/w or delay

More information

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Do you remember the various mechanisms we have

More information

COMPARISON OF HIGH SPEED CONGESTION CONTROL PROTOCOLS

COMPARISON OF HIGH SPEED CONGESTION CONTROL PROTOCOLS COMPARISON OF HIGH SPEED CONGESTION CONTROL PROTOCOLS Jawhar Ben Abed 1, Lâarif Sinda 2, Mohamed Ali Mani 3 and Rachid Mbarek 2 1 Polytech Sousse, 2 ISITCOM Hammam Sousse and 3 ISTLS Sousse, Tunisia ba.jawhar@gmail.com

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 24: Congestion Control Prof. Alan Mislove (amislove@ccs.neu.edu) Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica,

More information

Linux Plumbers Conference TCP-NV Congestion Avoidance for Data Centers

Linux Plumbers Conference TCP-NV Congestion Avoidance for Data Centers Linux Plumbers Conference 2010 TCP-NV Congestion Avoidance for Data Centers Lawrence Brakmo Google TCP Congestion Control Algorithm for utilizing available bandwidth without too many losses No attempt

More information

CS 268: Lecture 7 (Beyond TCP Congestion Control)

CS 268: Lecture 7 (Beyond TCP Congestion Control) Outline CS 68: Lecture 7 (Beyond TCP Congestion Control) TCP-Friendly Rate Control (TFRC) explicit Control Protocol Ion Stoica Computer Science Division Department of Electrical Engineering and Computer

More information

Effects of Applying High-Speed Congestion Control Algorithms in Satellite Network

Effects of Applying High-Speed Congestion Control Algorithms in Satellite Network Effects of Applying High-Speed Congestion Control Algorithms in Satellite Network Xiuchao Wu, Mun Choon Chan, and A. L. Ananda School of Computing, National University of Singapore Computing 1, Law Link,

More information

Transport Layer (Congestion Control)

Transport Layer (Congestion Control) Transport Layer (Congestion Control) Where we are in the Course Moving on up to the Transport Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 TCP to date: We can set

More information

Understanding TCP Parallelization. Qiang Fu. TCP Performance Issues TCP Enhancements TCP Parallelization (research areas of interest)

Understanding TCP Parallelization. Qiang Fu. TCP Performance Issues TCP Enhancements TCP Parallelization (research areas of interest) Understanding TCP Parallelization Qiang Fu qfu@swin.edu.au Outline TCP Performance Issues TCP Enhancements TCP Parallelization (research areas of interest) Related Approaches TCP Parallelization vs. Single

More information

Lecture 14: Congestion Control"

Lecture 14: Congestion Control Lecture 14: Congestion Control" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Amin Vahdat, Dina Katabi Lecture 14 Overview" TCP congestion control review XCP Overview 2 Congestion Control

More information

Kathie Nichols CoDel. present by Van Jacobson to the IETF-84 Transport Area Open Meeting 30 July 2012 Vancouver, Canada

Kathie Nichols CoDel. present by Van Jacobson to the IETF-84 Transport Area Open Meeting 30 July 2012 Vancouver, Canada Kathie Nichols CoDel present by Van Jacobson to the IETF-84 Transport Area Open Meeting 30 July 2012 Vancouver, Canada 2 3 Sender Receiver 4 Sender Receiver 5 Sender Receiver Queue forms at a bottleneck

More information

TCP and BBR. Geoff Huston APNIC

TCP and BBR. Geoff Huston APNIC TCP and BBR Geoff Huston APNIC Computer Networking is all about moving data The way in which data movement is controlled is a key characteristic of the network architecture The Internet protocol passed

More information

Lecture 15: Transport Layer Congestion Control

Lecture 15: Transport Layer Congestion Control Lecture 15: Transport Layer Congestion Control COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

TCP on High-Speed Networks

TCP on High-Speed Networks TCP on High-Speed Networks from New Internet and Networking Technologies for Grids and High-Performance Computing, tutorial given at HiPC 04, Bangalore, India December 22nd, 2004 C. Pham University Lyon,

More information

Cloud e Datacenter Networking

Cloud e Datacenter Networking Cloud e Datacenter Networking Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione DIETI Laurea Magistrale in Ingegneria Informatica Prof.

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2017 Contents 6. TCP Reno 7. TCP Cubic 8. ECN and RED 9. Other Cool Stuff 2 6. Congestion Control in the Internet

More information

MPTCP: Design and Deployment. Day 11

MPTCP: Design and Deployment. Day 11 MPTCP: Design and Deployment Day 11 Use of Multipath TCP in ios 7 Multipath TCP in ios 7 Primary TCP connection over WiFi Backup TCP connection over cellular data Enables fail-over Improves performance

More information

Fair TCP: A Novel TCP Congestion Control Algorithm to Tackle TCP s Challenges

Fair TCP: A Novel TCP Congestion Control Algorithm to Tackle TCP s Challenges Fair TCP: A Novel TCP Congestion Control Algorithm to Tackle TCP s Challenges Guodong Wang, Yongmao Ren, Jun Li Graduate University of Chinese Academy of Sciences Beijing, China Email: wangguodong@cstnet.cn

More information

Copa: Practical Delay-Based Congestion Control for the Internet

Copa: Practical Delay-Based Congestion Control for the Internet : Practical Delay-Based Congestion Control for the Internet Venkat Arun and Hari Balakrishnan M.I.T. Computer Science and Artificial Intelligence Laboratory Email: {venkatar,hari}@mit.edu Abstract This

More information

TCP LoLa Toward Low Latency and High Throughput Congestion Control

TCP LoLa Toward Low Latency and High Throughput Congestion Control TCP LoLa Toward Low Latency and High Throughput Congestion Control Mario Hock, Felix Neumeister, Martina Zitterbart, Roland Bless KIT The Research University in the Helmholtz Association www.kit.edu Motivation

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 14 Congestion Control Some images courtesy David Wetherall Animations by Nick McKeown and Guido Appenzeller The bad news and the good news The bad news: new

More information

The Present and Future of Congestion Control. Mark Handley

The Present and Future of Congestion Control. Mark Handley The Present and Future of Congestion Control Mark Handley Outline Purpose of congestion control The Present: TCP s congestion control algorithm (AIMD) TCP-friendly congestion control for multimedia Datagram

More information

TCP and BBR. Geoff Huston APNIC

TCP and BBR. Geoff Huston APNIC TCP and BBR Geoff Huston APNIC Computer Networking is all about moving data The way in which data movement is controlled is a key characteristic of the network architecture The Internet protocol passed

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2018

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2018 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2018 Contents 6. TCP Reno 7. TCP Cubic 8. ECN and RED 9. Other Cool Stuff 2 6. Congestion Control in the Internet

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Stefano Vissicchio UCL Computer Science COMP0023 Recap: Last Lecture Transport Concepts Layering context Transport goals Transport mechanisms and design

More information

TCP Westwood and Easy Red to Improve Fairness in High-speed Networks. PfHsn 2002 Berlin, 22 April 2002

TCP Westwood and Easy Red to Improve Fairness in High-speed Networks. PfHsn 2002 Berlin, 22 April 2002 TCP Westwood and Easy Red to Improve Fairness in High-speed Networks L. A. Grieco, S. Mascolo Dipartimento di Elettrotecnica ed Elettronica Politecnico di Bari, Italy PfHsn 2002 Berlin, 22 April 2002 Outline

More information

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2017 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2017 Contents 6. TCP Reno 7. TCP Cubic 8. ECN and RED 9. Other Cool Stuff 2 6. Congestion Control in the Internet

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 22, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

More information

TCP Congestion Control : Computer Networking. Introduction to TCP. Key Things You Should Know Already. Congestion Control RED

TCP Congestion Control : Computer Networking. Introduction to TCP. Key Things You Should Know Already. Congestion Control RED TCP Congestion Control 15-744: Computer Networking L-4 TCP Congestion Control RED Assigned Reading [FJ93] Random Early Detection Gateways for Congestion Avoidance [TFRC] Equation-Based Congestion Control

More information

Congestion Control in Datacenters. Ahmed Saeed

Congestion Control in Datacenters. Ahmed Saeed Congestion Control in Datacenters Ahmed Saeed What is a Datacenter? Tens of thousands of machines in the same building (or adjacent buildings) Hundreds of switches connecting all machines What is a Datacenter?

More information

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers Overview 15-441 Computer Networking TCP & router queuing Lecture 10 TCP & Routers TCP details Workloads Lecture 10: 09-30-2002 2 TCP Performance TCP Performance Can TCP saturate a link? Congestion control

More information

Comparative Study of TCP Protocols: A Survey

Comparative Study of TCP Protocols: A Survey International Journal of Computer Science and Telecommunications [Volume 8, Issue 1, January 2017] 19 Comparative Study of TCP Protocols: A Survey ISSN 2047-3338 Tabinda Ashraf 1, Noor-ul-Sabah 2 and M.

More information

Packet Scheduling in Data Centers. Lecture 17, Computer Networks (198:552)

Packet Scheduling in Data Centers. Lecture 17, Computer Networks (198:552) Packet Scheduling in Data Centers Lecture 17, Computer Networks (198:552) Datacenter transport Goal: Complete flows quickly / meet deadlines Short flows (e.g., query, coordination) Large flows (e.g., data

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross Principles of congestion control

More information

Flow-start: Faster and Less Overshoot with Paced Chirping

Flow-start: Faster and Less Overshoot with Paced Chirping Flow-start: Faster and Less Overshoot with Paced Chirping Joakim Misund, Simula and Uni Oslo Bob Briscoe, Independent IRTF ICCRG, Jul 2018 The Slow-Start

More information

Performance of Competing High-Speed TCP Flows

Performance of Competing High-Speed TCP Flows Performance of Competing High-Speed TCP Flows Michele C. Weigle, Pankaj Sharma, and Jesse R. Freeman, IV Department of Computer Science, Clemson University, Clemson, SC 29634 {mweigle, pankajs, jessef}@cs.clemson.edu

More information

Improving the Robustness of TCP to Non-Congestion Events

Improving the Robustness of TCP to Non-Congestion Events Improving the Robustness of TCP to Non-Congestion Events Presented by : Sally Floyd floyd@acm.org For the Authors: Sumitha Bhandarkar A. L. Narasimha Reddy {sumitha,reddy}@ee.tamu.edu Problem Statement

More information

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control : Computer Networks Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control TCP performance We ve seen how TCP the protocol works Sequencing, receive window, connection setup and teardown And

More information