Computer Networking: A Top-Down Approach - Chapter 1 Notes
Introduction
- These slides are freely available for educational use, with the request that the source be mentioned when used and copyright acknowledged when posted online.
Chapter 1: Introduction
- Goal: To gain a foundational understanding of networking terminology and concepts.
- Overview:
- What is the Internet and its protocols?
- Network Edge: Hosts, access networks, and physical media.
- Network Core: Packet/circuit switching, Internet structure.
- Performance metrics: Loss, delay, and throughput.
- Protocol layers and service models.
- Security considerations.
- Historical context.
Internet: A Nuts and Bolts View
- The Internet consists of billions of connected computing devices (hosts or end systems) running network applications at the edge.
- Networks are collections of devices, routers, and links managed by organizations.
- Packet switches forward data in chunks (packets) using routers and switches.
- Communication links use fiber, copper, radio, or satellite, with transmission rate measured by bandwidth.
Internet-Connected Devices
- Examples include web-enabled toasters, Internet phones, security cameras, IP picture frames, refrigerators, and various sensors and monitors.
- Also includes gaming devices, cars, scooters, bikes, AR devices, and health monitors.
Internet: Network of Networks
- The Internet is an interconnected network of ISPs.
- Protocols govern message sending and receiving (e.g., HTTP, streaming video, Skype, TCP, IP, WiFi, Ethernet, 4/5G).
- Internet standards are documented in RFCs (Request for Comments) and managed by the IETF (Internet Engineering Task Force).
Internet: A Services View
- The Internet provides services to applications like web browsing, streaming video, teleconferencing, email, games, e-commerce, and social media.
- It offers a programming interface for distributed applications with “hooks” for sending/receiving apps to use Internet transport services.
- Service options are provided, similar to postal service options.
What’s a Protocol?
- Protocols define the format and order of messages exchanged among network entities, as well as actions taken upon message transmission or receipt.
- They establish rules for specific messages sent and actions triggered by received messages or other events.
Protocol Examples
- Human protocol: "What's the time?" followed by a response.
- Computer network protocol: TCP connection requests and responses, HTTP GET requests, etc.
Roadmap
- Topics to be covered:
- 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
Internet Structure: Network Edge
- Network edge includes hosts (clients and servers), with servers often located in data centers.
- Access networks and physical media involve wired and wireless communication links.
Internet Structure: Network Core
- The network core comprises interconnected routers forming a network of networks.
- Methods for connecting end systems to the edge router include residential access networks, institutional access networks (schools, companies), and mobile access networks (WiFi, 4G/5G).
Access Networks: Cable-Based
- Cable modem connects homes to the cable headend using a shared cable distribution network.
- HFC (hybrid fiber coax) provides asymmetric transmission rates (up to 40 Mbps – 1.2 Gbps downstream, 30-100 Mbps upstream).
- Frequency Division Multiplexing (FDM) transmits different channels in different frequency bands.
Access Networks: DSL
- DSL uses existing telephone lines to connect homes to the central office DSLAM.
- Voice and data are transmitted at different frequencies.
- Dedicated transmission rates of 24-52 Mbps downstream and 3.5-16 Mbps upstream.
Access Networks: Home Networks
- Home networks use cable or DSL modems, routers, firewalls, and NAT.
- Wired Ethernet (1 Gbps) and WiFi (54, 450 Mbps) are common.
- Wireless and wired devices are often combined in a single box.
Wireless Access Networks
- Shared wireless access networks connect end systems to a router via a base station (access point).
- Wireless LANs (WLANs) use 802.11b/g/n (WiFi) with transmission rates of 11, 54, 450 Mbps.
- Wide-area cellular access networks are provided by mobile operators (4G/5G) offering speeds of 10's Mbps.
Access Networks: Enterprise Networks
- Companies and universities use a mix of wired and wireless technologies, including Ethernet (100Mbps, 1Gbps, 10Gbps) and WiFi (11, 54, 450 Mbps).
Access Networks: Data Center Networks
- Data center networks use high-bandwidth links (10s to 100s Gbps) to connect thousands of servers together and to the Internet.
Host: Sending Packets of Data
- The sending host takes an application message, breaks it into packets of L bits, and transmits them into the access network at a transmission rate R.
- Packet transmission delay is calculated as \frac{L}{R}.
- Bits propagate between transmitter/receiver pairs over a physical link.
- Guided media include copper, fiber, and coax cables.
- Unguided media involve wireless signals.
- Twisted pair (TP) cables (Category 5, 6) support 100 Mbps to 10Gbps Ethernet.
Links: Coaxial Cable
- Coaxial cable consists of two concentric copper conductors and supports bidirectional communication with multiple frequency channels (100’s Mbps per channel).
Links: Fiber Optic Cable
- Fiber optic cables transmit light pulses through glass fiber, enabling high-speed point-to-point transmission (10’s-100’s Gbps).
- They have low error rates and are immune to electromagnetic noise.
Links: Wireless Radio
- Wireless radio transmits signals in various bands of the electromagnetic spectrum without physical wires.
- It uses broadcast and half-duplex communication, subject to reflection, obstruction, and interference.
- Types include:
- Wireless LAN (WiFi): 10-100’s Mbps over 10’s of meters.
- Wide-area (4G/5G cellular): 10’s Mbps over ~10 Km.
- Bluetooth: Short distances, limited rates.
- Terrestrial microwave: Point-to-point; 45 Mbps channels.
- Satellite: Up to < 100 Mbps downlink with 270 msec delay.
Network Core: Packet Switching
- The network core uses packet switching, where hosts break application-layer messages into packets.
- Packets are forwarded from one router to the next across links from source to destination.
Network-Core Functions
- Forwarding: Moving packets from a router’s input link to the appropriate output link based on the destination address.
- Routing: Determining the source-destination paths taken by packets using routing algorithms.
Packet-Switching: Store-and-Forward
- Packet transmission delay involves pushing an L-bit packet into a link at R bps, taking \frac{L}{R} seconds.
- Store-and-forward requires the entire packet to arrive at a router before it can be transmitted on the next link.
- Numerical example: For L = 10 Kbits and R = 100 Mbps, one-hop transmission delay is 0.1 msec.
Packet-Switching: Queueing
- Queueing occurs when the arrival rate exceeds the service rate, leading to packets waiting for transmission over the output link.
Packet-Switching: Queueing and Loss
- If the arrival rate (in bps) to a link exceeds the transmission rate (bps) for a period:
- Packets queue, waiting to be transmitted on the output link.
- Packets can be dropped (lost) if the router's memory (buffer) fills up.
Circuit Switching
- Circuit switching allocates end-end resources for a call between source and destination.
- Dedicated resources ensure guaranteed performance, but circuit segments remain idle if not used, resulting in no sharing.
- Commonly used in traditional telephone networks.
Circuit Switching: FDM and TDM
- Frequency Division Multiplexing (FDM) divides optical or electromagnetic frequencies into narrow bands.
- Time Division Multiplexing (TDM) divides time into slots, allocating each call to its own slot(s) for transmission at the maximum rate.
Packet Switching vs. Circuit Switching
- Example: 1 Gb/s link with users needing 100 Mb/s when active (10% of the time).
- Circuit-switching: Supports 10 users.
- Packet switching: Can support more users with a small probability of congestion.
- Packet switching is great for "bursty" data, offering resource sharing and simplicity but potential congestion.
Internet Structure: A Network of Networks
- Hosts connect to the Internet via access ISPs, which interconnect to allow any two hosts to send packets to each other.
- The resulting network is complex, driven by economics and national policies.
Internet Structure: Connecting Access ISPs
- Connecting each access ISP directly to each other doesn't scale due to O(N^2) connections.
Internet Structure: Global Transit ISPs
- Connect each access ISP to one global transit ISP, forming customer and provider agreements.
Internet Structure: Competitors and IXPs
- Multiple global ISPs compete and connect to each other through Internet Exchange Points (IXPs).
Internet Structure: Regional Networks and Content Providers
- Regional networks connect access nets to ISPs.
- Content provider networks (e.g., Google, Microsoft, Akamai) run their own networks to bring services and content closer to end-users.
Internet Structure: Tier-1 ISPs and Content Networks
- The center consists of well-connected large networks, including tier-1 commercial ISPs and content provider networks.
Packet Delay and Loss
- Packets queue in router buffers, and queue length grows when the arrival rate temporarily exceeds the output link capacity.
- Packet loss occurs when the memory fills up.
Packet Delay: Four Sources
- d_{\text{proc}}: Nodal processing delay (check bit errors, determine output link).
- d_{\text{queue}}: Queueing delay (time waiting at the output link).
- d_{\text{trans}}: Transmission delay (\frac{L}{R}, where L is the packet length and R is the link transmission rate).
- d_{\text{prop}}: Propagation delay (\frac{d}{s}, where d is the link length and s is the propagation speed).
Caravan Analogy
- Illustrates transmission vs. propagation delay using a caravan of cars passing through toll booths.
Packet Queueing Delay (Revisited)
- Traffic intensity is defined as \frac{La}{R}, where a is the average packet arrival rate.
- If \frac{La}{R} \approx 0, average queueing delay is small.
- If \frac{La}{R} \rightarrow 1, average queueing delay becomes large.
- If \frac{La}{R} > 1, the average delay is infinite.
Real Internet Delays and Routes
- The
traceroute program provides delay measurements from source to router along the end-end path.
Packet Loss
- Packets arriving to a full queue are dropped (lost).
- Lost packets may be retransmitted or not, depending on the protocol.
Throughput
- Throughput is the rate at which bits are sent from sender to receiver.
- Bottleneck link: The link on the end-end path that constrains the end-end throughput.
Throughput: Network Scenario
- Each connection end-to-end throughput: \min(Rc, Rs, \frac{R}{10})
Network Security
- The Internet was not originally designed with strong security.
- Security considerations are now crucial at all layers.
Network Security Threats
- Packet sniffing: Interception of packets.
- IP spoofing: Injection of packets with a false source address.
- Denial of Service (DoS): Overwhelming resources with bogus traffic.
Lines of Defense
- Authentication: Proving identity.
- Confidentiality: Using encryption.
- Integrity checks: Using digital signatures.
- Access restrictions: Password-protected VPNs.
- Firewalls: Filtering packets to restrict senders, receivers, and applications.
Protocol Layers and Reference Models
- Networks are complex, and protocol layers help organize network structure.
Example: Organization of Air Travel
- Layers: Ticketing service, baggage service, gate service, runway service, routing service. Each layer offers specific services.
Why Layering
- Explicit Structure
- Modularity
Layered Internet Protocol Stack
- Application: (HTTP, IMAP, SMTP, DNS).
- Transport: (TCP, UDP).
- Network: (IP, routing protocols).
- Link: (Ethernet, 802.11, PPP).
- Physical: Bits on the wire.
Services, Layering and Encapsulation
- Each layer encapsulates data from the layer above by adding a header.
Internet History: Early Packet-Switching
- 1961: Kleinrock's queueing theory.
- 1964: Baran's packet-switching.
- 1969: First ARPAnet node operational.
- 1972: ARPAnet public demo and first e-mail program.
Internet History: Internetworking
- 1974: Cerf and Kahn's architecture for interconnecting networks.
- 1976: Ethernet at Xerox PARC.
- Cerf and Kahn’s Internetworking Principles:
- Minimalism, autonomy.
- Best-effort service model.
- Stateless routing.
- Decentralized control.
Internet History: Proliferation of Networks
- 1983: Deployment of TCP/IP.
- 1983: DNS defined for name-to-IP address translation.
- 1988: TCP congestion control.
Internet History: Commercialization
- Early 1990s: NSF lifts restrictions on commercial use of NSFnet.
- Early 1990s: Web (HTML, HTTP, Berners-Lee).
- Late 1990s: Commercialization of the Web.
Internet History: Scale, SDN, Mobility, Cloud
- Aggressive deployment of broadband access.
- 2008: Software-defined networking (SDN).
- Increasing ubiquity of high-speed wireless access.
- Service providers create their own networks, and enterprises run services in the cloud.
- Rise of smartphones.
Chapter Summary
- Overview of the Internet, protocols, network edge, core, packet vs circuit switching, performance, layering, security, and history.
ISO/OSI Reference Model
- Presentation: (Encryption, Compression, Machine-Specific Conventions).
- Session: (Synchronization, Checkpointing, Recovery of Data Exchange).
Wireshark
- Transport, Network, Link, and Physical layers used to capture network packets.