第1章 计算机网络导论
1. 初识互联网
1.1 网络的功能与意义
- 最基本功能:传递资源(在数字世界中表现为算力与数据的传递)。
- 网络效应 :罗伯特·梅特卡夫提出,一个网络的价值与联网节点数的平方成正比(V∝n2V \propto n^2V∝n2)。这意味着网络规模越大,其潜在价值呈指数级增长。
- 新基建:中国将5G、特高压、大数据中心、人工智能、工业互联网等列为新型基础设施,算力网络成为数字经济的基石。
1.2 互联网的层级结构
- Internet vs. internet :
internet(互连网):通用名词,指多个计算机网络互连而成的网络。Internet(互联网):专用名词,特指遵循TCP/IP标准、利用路由器将各种计算机网络互连起来而形成的、覆盖全球的、特定的互连网。
- ISP (网络服务提供商) :互联网由ISP(如中国电信、中国联通、AT&T等)构成的多层结构。
-
Tier-1 ISP :全球骨干,互不结算。

-
CDN (内容分发网络) :通过在边缘部署缓存,加速内容交付。

-
2. 网络组成与分类
2.1 按地域规模分类
-
个域网PAN (Personal Area Network)
- 能在设备之间进行短距离通信的网络
- 覆盖范围一般在10米半径以内,如蓝牙耳机等
-
局域网LAN (Local Area Network)
- 局部地区形成的区域网络,如企业网络
- 电脑WLAN接入,打印机共享等
-
家庭网络 (Home Network)
- 家庭中的LAN,如华为"全屋智能",电力猫
-
城域网MAN (Metropolitan Area Network)
- 范围覆盖一个城市的网络,如有线电视网、LTE/5G
-
广域网WAN (Wide Area Network)
- 覆盖很大地理区域,乃至覆盖地区和国家
2.2 互联网的物理构成

2.2.1 网络边缘
- 主机 Host
- 客户端
- 服务器(通常位于数据中心)
- 主机的功能
- 运行应用程序;
- 产生信息并向接入网发送数据;
- 从网络接受数据并提供给应用程序。
a.接入网
-
将主机连接到边缘路由器的技术。
-
边缘路由器是端系统Host去往任何其他远程端系统的路径上的第一台路由器。
-
FTTH (光纤到户) :通过无源光纤网络 (PON) 实现,包括 OLT(局端)和 ONT(用户端光猫)。特点是带宽大、线路稳定 。

-
DSL (数字用户线) :利用现有电话线,通过不同频率同时传输语音和数据,带宽非对称(下行 > 上行)。

-
Cable(同轴电缆)/ HFC (混合光纤同轴电缆)
- 家庭利用传统有线电视信号线(同轴电缆)接入头端上网;
- 多个家庭共享有线电视的头端
- 高度不对称:高达40 Mbps-1.2Gbps下行传输速率,30-100 Mbps上行传输速率

-
无线接入 :无线局域网(WLAN) 和广域蜂窝网 (4G/5G)。

b.物理介质
-
传输单元:位(bit),在发射机/接收机之间的物理介质上传播数据的最小单元。
- 存储 常用字节Byte,K/M/G层级为 2102^{10}210进制;
- 传输 常用比特bit,K/M/G层级为 10310^3103进制。
- 1B=8b1B=8b1B=8b。
-
引导型介质 :信号在固体介质中传播,例如双绞线(Cat 5/6)、同轴电缆、光纤。
-
非引导型介质 :信号自由传播,陆地无线电、卫星(同步卫星 vs. 低轨卫星如Starlink)。
-
光纤
- 告诉运行,低误码率。
-
双绞线
- 两根绝缘铜线互相缠绕为一对;
- 电话线为1对双绞线;
- 网线为4对双绞线。

-
同轴电缆

2.2.2 网络核心
- 网络核心是将海量的端系统互联起来的、由各类交换机(路由器)和链路构成的网状网络。
a.核心功能
- 路由:全局操作,通过路由算法确定分组从源到目的地的路径(生成路由表)。
- 转发:局部(本地)操作,根据分组头中的目的地址,将分组从输入接口移动到合适的输出接口。


c. 电路交换 (CS: Circuit Switching)
-
电路交换是指在两个节点之间通信时,需要通过网络建立一条专用 的物理或逻辑连接,核心特征是端到端的资源预留。
-
电路交换的整个生命周期必须经历以下三个过程:
- 建立连接 :
- 在数据传送之前,必须先发出连接请求。
- 沿途的交换机会检查资源是否充足,并预留出所需的信道资源。
- 若路径上某一段资源已被占满,则连接建立失败(如电话拨号时的"忙音")。
- 数据传输 :
- 数据在已建立的专用路径上高速传输。
- 传输过程中不会遇到阻塞,时延是固定的。
- 释放连接 :
- 通信结束后,必须释放沿途预留的资源,以便其他用户使用。
- 建立连接 :
-
多路复用技术 :为了让一根高带宽的物理链路同时支持多个电路连接,需要对链路资源进行切分。

-
频分复用 :将链路的总带宽(频率范围)划分为多个不同的频段,每个连接分配一个特定的频段,所有用户在同一时间 占用不同频率。
-
时分复用 :将时间划分为固定长度的帧 ,每帧再划分为多个时隙 ,每个连接被分配到每一帧中固定的某个时隙,所有用户在不同时间 占用整个频率。
-
d. 分组交换 (PS: Packet Switching)
-
每个端到端的数据流被划分成分组(
packet)- 用户A、B的分组可共享网络资源;
- 每个分组使用全部的链路带宽;
- 资源在必要时才使用,区别于电路交换的固定预分配;
- 主机A和B的报文分组按需共享带宽,称为统计多路复用。

-
存储转发机制
- 交换机/路由器在将分组的第一个比特转发到输出链路之前,必须先接收并存储整个分组。
- 传输时延计算 :
- 设分组大小为 LLL bits,链路传输速率为 RRR bps。
- 通过一条链路的传输时延为 Dtrans=L/RD_{trans} = L / RDtrans=L/R。
- 注意 :在由 NNN 条速率均为 RRR 的链路组成的路径(经过 N−1N-1N−1 个路由器)上传输一个分组,总的存储转发时延为 N×(L/R)N \times (L / R)N×(L/R)。
-
分组交换原理
-
在发送端,先把较长的报文划分成较短的、固定长度的数据段;

-
每一个数据段前面添加上首部构成分组;

-
分组交换网以"分组"作为数据传输单元,依次把各分组发送到接收端(假定接收端在左边);

-
接收端收到分组后剥去首部还原成报文。
-
-
为什么要在每个分组前面添加一个首部?
- 接收端没有首部信息无法正确组装接收的数据;
- 分组交换网中的转发节点,根据收到的分组首部中的地址信息,把分组转发到下一个节点。
-
优缺点:适合突发数据,资源利用率高;但可能产生排队时延和丢包。
- 排队时延 :
- 如果分组到达速率超过了链路的输出速率,分组就必须在路由器的缓冲区 中排队等待。
- 排队时间取决于网络的拥塞程度。
- 丢包 :
- 路由器的缓冲区容量是有限的。
- 如果分组到达时缓冲区已满,路由器将不得不丢弃该分组。
- 排队时延 :
e.电路交换与分组交换对比
| 对比维度 | 电路交换 | 分组交换 |
|---|---|---|
| 基本原理 | 在传输前建立一条专用的物理通路。 | 将数据拆分成小块(分组),存储转发。 |
| 连接性 | 面向连接。 | 无连接(直接发送,每个分组独立寻址)。 |
| 资源占用 | 独占。即便不传输数据,带宽也被占用。 | 共享。动态分配带宽,有数据才占用。 |
| 建立时延 | 高。需要长时间的物理链路建立过程。 | 低。无需预先建立连接,即发即收。 |
| 传输时延 | 极低且固定。一旦通路建立,数据透明传输。 | 抖动较大。每个节点都有存储和排队延迟。 |
| 线路利用率 | 低。对于突发性数据极其浪费。 | 高。多路复用技术让线路始终处于满载。 |
| 故障容错性 | 差。物理链路一旦中断,通信立即停止。 | 强。单个节点故障,分组可自动绕路传输。 |
| 典型应用 | 传统电话网 (PSTN)、早期移动通信。 | 互联网 (Internet)、企业局域网。 |
3. 协议与分层结构
3.1 什么是协议?
-
定义 :为多方参与的信息传递建立的约定和规范,即网络协议。
-
三要素 (必考):
- 语法:数据格式与编码。
- 语义:控制信息、动作、响应。
- 时序 :事件发生的顺序、速度匹配。

-
实例:HTTP 协议。语法定义了请求头的格式;语义定义了 GET 是请求资源,404 是未找到;时序定义了先有连接请求才有响应。
3.2 HTTP协议详解
-
HTTP协议的语法

-
HTTP协议的语义

-
HTTP协议的时序

3.3 为什么分层?
- 优势:明晰简化,便于分析学习;各层独立,加速技术演进;统一接口,确保技术互通。
- 基本概念 :
-
层次栈:为降低网络设计的复杂性,网络使用层次结构的协议栈,每一层都使用其下一层所提供的服务,并为上层提供自己的服务;
-
对等实体:不同机器上构成相应层次的实体成为对等实体;
-
接口:在每一对相邻层次之间的是接口,接口定义了下层向上层提供哪些服务原语;
-
网络体系结构 :层和协议的集合为网络体系结构,一个特定的系统所使用的一组协议,即每层的协议,称为协议栈;

-
封装:发送端每层添加首部的过程;
-
解封装:接收端每层去掉首部提取数据的过程;
-
不同层对应==协议数据单元 PDU==。

-
面向连接服务
- 每个"请求"或"响应"后,都在对方产生一个"指示"或"确认"动作;
- 面向连接服务具有连接建立 、数据传输 和连接释放这三个阶段。
-
无连接服务
- 两个实体之间的通信不需要先建立好连接,无需应答,例如发送邮件;
- 是一种不可靠的服务,这种服务常被描述为"尽力交付"或"尽力而为"。
-
3.4 服务与协议的关系
- 协议是水平的,服务是垂直的;
- 实体使用协议来实现其定义的服务;
- 上册实体通过接口使用下层实体的服务。

4. 网络参考模型
4.1 OSI 7层参考模型 (理论标准)
1.物理层
- 定义如何在信道上传输0、1;
- 机械接口:网线接口大小形状等;
- 电子信号:电压、电流等;
- 时序接口:采样频率、波特率、比特率等;
- 介质:各种线缆、无线频谱等;
- ......
2.数据链路层
- 实现相邻网络实体之间的数据传输;
- 成帧:从物理层的比特流中提取出完整的帧;
- 错误检测与纠正;
- 流量控制
- 共享信道上的访问控制
3.网络层
- 将数据包跨越网络从源设备发送到目的设备==(主机到主机)==;
- 路由:在网络中选取从源端到目的端转发路径,常常会根据网络可达性动态选取最佳路径,也可以使用静态路由;
- 路由协议:路由器之间交互路由信息所遵循的协议规范,使得单个路由器能够获取网络的可达性等信息;
- **服务质量(
QoS)**控制:处理网络拥塞、负载均衡、准入控制、保障延迟 - 异构网络互联:在异构编址和异构网络中路由寻址和转发。
4.传输层
- 将数据从源端口 发送到目的端口 (进程到进程);
- 网络层定位到一台主机(host),传输层的作用域具体到主机上的某一个进程;
- 网络层的控制主要面向运营商,传输层为终端用户提供端到端的数据传输控制;
- 两类模式:可靠的传输模式,或不可靠传输模式;
- 可靠传输:可靠的端到端数据传输,适合于对通信质量有要求的应用场景,如文件传输等;
- 不可靠传输:更快捷、更轻量的端到端数据传输,适合于对通信质量要求不高,对通信响应速度要求高的应用场景,如语音对话、视频会议等。
5.会话层
- 利用传输层提供的服务,在应用程序之间建立和维持会话,并能使会话获得同步。
6.表示层
- 关注所传递信息的语法和语义,管理数据的表示方法,传输的数据结构。
7.应用层
- 通过应用层协议,提供应用程序便捷的网络服务调用。
4.2 TCP/IP 4层参考模型 (事实标准)
-
应用层
- 传输层之上的所有高层协议:DNS、HTTP、FTP、SMTP......
-
传输层
- 允许源主机与目标主机上的对等实体,进行端到端的数据传输:TCP, UDP。
-
互联网层
- 允许主机将数据包注入网络,让这些数据包独立的传输至目的地并定义了数据包格式和协议(
IPv4协议和IPv6协议)。
- 允许主机将数据包注入网络,让这些数据包独立的传输至目的地并定义了数据包格式和协议(
-
链路层
- 描述了为满足无连接的互联网络层需求,链路必须具备的功能。
-
设计原则 :核心简单、边缘复杂
- 端对端原则:采用聪明终端&简单网络 ,由端系统负责丢失恢复等,简单的网络大大提升了可扩展性;
- 实现了建立在简单的、不可靠部件上的可靠系统。

4.3 对比与批评
1. 7层模型与4层模型
- TCP/IP模型的链路层定义主机与传输线路之间的接口,描述了链路为无连接的互联网层必须提供的基本功能;
- TCP/IP模型的互联网层 、传输层 与OSI模型的网络层 、传输层大致对应;
- TCP/P模型的应用层包含了OSI模型的表示层与会话层。
2.基本设计思想:通用性与实用性
- OSI:先有模型后设计协议,不局限于特定协议,明确了服务、协议、接口等概念,更具通用性;
- TCP/IP模型:仅仅是对已有协议的描述。
3.无连接与面向连接
- OSI模型网络层能够支持无连接和面向连接通信
- TCP/IP模型的网络层仅支持无连接通信(IP)

4.4 分层模型与网络实例

5. 计算机网络度量单位
1.比特率
- 主机在数字信道上传送数据的速率,也称数据率;
- 比特率的单位是
b/s(比特每秒),也可以写为bps或kbit/s、Mbit/s、Gbit/s等。
2.带宽
- 网络中某通道传送数据的能力,即单位时间内网络中的某信道所能通过的=="最高数据率"==;
- 单位是bit/s,即"比特每秒"。
3.包转发率 (PPS)
- 表示交换机或路由器等网络设备以包为单位的转发速率;
- 线速转发:交换机端口在满负载的情况下,对帧进行转发时能够达到该端口线路的最高速度。
- 在交换机上,大包比小包更容易实现线速。
4.时延 (Delay)
dtotal=dproc+dqueue+dtrans+dprop d_{total} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dtotal=dproc+dqueue+dtrans+dprop
-
处理时延 (dprocd_{proc}dproc):主机或路由器在收到分组时,为处理分组(如分析首部、提取数据等)所花费的时间。
-
排队时延 (dqueued_{queue}dqueue):分组在路由器输入输出队列中排队等待处理所经历的时延 。
-
传输时延 ( dtransd_{trans}dtrans**)** :数据从结点进入到传输媒体所需要的时,又叫发送时延,Length(bit)R(bps)\frac{Length (bit)}{R (bps)}R(bps)Length(bit)。
-
传播时延 ( dpropd_{prop}dprop**)** :电磁波在信道中传播所花费的时间,Distancec(介质中电磁波速度)\frac{Distance} {c(介质中电磁波速度)}c(介质中电磁波速度)Distance。

5.往返时间 (RTT)
- 从发送数据到收到确认的总时间。常通过
ping获取。
6.时延带宽积
- 传播时延×带宽\text{传播时延} \times \text{带宽}传播时延×带宽,代表链路中容纳比特的能力,即按比特计数的链路长度。

7.吞吐量
- 单位时间内通过某个网络(或信道、接口)的数据量,单位是
b/s。
8.有效吞吐量
- 单位时间内,目的地正确接收到的有用信息的数目(以bit为单位)。
9.利用率
- 信道利用率指出某信道有百分之几的时间是被利用的;
- 网络利用率则是全网络的信道利用率的加权平均值。
10.丢包率
- 所丢失数据包的数量占所发送数据包的比率。
11.时延抖动
- 变化的时延称为抖动(Jitter);
- 时延抖动起源于网络中的队列或缓冲,抖动难以精确预测;
- 在语音、视频多媒体业务中,抖动往往会严重影响用户的体验。
12.延迟丢包
- 在多媒体应用中,由于数据包延迟到达,在接收端需要丢弃失去使用价值的包.
9. 网络安全与标准化组织
1.网络安全
- 现状:互联网最初是基于"相互信任"设计的,未充分考虑安全性。
- 威胁 :
- 恶意软件:病毒(需交互)与蠕虫(自主复制,如 WannaCry)。
- DoS/DDoS :制造虚假流量瘫痪服务,常利用僵尸网络 (Botnet)。
- 攻击手段:数据包嗅探(嗅探广播数据)、IP 欺骗(伪造源地址)。
- 法规:强调红客精神,遵守《中华人民共和国网络安全法》。
2.标准化组织
- ISO:OSI 模型的制定者。
- ITU:联合国的电信机构。
- IEEE:制定 802 系列局域网标准(Wi-Fi、以太网)。
- IETF :制定 Internet 协议。核心文档为 RFC 。
- IETF 信仰:拒绝投票,崇尚"大致共识与可运行的代码"。