Computer Networks and Network Programming in Java PDF
Document Details
Uploaded by RaptAloe
2020
Jim Kurose, Keith Ross
Tags
Summary
This document is lecture notes on computer networking and network programming in Java. It covers topics such as introduction to computer networking, protocols, physical media, performance, security, and the history of computer networks, including the organization of the Internet protocol stack. The author of these lecture notes are Jim Kurose and Keith Ross, published by Pearson in 2020.
Full Transcript
Chapter 1 Introduction Computer Networks and Network Programming in Java Lectures by dr inż. Kazimierz Zieliński e-mail: [email protected] All material copyright 1996-2020 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A...
Chapter 1 Introduction Computer Networks and Network Programming in Java Lectures by dr inż. Kazimierz Zieliński e-mail: [email protected] All material copyright 1996-2020 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top-Down Approach 8th edition Jim Kurose, Keith Ross Pearson, 2020 Introduction: 1-1 Chapter 1: introduction Chapter goal: Overview/roadmap: ▪ Get “feel,” “big picture,” ▪ What is the Internet? introduction to terminology ▪ What is a protocol? more depth, detail later in ▪ Network edge: hosts, access network, course physical media ▪ Approach: ▪ Network core: packet/circuit switching, internet structure use Internet as example ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-2 The Internet: a “nuts and bolts” view Billions of connected mobile network computing devices: national or global ISP ▪ hosts = end systems ▪ running network apps at Internet’s “edge” Packet switches: forward local or packets (chunks of data) Internet regional ISP ▪ routers, switches home network content Communication links provider network datacenter ▪ fiber, copper, radio, satellite network ▪ transmission rate: bandwidth Networks enterprise ▪ collection of devices, routers, network links: managed by an organization Introduction: 1-3 “Fun” Internet-connected devices Pacemaker & Monitor Tweet-a-watt: monitor energy use Amazon Echo IP picture frame Web-enabled toaster + weather forecaster Internet refrigerator Slingbox: remote control cable TV Security Camera AR devices sensorized, bed Internet phones mattress Others? Fitbit Introduction: 1-4 The Internet: a “nuts and bolts” view mobile network 4G ▪ Internet: “network of networks” national or global ISP Interconnected ISPs ▪ protocols are everywhere Skype IP Streaming video control sending, receiving of messages local or regional ISP e.g., HTTP (Web), streaming video, Skype, TCP, IP, WiFi, 4G, Ethernet home network content provider ▪ Internet standards HTTP network datacenter network RFC: Request for Comments Ethernet IETF: Internet Engineering Task TCP Force enterprise network WiFi Introduction: 1-5 The Internet: a “service” view ▪ Infrastructure that provides mobile network services to applications: national or global ISP Web, streaming video, multimedia teleconferencing, email, games, e- Streaming commerce, social media, inter- Skype video connected appliances, … local or regional ISP ▪ provides programming interface to distributed applications: home network content provider “hooks” allowing sending/receiving HTTP network datacenter network apps to “connect” to, use Internet transport service provides service options, analogous enterprise to postal service network Introduction: 1-6 What’s a protocol? Human protocols: Network protocols: ▪ “what’s the time?” ▪ computers (devices) rather than humans ▪ “I have a question” ▪ all communication activity in Internet ▪ introductions governed by protocols … specific messages sent Protocols define the format, order of … specific actions taken when message received, messages sent and received among or other events network entities, and actions taken on msg transmission, receipt Introduction: 1-7 What’s a protocol? A human protocol and a computer network protocol: Protocol Hi TCP connection request is a Hi TCP connection distributed algorithm Got the response using time? GET http://gaia.cs.umass.edu/kurose_ross communication 2:00 time Q: other human protocols? Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-9 A closer look at Internet structure mobile network Network edge: national or global ISP ▪ hosts: clients and servers ▪ servers often in data centers local or regional ISP home network content provider network datacenter network enterprise network Introduction: 1-10 A closer look at Internet structure mobile network Network edge: national or global ISP ▪ hosts: clients and servers ▪ servers often in data centers local or Access networks, physical media: regional ISP ▪wired, wireless communication links home network content provider network datacenter network enterprise network Introduction: 1-11 A closer look at Internet structure mobile network Network edge: national or global ISP ▪ hosts: clients and servers ▪ servers often in data centers local or Access networks, physical media: regional ISP ▪wired, wireless communication links home network content provider network datacenter Network core: network ▪ interconnected routers ▪ network of networks enterprise network Introduction: 1-12 Internet topology map Source: Center for Applied Internet Data Analysis (CAIDA) Introduction: 1-13 Access networks and physical media Q: How to connect end systems mobile network national or global ISP to edge router? ▪ residential access nets ▪ institutional access networks (school, company) local or ▪ mobile access networks (WiFi, 4G/5G) regional ISP What to look for: home network content provider network ▪ transmission rate (bits per second) of access datacenter network network? ▪ shared or dedicated access among users? enterprise network Introduction: 1-14 Access networks: cable-based access cable headend … cable splitter modem C O V V V V V V N I I I I I I D D T D D D D D D A A R E E E E E E T T O O O O O O O A A L 1 2 3 4 5 6 7 8 9 Channels frequency division multiplexing (FDM): different channels transmitted in different frequency bands Introduction: 1-15 Access networks: cable-based access cable headend … cable splitter cable modem modem CMTS termination system data, TV transmitted at different frequencies over shared cable ISP distribution network ▪ HFC: hybrid fiber coax asymmetric: up to 40 Mbps – 1.2 Gbs downstream transmission rate, 30-100 Mbps upstream transmission rate ▪ network of cable, fiber attaches homes to ISP router homes share access network to cable headend Introduction: 1-16 Access networks: digital subscriber line (DSL) central office telephone network DSL splitter modem DSLAM voice, data transmitted ISP at different frequencies over DSL access dedicated line to central office multiplexer ▪ use existing telephone line to central office DSLAM data over DSL phone line goes to Internet voice over DSL phone line goes to telephone net ▪ 24-52 Mbps dedicated downstream transmission rate ▪ 3.5-16 Mbps dedicated upstream transmission rate Introduction: 1-17 Access networks: home networks wireless devices to/from headend or central office often combined in single box cable or DSL modem WiFi wireless access router, firewall, NAT point (54, 450 Mbps) wired Ethernet (1 Gbps) Introduction: 1-18 Wireless access networks Shared wireless access network connects end system to router ▪ via base station aka “access point” Wireless local area networks Wide-area cellular access networks (WLANs) ▪ provided by mobile, cellular network ▪ typically within or around operator (10’s km) building (~100 ft) ▪ 10’s Mbps ▪ 802.11b/g/n (WiFi): 11, 54, 450 ▪ 4G cellular networks (5G coming) Mbps transmission rate to Internet to Internet Introduction: 1-19 Access networks: enterprise networks Enterprise link to ISP (Internet) institutional router Ethernet institutional mail, switch web servers ▪ companies, universities, etc. ▪ mix of wired, wireless link technologies, connecting a mix of switches and routers (we’ll cover differences shortly) ▪ Ethernet: wired access at 100Mbps, 1Gbps, 10Gbps ▪ WiFi: wireless access points at 11, 54, 450 Mbps Introduction: 1-20 Host: sends packets of data host sending function: ▪ takes application message ▪ breaks into smaller chunks, two packets, known as packets, of length L bits L bits each ▪ transmits packet into access 2 1 network at transmission rate R link transmission rate, aka link host capacity, aka link bandwidth R: link transmission rate packet time needed to L (bits) transmission = transmit L-bit = delay packet into link R (bits/sec) Introduction: 1-21 Links: physical media ▪ bit: propagates between Twisted pair (TP) transmitter/receiver pairs ▪ two insulated copper wires ▪ physical link: what lies Category 5: 100 Mbps, 1 Gbps Ethernet between transmitter & Category 6: 10Gbps Ethernet receiver ▪ guided media: signals propagate in solid media: copper, fiber, coax ▪ unguided media: signals propagate freely, e.g., radio Introduction: 1-22 Links: physical media Coaxial cable: Fiber optic cable: ▪ two concentric copper conductors ▪ glass fiber carrying light pulses, each pulse a bit ▪ bidirectional ▪ high-speed operation: ▪ broadband: high-speed point-to-point multiple frequency channels on cable transmission (10’s-100’s Gbps) 100’s Mbps per channel ▪ low error rate: repeaters spaced far apart immune to electromagnetic noise Introduction: 1-23 Links: physical media Wireless radio Radio link types: ▪ signal carried in ▪ terrestrial microwave electromagnetic spectrum up to 45 Mbps channels ▪ no physical “wire” ▪ Wireless LAN (WiFi) ▪ broadcast and “half-duplex” Up to 100’s Mbps (sender to receiver) ▪ wide-area (e.g., cellular) ▪ propagation environment 4G cellular: ~ 10’s Mbps effects: ▪ satellite reflection up to 45 Mbps per channel obstruction by objects 270 msec end-end delay interference geosynchronous versus low- earth-orbit Introduction: 1-24 Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-25 The network core ▪mesh of interconnected mobile network national or global ISP routers ▪packet-switching: hosts break application-layer messages into packets local or regional ISP forward packets from one router home network content to the next, across links on path provider network datacenter from source to destination network each packet transmitted at full link capacity enterprise network Introduction: 1-26 Packet-switching: store-and-forward L bits per packet 3 2 1 source destination R bps R bps ▪ Transmission delay: takes L/R seconds to transmit (push out) L-bit packet into link at R One-hop numerical example: bps ▪ L = 10 Kbits ▪ Store and forward: entire packet must arrive at ▪ R = 100 Mbps router before it can be transmitted on next link ▪ one-hop transmission delay ▪ End-end delay: 2L/R (above), assuming zero = 0.1 msec propagation delay (more on delay shortly) Introduction: 1-27 Packet-switching: queueing delay, loss R = 100 Mb/s A C D B R = 1.5 Mb/s E queue of packets waiting for output link Packet queuing and loss: if arrival rate (in bps) to link exceeds transmission rate (bps) of link for a period of time: ▪ packets will queue, waiting to be transmitted on output link ▪ packets can be dropped (lost) if memory (buffer) in router fills up Introduction: 1-28 Two key network-core functions routing algorithm Routing: Forwarding: local local forwarding forwarding table table ▪ global action: header value output link determine source- ▪ local action: 0100 3 destination paths 0101 2 move arriving 0111 2 taken by packets 1001 1 packets from router’s input link ▪ routing algorithms to appropriate 1 router output link 3 2 destination address in arriving packet’s header Introduction: 1-29 Alternative to packet switching: circuit switching end-end resources allocated to, reserved for “call” between source and destination ▪ in diagram, each link has four circuits. call gets 2nd circuit in top link and 1st circuit in right link. ▪ dedicated resources: no sharing circuit-like (guaranteed) performance ▪ circuit segment idle if not used by call (no sharing) ▪ commonly used in traditional telephone networks Introduction: 1-30 Circuit switching: FDM and TDM Frequency Division Multiplexing (FDM) 4 users ▪ optical, electromagnetic frequencies frequency divided into (narrow) frequency bands ▪ each call allocated its own band, can transmit at max rate of that narrow band time Time Division Multiplexing (TDM) frequency ▪ time divided into slots ▪ each call allocated periodic slot(s), can transmit at maximum rate of (wider) frequency band, but only during its time time slot(s) Introduction: 1-31 Packet switching versus circuit switching packet switching allows more users to use network! Example: ▪ 1 Gb/s link ▪ each user: N 100 Mb/s when “active” users 1 Gbps link active 10% of time ▪ circuit-switching: 10 users Q: how did we get value 0.0004? ▪ packet switching: with 35 users, probability > 10 active at same time Q: what happens if > 35 users ? is less than.0004 * * Check out the online interactive exercises for more examples: http://gaia.cs.umass.edu/kurose_ross/interactive Introduction: 1-32 Packet switching versus circuit switching Is packet switching a “slam dunk winner”? ▪ great for “bursty” data – sometimes has data to send, but at other times not resource sharing simpler, no call setup ▪ excessive congestion possible: packet delay and loss due to buffer overflow protocols needed for reliable data transfer, congestion control ▪ Q: How to provide circuit-like behavior? bandwidth guarantees traditionally used for audio/video applications Q: human analogies of reserved resources (circuit switching) versus on-demand allocation (packet switching)? Introduction: 1-33 Internet structure: a “network of networks” ▪ Hosts connect to Internet via access Internet Service Providers (ISPs) residential, enterprise (company, university, commercial) ISPs ▪ Access ISPs in turn must be interconnected so that any two hosts can send packets to each other ▪ Resulting network of networks is very complex evolution was driven by economics and national policies ▪ Let’s take a stepwise approach to describe current Internet structure Introduction: 1-34 Internet structure: a “network of networks” Question: given millions of access ISPs, how to connect them together? access access net net access net access access net net access access net net access access net net access net access net access net access net access access net access net net Introduction: 1-35 Internet structure: a “network of networks” Question: given millions of access ISPs, how to connect them together? access access net net access net access access net net access access net net connecting each access ISP to each other directly doesn’t scale: access access net O(N2) connections. net access net access net access net access net access access net access net net Introduction: 1-36 Internet structure: a “network of networks” Option: connect each access ISP to one global transit ISP? Customer and provider ISPs have economic agreement. access access net net access net access access net net access access net net global access net ISP access net access net access net access net access net access access net access net net Introduction: 1-37 Internet structure: a “network of networks” But if one global ISP is viable business, there will be competitors …. access access net net access net access access net net access access net net ISP A access net ISP B access net access ISP C net access net access net access net access access net access net net Introduction: 1-38 Internet structure: a “network of networks” But if one global ISP is viable business, there will be competitors …. who will want to be connected Internet exchange point access access net net access net access access net net IXP access access net net ISP A access net IXP ISP B access net access ISP C net access net access net peering link access net access access net access net net Introduction: 1-39 Internet structure: a “network of networks” … and regional networks may arise to connect access nets to ISPs access access net net access net access access net net IXP access access net net ISP A access net IXP ISP B access net access ISP C net access net access net regional ISP access net access access net access net net Introduction: 1-40 Internet structure: a “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 access net net access net access access net net IXP access access net net ISP A Content provider network access net IXP ISP B access net access ISP C net access net access net regional ISP access net access access net access net net Introduction: 1-41 Internet structure: a “network of networks” Tier 1 ISP Tier 1 ISP Google IXP IXP IXP Regional ISP Regional ISP access access access access access access access access ISP ISP ISP ISP ISP ISP ISP 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 networks (e.g., Google, Facebook): private network that connects its data centers to Internet, often bypassing tier-1, regional ISPs Introduction: 1-42 Tier-1 ISP Network map: Sprint (2019) POP: point-of-presence to/from other Sprint PoPS links to peering networks … … … … … links to/from Sprint customer networks Introduction: 1-43 Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-44 How do packet loss and delay occur? packets queue in router buffers ▪ packets queue, wait for turn ▪ arrival rate to link (temporarily) exceeds output link capacity: packet loss packet being transmitted (transmission delay) A B packets in buffers (queueing delay) free (available) buffers: arriving packets dropped (loss) if no free buffers Introduction: 1-45 Packet delay: four sources transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dproc: nodal processing dqueue: queueing delay ▪ check bit errors ▪ time waiting at output link for transmission ▪ determine output link ▪ depends on congestion level of router ▪ typically < msec Introduction: 1-46 Packet delay: four sources transmission A propagation B nodal processing queueing dnodal = dproc + dqueue + dtrans + dprop dtrans: transmission delay: dprop: propagation delay: ▪ L: packet length (bits) ▪ d: length of physical link ▪ R: link transmission rate (bps) ▪ s: propagation speed (~2x108 m/sec) ▪ dtrans = L/R ▪ dprop = d/s dtrans and dprop * Check out the online interactive exercises: http://gaia.cs.umass.edu/kurose_ross very different Introduction: 1-47 Caravan analogy 100 km 100 km ten-car caravan toll booth toll booth (aka 10-bit packet) (aka router) ▪ cars “propagate” at 100 km/hr ▪ time to “push” entire caravan ▪ toll booth takes 12 sec to service through toll booth onto car (bit transmission time) highway = 12*10 = 120 sec ▪ car ~ bit; caravan ~ packet ▪ time for last car to propagate from 1st to 2nd toll both: ▪ Q: How long until caravan is lined 100km/(100km/hr) = 1 hr up before 2nd toll booth? ▪ A: 62 minutes Introduction: 1-48 Caravan analogy 100 km 100 km ten-car caravan toll booth toll booth (aka 10-bit packet) (aka router) ▪ suppose cars now “propagate” at 1000 km/hr ▪ and suppose toll booth now takes one min to service a car ▪ Q: Will cars arrive to 2nd booth before all cars serviced at first booth? A: Yes! after 7 min, first car arrives at second booth; three cars still at first booth Introduction: 1-49 Packet queueing delay (revisited) average queueing delay ▪ R: link bandwidth (bps) ▪ L: packet length (bits) ▪ a: average packet arrival rate traffic intensity = La/R 1 ▪ La/R ~ 0: avg. queueing delay small ▪ La/R -> 1: avg. queueing delay large La/R ~ 0 ▪ La/R > 1: more “work” arriving is more than can be serviced - average delay infinite! La/R -> 1 Introduction: 1-50 “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 (with time-to-live field value of i) router i will return packets to sender sender measures time interval between transmission and reply 3 probes 3 probes 3 probes Introduction: 1-51 Real Internet delays and 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 3 delay measurements 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 to border1-rt-fa5-1-0.gw.umass.edu 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 trans-oceanic link 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 looks like delays 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 decrease! Why? 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 * * * * means no response (probe lost, router not replying) 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms * Do some traceroutes from exotic countries at www.traceroute.org Introduction: 1-52 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 * Check out the Java applet for an interactive animation on queuing and loss Introduction: 1-53 Throughput ▪ throughput: rate (bits/time unit) at which bits are being sent from sender to receiver instantaneous: rate at given point in time average: rate over longer period of time link capacity pipe that can carry linkthat pipe capacity can carry Rsfluid bits/sec at rate Rfluid c bits/sec at rate serverserver, sends with bits (fluid) into pipe (Rs bits/sec) (Rc bits/sec) file of F bits to send to client Introduction: 1-54 Throughput Rs < Rc What is average end-end throughput? Rs bits/sec Rc bits/sec Rs > Rc What is average end-end throughput? Rs bits/sec Rc bits/sec bottleneck link link on end-end path that constrains end-end throughput Introduction: 1-55 Throughput: network scenario ▪ per-connection end- Rs end throughput: Rs Rs min(Rc,Rs,R/10) ▪ in practice: Rc or Rs is R often bottleneck Rc Rc Rc * Check out the online interactive exercises for more examples: http://gaia.cs.umass.edu/kurose_ross/ 10 connections (fairly) share backbone bottleneck link R bits/sec Introduction: 1-56 Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-57 Network security ▪ field of network security: how bad guys can attack computer networks how we can defend networks against attacks how to design architectures that are immune to attacks ▪ Internet not originally designed with (much) security in mind original vision: “a group of mutually trusting users attached to a transparent network” ☺ Internet protocol designers playing “catch-up” security considerations in all layers! Introduction: 1-58 Bad guys: malware ▪ malware can get in host from: virus: self-replicating infection by receiving/executing object (e.g., e-mail attachment) worm: self-replicating infection by passively receiving object that gets itself executed ▪ spyware malware can record keystrokes, web sites visited, upload info to collection site ▪ infected host can be enrolled in botnet, used for spam or distributed denial of service (DDoS) attacks Introduction: 1-59 Bad guys: denial of service Denial of Service (DoS): attackers make resources (server, bandwidth) unavailable to legitimate traffic by overwhelming resource with bogus traffic 1. select target 2. break into hosts around the network (see botnet) 3. send packets to target target from compromised hosts Introduction: 1-60 Bad guys: packet interception packet “sniffing”: ▪ broadcast media (shared Ethernet, wireless) ▪ promiscuous network interface reads/records all packets (e.g., including passwords!) passing by A C src:B dest:A payload B Wireshark software used for our end-of-chapter labs is a (free) packet-sniffer Introduction: 1-61 Bad guys: fake identity IP spoofing: send packet with false source address A C src:B dest:A payload B … lots more on security (throughout, Chapter 8) Introduction: 1-62 Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-63 Protocol “layers” and reference models Networks are complex, with many “pieces”: Question: ▪ hosts is there any hope of ▪ routers organizing structure of ▪ links of various media network? ▪ applications ▪ protocols ▪ hardware, software …. or at least our discussion of networks? Introduction: 1-64 Example: organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load) gates (unload) runway takeoff runway landing airplane routing airplane routing airplane routing airline travel: a series of steps, involving many services Introduction: 1-65 Example: organization of air travel ticket (purchase) ticketing service ticket (complain) baggage (check) baggage service baggage (claim) gates (load) gate service gates (unload) runway takeoff runway service runway landing airplane routing routing service airplane routing airplane routing layers: each layer implements a service Q: describe in words ▪ via its own internal-layer actions the service provided in each layer above ▪ relying on services provided by layer below Introduction: 1-66 Why layering? dealing with complex systems: ▪ explicit structure allows identification, relationship of complex system’s pieces layered reference model for discussion ▪ modularization eases maintenance, updating of system change in layer's service implementation: transparent to rest of system e.g., change in gate procedure doesn’t affect rest of system ▪ layering considered harmful? ▪ layering in other complex systems? Introduction: 1-67 Internet protocol stack ▪ application: supporting network applications IMAP, SMTP, HTTP application ▪ transport: process-process data transfer TCP, UDP transport ▪ network: routing of datagrams from source to destination network IP, routing protocols link ▪ link: data transfer between neighboring network elements physical Ethernet, 802.11 (WiFi), PPP ▪ physical: bits “on the wire” Introduction: 1-68 application message transport segment network packet / datagram link frame physical bits Introduction: 1-69 source message M application Encapsulation segment Ht M transport datagram / packet Hn Ht M network frame Hl Hn Ht M link physical link physical switch destination Hn Ht M network M application Hl Hn Ht M link Hn Ht M Ht M transport physical Hn Ht M network Hl Hn Ht M link router physical Introduction: 1-70 Chapter 1: roadmap ▪ What is the Internet? ▪ What is a protocol? ▪ Network edge: hosts, access network, physical media ▪ Network core: packet/circuit switching, internet structure ▪ Performance: loss, delay, throughput ▪ Security ▪ Protocol layers, service models ▪ History Introduction: 1-71 Internet history 1961-1972: Early packet-switching principles ▪ 1961: Kleinrock - queueing ▪ 1972: theory shows effectiveness of ARPAnet public demo packet-switching NCP (Network Control Protocol) ▪ 1964: Baran - packet-switching first host-host protocol in military nets first e-mail program ▪ 1967: ARPAnet conceived by ARPAnet has 15 nodes Advanced Research Projects Agency ▪ 1969: first ARPAnet node operational Introduction: 1-72 Internet history 1972-1980: Internetworking, new and proprietary nets ▪ 1970: ALOHAnet satellite network Cerf and Kahn’s internetworking in Hawaii principles: ▪ 1974: Cerf and Kahn - architecture ▪ minimalism, autonomy - no for interconnecting networks internal changes required to ▪ 1976: Ethernet at Xerox PARC interconnect networks ▪ best-effort service model ▪ late70’s: proprietary architectures: DECnet, SNA, XNA ▪ stateless routing ▪ decentralized control ▪ late 70’s: switching fixed length packets (ATM precursor) define today’s Internet architecture ▪ 1979: ARPAnet has 200 nodes Introduction: 1-73 Internet history 1980-1990: new protocols, a proliferation of networks ▪ 1983: deployment of TCP/IP ▪ new national networks: CSnet, ▪ 1982: smtp e-mail protocol BITnet, NSFnet, Minitel defined ▪ 100,000 hosts connected to ▪ 1983: DNS defined for name- confederation of networks to-IP-address translation ▪ 1985: ftp protocol defined ▪ 1988: TCP congestion control Introduction: 1-74 Internet history 1990, 2000s: commercialization, the Web, new applications ▪ early 1990s: ARPAnet late 1990s – 2000s: decommissioned ▪ more killer apps: instant ▪ 1991: NSF lifts restrictions on messaging, P2P file sharing commercial use of NSFnet ▪ network security to forefront (decommissioned, 1995) ▪ est. 50 million host, 100 million+ ▪ early 1990s: Web users hypertext [Bush 1945, Nelson 1960’s] HTML, HTTP: Berners-Lee ▪ backbone links running at Gbps 1994: Mosaic, later Netscape late 1990s: commercialization of the Web Introduction: 1-75 Internet history 2005-present: more new applications, Internet is “everywhere” ▪ ~18B devices attached to Internet (2017) rise of smartphones (iPhone: 2007) ▪ aggressive deployment of broadband access ▪ increasing ubiquity of high-speed wireless access: 4G/5G, WiFi ▪ emergence of online social networks: Facebook: ~ 2.5 billion users ▪ service providers (Google, FB, Microsoft) create their own networks bypass commercial Internet to connect “close” to end user, providing “instantaneous” access to search, video content, … ▪ enterprises run their services in “cloud” (e.g., Amazon Web Services, Microsoft Azure) Introduction: 1-76 Chapter 1: summary We’ve covered a “ton” of material! ▪ Internet overview ▪ what’s a protocol? You now have: ▪ network edge, access network, core ▪ context, overview, packet-switching versus circuit- switching vocabulary, “feel” Internet structure of networking ▪ performance: loss, delay, throughput ▪ more depth, ▪ layering, service models detail, and fun to ▪ security follow! ▪ history Introduction: 1-77 Additional Chapter 1 slides Introduction: 1-78 ISO/OSI reference model Two layers not found in Internet application protocol stack! presentation ▪ presentation: allow applications to interpret meaning of data, e.g., encryption, session compression, machine-specific conventions transport ▪ session: synchronization, checkpointing, network recovery of data exchange link ▪ Internet stack “missing” these layers! physical these services, if needed, must be implemented in application The seven layer OSI/ISO reference model needed? Introduction: 1-79 Wireshark application (www browser, packet email client) analyzer application OS packet Transport (TCP/UDP) Network (IP) capture copy of all Ethernet frames Link (Ethernet) (pcap) sent/received Physical Introduction: 1-80