CS5229 09/10 Lecture 9: Internet Packet Dynamics

117
1 22 August 2008 NUS CS5229 Semester 1 2008/09 Vern Paxson’s Paper End-to-End Internet Packet Dynamics ”, 1997/99

Transcript of CS5229 09/10 Lecture 9: Internet Packet Dynamics

Page 1: CS5229 09/10 Lecture 9: Internet Packet Dynamics

1 22 August 2008 NUS CS5229 Semester 1 2008/09

Vern Paxson’s Paper"“End-to-End"

Internet Packet Dynamics”, 1997/99

Page 2: CS5229 09/10 Lecture 9: Internet Packet Dynamics

2 22 August 2008 NUS CS5229 Semester 1 2008/09

How often are packets dropped?"

How often are packets reordered?" :

Page 3: CS5229 09/10 Lecture 9: Internet Packet Dynamics

3 22 August 2008 NUS CS5229 Semester 1 2008/09

Why these questions?

Page 4: CS5229 09/10 Lecture 9: Internet Packet Dynamics

4 22 August 2008 NUS CS5229 Semester 1 2008/09

1. Understand the Internet

Page 5: CS5229 09/10 Lecture 9: Internet Packet Dynamics

5 22 August 2008 NUS CS5229 Semester 1 2008/09

“ ”

when you can measure what you are speaking about, and express it in numbers, you know something about it; but when you cannot measure it, when you cannot express it in numbers, your knowledge is of a meagre and unsatisfactory kind;

- Lord Kelvin

Page 6: CS5229 09/10 Lecture 9: Internet Packet Dynamics

6 22 August 2008 NUS CS5229 Semester 1 2008/09

2. Model the Internet

Page 7: CS5229 09/10 Lecture 9: Internet Packet Dynamics

7 22 August 2008 NUS CS5229 Semester 1 2008/09

3. Enable more accurate evaluation through simulations

Page 8: CS5229 09/10 Lecture 9: Internet Packet Dynamics

8 22 August 2008 NUS CS5229 Semester 1 2008/09

4. Lead to a better application/systems

design

Page 9: CS5229 09/10 Lecture 9: Internet Packet Dynamics

9 22 August 2008 NUS CS5229 Semester 1 2008/09

How often are packets dropped?"

How often are packets reordered?" :

Page 10: CS5229 09/10 Lecture 9: Internet Packet Dynamics

10 22 August 2008 NUS CS5229 Semester 1 2008/09

How to answer these questions?

Page 11: CS5229 09/10 Lecture 9: Internet Packet Dynamics

11 22 August 2008 NUS CS5229 Semester 1 2008/09

Collect lots of packet traces"

Analyze the traces

Page 12: CS5229 09/10 Lecture 9: Internet Packet Dynamics

12 22 August 2008 NUS CS5229 Semester 1 2008/09

Trace collection:"

large number of flows"

a variety of sites"

many packets per flow"

use TCP

Page 13: CS5229 09/10 Lecture 9: Internet Packet Dynamics

13 22 August 2008 NUS CS5229 Semester 1 2008/09

Why TCP:"

real-world traffic"

will not overload the network

Page 14: CS5229 09/10 Lecture 9: Internet Packet Dynamics

14 22 August 2008 NUS CS5229 Semester 1 2008/09

Time between measurement is Poisson distributed."

PASTA Theorem: Intuitively, if we make n observations and k observations is in some state S and n-k in other states, then we can assume prob of observing S is approximately k/n.

Page 15: CS5229 09/10 Lecture 9: Internet Packet Dynamics

15 22 August 2008 NUS CS5229 Semester 1 2008/09

Two traces:"

N1: Dec94 "N2: Nov-Dec95"

use tcpdump at sender + receiver"

Page 16: CS5229 09/10 Lecture 9: Internet Packet Dynamics

16 22 August 2008 NUS CS5229 Semester 1 2008/09

100 kB Size of file transfered

Page 17: CS5229 09/10 Lecture 9: Internet Packet Dynamics

17 22 August 2008 NUS CS5229 Semester 1 2008/09

21 Number of sites

Page 18: CS5229 09/10 Lecture 9: Internet Packet Dynamics

18 22 August 2008 NUS CS5229 Semester 1 2008/09

20800 Number of trace pairs

Page 19: CS5229 09/10 Lecture 9: Internet Packet Dynamics

19 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 1:"The Unexpected

Page 20: CS5229 09/10 Lecture 9: Internet Packet Dynamics

20 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Reordering

Page 21: CS5229 09/10 Lecture 9: Internet Packet Dynamics

21 22 August 2008 NUS CS5229 Semester 1 2008/09

1 2 5 3 4

2 reorderings

Page 22: CS5229 09/10 Lecture 9: Internet Packet Dynamics

22 22 August 2008 NUS CS5229 Semester 1 2008/09

36% 12% N1 N2

Percentage of connections with at least one out-of-order delivery

Page 23: CS5229 09/10 Lecture 9: Internet Packet Dynamics

23 22 August 2008 NUS CS5229 Semester 1 2008/09

2% .3% N1 N2

Percentage of data packets out-of-order

Page 24: CS5229 09/10 Lecture 9: Internet Packet Dynamics

24 22 August 2008 NUS CS5229 Semester 1 2008/09

.6% .1% N1 N2

Percentage of ACK packets out-of-order

Page 25: CS5229 09/10 Lecture 9: Internet Packet Dynamics

25 22 August 2008 NUS CS5229 Semester 1 2008/09

Data packets are usually sent

closer together.

Page 26: CS5229 09/10 Lecture 9: Internet Packet Dynamics

26 22 August 2008 NUS CS5229 Semester 1 2008/09

15% .2% From To

Percentage of packets out-of-order to and from U of Colorado in N1.

Page 27: CS5229 09/10 Lecture 9: Internet Packet Dynamics

27 22 August 2008 NUS CS5229 Semester 1 2008/09

Route fluttering: alternate packets can take different

route to dest.

Page 28: CS5229 09/10 Lecture 9: Internet Packet Dynamics

28 22 August 2008 NUS CS5229 Semester 1 2008/09

Taken from Paxson’s PhD Thesis: Alternate routes are taken for packets from WUSTL to U Mannheim

Page 29: CS5229 09/10 Lecture 9: Internet Packet Dynamics

29 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 1 from the paper, showing large gap and two slopes.

Page 30: CS5229 09/10 Lecture 9: Internet Packet Dynamics

30 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 1 from the paper, showing large gap and two slopes.

T1 (new arrival)

Ethernet (buffered packets)

Page 31: CS5229 09/10 Lecture 9: Internet Packet Dynamics

31 22 August 2008 NUS CS5229 Semester 1 2008/09

Impact of Packet Reordering

Page 32: CS5229 09/10 Lecture 9: Internet Packet Dynamics

32 22 August 2008 NUS CS5229 Semester 1 2008/09

Recap: TCP’s fast retransmit

Page 33: CS5229 09/10 Lecture 9: Internet Packet Dynamics

33 22 August 2008 NUS CS5229 Semester 1 2008/09

S = 1000

S = 2000

S = 3000 S = 4000

S = 5000

A = 2000

A = 2000

A = 2000

A = 2000

S = 2000

Page 34: CS5229 09/10 Lecture 9: Internet Packet Dynamics

34 22 August 2008 NUS CS5229 Semester 1 2008/09

S = 1000

S = 2000

S = 3000 S = 4000

S = 5000

A = 2000

A = 2000

A = 2000

A = 2000

S = 2000

Page 35: CS5229 09/10 Lecture 9: Internet Packet Dynamics

35 22 August 2008 NUS CS5229 Semester 1 2008/09

Nd = 3 is a conservative

choice.

Page 36: CS5229 09/10 Lecture 9: Internet Packet Dynamics

36 22 August 2008 NUS CS5229 Semester 1 2008/09

What if receiver wait longer before sending dup ack?

Page 37: CS5229 09/10 Lecture 9: Internet Packet Dynamics

37 22 August 2008 NUS CS5229 Semester 1 2008/09

W

S = 2000

S = 2000

Page 38: CS5229 09/10 Lecture 9: Internet Packet Dynamics

38 22 August 2008 NUS CS5229 Semester 1 2008/09

1 2 5 3 4

Delivery Gap: "time between receiving "an out-of-order packet and "the packet sent before it.

Page 39: CS5229 09/10 Lecture 9: Internet Packet Dynamics

39 22 August 2008 NUS CS5229 Semester 1 2008/09

Taken from Paxson’s PhD Thesis: CDF for delivery gap between reordered packets.

Page 40: CS5229 09/10 Lecture 9: Internet Packet Dynamics

40 22 August 2008 NUS CS5229 Semester 1 2008/09

N2 N1

higher BW

Page 41: CS5229 09/10 Lecture 9: Internet Packet Dynamics

41 22 August 2008 NUS CS5229 Semester 1 2008/09

20ms 8ms N1 N2

Waiting time with which 70% of "out-of-order delivery would be identified.

Page 42: CS5229 09/10 Lecture 9: Internet Packet Dynamics

42 22 August 2008 NUS CS5229 Semester 1 2008/09

Is needless retransmission a

problem?

Page 43: CS5229 09/10 Lecture 9: Internet Packet Dynamics

43 22 August 2008 NUS CS5229 Semester 1 2008/09

Good S = 2000

S = 2000

Page 44: CS5229 09/10 Lecture 9: Internet Packet Dynamics

44 22 August 2008 NUS CS5229 Semester 1 2008/09

S = 2000

S = 2000

Bad

Page 45: CS5229 09/10 Lecture 9: Internet Packet Dynamics

45 22 August 2008 NUS CS5229 Semester 1 2008/09

22 300 N1 N2

Number of good retransmissions for every bad retransmission.

Nd = 3, W = 0

Page 46: CS5229 09/10 Lecture 9: Internet Packet Dynamics

46 22 August 2008 NUS CS5229 Semester 1 2008/09

~7 100 N1 N2

Number of good retransmissions for every bad retransmission.

Nd = 2, W = 0

Page 47: CS5229 09/10 Lecture 9: Internet Packet Dynamics

47 22 August 2008 NUS CS5229 Semester 1 2008/09

15 300 N1 N2

Number of good retransmissions for every bad retransmission.

Nd = 2, W = 20ms

Page 48: CS5229 09/10 Lecture 9: Internet Packet Dynamics

48 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Corruption

Page 49: CS5229 09/10 Lecture 9: Internet Packet Dynamics

49 22 August 2008 NUS CS5229 Semester 1 2008/09

1 in 5000 packet is corrupted

Page 50: CS5229 09/10 Lecture 9: Internet Packet Dynamics

50 22 August 2008 NUS CS5229 Semester 1 2008/09

1 in 65536 corrupted packet goes undetected

using TCP checksum (assuming each possible checksum is equally likely)

Page 51: CS5229 09/10 Lecture 9: Internet Packet Dynamics

51 22 August 2008 NUS CS5229 Semester 1 2008/09

1 in 300million Internet packet is corrupted "

and is undetected.

Page 52: CS5229 09/10 Lecture 9: Internet Packet Dynamics

52 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 2:"Bottleneck Bandwidth

Page 53: CS5229 09/10 Lecture 9: Internet Packet Dynamics

53 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Pair

Page 54: CS5229 09/10 Lecture 9: Internet Packet Dynamics

54 22 August 2008 NUS CS5229 Semester 1 2008/09

B bps

b bytes

Page 55: CS5229 09/10 Lecture 9: Internet Packet Dynamics

55 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

Q x B = b

Page 56: CS5229 09/10 Lecture 9: Internet Packet Dynamics

56 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

Page 57: CS5229 09/10 Lecture 9: Internet Packet Dynamics

57 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

Page 58: CS5229 09/10 Lecture 9: Internet Packet Dynamics

58 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

Page 59: CS5229 09/10 Lecture 9: Internet Packet Dynamics

59 22 August 2008 NUS CS5229 Semester 1 2008/09

Problems with Packet Pair

Page 60: CS5229 09/10 Lecture 9: Internet Packet Dynamics

60 22 August 2008 NUS CS5229 Semester 1 2008/09

1. Asymmetric Link

Page 61: CS5229 09/10 Lecture 9: Internet Packet Dynamics

61 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 62: CS5229 09/10 Lecture 9: Internet Packet Dynamics

62 22 August 2008 NUS CS5229 Semester 1 2008/09

2. ACK Compression

Page 63: CS5229 09/10 Lecture 9: Internet Packet Dynamics

63 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 64: CS5229 09/10 Lecture 9: Internet Packet Dynamics

64 22 August 2008 NUS CS5229 Semester 1 2008/09

3. Out of order delivery

Page 65: CS5229 09/10 Lecture 9: Internet Packet Dynamics

65 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 66: CS5229 09/10 Lecture 9: Internet Packet Dynamics

66 22 August 2008 NUS CS5229 Semester 1 2008/09

4. Clock resolution

Page 67: CS5229 09/10 Lecture 9: Internet Packet Dynamics

67 22 August 2008 NUS CS5229 Semester 1 2008/09

Suppose

B = 1000 kBps b = 1 kB Q = ?

Page 68: CS5229 09/10 Lecture 9: Internet Packet Dynamics

68 22 August 2008 NUS CS5229 Semester 1 2008/09

5. Changing bottleneck bandwidth

Page 69: CS5229 09/10 Lecture 9: Internet Packet Dynamics

69 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 2 from the paper, showing changing bandwidth.

Page 70: CS5229 09/10 Lecture 9: Internet Packet Dynamics

70 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 3 from the paper, showing multi-channel links.

Page 71: CS5229 09/10 Lecture 9: Internet Packet Dynamics

71 22 August 2008 NUS CS5229 Semester 1 2008/09

6. Multi-channel Links

Page 72: CS5229 09/10 Lecture 9: Internet Packet Dynamics

72 22 August 2008 NUS CS5229 Semester 1 2008/09

Asymmetric links"ACK compression"Out-of-order delivery"Clock resolution"Changes in bottleneck bandwidth"Multi-channel links"

Page 73: CS5229 09/10 Lecture 9: Internet Packet Dynamics

73 22 August 2008 NUS CS5229 Semester 1 2008/09

Measure at receiver: "Asymmetric links"ACK compression"

Packet bunch:"Out-of-order delivery"Clock resolution"Changes in bottleneck bandwidth"Multi-channel links

Page 74: CS5229 09/10 Lecture 9: Internet Packet Dynamics

74 22 August 2008 NUS CS5229 Semester 1 2008/09

2Q

Page 75: CS5229 09/10 Lecture 9: Internet Packet Dynamics

75 22 August 2008 NUS CS5229 Semester 1 2008/09

Collect multiple estimates, take the most freq occurrence (modes) as the bottleneck bandwidth.

Page 76: CS5229 09/10 Lecture 9: Internet Packet Dynamics

76 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 77: CS5229 09/10 Lecture 9: Internet Packet Dynamics

77 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 3:"Packet Loss

Page 78: CS5229 09/10 Lecture 9: Internet Packet Dynamics

78 22 August 2008 NUS CS5229 Semester 1 2008/09

2.7% 5.2% N1 N2

Percentage of packets that were lost.

Page 79: CS5229 09/10 Lecture 9: Internet Packet Dynamics

79 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 50% N1 N2

Percentage of loss free connections

Page 80: CS5229 09/10 Lecture 9: Internet Packet Dynamics

80 22 August 2008 NUS CS5229 Semester 1 2008/09

5.7% 9.2% N1 N2

Loss rate on lossy connections

Page 81: CS5229 09/10 Lecture 9: Internet Packet Dynamics

81 22 August 2008 NUS CS5229 Semester 1 2008/09

17% Loss rate on connections from EU to US

Page 82: CS5229 09/10 Lecture 9: Internet Packet Dynamics

82 22 August 2008 NUS CS5229 Semester 1 2008/09

Are packet losses independent?

Page 83: CS5229 09/10 Lecture 9: Internet Packet Dynamics

83 22 August 2008 NUS CS5229 Semester 1 2008/09

Compute:"Pu = Pr [ p lost ]"Pc = Pr [ p lost | prev pkt lost ]

Page 84: CS5229 09/10 Lecture 9: Internet Packet Dynamics

84 22 August 2008 NUS CS5229 Semester 1 2008/09

2.8% 49% Pu Pc

Loss rate for “queued data pkt” on N1

Page 85: CS5229 09/10 Lecture 9: Internet Packet Dynamics

85 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 6 from the paper, showing outage duration.

Page 86: CS5229 09/10 Lecture 9: Internet Packet Dynamics

86 22 August 2008 NUS CS5229 Semester 1 2008/09

Are retransmission

redundant?

Page 87: CS5229 09/10 Lecture 9: Internet Packet Dynamics

87 22 August 2008 NUS CS5229 Semester 1 2008/09

Unavoidable

ACK X

Page 88: CS5229 09/10 Lecture 9: Internet Packet Dynamics

88 22 August 2008 NUS CS5229 Semester 1 2008/09

Coarse Feedback

Page 89: CS5229 09/10 Lecture 9: Internet Packet Dynamics

89 22 August 2008 NUS CS5229 Semester 1 2008/09

Bad RTO

Page 90: CS5229 09/10 Lecture 9: Internet Packet Dynamics

90 22 August 2008 NUS CS5229 Semester 1 2008/09

26% 28% N1 N2

Percentage of retransmissions that"are redundant

Page 91: CS5229 09/10 Lecture 9: Internet Packet Dynamics

91 22 August 2008 NUS CS5229 Semester 1 2008/09

44

51

4

Unavoidable

Coarse Feedback

Bad RTO

Type of redundant retransmission in N1.

Page 92: CS5229 09/10 Lecture 9: Internet Packet Dynamics

92 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 4:"Packet Delay

Page 93: CS5229 09/10 Lecture 9: Internet Packet Dynamics

93 22 August 2008 NUS CS5229 Semester 1 2008/09

OTT is not well approximated using RTT/2

Page 94: CS5229 09/10 Lecture 9: Internet Packet Dynamics

94 22 August 2008 NUS CS5229 Semester 1 2008/09

ACK Compression

Page 95: CS5229 09/10 Lecture 9: Internet Packet Dynamics

95 22 August 2008 NUS CS5229 Semester 1 2008/09

(might affect TCP self-clocking)

Page 96: CS5229 09/10 Lecture 9: Internet Packet Dynamics

96 22 August 2008 NUS CS5229 Semester 1 2008/09

sent

recv

Page 97: CS5229 09/10 Lecture 9: Internet Packet Dynamics

97 22 August 2008 NUS CS5229 Semester 1 2008/09

Sending interval

Receiving interval

Page 98: CS5229 09/10 Lecture 9: Internet Packet Dynamics

98 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 99: CS5229 09/10 Lecture 9: Internet Packet Dynamics

99 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 100: CS5229 09/10 Lecture 9: Internet Packet Dynamics

100 22 August 2008 NUS CS5229 Semester 1 2008/09

Compression event if ξ < .75

Page 101: CS5229 09/10 Lecture 9: Internet Packet Dynamics

101 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 60% N1 N2

Percentage of connection that experiences"at least one compression event.

Page 102: CS5229 09/10 Lecture 9: Internet Packet Dynamics

102 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 60% N1 N2

Percentage of connection that experiences"at least one compression event.

Page 103: CS5229 09/10 Lecture 9: Internet Packet Dynamics

103 22 August 2008 NUS CS5229 Semester 1 2008/09

2 Average number of events per connection.

Page 104: CS5229 09/10 Lecture 9: Internet Packet Dynamics

104 22 August 2008 NUS CS5229 Semester 1 2008/09

Estimating Available

Bandwidth

Page 105: CS5229 09/10 Lecture 9: Internet Packet Dynamics

105 22 August 2008 NUS CS5229 Semester 1 2008/09

Qb: time to transit the bottleneck"

ψi: expected time spent queuing behind predecessor (derived from sending time)"

γi: diff between packet OTT and min OTT

Page 106: CS5229 09/10 Lecture 9: Internet Packet Dynamics

106 22 August 2008 NUS CS5229 Semester 1 2008/09

time packet i is sent

Page 107: CS5229 09/10 Lecture 9: Internet Packet Dynamics

107 22 August 2008 NUS CS5229 Semester 1 2008/09

Page 108: CS5229 09/10 Lecture 9: Internet Packet Dynamics

108 22 August 2008 NUS CS5229 Semester 1 2008/09

β = 1 means all bandwidth is available."

β = 0 means none of the bandwidth is available.

Page 109: CS5229 09/10 Lecture 9: Internet Packet Dynamics

109 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 10 from the paper, showing distribution of available bandwidth.

Page 110: CS5229 09/10 Lecture 9: Internet Packet Dynamics

110 22 August 2008 NUS CS5229 Semester 1 2008/09

Conclusion

Page 111: CS5229 09/10 Lecture 9: Internet Packet Dynamics

111 22 August 2008 NUS CS5229 Semester 1 2008/09

The numbers in the paper are not important. "

(the Internet has changed)

Page 112: CS5229 09/10 Lecture 9: Internet Packet Dynamics

112 22 August 2008 NUS CS5229 Semester 1 2008/09

Measurement is difficult but useful

Page 113: CS5229 09/10 Lecture 9: Internet Packet Dynamics

113 22 August 2008 NUS CS5229 Semester 1 2008/09

Many new techniques needed (e.g to

measure bottleneck bandwidth)

Page 114: CS5229 09/10 Lecture 9: Internet Packet Dynamics

114 22 August 2008 NUS CS5229 Semester 1 2008/09

We can improve current design (e.g.

TCP if we know more about reordering)

Page 115: CS5229 09/10 Lecture 9: Internet Packet Dynamics

115 22 August 2008 NUS CS5229 Semester 1 2008/09

We can identify problem (e.g. packet

corruption)

Page 116: CS5229 09/10 Lecture 9: Internet Packet Dynamics

116 22 August 2008 NUS CS5229 Semester 1 2008/09

We can better model the behavior (e.g.

bursty packet loss)

Page 117: CS5229 09/10 Lecture 9: Internet Packet Dynamics

117 22 August 2008 NUS CS5229 Semester 1 2008/09

We can infer much info from just a

packet trace (e.g. available bandwidth)