CS5229 09/10 Lecture 9: Internet Packet Dynamics

Post on 16-Jun-2015

407 views 2 download

Tags:

Transcript of 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

2 22 August 2008 NUS CS5229 Semester 1 2008/09

How often are packets dropped?"

How often are packets reordered?" :

3 22 August 2008 NUS CS5229 Semester 1 2008/09

Why these questions?

4 22 August 2008 NUS CS5229 Semester 1 2008/09

1. Understand the Internet

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

6 22 August 2008 NUS CS5229 Semester 1 2008/09

2. Model the Internet

7 22 August 2008 NUS CS5229 Semester 1 2008/09

3. Enable more accurate evaluation through simulations

8 22 August 2008 NUS CS5229 Semester 1 2008/09

4. Lead to a better application/systems

design

9 22 August 2008 NUS CS5229 Semester 1 2008/09

How often are packets dropped?"

How often are packets reordered?" :

10 22 August 2008 NUS CS5229 Semester 1 2008/09

How to answer these questions?

11 22 August 2008 NUS CS5229 Semester 1 2008/09

Collect lots of packet traces"

Analyze the traces

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

13 22 August 2008 NUS CS5229 Semester 1 2008/09

Why TCP:"

real-world traffic"

will not overload the network

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.

15 22 August 2008 NUS CS5229 Semester 1 2008/09

Two traces:"

N1: Dec94 "N2: Nov-Dec95"

use tcpdump at sender + receiver"

16 22 August 2008 NUS CS5229 Semester 1 2008/09

100 kB Size of file transfered

17 22 August 2008 NUS CS5229 Semester 1 2008/09

21 Number of sites

18 22 August 2008 NUS CS5229 Semester 1 2008/09

20800 Number of trace pairs

19 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 1:"The Unexpected

20 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Reordering

21 22 August 2008 NUS CS5229 Semester 1 2008/09

1 2 5 3 4

2 reorderings

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

23 22 August 2008 NUS CS5229 Semester 1 2008/09

2% .3% N1 N2

Percentage of data packets out-of-order

24 22 August 2008 NUS CS5229 Semester 1 2008/09

.6% .1% N1 N2

Percentage of ACK packets out-of-order

25 22 August 2008 NUS CS5229 Semester 1 2008/09

Data packets are usually sent

closer together.

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.

27 22 August 2008 NUS CS5229 Semester 1 2008/09

Route fluttering: alternate packets can take different

route to dest.

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

29 22 August 2008 NUS CS5229 Semester 1 2008/09

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

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)

31 22 August 2008 NUS CS5229 Semester 1 2008/09

Impact of Packet Reordering

32 22 August 2008 NUS CS5229 Semester 1 2008/09

Recap: TCP’s fast retransmit

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

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

35 22 August 2008 NUS CS5229 Semester 1 2008/09

Nd = 3 is a conservative

choice.

36 22 August 2008 NUS CS5229 Semester 1 2008/09

What if receiver wait longer before sending dup ack?

37 22 August 2008 NUS CS5229 Semester 1 2008/09

W

S = 2000

S = 2000

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.

39 22 August 2008 NUS CS5229 Semester 1 2008/09

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

40 22 August 2008 NUS CS5229 Semester 1 2008/09

N2 N1

higher BW

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.

42 22 August 2008 NUS CS5229 Semester 1 2008/09

Is needless retransmission a

problem?

43 22 August 2008 NUS CS5229 Semester 1 2008/09

Good S = 2000

S = 2000

44 22 August 2008 NUS CS5229 Semester 1 2008/09

S = 2000

S = 2000

Bad

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

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

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

48 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Corruption

49 22 August 2008 NUS CS5229 Semester 1 2008/09

1 in 5000 packet is corrupted

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)

51 22 August 2008 NUS CS5229 Semester 1 2008/09

1 in 300million Internet packet is corrupted "

and is undetected.

52 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 2:"Bottleneck Bandwidth

53 22 August 2008 NUS CS5229 Semester 1 2008/09

Packet Pair

54 22 August 2008 NUS CS5229 Semester 1 2008/09

B bps

b bytes

55 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

Q x B = b

56 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

57 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

58 22 August 2008 NUS CS5229 Semester 1 2008/09

Q s

59 22 August 2008 NUS CS5229 Semester 1 2008/09

Problems with Packet Pair

60 22 August 2008 NUS CS5229 Semester 1 2008/09

1. Asymmetric Link

61 22 August 2008 NUS CS5229 Semester 1 2008/09

62 22 August 2008 NUS CS5229 Semester 1 2008/09

2. ACK Compression

63 22 August 2008 NUS CS5229 Semester 1 2008/09

64 22 August 2008 NUS CS5229 Semester 1 2008/09

3. Out of order delivery

65 22 August 2008 NUS CS5229 Semester 1 2008/09

66 22 August 2008 NUS CS5229 Semester 1 2008/09

4. Clock resolution

67 22 August 2008 NUS CS5229 Semester 1 2008/09

Suppose

B = 1000 kBps b = 1 kB Q = ?

68 22 August 2008 NUS CS5229 Semester 1 2008/09

5. Changing bottleneck bandwidth

69 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 2 from the paper, showing changing bandwidth.

70 22 August 2008 NUS CS5229 Semester 1 2008/09

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

71 22 August 2008 NUS CS5229 Semester 1 2008/09

6. Multi-channel Links

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"

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

74 22 August 2008 NUS CS5229 Semester 1 2008/09

2Q

75 22 August 2008 NUS CS5229 Semester 1 2008/09

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

76 22 August 2008 NUS CS5229 Semester 1 2008/09

77 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 3:"Packet Loss

78 22 August 2008 NUS CS5229 Semester 1 2008/09

2.7% 5.2% N1 N2

Percentage of packets that were lost.

79 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 50% N1 N2

Percentage of loss free connections

80 22 August 2008 NUS CS5229 Semester 1 2008/09

5.7% 9.2% N1 N2

Loss rate on lossy connections

81 22 August 2008 NUS CS5229 Semester 1 2008/09

17% Loss rate on connections from EU to US

82 22 August 2008 NUS CS5229 Semester 1 2008/09

Are packet losses independent?

83 22 August 2008 NUS CS5229 Semester 1 2008/09

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

84 22 August 2008 NUS CS5229 Semester 1 2008/09

2.8% 49% Pu Pc

Loss rate for “queued data pkt” on N1

85 22 August 2008 NUS CS5229 Semester 1 2008/09

Fig 6 from the paper, showing outage duration.

86 22 August 2008 NUS CS5229 Semester 1 2008/09

Are retransmission

redundant?

87 22 August 2008 NUS CS5229 Semester 1 2008/09

Unavoidable

ACK X

88 22 August 2008 NUS CS5229 Semester 1 2008/09

Coarse Feedback

89 22 August 2008 NUS CS5229 Semester 1 2008/09

Bad RTO

90 22 August 2008 NUS CS5229 Semester 1 2008/09

26% 28% N1 N2

Percentage of retransmissions that"are redundant

91 22 August 2008 NUS CS5229 Semester 1 2008/09

44

51

4

Unavoidable

Coarse Feedback

Bad RTO

Type of redundant retransmission in N1.

92 22 August 2008 NUS CS5229 Semester 1 2008/09

Part 4:"Packet Delay

93 22 August 2008 NUS CS5229 Semester 1 2008/09

OTT is not well approximated using RTT/2

94 22 August 2008 NUS CS5229 Semester 1 2008/09

ACK Compression

95 22 August 2008 NUS CS5229 Semester 1 2008/09

(might affect TCP self-clocking)

96 22 August 2008 NUS CS5229 Semester 1 2008/09

sent

recv

97 22 August 2008 NUS CS5229 Semester 1 2008/09

Sending interval

Receiving interval

98 22 August 2008 NUS CS5229 Semester 1 2008/09

99 22 August 2008 NUS CS5229 Semester 1 2008/09

100 22 August 2008 NUS CS5229 Semester 1 2008/09

Compression event if ξ < .75

101 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 60% N1 N2

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

102 22 August 2008 NUS CS5229 Semester 1 2008/09

50% 60% N1 N2

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

103 22 August 2008 NUS CS5229 Semester 1 2008/09

2 Average number of events per connection.

104 22 August 2008 NUS CS5229 Semester 1 2008/09

Estimating Available

Bandwidth

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

106 22 August 2008 NUS CS5229 Semester 1 2008/09

time packet i is sent

107 22 August 2008 NUS CS5229 Semester 1 2008/09

108 22 August 2008 NUS CS5229 Semester 1 2008/09

β = 1 means all bandwidth is available."

β = 0 means none of the bandwidth is available.

109 22 August 2008 NUS CS5229 Semester 1 2008/09

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

110 22 August 2008 NUS CS5229 Semester 1 2008/09

Conclusion

111 22 August 2008 NUS CS5229 Semester 1 2008/09

The numbers in the paper are not important. "

(the Internet has changed)

112 22 August 2008 NUS CS5229 Semester 1 2008/09

Measurement is difficult but useful

113 22 August 2008 NUS CS5229 Semester 1 2008/09

Many new techniques needed (e.g to

measure bottleneck bandwidth)

114 22 August 2008 NUS CS5229 Semester 1 2008/09

We can improve current design (e.g.

TCP if we know more about reordering)

115 22 August 2008 NUS CS5229 Semester 1 2008/09

We can identify problem (e.g. packet

corruption)

116 22 August 2008 NUS CS5229 Semester 1 2008/09

We can better model the behavior (e.g.

bursty packet loss)

117 22 August 2008 NUS CS5229 Semester 1 2008/09

We can infer much info from just a

packet trace (e.g. available bandwidth)