Computer Networking: A Top-Down Approach - Chapter 1 Notes
Introduction
- 1-1 Chapter 1 Introduction
- Slides are freely available for educational use.
- Attribution is requested if used in classes or online.
- Copyright 1996-2023 J.F Kurose and K.W. Ross.
- Computer Networking: A Top-Down Approach, 8th edition, Jim Kurose, Keith Ross, Pearson, 2020.
Overview
- Chapter 1 Goals
- To gain a feel and big-picture understanding of networking terminology.
- Deeper dives come later.
- 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.
- Protocol layers, service models.
- Security.
- History.
Internet: Nuts and Bolts View
- Internet: A network of networks.
- Includes mobile, home, enterprise, and data center networks, interconnected via ISPs.
- Packet Switches: Forward packets (data chunks).
- Includes routers and switches.
- Communication Links: Various media with different transmission rates (bandwidth).
- Fiber, copper, radio, satellite.
- Connected Devices: Billions of devices.
- Hosts or end systems run network applications at the Internet's edge.
- Networks: Collections of devices, routers, and links managed by organizations.
Internet-Connected Devices
- Examples of connected devices:
- Web-enabled toaster, weather forecaster, Internet phones.
- Slingbox, security cameras, IP picture frames, Internet refrigerator.
- Tweet-a-watt (energy monitor), sensorized bed mattress, Amazon Echo.
- Gaming devices, cars, scooters, bikes.
- Pacemaker, monitors, AR devices, Fitbit, diapers.
Internet: Network of Networks
- Internet is a network of interconnected ISPs.
- Protocols are Essential
- Control sending and receiving of messages.
- Examples: HTTP (Web), streaming video, Skype, TCP, IP, WiFi, 4/5G, Ethernet.
- Internet Standards
- RFC: Request for Comments.
- IETF: Internet Engineering Task Force.
Internet: Services View
- Infrastructure for applications
- Supports web, streaming video, teleconferencing, email, games, e-commerce, social media, interconnected appliances.
- Programming Interface
- Provides "hooks" for apps to connect to and use Internet transport services.
- Offers service options similar to postal service.
What's a Protocol?
- Human Protocols
- Examples: Asking the time, asking a question, introductions.
- Network Protocols
- Govern all communication activity in the Internet.
- Define format, order of messages, and actions taken on transmission/receipt.
- Rules
- Specify messages sent and actions taken upon receipt or other events.
Protocol Examples
- Human Protocol
- A: Hi
- B: Hi
- A: Got the time?
- B: 2:00
- Computer Network Protocol
- TCP connection request.
- TCP connection response.
- GET http://gaia.cs.umass.edu/kurose_ross
Network Edge
- The network edge comprises hosts (clients and servers).
- Servers are often located in data centers.
- Network Edge
- Hosts: clients and servers.
- Servers: often in data centers.
- Access Networks, Physical Media
- Wired, wireless communication links.
- Network Core
- Interconnected routers.
- Network of networks.
Connecting to the Edge Router
- How do end systems connect to the edge router?
- Residential access networks.
- Institutional access networks (school, company).
- Mobile access networks (WiFi, 4G/5G).
Cable-Based Access Networks
- Cable Modem
- Connects homes to the cable headend.
- Frequency Division Multiplexing (FDM)
- Different channels transmitted in different frequency bands.
Cable-Based Access Details
- Data and TV transmitted at different frequencies over a shared cable distribution network.
- HFC: Hybrid Fiber Coax
- Asymmetric: Up to 40 Mbps – 1.2 Gbps downstream, 30-100 Mbps upstream.
- Network of cable and fiber connects homes to ISP router.
- Homes share access network to the cable headend.
- CMTS: Cable Modem Termination System
Digital Subscriber Line (DSL) Access
- Central Office
- Connects homes to the DSLAM.
- Voice and data transmitted at different frequencies over a dedicated line to the central office.
- Use existing telephone lines to central office DSLAM.
- Data over DSL goes to the Internet; voice goes to the telephone net.
- 24-52 Mbps dedicated downstream.
- 3.5-16 Mbps dedicated upstream.
- DSL modem and DSL access multiplexer.
Home Networks
- Connections:
- To/from headend or central office.
- Cable or DSL modem.
- Router, firewall, NAT.
- Wired Ethernet (1 Gbps).
- WiFi wireless access point (54, 450 Mbps).
- Wireless and wired devices are often combined in a single box.
Wireless Access Networks
- Shared wireless access network connects end system to router via a base station (access point).
- Wireless Local Area Networks (WLANs)
- Typically within or around a building (~100 ft).
- 802.11b/g/n (WiFi): 11, 54, 450 Mbps transmission rate.
- Wide-Area Cellular Access Networks
- Provided by mobile, cellular network operator (10’s km).
- 10’s Mbps.
- 4G/5G cellular networks.
Enterprise Networks
- Used by companies, universities, etc.
- Mix of wired, wireless link technologies.
- Connects a mix of switches and routers.
- Ethernet: wired access at 100Mbps, 1Gbps, 10Gbps.
- WiFi: wireless access points at 11, 54, 450 Mbps.
- Institutional mail, web servers and router.
- Enterprise link to ISP (Internet).
Data Center Networks
- High-bandwidth links (10s to 100s Gbps).
- Connect hundreds to thousands of servers together and to the Internet.
Host Sending Data
- Host: Sends packets of data.
- Sending Function
- Takes application message.
- Breaks into smaller chunks, known as packets, of length L bits.
- Transmits packet into the access network at transmission rate R. Where
R is the link transmission rate, also known as link capacity or link bandwidth.
- Packet transmission delay (time needed to transmit L-bit packet into link) is calculated as:
- \frac{L \text{ (bits)}}{R \text{ (bits/sec)}}
- Bit: Propagates between transmitter/receiver pairs.
- Physical Link: What lies between transmitter & receiver.
- Guided Media: Signals propagate in solid media (copper, fiber, coax).
- Unguided Media: Signals propagate freely (radio).
- Twisted Pair (TP)
- Two insulated copper wires.
- Category 5: 100 Mbps, 1 Gbps Ethernet.
- Category 6: 10Gbps Ethernet.
Coaxial and Fiber Optic Cables
- Coaxial Cable:
- Two concentric copper conductors.
- Bidirectional.
- Broadband: multiple frequency channels.
- 100’s Mbps per channel.
- Fiber Optic Cable:
- Glass fiber carrying light pulses.
- High-speed: 10’s-100’s Gbps.
- Low error rate.
- Immune to electromagnetic noise.
Wireless Radio Links
- Signal carried in electromagnetic spectrum bands.
- No physical "wire."
- Broadcast, half-duplex (sender to receiver).
- Propagation environment effects: reflection, obstruction, interference.
- Radio Link Types:
- Wireless LAN (WiFi): 10-100’s Mbps; 10’s of meters.
- Wide-area (e.g., 4G/5G cellular): 10’s Mbps (4G) over ~10 Km.
- Bluetooth: short distances, limited rates.
- Terrestrial microwave: point-to-point; 45 Mbps channels.
- Satellite: up to < 100 Mbps (Starlink) downlink, 270 msec delay.
Network Core Overview
- The network core is a mesh of interconnected routers.
- Packet-switching: Hosts break application-layer messages into packets.
- The network forwards packets from one router to the next across links on the path from source to destination.
Key Network Core Functions
- Forwarding (Switching)
- Local action: move arriving packets from router’s input link to appropriate router output link.
- Uses a local forwarding table.
- Routing
- Global action: Determine source-destination paths taken by packets.
- Uses routing algorithms to update the forwarding table.
Packet-Switching: Store-and-Forward
- Packet transmission delay: Time to transmit (push out) an L-bit packet into a link at rate R bps.
- Store and forward: Entire packet must arrive at the router before it can be transmitted on the next link.
- One-hop transmission delay: If L = 10 Kbits and R = 100 Mbps, the one-hop transmission delay = 0.1 msec.
Packet-Switching: Queueing
- Queueing occurs when work arrives faster than it can be serviced.
Packet Queueing and Loss
- If the arrival rate (in bps) to a link exceeds the transmission rate (bps) of the link for some time:
- Packets will queue, waiting to be transmitted on the output link.
- Packets can be dropped (lost) if the memory (buffer) in the router fills up.
Circuit Switching
- End-to-end resources are allocated to and reserved for a "call" between source and destination.
- Dedicated resources: no sharing.
- Circuit segment is idle if not used by the call (no sharing).
- Commonly used in traditional telephone networks.
Circuit Switching: FDM and TDM
- Frequency Division Multiplexing (FDM)
- Optical, electromagnetic frequencies divided into narrow frequency bands.
- Each call gets its own band and can transmit at the max rate of that band.
- Time Division Multiplexing (TDM)
- Time is divided into slots.
- Each call is allocated periodic slots and can transmit at the maximum rate during its time slot.
Packet Switching vs. Circuit Switching
- Example:
- 1 Gb/s link.
- Each user:
- 100 Mb/s when active.
- Active 10% of the time.
- Question: How many users can use this network under circuit-switching and packet switching?
- Circuit-switching: 10 users.
- Packet switching: with 35 users, the probability of > 10 active users at the same time is less than 0.0004.
Packet Switching Advantages
- Great for "bursty" data with intermittent transmission needs.
- Resource sharing.
- Simpler, no call setup required.
- Excessive congestion is possible.
- Packet delay and loss due to buffer overflow.
- Protocols needed for reliable data transfer and congestion control.
- Question: How to provide circuit-like behavior with packet-switching?
Internet Structure
- Hosts connect to the Internet via access Internet Service Providers (ISPs).
- Access ISPs must be interconnected.
- So that any two hosts can send packets to each other.
- The resulting network of networks is very complex.
- Evolution driven by economics and national policies.
Connecting Access ISPs
- Challenge: How to connect millions of access ISPs?
- Connecting each access ISP to each other directly doesn’t scale: O(N^2) connections.
Transit ISPs
- Option: Connect each access ISP to one global transit ISP?
- Customer and provider ISPs have economic agreements.
Internet Exchange Points (IXP)
- If one global ISP is viable, there will be competitors.
- Competitors will want to be connected.
- Internet exchange point peering link (IXP)
Regional Networks and Content Providers
- Regional networks may arise to connect access nets to ISPs.
- Content provider networks (e.g., Google, Microsoft, Akamai) may run their own network to bring services and content closer to end-users.
Tier-1 ISPs and Content Provider Networks
- At the 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 the Internet, often bypassing tier-1, regional ISPs.
Packet Delay and Loss
- Packets queue in router buffers, waiting for their turn for transmission.
- Queue length grows when the arrival rate to the link (temporarily) exceeds the output link capacity.
- Packet loss occurs when memory to hold queued packets fills up.
Packet Delay: Four Sources
- d{\text{nodal}} = d{\text{proc}} + d{\text{queue}} + d{\text{trans}} + d_{\text{prop}}
- d_{\text{proc}}: Nodal Processing
- Check bit errors.
- Determine output link.
- Typically < microsecs.
- d_{\text{queue}}: Queueing Delay
- Time waiting at output link for transmission.
- Depends on congestion level of router.
Transmission vs. Propagation Delay
- d_{\text{trans}}: Transmission Delay
- L: Packet length (bits).
- R: Link transmission rate (bps).
- d_{\text{trans}} = L/R
- d_{\text{prop}}: Propagation Delay
- d: Length of physical link.
- s: Propagation speed (~2x108 m/sec).
- d_{\text{prop}} = d/s
- Transmission and propagation delays are very different.
Caravan Analogy
- Car ~ bit; caravan ~ packet; toll service ~ link transmission.
- The toll booth takes 12 seconds to service a car (bit transmission time).
- "Propagate" at 100 km/hr.
- Question: How long until the caravan is lined up before the 2nd toll booth?
- Time to “push” the entire caravan through the toll booth onto the highway = 12 * 10 = 120 seconds.
- Time for the last car to propagate from the 1st to the 2nd toll booth: 100km / (100km/hr) = 1 hour.
- Answer: 62 minutes.
Caravan Analogy Revisited
- Cars "propagate" at 1000 km/hr.
- Toll booth now takes one minute to service a car.
- Question: Will cars arrive at the 2nd booth before all cars are serviced at the first booth?
- Answer: Yes! After 7 minutes, the first car arrives at the second booth; three cars are still at the first booth.
Packet Queueing Delay
- Variables:
- a: Average packet arrival rate.
- L: Packet length (bits).
- R: Link bandwidth (bit transmission rate).
- Traffic intensity, \frac{La}{R} : average queueing delay large, greater than 1 then average delay is infinite
Real Internet Delays and Routes
- Traceroute program: Measures delay from source to router along the Internet path to the destination.
- Sends three packets to router i on the path towards the destination.
- Router i returns packets to the sender.
- The sender measures the time interval between transmission and reply.
Traceroute Example
- Example output shows delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu.
- Traceroute output indicates delays decrease.
- Also, the presence of trans-oceanic links introduces more delay.
* = probe lost or router not replying
Packet Loss
- A buffer, preceding link, has finite capacity.
- Packet arriving to full queue dropped (lost).
- Lost packet may be retransmitted: may not be retransmitted at all.
Throughput
- Throughput: Rate (bits/time unit) at which bits are sent from sender to receiver.
- Instantaneous: Rate at a given point in time.
- Average: Rate over a longer period of time.
- Scenario: A server with a file of F bits to send to a client.
- Server sends bits (fluid) into pipe.
Bottleneck Link
- End-to-end throughput is constrained by the bottleneck link.
Network Scenario & Throughput
- Scenario: 10 connections share a backbone bottleneck link of R bits/sec. Rs and Rc are link capacities.
- Per-connection end-to-end throughput: min(Rc, Rs, R/10).
- In practice: Rc or Rs is often the bottleneck.
Network Security Concerns
- Internet originally designed with minimal security.
- Original vision: "a group of mutually trusting users attached to a transparent network."
- Internet protocol designers are playing "catch-up" regarding security.
- Security considerations are now present in all layers.
- Now think about:
- How bad guys can attack computer networks.
- How to defend networks against attacks.
- How to design architectures immune to attacks.
Packet Sniffing
- Broadcast media (shared Ethernet, wireless).
- Promiscuous network interface reads/records all packets (e.g., including passwords!) passing by.
- Wireshark software is a free packet-sniffer.
IP Spoofing
- Injection of packet with false source address.
Denial of Service (DoS)
- Attackers make resources (server, bandwidth) unavailable to legitimate traffic.
- Overwhelm resource with bogus traffic.
- Select target
- Break into hosts around the network
- Send packets to target from compromised hosts
Lines of Defense
- Authentication: Proving you are who you say you are.
- Cellular networks use SIM cards for hardware identity; traditional Internet lacks this.
- Confidentiality: Via encryption.
- Integrity checks: Digital signatures prevent/detect tampering.
- Access restrictions: Password-protected VPNs.
- Firewalls: specialized “middleboxes”.
- Off-by-default: filter incoming packets to restrict senders, receivers, applications.
- Detecting/reacting to DOS attacks.
- Lots more on security.
Protocol Layers & Reference Models
- Networks are complex, with many pieces.
- Question: Is there hope of organizing structure of network?
- Is there hope for our discussion of networks?
Organization of Air Travel
- A series of steps involving many services:
- Ticketing, baggage check, gate loading, runway takeoff, airplane routing.
- Ticketing, baggage claim, gate unloading, runway landing, airplane routing.
- Layers: each layer implements a service via its own actions while relying on the services of the layer below.
Benefits of Layering
- Explicit structure facilitates identification and relationship of system pieces.
- Modularization eases maintenance and updating.
- A change in a layer's service implementation is transparent to the rest of the system.
Layered Internet Protocol Stack
- Application: Supporting network applications (HTTP, IMAP, SMTP, DNS).
- 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”.
Services, Layering, and Encapsulation
- Transport-layer protocol encapsulates application-layer message M with transport layer header H_t to create a transport-layer segment.
- Network-layer protocol encapsulates transport-layer segment [Ht | M] with network layer header Hn to create a network-layer datagram.
- Link-layer protocol encapsulates network datagram [Hn| [Ht |M]] with link-layer header H_l to create a link-layer frame.
Encapsulation
- message
- segment
- datagram
- frame
Internet History: Early Packet Switching Principles (1961-1972)
- 1961: Kleinrock - queueing theory shows effectiveness of packet-switching.
- 1964: Baran - packet-switching in military nets.
- 1967: ARPAnet conceived by Advanced Research Projects Agency.
- 1969: First ARPAnet node operational.
- 1972:
- ARPAnet public demo.
- NCP (Network Control Protocol) first host-host protocol.
- First e-mail program.
- ARPAnet has 15 nodes.
Internet History: Internetworking, New and Proprietary Networks (1972-1980)
- 1970: ALOHAnet satellite network in Hawaii.
- 1974: Cerf and Kahn - architecture for interconnecting networks.
- 1976: Ethernet at Xerox PARC.
- Late 70’s: Proprietary architectures: DECnet, SNA, XNA.
- 1979: ARPAnet has 200 nodes.
- Cerf and Kahn’s internetworking principles:
- Minimalism, autonomy - no internal changes required to interconnect networks.
- Best-effort service model.
- Stateless routing.
- Decentralized control.
Internet History: New Protocols, a Proliferation of Networks (1980-1990)
- 1983: Deployment of TCP/IP.
- 1982: smtp e-mail protocol defined.
- 1983: DNS defined for name-to -IP-address translation.
- 1985: ftp protocol defined.
- 1988: TCP congestion control.
- New national networks: CSnet, BITnet, NSFnet, Minitel.
- 100,000 hosts connected to confederation of networks.
Internet History: Commercialization, the Web, New Applications (1990, 2000s)
- Early 1990s: ARPAnet decommissioned.
- 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995).
- Early 1990s: Web.
- Hypertext [Bush 1945, Nelson 1960’s].
- HTML, HTTP: Berners-Lee.
- 1994: Mosaic, later Netscape.
- Late 1990s: Commercialization of the Web.
- Late 1990s – 2000s:
- More killer apps: instant messaging, P2P file sharing.
- Network security to the forefront.
- Est. 50 million host, 100 million+ users.
- Backbone links running at Gbps.
Internet History: Scale, SDN, Mobility, Cloud (2005-Present)
- Aggressive deployment of broadband home access (10-100’s Mbps).
- 2008: Software-defined networking (SDN).
- Increasing ubiquity of high-speed wireless access: 4G/5G, WiFi.
- Service providers (Google, FB, Microsoft) create their own networks.
- Bypass commercial Internet to connect “close” to end-user, providing “instantaneous” access to social media, search, video content.
- Enterprises run their services in “cloud” (e.g., Amazon Web Services, Microsoft Azure).
- Rise of smartphones: more mobile than fixed devices on the Internet (2017).
- ~15B devices attached to Internet (2023, statista.com).
Additional Slides
- Additional slides for Chapter 1.
ISO/OSI Reference Model
- Two layers not found in Internet protocol stack!
- Presentation: Allow applications to interpret the meaning of data.
- Session: Synchronization, checkpointing, recovery of data exchange.
- Internet stack “missing” these layers!
- These services, if needed, must be implemented in the application.
More Than Seven OSI Layers!
- Political, Financial, Here
Wireshark
- How to display transport, network, link and physical and application layers.