1 If the Internet is the answer, then what was the question? EE122 Fall 2012 Scott Shenker Materials with thanks.

Similar presentations

Presentation on theme: "1 If the Internet is the answer, then what was the question? EE122 Fall 2012 Scott Shenker Materials with thanks."— Presentation transcript:

1
1 If the Internet is the answer, then what was the question? EE122 Fall 2012 Scott Shenker Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues at Princeton and UC Berkeley

6
Telephone was an app, not a network! The big technological breakthrough was to turn voice into electrical signals and vice versa. –Great achievement –One of the nastiest patent battles in history The demonstration of this new device involved two phones connected by a single dedicated wire. 6

7
What about the phone “network”? You can’t have a dedicated wire between every two telephones –Doesn’t scale –Most wires will go unused…. You need a “shared network” of wires –Much like the highway is shared by cars going to different destinations The telephone network grew into the first large- scale electronic network 7

21
21 Time-Division Multiplexing/Demultiplexing Time divided into frames; frames into slots Relative slot position inside a frame determines to which conversation data belongs –E.g., slot 0 belongs to orange conversation Requires synchronization between sender and receiver Need to dynamically bind a slot to a conversation If a conversation does not use its circuit capacity is lost! Frames Slots =

22
Strengths of phone system Predictable performance –Known delays –No drops Easy to control –Centralized management of how calls are routed Easy to reason about Supports a crucial service What about weaknesses? 22

23
Weakness #1: Not resilient to failure Any failure along the path prevents transmission Entire transmission has to be restarted –“All or nothing” delivery model 23

25
Weakness #2: Wastes bandwidth Consider a network application with: –Peak bandwidth P –Average bandwidth A How much does the network have to reserve for the application to work? –The peak bandwidth What is the resulting level of utilization? –Ratio of A/P 25

26
Smooth vs Bursty Applications Some applications have relatively small P/A ratios –Voice might have a ratio of 3:1 or so Data applications tend to be rather bursty –Ratios of 100 or greater are common Circuit switching too inefficient for bursty apps Generally: –Don’t care about factors of two in performance –But when it gets to several orders of magnitude…. 26

27
Statistical Multiplexing Will delve into this in more detail later But this is what drives the use of a shared network And it is how we could avoid wasting bandwidth 27

28
Weakness #3: Designed Tied to App Design revolves around the requirements of voice Not general feature of circuit switching –But definitely part of the telephone network design –Switches are where functionality was implemented 28

29
Weakness #4: Setup Time Every connection requires round-trip time to set up –Slows down short transfers In actuality, may not be a big issue –TCP requires round-trip time for handshake –No one seems to mind…. This was a big issue in the ATM vs IP battle –But I think it is overemphasized as a key factor 29

30
How to overcome these weaknesses? There were two independent threads that led to a different networking paradigm…. 30

31
What if we wanted a resilient network? How would we design it? This is the question Paul Baran asked…. 31

33
What about a less wasteful network? How would we design it? This is the question Len Kleinrock asked….. –Analyzed packet switching and statistical multiplexing 33

34
Returning to title of lecture If the Internet is the answer, then what was the question? There were two questions: –How can we build a more reliable network? –How can we build a more efficient network? Before considering nature of Internet, let’s consider the broader design space for networks –Term “network” already implies we are sharing a communications infrastructure (i.e. not dedicated links) 34

35
Taxonomy of Networks

36
36 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network

37
37 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network Broadcast Communication Network

38
38 Information transmitted by any node is received by every other node in the network –Usually only in LANs (Local Area Networks)  E.g., WiFi, Ethernet (classical, but not current)  E.g., lecture! What problems does this raise? Problem #1: limited range Problem #2: coordinating access to the shared communication medium –Multiple Access Problem Problem #3: privacy of communication Broadcast Communication Networks

39
39 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network Switched Communication Network Broadcast Communication Network

40
40 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network Switched Communication Network Broadcast Communication Network The term “switched” means that communication is directed to specific destinations The question is how that “switching” is done

41
41 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network Switched Communication Network Broadcast Communication Network Circuit-Switched Communication Network

43
43 Packet Switching Data sent as chunks of formatted bit-sequences (Packets) Packets have following structure:  Header and Trailer carry control information (e.g., destination address, checksum) Each packet traverses the network from node to node along some path (Routing) based on header info. Usually, once a node receives the entire packet, it stores it (hopefully briefly) and then forwards it to the next node (Store-and-Forward Networks) Header Data Trailer (sometimes)

47
47 Datagram Packet Switching Each packet is independently switched –Each packet header contains full destination address –Routers/switches make independent routing decisions No resources are pre-allocated (reserved) in advance Leverages “statistical multiplexing” –Gambling that packets from different conversations won’t all arrive at the same time, so we don’t need enough capacity for all of them at their peak transmission rate –Assuming independence of traffic sources, can compute probability that there is enough capacity

51
51 Communication networks can be classified based on the way in which the nodes exchange information: Taxonomy of Communication Networks Communication Network Switched Communication Network Broadcast Communication Network Circuit-Switched Communication Network Packet-Switched Communication Network Datagram Network Virtual Circuit Network A hybrid of circuits and packets; headers include a “circuit identifier” established during a setup phase

55
Properties of Links Latency (delay) –Propagation time for data sent along the link –Corresponds to the “length” of the link Bandwidth (capacity) –Amount of data sent (or received) per unit time –Corresponds to the “width” of the link Bandwidth-delay product: (BDP) –Amount of data that can be “in flight” at any time –Propagation delay × bits/time = total bits in link 55 bandwidth latency delay x bandwidth

61
The Delays of Their Lives 61 Queueing Delay Transmission Delay Propagation Delay is how long it takes to reach the next switch after transmission Round-Trip Time (RTT) is the time it takes a packet to reach the destination and the response to return to the sender

68
Queueing Delay Does not happen if packets are evenly spaced –And arrival rate is less than service rate 68

69
Smooth Arrivals = No Queueing Delays 69

70
Queueing Delay Does not happen if packets are evenly spaced –And arrival rate is less than service rate Queueing delay caused by “packet interference” –Burstiness of arrival schedule –Variations in packet lengths 70

72
Queueing Delay Review Does not happen if packets are evenly spaced –And arrival rate is less than service rate Queueing delay caused by “packet interference” –Burstiness of arrival schedule –Variations in packet lengths Made worse at high load –Less “idle time” to absorb bursts –Think about traffic jams in rush hour…. 72

73
Jitter Difference between minimum and maximal delay Latency plays no role in jitter –Nor does transmission delay for same sized packets Jitter typically just differences in queueing delay Why might an application care about jitter? 73

74
Packet Losses: Buffers Full 74

75
Packet Losses: Corruption 75

76
Basic Queueing Theory Terminology Arrival process: how packets arrive –Average rate A –Peak rate P Service process: transmission times –Average transmission time –For networks, function of packet size W: average time packets wait in the queue –W for “waiting time” L: average number of packets waiting in the queue –L for “length of queue” Two different quantities 76

77
Little’s Law (1961) L = A x W Compute L: count packets in queue every second –How often does a single packet get counted? W times Could compute L differently –On average, every packet will be counted W times –The average arrival rate determines how frequently this total queue occupancy should be added to the total Why do you care? –Easy to compute L, harder to compute W 77

81
When Flows Share Total Capacity Time No Overloading Statistical multiplexing relies on the assumption that not all flows burst at the same time. Very similar to insurance, and has same failure case

82
Classroom Demonstration of Stat Mux

83
I need 8 volunteers! One group of 4: –Each generates either 0, 1, or 2 packets per cycle –But your link only handles 1 packet per cycle –How much of your link do you use (on average)? Other group of 4: –Each generates either 0, 1, or 2 packets per cycle –You share your links, so you can handle 4 packets/cycle –How much of your combined link do you use (average)? Which team will win? 83

84
Assume time divided into frames –Frames divided into slots Flows generate packets during each frame –Peak number of packets/frame P –Average number of packets/frame A Single flow: must allocate P slots to avoid drops –But P might be much bigger than A –Very wasteful! Use the “Law of Large Numbers”…. Another Take on “Stat Mux” 84 Frame Slots

85
Law of Large Numbers (~1713) Consider any probability distribution –Can be highly variable, such as varying from 0 to P Take N samples from probability distribution –In this case, one set of packets from each flow Thm: the sum of the samples is very close to N×A –And gets percentage-wise closer as N increases Sharing between many flows (high aggregation), means that you only need to allocate slightly more than average A slots per frame. –Sharing smooths out variations 85