Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction
What’s the Internet: a service view Communication infrastructure enables distributed applications Web, VoIP, email, games, e-commerce, social nets, … Communication services provides programming interface to apps hooks that allow sending and receiving app programs to “connect” to Internet provides service options, analogous to postal service mobile network global ISP regional ISP home network institutional Introduction
What’s the Internet: “nuts and bolts” view smartphone PC server wireless laptop hosts or end systems: billions of connected computing devices running network apps mobile network global ISP regional ISP home network institutional communication links: fiber, copper, radio, satellite transmission rate: bandwidth wired links wireless routers & switches: forward packets (chunks of data) router Introduction 3
What’s a protocol? protocols define TCP connection request protocols define format, order of messages sent and received among network entities, and actions taken on message transmission, receipt TCP connection response <file> Get http://www.awl.com/kurose-ross Introduction
What’s the Internet: “nuts and bolts” view mobile network global ISP regional ISP home network institutional Internet: “network of networks” Interconnected ISPs Internet standards IETF: Internet Engineering Task Force RFC: Request for comments IEEE for links/hardware Ethernet, 802.11, protocols control sending, receiving of messages e.g., TCP, IP, HTTP, Skype, 802.11 Introduction
Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction 6
A closer look at network structure: network edge: hosts: clients and servers servers often in data centers mobile network global ISP regional ISP home network institutional access networks, physical media: wired, wireless communication links network core: interconnected routers network of networks Introduction
Access networks Q: How to connect end systems to edge router? residential access nets enterprise/institutional access networks school, company, mobile/wireless access networks Introduction
to/from headend or central office Residential access networks wireless devices to/from headend or central office often combined in single box wireless access point (54 Mbps) router, firewall, NAT cable or DSL modem wired Ethernet (1 Gbps) Introduction
Enterprise access networks (Ethernet) institutional link to ISP (Internet) institutional router Ethernet switch institutional mail, web servers typically used in companies, universities, etc. 10 Mbps, 100Mbps, 1Gbps, 10Gbps transmission rates today, end systems typically connect into Ethernet switch Introduction
Mobile/wireless access networks shared wireless access network connects end system to router via base station aka “access point” wide-area wireless access provided by telco (cellular) operator, 10’s km between 1 and 10 Mbps 3G, 4G: LTE wireless LANs: within building (100 ft.) 802.11b/g/n (WiFi): 11, 54, 450 Mbps transmission rate to Internet to Internet Introduction
Host: sends packets of data host sending function: takes application message breaks into smaller chunks, known as packets, of length L bits transmits packet into access network at transmission rate R link transmission rate, aka link capacity, aka link bandwidth two packets, L bits each 2 1 R: link transmission rate host L (bits) R (bits/sec) packet transmission delay time needed to transmit L-bit packet into link = = Introduction
Physical media bit: propagates between transmitter/receiver pairs physical link: what lies between transmitter & receiver guided media: signals propagate in solid media: copper (twisted pair), fiber, coax unguided media: signals propagate freely, e.g., wireless Twisted pair cable Coaxial cable fiber optic cable Introduction
Unguided media radio link types: terrestrial microwave e.g. up to 45 Mbps channels LAN (e.g., WiFi) 54 Mbps wide-area (e.g., cellular) 4G cellular: ~ 10 Mbps satellite Kbps to 45Mbps channel (or multiple smaller channels) 270 msec end-end delay signal carried in electromagnetic spectrum no physical “wire” bidirectional propagation environment effects: reflection obstruction by objects interference Introduction
Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction 15
The network core The fundamental question: how is data transferred through net? circuit-switching: dedicated circuit per call: telephone nets packet-switching: data sent thru net in discrete “chunks” Introduction
Network core: packet-switching 100 Mb/s Ethernet C A 1.5 Mb/s B Packet-switching: Source breaks application-layer message into packets Forward from one router to the next until reaching destination Introduction
Network core: packet-switching 100 Mb/s Ethernet C A 1.5 Mb/s B Packet-switching: no dedication/reservation: all streams share resources no setup is required resources used as needed each packet uses full link bandwidth aggregate resource demand can exceed capacity no guarantee Introduction
Packet Switching: statistical multiplexing R = 100 Mb/s statistical multiplexing D R = 1.5 Mb/s B E queue of packets waiting for output link Sequence of A & B packets does not have fixed pattern, shared on demand statistical multiplexing Introduction
Packet-switching: store-and-forward L bits per packet 3 2 1 source destination R bps R bps takes L/R sec to transmit (push out) L-bit packet into link at R bps store and forward: entire packet must arrive at router before it can be transmitted on next link one-hop numerical example: L = 7.5 Mbits R = 1.5 Mbps one-hop transmission delay = 5 sec end-end delay = 2L/R (assuming zero propagation delay) more on delay shortly … Introduction
Packet Switching: queueing delay, loss R = 100 Mb/s D R = 1.5 Mb/s B E queue of packets waiting for output link queuing and loss: if arrival rate (in bits) to link exceeds transmission rate of link for a period of time, then there will be consequences: delay: packets will queue, wait to be transmitted on link loss: packets can be dropped if memory (buffer) fills up Introduction
Two key network-core functions routing: determines source- destination route taken by packets routing algorithms forwarding: move packets from router’s input to appropriate router output routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 1 1 2 3 0111 destination address in arriving packet’s header Introduction
Alternative core: circuit switching reserved resources: resources divided into ‘pieces’ end-end resources are reserved for each “call” in diagram, each link has four circuits call gets 2nd circuit in top link and 1st circuit in right link. no sharing: dedicated resources: guarantees: circuit-like performance Introduction
Alternative core: circuit switching wasted if not used: circuit segment idle if not used by call (no sharing) overhead: call setup is required admission control same path for all chunks commonly used in traditional telephone networks Introduction
Circuit switching: FDM versus TDM Multiplexing: Combining multiple signals such that individual signals can be retrieved at the destination. Signals occupy the same channel, so the channel must be shared Two ways of dividing bandwidth into “pieces” frequency division time division Two simple multiple access control techniques. Each mobile’s share of the bandwidth is divided into portions for the uplink and the downlink. Also, possibly, out of band signaling. As we will see, used in AMPS, GSM, IS-54/136 Introduction
Circuit switching: FDM versus TDM 4 users Example: Freq. Division Multiplexing (FDM) frequency time Time Division Multiplexing (TDM) frequency time Two simple multiple access control techniques. Each mobile’s share of the bandwidth is divided into portions for the uplink and the downlink. Also, possibly, out of band signaling. As we will see, used in AMPS, GSM, IS-54/136 Introduction
Circuit switching: FDM versus TDM Frequency Division: Divides the channel into multiple, but smaller frequency ranges. (+) Supports more user at one time (+) Low latency, no time turn, preferred for real-time applications, limited (-) But limited in terms of frequency availability Time Division: Allocates certain time periods to each channel in an alternating manner. (+) Much more flexible, can support many users but at different times (-) Slower, have to wait the turn What is the best option? Two simple multiple access control techniques. Each mobile’s share of the bandwidth is divided into portions for the uplink and the downlink. Also, possibly, out of band signaling. As we will see, used in AMPS, GSM, IS-54/136 Introduction
Packet switching versus circuit switching 2 circuits (use TDM) A reserves 1 circuit B reserves 1 circuit 2 Mb/s B Utilization = 50% only = 1 Mb/s B: has no packets to send A B 2 Mb/s Packet switching statistical multiplex. B uses full link since A is not using it Utilization = 100% = 2 Mb/s Introduction
Numerical example Solution: How long does it take to send a file of 640,000 bits from host A to host B over a circuit-switched network? The link’s transmission rate = 0.64 Mbps Each link uses TDM with 10 slots/sec 0.5 sec to establish end-to-end circuit Solution: Bandwidth of circuit (in kbps)= .64x1000/10 = 64 kbps Time to send: 640 kbits/64 kbps + 0.5s = 10.5s Introduction
Packet switching versus circuit switching resources sharing no sharing congestion may lead to needs congestion control admission control overhead less overhead no connection setup more overhead need to reserve resources first guarantee best-effort model no guarantees provides guarantees good for multimedia Introduction
Packet switching versus circuit switching packet switching allows more users to use network! 3 Mb/s link each user: 1 Mb/s when “active” active 1/3 of time circuit-switching: 3 users packet switching: With N=4 users, what are the chances that a user won’t get 1 Mb/s? I.e., what is the prob. that more than 3 (strictly) users are active? With N=5 users, what are the chances that a user won’t get 1 Mb/s? ……. ….. N users 3 Mbps link Introduction
Internet structure: network of networks Question: given millions of access ISPs, how to connect them together? access net … Introduction
Internet structure: network of networks Option: connect each access ISP to every other access ISP? … … access net access net … access net access net access net access net access net connecting each access ISP to each other directly doesn’t scale: O(N2) connections. … … access net access net access net access net access net access net … access net access net … access net Introduction
Internet structure: network of networks Option: connect each access ISP to one global transit ISP? Customer and provider ISPs have economic agreement. access net … global ISP Introduction
Internet structure: network of networks But if one global ISP is viable business, there will be competitors …. … … access net access net access net access net access net access net access net ISP A … … ISP B access net access net ISP C access net access net access net access net … access net access net … access net Introduction
Internet structure: network of networks But if one global ISP is viable business, there will be competitors …. which must be interconnected Internet exchange point … … access net access net access net access net access net IXP access net access net ISP A … … IXP ISP B access net access net ISP C access net peering link access net access net access net … access net access net … access net Introduction
Internet structure: network of networks … and regional networks may arise to connect access nets to ISPs … … access net access net access net access net access net IXP access net access net ISP A … … IXP ISP B access net access net ISP C access net access net access net regional net access net … access net access net … access net Introduction
Internet structure: network of networks … and content provider networks (e.g., Google, Microsoft, Akamai) may run their own network, to bring services, content close to end users … … access net access net access net access net access net IXP access net access net ISP A … … Content provider network IXP ISP B access net access net ISP C access net access net access net regional net access net … access net access net … access net Introduction
Internet structure: network of networks Tier 1 ISP Tier 1 ISP Google IXP IXP IXP Regional ISP Regional ISP access ISP access ISP access ISP access ISP access ISP access ISP access ISP access ISP at center: small # of well-connected large networks “tier-1” commercial ISPs (e.g., Level 3, Sprint, AT&T, NTT), national & international coverage content provider network (e.g., Google): private network that connects it data centers to Internet, often bypassing tier-1, regional ISPs Introduction
Tier-1 ISP: e.g., Sprint Introduction
Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction 41
Four sources of packet delay propagation nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop A B transmission dproc: nodal processing check bit errors determine output link typically < msec dqueue: queueing delay time waiting at output link for transmission depends on congestion level of router Introduction
Four sources of packet delay transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dtrans: transmission delay: L: packet length (bits) R: link bandwidth (bps) dtrans = L/R dprop: propagation delay: d: length of physical link s: propagation speed (~2x108 m/sec) dprop = d/s dtrans and dprop very different * Check out the online interactive exercises for more examples: http://gaia.cs.umass.edu/kurose_ross/interactive/ * Check out the Java applet for an interactive animation on trans vs. prop delay Introduction 43
“Real” Internet delays and routes what do “real” Internet delay & loss look like? traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: sends three packets that will reach router i on path towards destination router i will return packets to sender sender times interval between transmission and reply. 3 probes 3 probes 3 probes Introduction
“Real” Internet delays, routes traceroute: gaia.cs.umass.edu to www.eurecom.fr 3 delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms trans-oceanic link * means no response (probe lost, router not replying) Introduction
Exercise 1 Answer: Question: Packet length = L bits trans. rate R = 1 Mbps Host A Host B distance = 1 km, speed = 2x108m/s Question: Which bit is being transmitted at the time the first bit arrives at Host B Answer: First bit arrives after 1/R + d/s = 1/106 + 103/(2x108) = 10-6 + 5x10-6 = 6x10-6 = 6 µsec After 6 µsec 6 bits are already transmitted; so 7th bit is being transmitted Introduction
Exercise 2 Answer: Question: Transmission vs. propagation L=100Bytes trans. rate R = ? Host A Host B distance = 2 km, speed = 2x108m/s Question: At what rate (bandwidth) R would the propagation delay equal the transmission delay of packet? Answer: Propagation delay = 2x103 (m)/2x108 (m/s) = 10-5 sec Transmission delay = 100x8 (bits)/R Prop. delay = trans. delay => R=105x100x8 = 80 Mbps Introduction
Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction 50
is there any hope of organizing structure of network? Protocol “layers” Networks are complex, with many “pieces”: hosts routers links of various media applications protocols hardware, software Question: is there any hope of organizing structure of network? Introduction
Internet protocol stack application: supporting network applications FTP, SMTP, HTTP transport: process-process data transfer TCP, UDP network: routing of datagrams from source to destination IP, routing protocols link: data transfer between neighboring network elements Ethernet, 802.11 (WiFi), PPP physical: bits “on the wire” application transport network link physical Introduction
Encapsulation source destination application transport network link message M application transport network link physical segment Ht M Ht datagram Ht Hn M Hn frame Ht Hn Hl M link physical switch destination network link physical Ht Hn Hl M Ht Hn Hl M application transport network link physical Ht Hn M router Introduction
ISO/OSI Model application application transport presentation network link physical presentation session transport network data link physical 5-layer Internet Protocol Stack 7-layer ISO/OSI model (OSI: open system interconnections) Introduction 54
Chapter 1: roadmap 1.1 what is the Internet? 1.2 network edge end systems, access networks, links 1.3 network core packet switching, circuit switching, network structure 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models 1.6 end-to-end throughput analysis Introduction 55
Nodal delay: four delay components dproc = processing delay typically a few microsecs or less dqueue = queuing delay depends on congestion dtrans = transmission delay = L/R, significant for low-speed links dprop = propagation delay a few microsecs to hundreds of msecs Introduction 56
How does packet loss occur? queue (aka buffer) preceding link has finite capacity packets may arrive at rate exceeding output link capacity packets are queued in router buffers packet arriving to full queue are dropped (aka lost) lost packet may be retransmitted by previous node, by source end system, or not at all buffer (waiting area) packet being transmitted A B packet arriving to full buffer is lost * Check out the Java applet for an interactive animation on queuing and loss Introduction
Queueing delay (more insights) Packet arrival rate = a packets/sec Link bandwidth = R bits/sec Packet length = L bits Every second: aL bits arrive to queue Every second: R bits leave the router Question: what happens if aL > R ? Answer: queue will fill up, and packets will get dropped!! aL/R is called traffic intensity Introduction
Queueing delay (more insights) Link bandwidth = R bits/sec queue 1 packet arrives every L/R seconds Packet length L bits Arrival rate: a = 1/(L/R) = R/L (packet/second) Traffic intensity = aL/R = (R/L) (L/R) = 1 Average queueing delay = 0 (queue is initially empty) Introduction
Queueing delay (more insights) Packet arrival rate = a packets/sec Link bandwidth = R bits/sec Packet length = L bits La/R 1 La/R ~ 0 La/R ~ 0: avg. queueing delay small La/R -> 1: delays become large La/R > 1: more “work” than can be serviced, average delay infinite! (this is when a is random!) Introduction
Store-and-forward (revisited) L R R R Entire packet must arrive at router before it can be transmitted on next link: store and forward Takes L/R seconds to transmit (push out) packet of L bits on to link of R bps delay = 3L/R (assuming zero propagation delay) more on this next… Introduction
Store-and-forward (more insights) distance = d meters; speed of propagation = s m/sec transmission rate of link = R bits/s R L d/2 R L d delay (one packet only) = L/R + d/s delay (one packet only) = L/R + ½d/s + L/R + ½d/s = 2L/R + d/s Example: d/s = 0.5 sec L = 10 Mbits R = 1 Mbps delay = 10.5 sec Example: d/s = 0.5 sec L = 10 Mbits R = 1 Mbps delay = 20.5 sec Introduction
Store-and-forward (more insights) distance = d meters; speed of propagation = s m/sec transmission rate of link = R1 and R2 bits/s Consider sending two packets A and B back to back d/2 d/2 R1 R2 L Case 2: Assume R1 > R2 Case 1: Assume R1 < R2 Q: is there a queuing delay? how much is this delay? Answer (queue is empty initially): Time for last bit of 2nd pkt to arrive at router: t1= L/R1 + L/R1 + d/(2s) Time for last bit of 1st pkt to leave router: t2= L/R1 + d/(2s) + L/R2 Queueing delay = t2 – t1 = L/R2 – L/R1 if positive, otherwise 0. Hence: when R1 < R2, queueing delay = t2 – t1 = 0 when R1 > R2, queueing delay = t2 – t1 = L/R2 – L/R1 Introduction
Throughput throughput: rate (bits/time unit) at which bits transferred between sender/receiver instantaneous: rate at given point in time average: rate over longer period of time server, with file of F bits to send to client link capacity Rs bits/sec server sends bits (fluid) into pipe pipe that can carry fluid at rate Rs bits/sec) Rc bits/sec) link capacity Rc bits/sec Introduction
Throughput (more) Rs < Rc What is average end-end throughput? Rc bits/sec Rs bits/sec Rs > Rc What is average end-end throughput? Rs bits/sec Rc bits/sec Bottleneck link on end-end path is what constrains end-end throughput bottleneck link Introduction
Throughput: Internet scenario per-connection end-end throughput: min(Rc,Rs,R/10) in practice: Rc or Rs is often bottleneck Rs Rs Rs R Rc Rc Rc 10 connections (fairly) share backbone bottleneck link R bits/sec * Check out the online interactive exercises for more examples: http://gaia.cs.umass.edu/kurose_ross/interactive/ Introduction
Throughput analysis Question 1: how long it takes to send the file? Host A Host B R R R Suppose: Host A has huge file of size F bits to send to Host B File is split into N packets, each of length L bits (i.e., N=F/L) Ignore propagation delay for now Question 1: how long it takes to send the file? A: (N+2)L/R = (F+2L)/R Question 2: what is the average end-to-end throughput achieved when sending the file? A: NL/[(N+2)L/R]=NR/(N+2) = FR/(F+2L) = R/(1+2L/F) Introduction
Introduction: summary Covered a “ton” of material! Internet overview Network protocol Network edge, core, access network Packet-switching versus circuit-switching Internet/ISP structure layering and service models performance: delay and throughput analysis Introduction