Computer Networking:
a Top-Down Approach (8th ed.):
Notes of "Select" Lectures
Chapter 1 Computer Networks and the Internet
1.1 What Is the Internet?
A nuts-and-bolts and a services description. What is a protocol?
1.1.1 A Nuts-and-Bolts Description
Billions of connected computing devices:
• hosts (主机)= end systems (端系统)
• running network apps (应用) at Internet's "edge" (边缘)
Packet switches (分组交换机) : forward packets (分组) (chunks of data)
• routers (路由器) , switches (交换机)
Communication links (通信链路)
• fiber (光纤) , copper (铜) , radio (无线电) , satellite (卫星)
• transmission rate (传输速率): bandwidth (带宽)
Networks
• collection of devices, routers, links: managed by an organization
Internet: "network of networks"
• Interconnected ISPs (Internet Service Providers, 因特网服务提供商)
Protocols are everywhere
• control sending, receiving of messages (报文)
• e.g., HTTP (Web), streaming video, Skype, TCP, IP, WiFi, 4G, Ethernet
Internet standards
• RFC: Request for Comments (请求评论)
• IETF: Internet Engineering Task Force (因特网工程任务组)
1.1.2 A Services Description
Infrastructure that provides services to applications:
• Web, streaming video, multimedia teleconferencing, email, games, e-commerce, social media, inter-connected appliances, …
provides programming interface to distributed applications (分布式应用程序):
• "hooks" allowing sending/receiving apps to "connect" to, use Internet transport service
• provides service options, analogous to postal service
1.1.3 What Is a Protocol?
Network protocols:
• computers (devices) rather than humans
• all communication activity in Internet governed by protocols
Protocols (协议) define the format, order of messages sent and received among network entities, and actions taken on message transmission, receipt
1.2 The Network Edge
Access networks, physical media
A closer look at Internet structure
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
1.2.1 Access Networks
Q: How to connect end systems to edge router?
• residential access nets
• institutional access networks (school, company)
• mobile access networks (WiFi, 4G/5G)
Cable-based Access
Frequency division multiplexing (FDM, 频分复用): different channels transmitted in different frequency bands
HFC: hybrid fiber coax (混合光纤同轴)
• asymmetric: up to 40 Mbps – 1.2 Gbps 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
Digital Subscriber Line (DSL, 数字用户线)
Use existing telephone line to central office DSLAM (digital subscriber line access multiplexer, 数字用户线接入复用器)
• 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
Home Networks
Wireless Access Networks
• Shared wireless access network connects end system to router
• via base station (基站) aka "access point" (接入点)
Wireless local area networks (WLANs)
• typically within or around 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 cellular networks (5G coming)
Enterprise Networks
companies, universities, etc.
mix of wired, wireless link technologies, connecting a mix of switches and routers
• Ethernet: wired access at 100Mbps, 1Gbps, 10Gbps
• WiFi: wireless access points at 11, 54, 450 Mbps
Data Center Networks
high-bandwidth links (10s to 100s Gbps) connect hundreds to thousands of servers together, and to Internet
Host: sends packets of data
host sending function:
• takes application message
• breaks into smaller chunks, known as packets, of length L bits
• transmits packet into access network at transmission rate R
• link transmission rate, aka link capacity, aka link bandwidth
packet transmission delay = time needed to transmit L-bit packet into link = L (bits) /R (bits/sec)
1.2.2 Physical Media
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, e.g., radio
Twisted pair (TP, 双绞铜线)
two insulated (绝缘的) copper wires
• Category 5: 100 Mbps, 1 Gbps Ethernet
• Category 6: 10Gbps Ethernet
Coaxial cable (同轴电缆)
two concentric (同心的) copper conductors
bidirectional
broadband:
• multiple frequency channels on cable
• 100's Mbps per channel
Fiber optic cable (光纤电缆)
glass fiber carrying light pulses, each pulse a bit
high-speed operation:
• high-speed point-to-point transmission (10's-100's Gbps)
low error rate:
• repeaters spaced far apart
• immune to electromagnetic noise
Wireless radio
signal carried in various "bands" in electromagnetic spectrum
no physical "wire"
broadcast, "half-duplex" (半双工,sender to receiver)
propagation environment effects:
• reflection
• obstruction by objects
• interference/noise
Radio link types:
• Wireless LAN (WiFi)
• 10-100's Mbps; 10's of meters
• wide-area (e.g., 4G cellular)
• 10's Mbps over ~10 Km
• Bluetooth: cable replacement
• short distances, limited rates
• terrestrial (陆地的) microwave
• point-to-point (点对点); 45 Mbps channels
• satellite
• up to 45 Mbps per channel
• 270 msec end-end delay
1.3 Network Core
Forwarding, routing; packet switching; circuit switching; a network of networks
The network core
Mesh (网状物) of interconnected routers
Packet-switching (分组交换): hosts break application-layer messages into packets
• network forwards packets from one router to the next, across links on path from source to destination
Two key network-core functions
Forwarding (转发) :
• aka "switching" (交换)
• local action: move arriving packets from router's input link to appropriate router output link
Routing (路由):
• global action: determine source-destination paths taken by packets
• routing algorithms
1.3.1 Packet Switching
Packet transmission delay (时延): takes L/R seconds to transmit (push out) L-bit packet into link at R bps
Store-and-Forward (存储转发) Transmission
Store and forward: entire packet must arrive at router before it can be transmitted on next link
One-hop (跳) numerical example:
• L = 10 Kbits
• R = 100 Mbps
• one-hop transmission delay = 0.1 msec
Queuing Delays and Packet Loss
Queueing occurs when work arrives faster than it can be serviced
Packet queuing and loss: if arrival rate (in bps) to link exceeds transmission rate (bps) of link for some 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
1.3.2 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
Multiplexing in Circuit-Switched Networks
Frequency Division Multiplexing (FDM, 频分复用)
• optical, electromagnetic frequencies divided into (narrow) frequency bands
• each call allocated its own band, can transmit at max rate of that narrow band
Time Division Multiplexing (TDM, 时分复用)
• time divided into slots
• each call allocated periodic slot(s), can transmit at maximum rate of (wider) frequency band (only) during its time slot(s)
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 (拥塞控制)
1.3.3 A Network of Networks
hosts connect to Internet via access Internet Service Providers (ISPs)
access ISPs in turn must be interconnected
• so that any two hosts (anywhere!) can send packets to each other
resulting network of networks is very complex
• evolution driven by economics, national policies
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
1.4 Delay (时延), Loss (丢包), and Throughput (吞吐量) in Packet-Switched Networks
Packet delay and loss, end-end throughput
1.4.1 Overview of Delay in Packet-Switched Networks
Packets queue in router buffers, waiting for turn for transmission
• queue length grows when arrival rate to link (temporarily) exceeds output link capacity
packet loss occurs when memory to hold queued packets fills up
Types of Delay
dnodal = dproc + dqueue + dtrans + dprop
dproc: Processing Delay (处理时延)
• check bit errors
• determine output link
• typically < microsecs
dqueue: QueueingDelay (排队时延)
• time waiting at output link for transmission
• depends on congestion level of router
dtrans: Transmission Delay (传输时延)
• L: packet length (bits)
• R: link transmission rate (bps)
• dtrans = L/R
dprop: Propagation Delay (传播时延)
• d: length of physical link
• s: propagation speed (~2x108 m/sec)
• dprop = d/s
dtrans and dprop
very different
1.4.2 Queuing Delay and Packet Loss
a: average packet arrival rate
L: packet length (bits)
R: link bandwidth (bit transmission rate)
La/R : arrival rate of bits / service rate of bits "traffic intensity"
La/R ~ 0: avg. queueing delay small
La/R -> 1: avg. queueing delay large
La/R > 1: more "work" arriving is more than can be serviced - average delay infinite!
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
1.4.3 End-to-End Delay
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
1.4.4 Throughput in Computer Networks
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
bottleneck link (瓶颈链路)
link on end-end path that constrains end-end throughput
per-connection end-end throughput: min(Rc, Rs , R/10)
in practice: Rc or Rs is often bottleneck
1.5 Protocol Layers and Their Service Models
Layered architecture, encapsulation.
1.5.1 Layered Architecture
Networks are complex, with many "pieces":
• hosts
• routers
• links of various media
• applications
• protocols
• hardware, software
layers: each layer implements a service
• via its own internal-layer actions
• relying on services provided by layer below
Why layering?
Approach to designing/discussing complex systems:
• explicit structure allows identification, relationship of 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
Protocol Layering
Layered Internet protocol stack (协议栈)
Application Layer
application: supporting network applications
• HTTP, IMAP, SMTP, DNS
Transport Layer
transport: process-process data transfer
• TCP, UDP
Network Layer
network: routing of datagrams from source to destination
Link Layer
• IP, routing protocols
link: data transfer between neighboring network elements
Physical Layer
• Ethernet, 802.11 (WiFi), PPP
physical: bits "on the wire"
1.5.2 Encapsulation
Application exchanges messages (报文) to implement some application service using services of transport layer
Transport-layer protocol transfers M (e.g., reliably) from one process to another, using services of network layer
• transport-layer protocol encapsulates application-layer message, M, with transport layer-layer header Ht to create a transport-layer segment (报文段)
• Ht used by transport layer protocol to implement its service
Network-layer protocol transfers transport-layer segment [Ht | M] from one host to another, using link layer services
• network-layer protocol encapsulates transport-layer segment [Ht | M] with network layer-layer header Hn to create a network-layer datagram (数据报)
• Hn used by network layer protocol to implement its service
Link-layer protocol transfers datagram [Hn| [Ht |M] from host to neighboring host, using network-layer services
• link-layer protocol encapsulates network datagram [Hn| [Ht |M], with link-layer header Hl to create a link-layer frame (帧)
Encapsulation: an end-end view
1.6 Networks Under Attack
What can bad actors do? What defenses?
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!
We now need to think about:
• how bad guys can attack computer networks
• how we can defend networks against attacks
• how to design architectures that are immune to attacks
The Bad Guys Can Attack Servers and Network Infrastructure
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 from compromised hosts (受害主机)
The Bad Guys Can Sniff Packets
Packet "sniffing" (嗅探分组):
broadcast media (shared Ethernet, wireless)
promiscuous network interface reads/records all packets (e.g., including passwords!) passing by
The Bad Guys Can Masquerade as Someone You Trust
IP spoofing (IP哄骗): injection of packet with false source address
Lines of defense
Authentication (鉴别): proving you are who you say you are
• cellular networks provides hardware identity via SIM card; no such hardware assist in traditional Internet
confidentiality (机密性): via encryption
integrity checks (完整性检查): digital signatures prevent/detect tampering (篡改)
access restrictions: password-protected VPNs
firewalls: specialized "middleboxes" (中间盒) in access and core networks:
• off-by-default: filter incoming packets to restrict senders, receivers, applications
• detecting/reacting to DOS attacks
1.7 Internet history
From 1961 until today!
1.7.1 The Development of Packet Switching
Early packet-switching principles
1.7.2 Proprietary Networks (专用网络) and Internetworking
Internetworking, new and proprietary networks
1.7.3 A Proliferation (激增) of Networks
New protocols, a proliferation of networks
1.7.4 The Internet Explosion
Commercialization, the Web, new applications
1.7.5 The New Millennium
Scale, SDN, mobility, cloud