Computer Networks and the Internet Jim Kurose and

  • Slides: 70
Download presentation
Computer Networks and the Internet* *Jim Kurose and Keith Ross “Computer Networking: A Top

Computer Networks and the Internet* *Jim Kurose and Keith Ross “Computer Networking: A Top Down Approach Featuring the Internet”, 3 rd edition. , Addison-Wesley, July 2004.

Computer Networks and the Internet Overview: q what’s the Internet q what’s a protocol?

Computer Networks and the Internet Overview: q what’s the Internet q what’s a protocol? q network edge q network core q access net q Internet/ISP structure q performance: loss, delay q protocol layers, service models q network modeling

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

What’s the Internet: “nuts and bolts” view q millions of connected computing devices: hosts

What’s the Internet: “nuts and bolts” view q millions of connected computing devices: hosts = end systems q running network apps q communication links m m router server workstation mobile local ISP fiber, copper, radio, satellite transmission rate = bandwidth regional ISP q routers: forward packets (chunks of data) company network

What’s the Internet: “nuts and bolts” view q protocols control sending, receiving of msgs

What’s the Internet: “nuts and bolts” view q protocols control sending, receiving of msgs m e. g. , TCP, IP, HTTP, FTP, PPP q Internet: “network of router server workstation mobile local ISP networks” m m loosely hierarchical public Internet versus private intranet q Internet standards m RFC: Request for comments m IETF: Internet Engineering Task Force regional ISP company network

What’s the Internet: a service view q communication infrastructure enables distributed applications: m Web,

What’s the Internet: a service view q communication infrastructure enables distributed applications: m Web, email, games, ecommerce, file sharing q communication services provided to apps: m m Connectionless unreliable connection-oriented reliable

What’s a protocol? human protocols: q “what’s the time? ” q “I have a

What’s a protocol? human protocols: q “what’s the time? ” q “I have a question” q introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: q machines rather than humans q all communication activity in Internet governed by protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt

What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection

What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection req Hi TCP connection response Got the time? Get http: //www. ciise. concordia. com/ 2: 00 <file> time

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

A closer look at network structure: q network edge: applications and hosts q network

A closer look at network structure: q network edge: applications and hosts q network core: m routers m network of networks q access networks, physical media: communication links

The network edge: q end systems (hosts): m m m run application programs e.

The network edge: q end systems (hosts): m m m run application programs e. g. Web, email at “edge of network” q client/server model m m client host requests, receives service from always-on server e. g. Web browser/server; email client/server q peer-peer model: m m minimal (or no) use of dedicated servers e. g. , Ka. Za. A (for file sharing)

Network edge: connection-oriented service Goal: data transfer between end systems q handshaking: setup (prepare

Network edge: connection-oriented service Goal: data transfer between end systems q handshaking: setup (prepare for) data transfer ahead of time m m Hello, hello back human protocol set up “state” in two communicating hosts q TCP - Transmission Control Protocol m Internet’s connectionoriented service TCP service [RFC 793] q reliable, in-order byte- stream data transfer m loss: acknowledgements and retransmissions q flow control: m sender won’t overwhelm receiver q congestion control: m senders “slow down sending rate” when network congested

Network edge: connectionless service Goal: data transfer between end systems m same as before!

Network edge: connectionless service Goal: data transfer between end systems m same as before! q UDP - User Datagram Protocol [RFC 768]: m connectionless m unreliable data transfer m no flow control m no congestion control App’s using TCP: q HTTP (Web), FTP (file transfer), Telnet (remote login), SMTP (email) App’s using UDP: q streaming media, teleconferencing, DNS, Internet telephony

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

The Network Core q mesh of interconnected routers q the fundamental question: how is

The Network Core q mesh of interconnected routers q the fundamental question: how is data transferred through net? m circuit switching: dedicated circuit per call: telephone net m packet-switching: data sent thru net in discrete “chunks”

Network Core: Circuit Switching End-end resources reserved for “call” q link bandwidth, switch capacity

Network Core: Circuit Switching End-end resources reserved for “call” q link bandwidth, switch capacity q dedicated resources: no sharing q circuit-like (guaranteed) performance q call setup required

Network Core: Circuit Switching network resources (e. g. , bandwidth) divided into “pieces” q

Network Core: Circuit Switching network resources (e. g. , bandwidth) divided into “pieces” q pieces allocated to calls q resource piece idle if not used by owning call (no sharing) q dividing link bandwidth into “pieces” m frequency division m time division

Circuit Switching: FDM and TDM Example: FDM 4 users frequency time TDM frequency time

Circuit Switching: FDM and TDM Example: FDM 4 users frequency time TDM frequency time

Numerical example q How long does it take to send a file of 640,

Numerical example q How long does it take to send a file of 640, 000 bits from host A to host B over a circuit-switched network? m All links are 1. 536 Mbps m Each link uses TDM with 24 slots m 500 msec to establish end-to-end circuit Transmission rate of each circuit = 1. 536 Mbps/24 = 64 Kbps It takes: (640, 000 bits)/(64 kbps) = 10 seconds to transmit the file. . We have to add 0. 5 seconds to establish the circuit 10. 5 seconds

Network Core: Packet Switching each end-end data stream divided into packets q user A,

Network Core: Packet Switching each end-end data stream divided into packets q user A, B packets share network resources q each packet uses full link bandwidth q resources used as needed Bandwidth division into “pieces” Dedicated allocation Resource reservation resource contention: q aggregate resource demand can exceed amount available q congestion: packets queue, wait for link use q store and forward: packets move one hop at a time m Node receives complete packet before forwarding

Packet Switching: Statistical Multiplexing 10 Mb/s Ethernet A B statistical multiplexing C 1. 5

Packet Switching: Statistical Multiplexing 10 Mb/s Ethernet A B statistical multiplexing C 1. 5 Mb/s queue of packets waiting for output link D E Sequence of A & B packets does not have fixed pattern statistical multiplexing. In TDM each host gets same slot in revolving TDM frame.

Packet switching versus circuit switching Packet switching allows more users to use network! (i.

Packet switching versus circuit switching Packet switching allows more users to use network! (i. e. , more efficient) q 1 Mb/s link shared by users q each user: m 100 kb/s when “active” m active 10% of time q circuit-switching: 100 kbps must be reserved for each user all the time m Only 10 simult. users N users 1 Mbps link

Packet switching versus circuit switching Packet switching allows more users to use network! (i.

Packet switching versus circuit switching Packet switching allows more users to use network! (i. e. , more efficient) q packet switching: m user active probability = 0. 1 m with 35 users, probability > 10 active less than. 0004 q With 10 (or fewer) users (happens with prob. 0. 9996), the aggregate arrival rate is <= 1 Mbps q When we have more than 10 N users, delays and packet loss may occur (arrival rate exceeds link capacity) q However, probability of having more than 10 users simult. Is very small! 1 Mbps link

Packet switching versus circuit switching Packet switching allows more users to use network! (i.

Packet switching versus circuit switching Packet switching allows more users to use network! (i. e. , more efficient) q 10 users q Only one user generates m 1000 packets m Each packet = 1000 bits m active 10% of time q Other users remain silent q TDM: only one users (assume 10 slots per frame, each slot = 1000 bits) m it takes 10 s to send to transmit 1 million bits! N users q Packet switching m The one user utilizes the whole bandwidth of the link m 1 second is sufficient to transmit the user’s bits 1 Mbps link

Packet switching versus circuit switching q Great for bursty data m resource sharing m

Packet switching versus circuit switching q Great for bursty data m resource sharing m simpler, no call setup q Excessive congestion: packet delay and loss m protocols needed for reliable data transfer, congestion control q Q: How to provide circuit-like behavior? m bandwidth guarantees needed for audio/video apps m still an unsolved problem!

Packet-switching: store-and-forward L R q Takes L/R seconds to R transmit (push out) packet

Packet-switching: store-and-forward L R q Takes L/R seconds to R transmit (push out) packet of L bits on to link or R bps q Entire packet must arrive at router before it can be transmitted on next link: store and forward q delay = 3 L/R (transmission delays) R Example: q L = 7. 5 Mbits q R = 1. 5 Mbps q delay = 15 sec

Packet-switched networks: forwarding q Goal: move packets through routers from source to destination m

Packet-switched networks: forwarding q Goal: move packets through routers from source to destination m several path selection (i. e. routing) algorithms exist q datagram network: m destination address in packet determines next hop m routes may change during session m analogy: driving, asking directions q virtual circuit network: m each packet carries tag (virtual circuit ID), tag determines next hop m fixed path determined at call setup time, remains fixed thru call m routers maintain per-call state (complex, additional cost, may not be scalable)

Network Taxonomy Telecommunication networks Packet-switched networks Circuit-switched networks FDM WDM TDM Networks with VCs

Network Taxonomy Telecommunication networks Packet-switched networks Circuit-switched networks FDM WDM TDM Networks with VCs Datagram Networks • Datagram network • either connection-oriented or connectionless. • Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps.

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

Access networks Q: How to connect end systems to edge router? q residential access

Access networks Q: How to connect end systems to edge router? q residential access nets q institutional access networks (school, company) q mobile access networks Keep in mind: q bandwidth (bits per second) of access network? q shared or dedicated?

Residential access: point to point access q Dialup via modem m up to 56

Residential access: point to point access q Dialup via modem m up to 56 Kbps direct access to router (often less) m Can’t surf and phone at same time: can’t be “always on” q ADSL: asymmetric digital subscriber line m up to 1 Mbps upstream (today typically < 256 kbps) m up to 8 Mbps downstream (today typically < 1 Mbps) m FDM: 50 k. Hz - 1 MHz for downstream 4 k. Hz - 50 k. Hz for upstream 0 k. Hz - 4 k. Hz for ordinary telephone

Residential access: cable modems q HFC: hybrid fiber coax m asymmetric: up to 30

Residential access: cable modems q HFC: hybrid fiber coax m asymmetric: up to 30 Mbps downstream, 2 Mbps upstream q network of cable and fiber attaches homes to ISP router m homes share access to router q deployment: available via cable TV companies

Residential access: cable modems Diagram: http: //www. cabledatacomnews. com/cmic/diagram. html

Residential access: cable modems Diagram: http: //www. cabledatacomnews. com/cmic/diagram. html

Cable Network Architecture: Overview Typically 500 to 5, 000 homes cable headend cable distribution

Cable Network Architecture: Overview Typically 500 to 5, 000 homes cable headend cable distribution network (simplified) home

Cable Network Architecture: Overview cable headend cable distribution network (simplified) home

Cable Network Architecture: Overview cable headend cable distribution network (simplified) home

Cable Network Architecture: Overview server(s) cable headend cable distribution network home

Cable Network Architecture: Overview server(s) cable headend cable distribution network home

Company access: local area networks q company/univ local area network (LAN) connects end system

Company access: local area networks q company/univ local area network (LAN) connects end system to edge router q Ethernet: m shared or dedicated link connects end system and router m 10 Mbs, 100 Mbps, Gigabit Ethernet

Wireless access networks q shared wireless access network connects end system to router m

Wireless access networks q shared wireless access network connects end system to router m via base station aka “access point” q wireless LANs: m 802. 11 b (Wi. Fi): 11 Mbps q wider-area wireless access m provided by telco operator m 3 G ~ 384 kbps • Will it happen? ? m WAP/GPRS in Europe router base station mobile hosts

Home networks Typical home network components: q ADSL or cable modem q router/firewall/NAT q

Home networks Typical home network components: q ADSL or cable modem q router/firewall/NAT q Ethernet q wireless access point to/from cable headend cable modem router/ firewall Ethernet wireless laptops wireless access point

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

Internet structure: network of networks q roughly hierarchical q at center: “tier-1” ISPs (e.

Internet structure: network of networks q roughly hierarchical q at center: “tier-1” ISPs (e. g. , UUNet, BBN/Genuity, Sprint, AT&T), national/international coverage m treat each other as equals Tier-1 providers interconnect (peer) privately Tier 1 ISP NAP Tier 1 ISP Tier-1 providers also interconnect at public network access points (NAPs)

Tier-1 ISP: e. g. , Sprint US backbone network

Tier-1 ISP: e. g. , Sprint US backbone network

Internet structure: network of networks q “Tier-2” ISPs: smaller (often regional) ISPs m Connect

Internet structure: network of networks q “Tier-2” ISPs: smaller (often regional) ISPs m Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet q tier-2 ISP is customer of tier-1 provider Tier-2 ISP Tier 1 ISP Tier-2 ISP NAP Tier 1 ISP Tier-2 ISPs also peer privately with each other, interconnect at NAP Tier-2 ISP

Internet structure: network of networks q “Tier-3” ISPs and local ISPs m last hop

Internet structure: network of networks q “Tier-3” ISPs and local ISPs m last hop (“access”) network (closest to end systems) local ISP Local and tier 3 ISPs are customers of higher tier ISPs connecting them to rest of Internet Tier 3 ISP Tier-2 ISP local ISP Tier-2 ISP Tier 1 ISP Tier-2 ISP local ISP NAP Tier 1 ISP Tier-2 ISP local ISP

Internet structure: network of networks q a packet passes through many networks! local ISP

Internet structure: network of networks q a packet passes through many networks! local ISP Tier 3 ISP Tier-2 ISP local ISP Tier-2 ISP Tier 1 ISP Tier-2 ISP local ISP NAP Tier 1 ISP Tier-2 ISP local ISP

roadmap What is the Internet? Network edge Network core Network access Internet structure and

roadmap What is the Internet? Network edge Network core Network access Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

How do loss and delay occur? packets queue in router buffers q packet arrival

How do loss and delay occur? packets queue in router buffers q packet arrival rate to link exceeds output link capacity q 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

Four sources of packet delay q 1. nodal processing: m check bit errors m

Four sources of packet delay q 1. nodal processing: m check bit errors m determine output link q 2. queueing m time waiting at output link for transmission m depends on congestion level of router transmission A propagation B nodal processing queueing

Delay in packet-switched networks 3. Transmission delay: q R=link bandwidth (bps) q L=packet length

Delay in packet-switched networks 3. Transmission delay: q R=link bandwidth (bps) q L=packet length (bits) q time to send bits into link = L/R transmission A 4. Propagation delay: q d = length of physical link q s = propagation speed in medium (~2 x 108 m/sec) q propagation delay = d/s Note: s and R are very different quantities! propagation B nodal processing queueing

Caravan analogy 100 km ten-car caravan toll booth q Cars “propagate” at 100 km/hr

Caravan analogy 100 km ten-car caravan toll booth q Cars “propagate” at 100 km/hr q Toll booth takes 12 sec to service a car (transmission time) q car~bit; caravan ~ packet q Q: How long until caravan is lined up before 2 nd toll booth? 100 km toll booth q Time to “push” entire caravan through toll booth onto highway = 12*10 = 120 sec q Time for last car to propagate from 1 st to 2 nd toll both: 100 km/(100 km/hr)= 1 hr q A: 62 minutes

Caravan analogy (more) 100 km ten-car caravan 100 km toll booth q Cars now

Caravan analogy (more) 100 km ten-car caravan 100 km toll booth q Cars now “propagate” at 1000 km/hr q Toll booth now takes 1 min to service a car q Q: Will cars arrive to 2 nd booth before all cars serviced at 1 st booth? toll booth q Yes! After 7 min, 1 st car at 2 nd booth and 3 cars still at 1 st booth. q 1 st bit of packet can arrive at 2 nd router before packet is fully transmitted at 1 st router! m Typical in Internet

Nodal delay q dproc = processing delay m typically a few microsecs or less

Nodal delay q dproc = processing delay m typically a few microsecs or less q dqueue = queuing delay m depends on congestion q dtrans = transmission delay m = L/R, significant for low-speed links q dprop = propagation delay m a few microsecs to hundreds of msecs

Queueing delay (revisited) q R=link bandwidth (bps) q L=packet length (bits) q a=average packet

Queueing delay (revisited) q R=link bandwidth (bps) q L=packet length (bits) q a=average packet arrival rate traffic intensity = La/R q La/R ~ 0: average queueing delay small q La/R -> 1: delays become large q La/R > 1: more “work” arriving than can be serviced, average delay infinite!

“Real” Internet delays and routes q What do “real” Internet delay & loss look

“Real” Internet delays and routes q What do “real” Internet delay & loss look like? q Traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: m m m sends three packets that will reach router i on path towards destination router i will return packets to sender times interval between transmission and reply. 3 probes

“Real” Internet delays and routes traceroute: www. concordia. ca to www. enst. fr Three

“Real” Internet delays and routes traceroute: www. concordia. ca to www. enst. fr Three delay measurements from www. concordia. ca to www. enst. fr trans-oceanic link

“Real” Internet delays and routes trans-oceanic link

“Real” Internet delays and routes trans-oceanic link

Packet loss q queue (aka buffer) preceding link in buffer has finite capacity q

Packet loss q queue (aka buffer) preceding link in buffer has finite capacity q when packet arrives to full queue, packet is dropped (aka lost) q lost packet may be retransmitted by previous node, by source end system, or not retransmitted at all

roadmap What is the Internet? Network edge Network core Network access and physical media

roadmap What is the Internet? Network edge Network core Network access and physical media Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

Protocol “Layers” Networks are complex! q many “pieces”: m hosts m routers m links

Protocol “Layers” Networks are complex! q many “pieces”: m hosts m routers m links of various media m applications m protocols m hardware, software Question: Is there any hope of organizing structure of network?

Organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load)

Organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load) gates (unload) runway takeoff runway landing airplane routing q a series of steps

Layering of airline functionality ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim) baggage

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 departure airport airplane routing intermediate air-traffic control centers arrival airport Layers: each layer implements a service m via its own internal-layer actions (e. g. , loading and unloading of people at the gate) m relying on services provided by layer below (e. g. , use of the runaway-to-runway service by the gate layer)

Why layering? Dealing with complex systems: q modularization eases maintenance, updating of system m

Why layering? Dealing with complex systems: q modularization eases maintenance, updating of system m change of implementation of layer’s service transparent to rest of system m e. g. , change in gate procedure doesn’t affect rest of system

Internet protocol stack q application: supporting network applications (software) m FTP, SMTP, HTTP q

Internet protocol stack q application: supporting network applications (software) m FTP, SMTP, HTTP q transport: host-host data transfer (software) m TCP, UDP q network: routing of datagrams from source to destination (SW+HW) m IP, routing protocols q link: data transfer between neighboring network elements (HW) m PPP, Ethernet q physical: bits “on the wire”, HW application transport network link physical

Internet protocol stack q Each protocol belongs to one layer q Each layer provides

Internet protocol stack q Each protocol belongs to one layer q Each layer provides its service by m Performing actions within that layer m Using the services of the layer directly below q Example: a layer (n) may implement reliable delivery of messages from one edge of the network to the other. m m This might be implemented using an un-reliable edge to edge message delivery of the layer right below (n-1). Layer n has to add functionality such as detect and retransmit lost messages.

source message segment Ht datagram Hn Ht frame Hl Hn Ht M M Encapsulation

source message segment Ht datagram Hn Ht frame Hl Hn Ht M M Encapsulation application transport network link physical Hl Hn Ht M switch destination M Ht M Hn Ht Hl Hn Ht M M application transport network link physical Hn Ht Hl Hn Ht M M router

roadmap What is the Internet? Network edge Network core Network access and physical media

roadmap What is the Internet? Network edge Network core Network access and physical media Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models History

Internet History 1961 -1972: Early packet-switching principles q 1961: Kleinrock - queueing theory shows

Internet History 1961 -1972: Early packet-switching principles q 1961: Kleinrock - queueing theory shows effectiveness of packetswitching q 1964: Baran - packetswitching in military nets q 1967: ARPAnet conceived by Advanced Research Projects Agency q 1969: first ARPAnet node operational q 1972: m m ARPAnet demonstrated publicly NCP (Network Control Protocol) first host protocol first e-mail program ARPAnet has 15 nodes

Internet History 1972 -1980: Internetworking, new and proprietary nets q 1970: ALOHAnet satellite q

Internet History 1972 -1980: Internetworking, new and proprietary nets q 1970: ALOHAnet satellite q q q network in Hawaii 1973: Metcalfe’s Ph. D thesis proposes Ethernet 1974: Cerf and Kahn architecture for interconnecting networks late 70’s: proprietary architectures: DECnet, SNA, XNA late 70’s: switching fixed length packets (ATM precursor) 1979: ARPAnet has 200 nodes Cerf and Kahn’s internetworking principles: m minimalism, autonomy no internal changes required to interconnect networks m best effort service model m stateless routers m decentralized control define today’s Internet architecture

Internet History 1990, 2000’s: commercialization, the Web, new apps q Early 1990’s: ARPAnet decommissioned

Internet History 1990, 2000’s: commercialization, the Web, new apps q Early 1990’s: ARPAnet decommissioned q 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995) q early 1990 s: Web m hypertext [Bush 1945, Nelson 1960’s] m HTML, HTTP: Berners-Lee m 1994: Mosaic, later Netscape m late 1990’s: commercialization of the Web Late 1990’s – 2000’s: q more killer apps: instant messaging, P 2 P file sharing q network security to forefront q est. 50 million host, 100 million+ users q backbone links running at Gbps

Summary Covered material q Internet overview q what’s a protocol? q network edge, core,

Summary Covered material q Internet overview q what’s a protocol? q network edge, core, access network m packet-switching versus circuit-switching q Internet/ISP structure q performance: loss, delay q layering and service models q history