What’s the Internet: “nuts and bolts” view PC server wireless laptop cellular handheld millions of connected computing devices: hosts = end systems running network apps Home network Institutional network Mobile network Global ISP Regional ISP communication links fiber, copper, radio, satellite transmission rate = bandwidth wired links access points routers: forward packets (chunks of data) router
What’s the Internet: “nuts and bolts” view protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, Skype, Ethernet Internet: “network of networks” loosely hierarchical public Internet versus private intranet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force Home network Institutional network Mobile network Global ISP Regional ISP
What’s the Internet: a service view communication infrastructure enables distributed applications: Web, VoIP, email, games, e-commerce, file sharing communication services provided to apps: reliable data delivery from source to destination “best effort” (unreliable) data delivery
What’s a protocol? human protocols: “what’s the time?” “I have a question” introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: machines rather than humans all communication activity in Internet governed by protocols protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt
What’s a protocol? Hi Hi 2:00 <file> time a human protocol and a computer network protocol: Hi TCP connection request Hi TCP connection response Got the time? Get http://www.awl.com/kurose-ross 2:00 <file> time Q: Other human protocols?
Computer networks: overview Two most important aspects of computer networks Hardware And, software Network hardware can be classified by Transmission technology And, scale
Classification of hardware by transmission technology Communication is a primary concern in a network => we are dealing with both computers and Communication (transmission) technologies Types of transmission technology Broadcast links A single communication channel is shared by all machines Restricting transmission to a set of machines => multicasting Point-to-point links Many connections between individual pairs of machines
Broadcast communication networks Examples: satellite networks multi-access Ethernet.
General rule Smaller networks Larger networks Broadcasting Larger networks Point-to-point An alternative criterion for classifying networks Their scale Personal area networks, and local area networks Metropolitan are networks, and wide are networks
Classification of interconnected processor by scale
Local area networks LANs Various topologies are possible for LANs are privately owned networks Within a single building or campus of few kilometers in size Various topologies are possible for LANs Bus A single shared cable connect all devices Example: IEEE 802.3 Ethernet Ring All messages travel thru a ring in the same direction Example: FDDI (Fiber Distributed Date Interface)
LANs topologies
Metropolitan Area Networks A MAN Covers a city The best known example is Cable television network available in many cities
Wide area networks WANs Within a country or even whole continent A wide area network spans a large area, often a country or continent. The above figure presents a so-called packet switched networks. In this case, if a process on some host has a message to be sent to a process on some other host, the sending host first cuts the message into packets, each one bearing its number in the sequence. These packets are then injected into the network one at a time in quick succession. The packets are then transported over the network and deposited at the receiving host, where they are reassembled into the original message and delivered to the receiving process. A stream of packets resulting from some initial message is illustrated in the above presented figure.
Connectionless WAN packet-switched networks In an IP network, a user can send packets to a destination without having to set up a connection first, i.e., without informing the network prior to transmitting them. This simplifies the network, as there is no need for a special signaling protocol. The connectionless WAN IP network (packet routed network) is the one we will be concerned with in this course. That means an end user can transmit whenever he feels like it, I don’t need to ask the network to setup a connection for me. This approach is more suitable for the case where you have bursty data. Do you know what is the meaning of bursty data? This means that there is no continuous stream of data. If you establish a permanent connection, the connection would be up all the time whether using it or not, but your computer system uses part of it. Because of that they felt that the utilization of links would be less than 20% to 30% if they didn’t follow the connectionless approach. This led to the development of packet switched networks.
Routing in IP User A User B IP network The routing of a packet through the network is done on a hop-per-hop basis based on the destination IP address carried in the IP packet’s header. In this case, if this is an IP network and user A wants to send stuff to user B; the way it works, is your packets will contains the destination address. So, as it goes into each IP router, the IP router extracts the destination address, scratches its head, I will look it up in a table and says for this address you have to send it out from port #5.
Quality of Service (QoS) in IP Typically, an IP router does not offer QoS. It cannot distinguish packets belonging to different service classes based on their destination address. IP is almost ubiquitous. There is a lot of interest in introducing QoS in the IP network, and MPLS seems to be the architecture for introducing QoS. In the IP network you cannot easily distinguish the classes of service, because you see an IP packet that has a header but you don’t know if inside it carries voice, or just data that is why typically an IP network does not provide QoS. It cannot give higher priority to voice as opposed to file transfer for instance. In this case, the only way you can provide QoS is to underutilize the network. By doing so, the queues in the router are very small which means the delays are very small, and the packets are delivered without too much jitters where jitter is the variability of the interarrival times of packets at destination.
Internetworks Internetwork or internet A collection of interconnected networks Deals with how to connect different kinds of networks It is formed when distinct networks are interconnected Resulting in the Internet That really covers the whole Planet
Network Core: Circuit Switching End-end resources reserved for “call” link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required
Network Core: Circuit Switching network resources (e.g., bandwidth) divided into “pieces” pieces allocated to calls resource piece idle if not used by owning call (no sharing) dividing link bandwidth into “pieces” frequency division time division
Circuit Switching: FDM and TDM 4 users Example: FDM frequency time 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.
Numerical example How long does it take to send a file of 640,000 bits from host A to host B over a circuit-switched network? All links are 1.536 Mbps Each link uses TDM with 24 slots/sec 500 msec to establish end-to-end circuit Let’s work it out!
Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge end systems, access networks, links 1.3 Network core circuit switching, packet switching, network structure 1.4 Delay, loss and throughput in packet-switched networks 1.5 Protocol layers, service models 1.6 Networks under attack: security 1.7 History
How do loss and delay occur? packets queue in router buffers packet arrival rate to link exceeds output link capacity packets queue, wait for turn packet being transmitted (delay) A free (available) buffers: arriving packets dropped (loss) if no free buffers packets queueing (delay) B
Four sources of packet delay 1. nodal processing: check bit errors determine output link 2. queueing time waiting at output link for transmission depends on congestion level of router A B propagation transmission nodal processing queueing
Delay in packet-switched networks 3. Transmission delay: R=link bandwidth (bps) L=packet length (bits) time to send bits into link = L/R 4. Propagation delay: d = length of physical link s = propagation speed in medium (~2x108 m/sec) propagation delay = d/s Note: s and R are very different quantities! A B propagation transmission nodal processing queueing
Transmission vs. propagation applet An applet Illustrating the difference between Transmission delay and propagation delay An interactive animation Speaks a thousand words http://media.pearsoncmg.com/aw/aw_kurose_network_2/applets/transmission/delay.html
Nodal delay dproc = processing delay dqueue = queuing 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
Queueing delay (revisited) R=link bandwidth (bps) L=packet length (bits) a=average packet arrival rate traffic intensity = La/R La/R ~ 0: average queueing delay small La/R -> 1: delays become large La/R > 1: more “work” arriving than can be serviced, average delay infinite!
Queuing delay vs. packet loss Applet can be found at: http://media.pearsoncmg.com/aw/aw_kurose_network_2/applets/queuing/queuing.html
“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
“Real” Internet delays and routes traceroute: gaia.cs.umass.edu to www.eurecom.fr Three 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)
Tracing LAU’s webserver
Tracing webserver (cont’d)
Packet loss queue (aka buffer) preceding link in buffer has finite capacity packet arriving to full queue 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
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 pipe that can carry fluid at rate Rc bits/sec) pipe that can carry fluid at rate Rs bits/sec) link capacity Rs bits/sec link capacity Rc bits/sec server sends bits (fluid) into pipe server, with file of F bits to send to client
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 link on end-end path that constrains end-end throughput bottleneck link
Throughput: Internet scenario Rs per-connection end-end throughput: min(Rc,Rs,R/10) in practice: Rc or Rs is often bottleneck Rs Rs R Rc Rc Rc 10 connections (fairly) share backbone bottleneck link R bits/sec