Welcome to CS 3516: Advanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2016 A-term 1 Some slides are originally from the course materials of the textbook Computer Networking: A Top Down Approach, 6th edition, by Jim Kurose, Keith Ross, Addison-Wesley March 2012. Copyright 1996-2013 J.F Kurose and K.W. Ross, All Rights Reserved.
Review and Motivations: Packet Switching Pros: Easy to implement, Better resource sharing Cons: loss, delay, traffic congestion. Questions: How to quantify the network performance? Introduction 1-2
Chapter 1: roadmap 1.4 network performance in packet-switched networks delay loss throughput 1.5 protocol layers, service models Introduction 1-3
How do loss and delay occur? packets queue in router buffers v packet arrival rate to link (temporarily) exceeds output link capacity v packets queue, wait for turn packet being transmitted (delay) A B packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers When a packet can be transmitted on a link? (p.36 on textbook) v 1) no other pkt transmitted on the link (in practice) v 2) no other pkt preceding it in the queue Introduction 1-4
Source: Slides of Prof Ivan Marsic with Rutgers University Propagation constant β Ratio of propagation delay vs. packet transmission time Wireless LAN 0.00004. Ethernet: 0.01
Four sources of packet delay A transmission propagation B nodal processing queueing d nodal = d proc + d queue + d trans + d prop d proc : nodal processing check bit errors determine output link typically < micro-sec d queue : queueing delay time waiting at output link for transmission depends on congestion level of router micro-sec to milli-sec Introduction 1-6
Four sources of packet delay A transmission propagation B nodal processing queueing d nodal = d proc + d queue + d trans + d prop d trans : transmission delay: L: packet length (bits) R: link bandwidth (bps) d trans = L/R d trans and d prop micro-sec~milli-sec very different d prop : propagation delay: d: length of physical link s: propagation speed in medium (~2x10 8 m/sec) d prop = d/s milli-sec * Check out the Java applet for an interactive animation on trans vs. prop delay Introduction 1-7
Caravan analogy (trans. & propagation) 100 km 100 km ten-car caravan toll booth 1 hour per car toll booth v cars propagate at 100 km/hr v toll booth takes 12 sec to service car (bit transmission time) v car~bit; caravan ~ packet v Q: How long until caravan is lined up before 2nd toll booth? time to push entire caravan through toll booth onto highway = 12*10 = 120 sec time for last car to propagate from 1st to 2nd toll both: 100km/ (100km/hr)= 1 hr A: 62 minutes Introduction 1-8
Caravan analogy (more) ten-car caravan toll booth 100 km 100 km 6 min per car toll booth v suppose cars now propagate at 1000 km/hr, and suppose toll booth now takes one min to service a car v Q: Will cars arrive to 2nd booth before all cars are serviced at first booth? A: Yes! after 7 min, 1st car arrives at second booth; three cars still at 1st booth. Introduction 1-9
Queueing delay (revisited) v R: link bandwidth (bps) v L: packet length (bits) v a: average packet arrival rate v La/R: Traffic Intensity average queueing delay v La/R ~ 0: avg. queueing delay small traffic intensity = La/R La/R ~ 0 v La/R -> 1: avg. queueing delay large v La/R > 1: more work arriving than can be serviced, average delay infinite! * Check out the Java applet for an interactive animation on queuing and loss La/R -> 1 Introduction 1-10
End-to-end delay A Nodal delay: d nodal = d trans + d prop = 2ms B Ten packets are sent from A to B: Assumption: the time at which the 2nd packet is received at the first router is equal to the time at which the 1st packet is received at the second router. Nodal delay: single packet end-to-end delay 6ms. D end-to-end, single = 3*d nodal = 6 ms Nodal delay: ten packet end-to-end delay 6ms. D end-to-end, 10 = 3*d nodal + 9 * d nodal = 24 ms Introduction 1-11
Packet loss v queue (aka buffer) preceding link in buffer has finite capacity v packet arriving to full queue dropped (aka lost) v lost packet may be retransmitted by previous node, by source end system, or not at all A buffer (waiting area) packet being transmitted B packet arriving to full buffer is lost * Check out the Java applet for an interactive animation on queuing and loss Introduction 1-12
Throughput v 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 server, sends with bits (fluid) file of into F bits pipe to send to client link pipe capacity R s bits/sec that can carry fluid at rate R s bits/sec) link pipe capacity R c bits/sec that can carry fluid at rate R c bits/sec) Introduction 1-13
Throughput (more) min(r c,r s ) v R s < R c What is average end-end throughput? R s R s bits/sec R c bits/sec v R s > R c What is average end-end throughput? R c R s bits/sec R c bits/sec bottleneck link link on end-end path that constrains end-end throughput Introduction 1-14
Throughput: Internet scenario v per-connection end-end throughput: R s R s R s =2Mbps min(r c,r s,r/10)=500kbps R=5Mbps R c R c =1Mbps R c v in practice: R c or R s is often bottleneck 10 connections (fairly) share backbone bottleneck link R bits/sec Introduction 1-15
Chapter 1: roadmap 1.4 delay, loss, throughput in networks 1.5 protocol layers, service models protocol layers, service models Introduction 1-16
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?. or at least our discussion of networks? Introduction 1-17
Organization of air travel ticket (purchase) baggage (check) gates (load) runway takeoff airplane routing airplane routing ticket (complain) baggage (claim) gates (unload) runway landing airplane routing v a series of steps Introduction 1-18
Layering of airline functionality ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim baggage gates (load) gates (unload) gate runway (takeoff) runway (land) takeoff/landing airplane routing airplane routing airplane routing airplane routing airplane routing departure airport intermediate air-traffic control centers arrival airport layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below Introduction 1-19
Why layering? dealing with complex systems: v Structured way to discuss the of complex system layered reference model for discussion v modularization eases maintenance, updating of system change of implementation of layer s service transparent to rest of system e.g., change in gate procedure doesn t affect rest of system v layering considered harmful? Duplicated functionalities at different layers, like error check Functionality at one layer needs info from other layers Introduction 1-20
Internet protocol stack v application: supporting network applications FTP, SMTP, HTTP, DNS v transport: process-process data transfer TCP, UDP v network: routing of datagrams from source to destination IP, routing protocols v link: data transfer between neighboring network elements Ethernet, 802.11 (WiFi), PPP v physical: bits on the wire application transport network link physical Introduction 1-21
ISO/OSI reference model v presentation: allow applications to interpret meaning of data, e.g., encryption, compression, machine-specific conventions v session: synchronization, checkpointing, recovery of data exchange v Internet stack missing these layers! these services, if needed, must be implemented in application needed? application presentation session transport network link physical Introduction 1-22
segment datagram frame bits message H l H t H n H t H n H t M M M M source application transport network link physical Encapsulation link physical switch H l H n H n H t H t H t M M M M destination application transport network link physical H l H n H n H t H t M M network link physical H n H t M router Introduction 1-23
Course Progression v Week 1-2: Overview v Week 2-4: Application Layer Protocols P2P, HTTP, SMTP, DNS v Week 4-5: Transport Layer Protocols UDP and TCP v Week 6: IP, Routing Protocols v Week 7: Link Layer Protocols v Week 8: Wireless & Data Center Networking v Slides for the lecture will be posted on the website
Introduction: summary covered a ton of material! v Internet overview v what s a protocol? v network edge, core, access network packet-switching versus circuit-switching Internet structure v performance: loss, delay, throughput v layering, service models you now have: v context, overview, feel of networking v more depth, detail to follow! Introduction 1-25
Questions? Introduction 1-26