cs5229 lecture 9: simulating the internet

90
1 Methodologies for Networking Research 17 October 2008 CS5229, Semester 1, 2008/09

Upload: wei-tsang-ooi

Post on 15-Jun-2015

423 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: CS5229 Lecture 9: Simulating the Internet

1

Methodologies for Networking Research

17 October 2008 CS5229, Semester 1, 2008/09

Page 2: CS5229 Lecture 9: Simulating the Internet

2

Measurement"V. Paxson. "End-to-end Internet packet dynamics,”"

J. Padhye, V. Firoiu, D. Towesley, and J. Kurose "Modeling TCP Throughput: A Simple Model and its Empirical Validation,”

17 October 2008 CS5229, Semester 1, 2008/09

Page 3: CS5229 Lecture 9: Simulating the Internet

3

“Reality Check” Are our assumptions reasonable? Is our mathematical model a good estimation of the real world?

17 October 2008 CS5229, Semester 1, 2008/09

Page 4: CS5229 Lecture 9: Simulating the Internet

4

e.g., from Paxson’s study"

1. packet losses are busrty"2. OTT != RTT/2

17 October 2008 CS5229, Semester 1, 2008/09

Page 5: CS5229 Lecture 9: Simulating the Internet

5 17 October 2008 CS5229, Semester 1, 2008/09

Page 6: CS5229 Lecture 9: Simulating the Internet

6 17 October 2008 CS5229, Semester 1, 2008/09

Page 7: CS5229 Lecture 9: Simulating the Internet

7

Experimentation"e.g., V. Jacobson. “Congestion Control and Avoidance"

17 October 2008 CS5229, Semester 1, 2008/09

Page 8: CS5229 Lecture 9: Simulating the Internet

8

Deal with implementation issues Sometimes unforeseen complexities (e.g. own research experience in Unreliable TCP)

17 October 2008 CS5229, Semester 1, 2008/09

Page 9: CS5229 Lecture 9: Simulating the Internet

9

Understand the Behavior of Systems

Some systems are too complex to understand with “thought experiments” alone.

17 October 2008 CS5229, Semester 1, 2008/09

Page 10: CS5229 Lecture 9: Simulating the Internet

10 17 October 2008 CS5229, Semester 1, 2008/09

Page 11: CS5229 Lecture 9: Simulating the Internet

11 17 October 2008 CS5229, Semester 1, 2008/09

Page 12: CS5229 Lecture 9: Simulating the Internet

12

Analysis"

D. Chiu and R. Jain, "Analysis of the increase and decrease algorithms for congestion avoidance in computer networks,”"

J. Padhye, V. Firoiu, D. Towesley, and J. Kurose "Modeling TCP Throughput: A Simple Model and its Empirical Validation,”

17 October 2008 CS5229, Semester 1, 2008/09

Page 13: CS5229 Lecture 9: Simulating the Internet

13

Explore with Complete Control We can understand the basic forces that affect the system. e.g. TCP throughput is inversely propotional to √p

17 October 2008 CS5229, Semester 1, 2008/09

Page 14: CS5229 Lecture 9: Simulating the Internet

14

Simplify complex systems"

If too simplified, important behavior could be missed (TCP throughput without timeout)

17 October 2008 CS5229, Semester 1, 2008/09

Page 15: CS5229 Lecture 9: Simulating the Internet

15

Simulation"K. Fall and S. Floyd, "Simulation-based comparison of Tahoe, Reno, and SACK TCP,""

S. Floyd, K. Fall, "Promoting the Use of End-to-End Congestion Control in the Internet,”"

S. Floyd, V. Jacobson, "Random Early Detection Gateways for Congestion Avoidance,"

17 October 2008 CS5229, Semester 1, 2008/09

Page 16: CS5229 Lecture 9: Simulating the Internet

16

Check Correctness of Analysis"

If simulation uses the same assumptions/model as the analysis, this simply verifies the correctness of the mathematical derivations.

17 October 2008 CS5229, Semester 1, 2008/09

Page 17: CS5229 Lecture 9: Simulating the Internet

17

Check Correctness of Analysis"

Simulation can relax some assumptions, use more complex models, etc. to test the limits of analysis.

(Real measurement/experiments still needed to check the usefulness of analysis results)

17 October 2008 CS5229, Semester 1, 2008/09

Page 18: CS5229 Lecture 9: Simulating the Internet

18

Explore Complex Systems"

Some systems are too difficult/impossible to analyzed e.g. Internet

17 October 2008 CS5229, Semester 1, 2008/09

Page 19: CS5229 Lecture 9: Simulating the Internet

19

Helps Develop Intuition"

17 October 2008 CS5229, Semester 1, 2008/09

Page 20: CS5229 Lecture 9: Simulating the Internet

20

Measurement"Experimentation"

Analysis"Simulation"

}

}

Real World

Abstract Model

17 October 2008 CS5229, Semester 1, 2008/09

Page 21: CS5229 Lecture 9: Simulating the Internet

“Difficulties in Simulating the Internet” "

Sally Floyd, Van Paxson"ACM/IEEE TON, 9(4) August 2001

Page 22: CS5229 Lecture 9: Simulating the Internet

22

Why is Internet hard to simulate?

17 October 2008 CS5229, Semester 1, 2008/09

Page 23: CS5229 Lecture 9: Simulating the Internet

23

1.!Internet is diverse

17 October 2008 CS5229, Semester 1, 2008/09

Page 24: CS5229 Lecture 9: Simulating the Internet

24

End-hosts: phones, desktops, servers, iPod, Wii

17 October 2008 CS5229, Semester 1, 2008/09

Page 25: CS5229 Lecture 9: Simulating the Internet

25

Links: Ethernet, WiFi, Satellite, Dial-up, 3G

17 October 2008 CS5229, Semester 1, 2008/09

Page 26: CS5229 Lecture 9: Simulating the Internet

26

Transport: TCP variants, UDP, DCCP

17 October 2008 CS5229, Semester 1, 2008/09

Page 27: CS5229 Lecture 9: Simulating the Internet

27

Applications: games, videos, web, ftp, bittorrent

17 October 2008 CS5229, Semester 1, 2008/09

Page 28: CS5229 Lecture 9: Simulating the Internet

28

2.!Internet is huge

17 October 2008 CS5229, Semester 1, 2008/09

Page 29: CS5229 Lecture 9: Simulating the Internet

29

570,937,778Number of Hosts as of July 2008

http://www.isc.org/index.pl?/ops/ds/host-count-history.php

17 October 2008 CS5229, Semester 1, 2008/09

Page 30: CS5229 Lecture 9: Simulating the Internet

30

3.!Internet is changing

17 October 2008 CS5229, Semester 1, 2008/09

Page 31: CS5229 Lecture 9: Simulating the Internet

31

http://www.isc.org/ds/ 17 October 2008 CS5229, Semester 1, 2008/09

Page 32: CS5229 Lecture 9: Simulating the Internet

32 http://www.dtc.umn.edu/mints/ 17 October 2008 CS5229, Semester 1, 2008/09

Page 33: CS5229 Lecture 9: Simulating the Internet

Time Median File Transfer

Size

March 1998 10.9 kB

December 1998 5.6 kB

December 1999 10.9 kB

June 2000 62 kB

November 2000 10 kB

Measurement at LBNL: Statistical property of Internet changes as well.

Page 34: CS5229 Lecture 9: Simulating the Internet

34

Why is Internet hard to simulate?"

1. Heterogeneous "2. Huge "3. Changing

17 October 2008 CS5229, Semester 1, 2008/09

Page 35: CS5229 Lecture 9: Simulating the Internet

35

Suppose you come up with the greatest BitTorrent improvement ever..

17 October 2008 CS5229, Semester 1, 2008/09

Page 36: CS5229 Lecture 9: Simulating the Internet

36

You want to simulate it to make sure it works before you release it (and call the press)

17 October 2008 CS5229, Semester 1, 2008/09

Page 37: CS5229 Lecture 9: Simulating the Internet

37

What Internet topology should you use in your simulation?

How end hosts are connected? What are the properties of the links?

17 October 2008 CS5229, Semester 1, 2008/09

Page 38: CS5229 Lecture 9: Simulating the Internet

38

Topology changes constantly"

Companies keep info secrets"

Routes may change"

Routes may be asymmetric

17 October 2008 CS5229, Semester 1, 2008/09

Page 39: CS5229 Lecture 9: Simulating the Internet

39

You will need to simulate over a wide range of connectivity and link properties

17 October 2008 CS5229, Semester 1, 2008/09

Page 40: CS5229 Lecture 9: Simulating the Internet

40

Suppose you come up with the greatest TCP optimization ever..

17 October 2008 CS5229, Semester 1, 2008/09

Page 41: CS5229 Lecture 9: Simulating the Internet

41

You want to know if it is fair to existing TCP versions before you write your SIGCOMM paper..

17 October 2008 CS5229, Semester 1, 2008/09

Page 42: CS5229 Lecture 9: Simulating the Internet

42

Which TCP version to use?

17 October 2008 CS5229, Semester 1, 2008/09

Page 43: CS5229 Lecture 9: Simulating the Internet

43

Using “fingerprinting”, 831 different TCP implementations and versions are identified.

17 October 2008 CS5229, Semester 1, 2008/09

Page 44: CS5229 Lecture 9: Simulating the Internet

44

Which to use? Which to ignore?

17 October 2008 CS5229, Semester 1, 2008/09

Page 45: CS5229 Lecture 9: Simulating the Internet

45

What applications to run? What type of traffic to generate?"

Telnet? FTP? Web? BitTorrent? Skype?

17 October 2008 CS5229, Semester 1, 2008/09

Page 46: CS5229 Lecture 9: Simulating the Internet

46

How congested should the network be?

17 October 2008 CS5229, Semester 1, 2008/09

Page 47: CS5229 Lecture 9: Simulating the Internet

47

How congested should the network be?

17 October 2008 CS5229, Semester 1, 2008/09

Page 48: CS5229 Lecture 9: Simulating the Internet

48

Example from Sally Floyd: RED vs DropTail

17 October 2008 CS5229, Semester 1, 2008/09

Page 49: CS5229 Lecture 9: Simulating the Internet

49 17 October 2008 CS5229, Semester 1, 2008/09

Page 50: CS5229 Lecture 9: Simulating the Internet

50 17 October 2008 CS5229, Semester 1, 2008/09

Page 51: CS5229 Lecture 9: Simulating the Internet

51

Example from Sally Floyd: Using TFRC for VoIP

17 October 2008 CS5229, Semester 1, 2008/09

Page 52: CS5229 Lecture 9: Simulating the Internet

52 17 October 2008 CS5229, Semester 1, 2008/09

Page 53: CS5229 Lecture 9: Simulating the Internet

53 17 October 2008 CS5229, Semester 1, 2008/09

Page 54: CS5229 Lecture 9: Simulating the Internet

54

We can focus our simulation on dominant technology/application today..

17 October 2008 CS5229, Semester 1, 2008/09

Page 55: CS5229 Lecture 9: Simulating the Internet

55

TCP: NewReno SACKS"OS: Windows Linux"Applications: Web, FTP

17 October 2008 CS5229, Semester 1, 2008/09

Page 56: CS5229 Lecture 9: Simulating the Internet

56

What about tomorrow?

17 October 2008 CS5229, Semester 1, 2008/09

Page 57: CS5229 Lecture 9: Simulating the Internet

57

WiMax? "Sensors? "Virtual World?"DCCP?

17 October 2008 CS5229, Semester 1, 2008/09

Page 58: CS5229 Lecture 9: Simulating the Internet

58

10 years ago, you came up with a router mechanism to improve TCP Reno.. "

No one cares today. 17 October 2008 CS5229, Semester 1, 2008/09

Page 59: CS5229 Lecture 9: Simulating the Internet

59

How to verify the simulator itself?

17 October 2008 CS5229, Semester 1, 2008/09

Page 60: CS5229 Lecture 9: Simulating the Internet

60

So, how?

17 October 2008 CS5229, Semester 1, 2008/09

Page 61: CS5229 Lecture 9: Simulating the Internet

61

Looking for Invariants

17 October 2008 CS5229, Semester 1, 2008/09

Page 62: CS5229 Lecture 9: Simulating the Internet

62

1. Diurnal Patterns

17 October 2008 CS5229, Semester 1, 2008/09

Page 63: CS5229 Lecture 9: Simulating the Internet

63 17 October 2008 CS5229, Semester 1, 2008/09

Page 64: CS5229 Lecture 9: Simulating the Internet

64

hour #constrained�---- ------------� 00 139 2.5% -----------------------------------------------------X� 01 144 2.6% ------------------------------------------------------X� 02 146 2.6% -------------------------------------------------------X� 03 140 2.5% -----------------------------------------------------X� 04 119 2.1% ---------------------------------------------X� 05 89 1.6% ----------------------------------X� 06 69 1.2% --------------------------X� 07 55 1.0% ---------------------X� 08 45 0.8% -----------------X� 09 40 0.7% ---------------X� 10 40 0.7% ---------------X� 11 42 0.8% ----------------X� 12 51 0.9% -------------------X� 13 57 1.0% ---------------------X� 14 68 1.2% --------------------------X� 15 75 1.3% ----------------------------X� 16 77 1.4% -----------------------------X� 17 92 1.6% -----------------------------------X� 18 98 1.8% -------------------------------------X� 19 105 1.9% ----------------------------------------X� 20 108 1.9% -----------------------------------------X� 21 113 2.0% -------------------------------------------X� 22 124 2.2% -----------------------------------------------X� 23 134 2.4% ---------------------------------------------------X

U Waterloo Data 24 Oct 2007 17 October 2008 CS5229, Semester 1, 2008/09

Page 65: CS5229 Lecture 9: Simulating the Internet

65

2. Self-Similar Traffic

17 October 2008 CS5229, Semester 1, 2008/09

Page 66: CS5229 Lecture 9: Simulating the Internet

66

The traffic is bursty regardless of time scale

17 October 2008 CS5229, Semester 1, 2008/09

Page 67: CS5229 Lecture 9: Simulating the Internet

67

Wikipedia

17 October 2008 CS5229, Semester 1, 2008/09

Page 68: CS5229 Lecture 9: Simulating the Internet

68

3. Poisson Session Arrival

17 October 2008 CS5229, Semester 1, 2008/09

Page 69: CS5229 Lecture 9: Simulating the Internet

69

Remote logins, starting FTP, beginning of web

surfing etc.

17 October 2008 CS5229, Semester 1, 2008/09

Page 70: CS5229 Lecture 9: Simulating the Internet

70

(so are dead light bulbs, spelling mistakes, etc.)

17 October 2008 CS5229, Semester 1, 2008/09

Page 71: CS5229 Lecture 9: Simulating the Internet

71

4. Log-normal Duration

17 October 2008 CS5229, Semester 1, 2008/09

Page 72: CS5229 Lecture 9: Simulating the Internet

72

5. Heavy Tail Distributions

17 October 2008 CS5229, Semester 1, 2008/09

Page 73: CS5229 Lecture 9: Simulating the Internet

73

Self-Similarity in World Wide Web Traffic: Evidence and Possible Causes, by Mark E. Crovella and Azer Bestavros

17 October 2008 CS5229, Semester 1, 2008/09

Page 74: CS5229 Lecture 9: Simulating the Internet

74

1. Looking for Invariants

17 October 2008 CS5229, Semester 1, 2008/09

Page 75: CS5229 Lecture 9: Simulating the Internet

75

2. Explore Parameter Space

17 October 2008 CS5229, Semester 1, 2008/09

Page 76: CS5229 Lecture 9: Simulating the Internet

76

Change one parameter,"fix the rest

17 October 2008 CS5229, Semester 1, 2008/09

Page 77: CS5229 Lecture 9: Simulating the Internet

77

Explore a wide range of values

17 October 2008 CS5229, Semester 1, 2008/09

Page 78: CS5229 Lecture 9: Simulating the Internet

78

3. Use Traces

17 October 2008 CS5229, Semester 1, 2008/09

Page 79: CS5229 Lecture 9: Simulating the Internet

79

e.g. collects traces of web sessions, video files, VoIP traffic

17 October 2008 CS5229, Semester 1, 2008/09

Page 80: CS5229 Lecture 9: Simulating the Internet

80

Use it to simulate the traffic source

17 October 2008 CS5229, Semester 1, 2008/09

Page 81: CS5229 Lecture 9: Simulating the Internet

81

But must be careful about traffic shaping and user/application

adaptation.

17 October 2008 CS5229, Semester 1, 2008/09

Page 82: CS5229 Lecture 9: Simulating the Internet

82

e.g. traces collected during non-congested time should not be use to

simulate congested networks.

17 October 2008 CS5229, Semester 1, 2008/09

Page 83: CS5229 Lecture 9: Simulating the Internet

83

4. publish simulator script for others to verify

17 October 2008 CS5229, Semester 1, 2008/09

Page 84: CS5229 Lecture 9: Simulating the Internet

84

Conclusion

17 October 2008 CS5229, Semester 1, 2008/09

Page 85: CS5229 Lecture 9: Simulating the Internet

85

Simulation is useful but needs to do it properly

17 October 2008 CS5229, Semester 1, 2008/09

Page 86: CS5229 Lecture 9: Simulating the Internet

86

Be careful about your simulation model: you want it to be as simple

as possible, but not simpler.

17 October 2008 CS5229, Semester 1, 2008/09

Page 87: CS5229 Lecture 9: Simulating the Internet

87

Be careful about your conclusion: “A is 13.5% better than B” is

probably useless.

17 October 2008 CS5229, Semester 1, 2008/09

Page 88: CS5229 Lecture 9: Simulating the Internet

88

“A is 13.5% better than B under these environment”"

is better but not general

17 October 2008 CS5229, Semester 1, 2008/09

Page 89: CS5229 Lecture 9: Simulating the Internet

89

Not really for quantitative results, but more for

17 October 2008 CS5229, Semester 1, 2008/09

Page 90: CS5229 Lecture 9: Simulating the Internet

90

understanding the dynamics,"illustrate a point,"explore unexpected behavior.

17 October 2008 CS5229, Semester 1, 2008/09