【计算机网络笔记】第一章 计算机网络导论
更新中。。。
一、什么是因特网(What is the Internet?)
1.1 具体构成描述
因特网是一个全球性的计算机网络,由数十亿计算设备通过通信链路和分组交换机互联而成。
1.1.1 核心组成部分
组件 | 说明 | 示例 |
---|---|---|
端系统/主机 | 连接到因特网的各类计算设备 | 计算机、智能手机、服务器、智能设备(摄像头、音箱等) |
通信链路 | 连接设备的物理媒介 | 光纤、铜缆、无线电频谱、卫星链路 |
分组交换机 | 转发数据包的设备 | 路由器(网络核心)、链路层交换机(接入网络) |
ISP层次结构 | 网络互联的层次化组织 | 第一层ISP、区域ISP、本地ISP、内容提供商网络 |
1.1.2 关键技术特征
分组交换:数据被分割为分组进行传输
TCP/IP协议族:因特网的核心通信规则
标准化:IETF制定RFC标准文档(如TCP、IP、HTTP等)
1.2 服务描述(Service View)
1.2.1 基础设施视角
因特网是为分布式应用提供通信服务的基础设施平台。
1.2.2 服务接口
套接字接口:应用程序通过此接口与因特网交互
类比:如同邮政服务,需要遵循特定的"信封规则"才能成功投递
1.2.3 服务类型
服务类型 | 特点 | 应用示例 |
---|---|---|
面向连接 | 可靠传输、流量控制 | TCP(文件传输、Web页面) |
无连接 | 简单快速、尽力而为 | UDP(实时音视频、DNS查询) |
1.3 协议视角(Protocol View)
1.3.1 协议的定义
协议是通信实体之间交换报文的格式、顺序以及传输动作的规则集合。
协议是网络通信中双方实体为了进行数据交换而建立的规则、标准或约定的集合。它定义了通信的格式、顺序、错误处理等规范,确保数据能够正确、有序地传输。例如,TCP/IP协议族中的IP协议负责寻址和路由,TCP协议保证可靠传输。
1.3.2 协议三要素
要素 | 说明 | 示例 |
---|---|---|
语法 | 数据格式与结构 | IP地址格式、TCP首部字段 |
语义 | 控制信息的含义 | HTTP GET请求的含义、TCP确认机制 |
时序 | 事件顺序与同步 | 三次握手、超时重传 |
1.3.3 人类协议类比
人类协议示例:A: "你好" → 语法:问候语格式B: "你好" → 语义:同意交流A: "现在几点?" → 时序:问候后提问B: "下午2点" → 完成信息交换
1.4 因特网的关键特性
1.4.1 连通性
全球覆盖:任何地点的设备都能相互通信
透明访问:用户无需了解底层网络细节
1.4.2 资源共享
信息共享:Web页面、文件、流媒体
硬件共享:云计算、数据中心
软件共享:SaaS应用、在线服务
1.4.3 标准化与开放性
开放标准:RFC文档公开可用
厂商中立:不同厂商设备可互联互通
技术演进:持续更新适应新需求
1.5 因特网的结构层次
1.5.1 网络边缘
端系统:运行应用程序的设备
接入网络:连接端系统到网络核心(DSL、电缆、无线等)
1.5.2 网络核心
分组交换网:路由器构成的网状网络
ISP层次:Tier-1→区域ISP→本地ISP的层级结构
1.5.3 典型网络规模
个域网:10米范围内(蓝牙设备)
局域网:建筑物或园区范围
城域网:城市范围覆盖
广域网:跨地区或国家范围
1.6 总结
因特网的本质是一个通过标准化协议互联的全球性分组交换网络,它既是:
物理基础设施(硬件、链路、设备)
服务平台(为应用提供通信服务)
协议生态系统(确保互联互通的规则体系)
这三个视角共同构成了对"什么是因特网"的完整理解,体现了其技术复杂性与服务多样性的统一。
二、网络边缘(Network Edge)
网络边缘是用户直接接触和使用的部分,它构成了互联网的“起点”和“终点”。
1、核心概念:网络边缘与边缘路由器
网络边缘(Network Edge):指的是互联网中所有端系统(End Systems) 以及将它们连接到网络核心的接入网(Access Networks) 的集合。
边缘路由器(Edge Router):端系统连接到任何其他远程端系统的路径上的第一台路由器。它是接入网和网络核心的分界点。
边缘路由器是端系统进入网络核心的第一跳(First Hop) 路由器。
端系统和路由器的连接:
1. 住宅接入:将家庭端系统连接到边缘路由器
2. 企业(或机构)接入:将公司、校园等端系统连接到边缘路由器
3. 移动无线接入:将移动端系统连接到边缘路由器
带宽:指信道能够传输的最高数据速率,即单位时间内可通过链路的数据量,反映网络的传输能力。
单位:比特每秒(bps)、千比特每秒(kbps)、兆比特每秒(Mbps)、吉比特每秒(Gbps)。
2、端系统(End Systems)
端系统位于互联网的“边缘”,因此得名。它们就是我们所熟知的网络设备。
定义与别名:也称为主机(Hosts),因为它们运行(托管)着应用程序。
类型(举例):
传统计算设备:桌面电脑(PC, Mac, Linux)、工作站、笔记本电脑、智能手机、平板电脑。
服务器(Servers):通常位于大型数据中心(Data Centers) 中,为亿万用户提供如搜索、电子邮件、视频流等服务。
物联网设备:一切正在接入互联网的非传统设备,如安全摄像头、智能音箱、智能汽车、传感器等。文档中展示了丰富示例,如IP相框、起搏器、智能烤面包机等,体现了“万物互联”的趋势。
运行模式:端系统之间的通信模式主要有两种:
客户-服务器模式(Client-Server Model):如Web浏览器(客户)向Web服务器请求页面。
对等模式(Peer-to-Peer Model, P2P):如文件共享应用,端系统之间直接通信,无需中心服务器。
3、接入网(Access Networks)
接入网是将端系统物理连接到其边缘路由器的网络。可以理解为从家庭、公司或移动设备到互联网服务提供商(ISP)的“最后一公里”技术。
以下几种为主流的接入网技术:
1. 数字用户线(DSL)
介质:利用现有的双绞电话线。
技术特点:
使用频分复用(FDM) 在同一根线缆上同时传输数据和语音。
非对称:通常下行速率(下载,24-52 Mbps)远高于上行速率(上传,3.5-16 Mbps),符合大多数用户下载多、上传少的习惯。
专用线路:从用户到电话公司的中心局(DSLAM)是独享的带宽。
现状:在我国已广泛被光纤到户(FTTH)替代,但在世界许多地区仍在使用。
2. 混合光纤同轴电缆(HFC)
介质:光纤和同轴电缆混合组成,常见于有线电视网络。
技术特点:
同样使用FDM(频分多路复用),划分不同频段传输电视信号和互联网数据。
共享媒介:同轴电缆段的所有用户共享带宽,可能导致高峰期速率下降。
非对称:典型速率如下行30 Mbps,上行2 Mbps。
频分多路复用 | 电缆网络 |
---|---|
![]() | ![]() |
3. 光纤到户(FTTH)
介质:全程光纤。
技术特点:
提供极高的带宽(可达上下行对称1 Gbps甚至更高)。
稳定性好,抗干扰能力强。
我国及全球先进地区普遍采用,是主流的家庭宽带技术。
常采用无源光网络(PON) 架构,通过分光器连接多个用户,降低成本。
4. 以太网和WiFi(企业/家庭局域网)
场景:在公司、大学校园和家庭内部。
技术:
有线:使用以太网技术,通过双绞铜线连接到以太网交换机。速率从100 Mbps到10 Gbps甚至更高。
无线:使用WiFi(IEEE 802.11标准) 进行局域网内无线接入。
实际设备:家庭中通常使用一个集成了调制解调器(Modem)、路由器(Router)、防火墙、NAT、以太网交换机和无线接入点(AP) 功能的“盒子”。
5. 无线接入网(Wide-Area Wireless)
类型:
无线局域网(WLAN):如WiFi,覆盖范围小(一栋建筑内),速率高(如450 Mbps)。
广域无线接入:由电信运营商提供的蜂窝网络(3G, 4G/LTE, 5G),覆盖范围广(城市级),为用户提供移动中的互联网接入。
4、物理媒介(Physical Media)
物理媒介是信号在发送器和接收器之间传播的实际物理路径。
导引型媒介(Guided Media):信号在固体介质中传播。
双绞铜线(Twisted Pair, TP):最常见,用于电话线和以太网(如Cat 5, 6, 7线缆)。
同轴电缆(Coaxial Cable):屏蔽性好,用于有线电视(HFC)和早期以太网。
光纤(Fiber Optics):利用光脉冲传输,速率极高(10s-100s Gbps),传输距离远,抗电磁干扰,是网络主干和FTTH的首选。
双铜绞线 | 同轴电缆 | 光纤 |
---|---|---|
![]() | ![]() | ![]() |
非导引型媒介(Unguided Media):信号在空气或真空中自由传播。
无线电波(Radio):包括WiFi、蜂窝网络(4G/5G)、卫星通信等。
5、小结:1.2 Network Edge 的核心要点
组成部分 | 核心内容 | 关键技术与示例 |
---|---|---|
端系统 (End Systems) | 互联网的起点和终点,运行应用程序 | 主机(电脑、手机)、服务器、物联网设备 |
接入网 (Access Networks) | 连接端系统与网络核心的“最后一公里” | DSL(电话线)、HFC(有线电视)、FTTH(光纤)、以太网/WiFi(局域网)、3G/4G/5G(移动网络) |
物理媒介 (Physical Media) | 信号传输的实际物理通道 | 导引型:双绞线、同轴电缆、光纤 非导引型:无线电波(WiFi、蜂窝) |
通过理解网络边缘,我们就能明白我们日常使用的设备是如何通过各种技术接入到广阔的互联网世界中的。
三、信号在物理介质中如何传输?
3.1 基本概念
3.1.1 基本术语
数据:运送消息的实体。
信号:数据的电气或电磁表现,是数据在信道上的传输形式。
模拟信号:代表消息的参数取值是连续的。
数字信号:代表消息的参数取值是离散的。
码元:在使用时间域波形表示数字信号时,代表不同离散数值的基本波形。
波特率:码元的传输速率,即单位时间内传输的码元个数。
3.1.2 通信方式
单工:通信是单向的,一方只能发送,另一方只能接收(如广播电视等)。
半双工:通信是双向的,但不能同时进行发送和接收(如对讲机)。
全双工:通信是双向的,可以同时进行发送和接收(如电话)。大量的局域网交换机和网卡都采用全双工技术。
3.1.3 调制与编码
基带信号:来自信源的低频信号(像计算机输出的代表各种文字或图像文件的数据信号都属于基带信号),往往包含直流成分,不适合长距离传输。因此必须对基带信号进行调制。
载波:在调制中,其特征(振幅、频率或相位)通过添加信息波来修改的波。
调制:将基带信号转换为适合信道传输的形式。
基带调制(编码):仅对基带信号的波形进行变换,仍是基带信号。
带通调制:使用载波进行调制,把基带信号的频率范围搬移到较高的频段,转换为模拟信号。基本方法有:
调幅:载波的振幅随基带信号变化。
调频:载波的频率随基带信号变化。
调相:载波的初始相位随基带信号变化。
3.1.4 信道与多路复用
信道:向某一方向传送信息的媒体。
多路复用:允许同时通过一条共享信道传输多路信号的技术,以提高信道利用率。
频分多路复用:将信道带宽划分为多个不重叠的频段,每路信号占用一个频段。
时分多路复用:将时间划分为等长的时分复用帧,每路信号占用一个固定的时隙。
码分多路复用:各路信号使用不同的编码,可以在同一时间、同一频段上传输。
波分多路复用:光的频分复用,用于光纤通信。
3.1.5 交换
一种在网络上的节点之间建立连接和发送信息的方法。交换是一种决定信息需要到达何处以及到达其目的地的最佳可能路径的技术
3.2 常用的编码方式(基带调制)
编码(或称基带调制)是指仅对基带信号的波形进行变换,使其更适合在信道中传输,但变换后的信号仍然是基带信号。
编码方式 | 描述 | 优点 | 缺点 |
---|---|---|---|
不归零制 | 正电平代表 1,负电平代表 0 | 实现简单 | 没有自同步能力 (无法从信号本身提取时钟信号) |
归零制 | 正脉冲代表 1,负脉冲代表 0 | - | 比不归零制复杂 |
曼彻斯特编码 | 位周期中心的跳变代表数据:向上跳变代表 0,向下跳变代表 1(定义可反转) | 具有自同步能力 (每个比特中间都有跳变,便于接收方同步) | 信号频率(带宽)比不归零制高(加倍) |
差分曼彻斯特编码 | 每一位的中心始终都有跳变,位开始边界有跳变代表 0,无跳变代表 1 | 具有自同步能力,抗干扰能力更强 | 信号频率(带宽)较高,实现更复杂 |
核心总结:
编码的目的:使数字信号更适合在基带信道传输。
关键区别:是否具有自同步能力。曼彻斯特编码及其变种通过在每个比特中间引入强制跳变,使接收方能准确同步时钟,这是相对于不归零制的巨大优势。
3.3 基本的带通调制方法
当基带信号(含有低频或直流分量)需要在模拟信道(如电话线、无线信道)中传输时,需要进行带通调制。带通调制使用载波(Carrier),将基带信号的频率范围搬移到更高的频段,转换为模拟信号形成带通信号。
三种最基本的二元制调制方法:
调制方法 | 原理 | 特点 |
---|---|---|
调幅(AM) | 载波的振幅随基带数字信号(0或1)而变化。 例如:有载波输出代表1,无载波输出代表0。 | 实现简单,但抗干扰能力较差。 |
调频(FM) | 载波的频率随基带数字信号而变化。 例如:频率 f_1 代表0,频率 f_2 代表1。 | 抗干扰能力优于调幅。 |
调相(PM) | 载波的初始相位随基带数字信号而变化。 例如:相位0度代表0,相位180度代表1。 | 抗干扰能力强,在高速通信中广泛应用。 |
核心总结:
目的:将低频基带信号搬移到高频,使其能在模拟信道上传输。
机制:通过改变载波(一个高频正弦波)的一个或多个参数(振幅、频率、相位)来携带数字信息。
发展:为了达到更高的信息传输速率,实际应用中常采用更复杂的多元制调制方法,如正交振幅调制(QAM),它同时改变载波的振幅和相位。
基带调制(编码)与带通调制的区别:
特征 | 基带调制(编码) | 带通调制 |
---|---|---|
信号类型 | 输入和输出均为数字信号(基带信号) | 输入为数字信号,输出为模拟信号(带通信号) |
是否使用载波 | 不使用载波 | 必须使用载波 |
频率范围 | 保持基带频率(低频) | 将频谱搬移到载波频率附近(高频) |
主要应用 | 局域网(如以太网)、短距离数字通信 | 无线通信、拨号上网、通过模拟信道传输数据 |
3.4 信号传输中的问题
3.4.1 信道的失真 (Distortion)
核心问题:任何实际的信道都不是理想的。信号在传输过程中会产生失真,并受到噪声、干扰和带宽限制的影响。
失真原因:
带宽受限:信道无法让信号中的所有频率成分完全通过,导致波形变形。
噪声与干扰:信道中存在随机的噪声,会干扰原始信号。
后果:失真会导致码间串扰 (Intersymbol Interference),即一个码元的波形会扩散并影响到相邻的码元,使得接收端难以清晰地区分每个码元(是0还是1)。当失真严重时,接收端将完全无法识别信号,导致通信失败。
关键点:码元传输速率越高、传输距离越远或信道质量越差,失真就越严重。
3.4.2 信道的极限容量 (Channel Capacity)
信道的极限容量是指在给定条件下,信道能够实现的最高无差错信息传输速率。有两个著名的定理从不同角度定义了这一极限。
在分析奈奎斯特准则和香农定理时,先看几个概念:
信噪比 (Signal-to-Noise Ratio, S/N)
定义:信噪比是信号的平均功率 (
S
) 与噪声的平均功率 (N
) 的比值。它是衡量信道质量的关键指标。单位:通常用分贝 (dB) 表示:
$$
\text{信噪比 (dB)} = 10 \log_{10}(S/N)
$$意义:信噪比越高,表示信号强度相对于噪声越强,信号被噪声淹没的可能性就越小,通信质量越好。
带宽 (Bandwidth) 的两种含义
频域带宽 (Hz):指信号或信道所占据的频率范围。例如,电话信道的标准带宽是 3.1 kHz。
时域带宽 (bps):在计算机网络中,通常指信道能够传输数据的能力,即最高数据率。例如,100 Mbps 的以太网带宽。
关系:两者本质是相通的。信道的频带宽度 (
W
) 越宽,其所能承载的最高数据率(时域带宽)就越高。数据传输速率和带宽的关系
基本关系:在理想情况下,信道的最大数据传输速率直接受其带宽 (
W
) 的限制。实际关系:实际达到的数据传输速率远低于理论极限,因为它同时受到奈奎斯特准则(码元速率和调制技术限制) 和香农定理(信噪比限制) 的双重约束。工程师的目标是设计出接近香农极限的编码和调制方案。
1. 奈奎斯特准则 (Nyquist Criterion) - 针对理想无噪信道
前提:假设信道是理想的,没有噪声。
核心结论:为了避免码间串扰,码元的传输速率存在上限。对于一个带宽为
W
(Hz) 的低通信道,其最高码元传输速率为2W
(波特)。对数据传输速率的影响:根据此准则,信道的数据传输速率上限为:
$$
\color{red} C_{max} = 2W \log_2 M
$$M
是码元的状态数(即一个码元能表示的比特数,如M=2
表示1比特/码元;M=4
表示2比特/码元)。
意义:奈氏准则激励工程师通过更先进的编码技术(提高
M
)来提升速率。
2. 香农定理 (Shannon's Theorem) - 针对有噪信道
前提:考虑了现实信道中必然存在的高斯白噪声。
核心结论:给出了带宽受限且有噪声干扰的信道的极限信息传输速率。
香农公式:
$$
\color{red} C = W \log_2(1 + S/N)
$$C
:信道的极限信息传输速率 (bps)W
:信道的带宽 (Hz)S/N
:信噪比(比值,非分贝值)
意义:
绝对极限:只要信息传输速率低于
C
,就一定存在某种编码方法可以实现无差错的传输。反之,若速率超过C
,则不可能实现无差错传输。影响因素:信道的极限容量由带宽
W
和信噪比S/N
共同决定。提高带宽或信噪比都能提高容量。告诫:香农公式指出了物理上的上限,无论编码技术多复杂,都无法突破这个极限。
四、网络核心(Network Core)
网络核心是由路由器(Routers) 和连接它们的高速通信链路组成的网状网络,其核心任务是将数据从源主机通过网络送达目的主机。
即核心网络的两个作用:路由和转发。
实现这一目标有两种基本方法:分组交换和电路交换,可分别类比为自驾游和电话系统。当今互联网的核心基石是分组交换。
4.1 分组交换(Packet Switching)
这是互联网采用的主要技术。其核心思想是:在通信之前不需要建立专用的路径,数据被分成一个个独立的“包裹”(即分组),每个包裹自己寻找路径前往目的地。
4.1.1 核心概念:存储转发(Store-and-Forward)
定义:多数分组交换机(如路由器)使用的一种机制。在交换机开始向输出链路传输该分组的第一个比特之前,必须先接收并缓存整个分组。
类比:这就像邮局处理一封信。邮局必须收到完整的信件(检查地址、贴邮票等)后,才会将它发往下一个邮局,而不是收到一个字就转发出一个字。
时延影响:如下图所示,一个长度为 L bit 的分组,在传输速率为 R bps 的链路上,传输时延为 L/R 秒。如果路径上有 N 段链路(图中有两段),则总时延至少为 N × (L/R) 秒(忽略传播和处理时延)。如果有 P 个分组(如图中有三个),根据流水线传输,总时延至少为 (N + P - 1) × (L/R)
过程示例:
4.1.2 分组交换的传输
分组交换网以“分组”作为数据传输单元。依次把各分组发送到接收端。
每一个分组的首部都含有地址(诸如目的地址和源地址)等控制信息。(如下图所示,假设接收端在左边)
分组交换网中的结点交换机(路由器)根据收到的分组首部中的地址信息,把分组转发到下一个结点交换机。
每个分组在互联网中独立地选择传输路径。
用这样的存储转发方式,最后分组就能到达最终目的地(接收端)。
接收端收到分组后剥去首部还原成原始报文。
4.1.3 排队时延和丢包(Queuing Delay and Packet Loss)
输出缓存/队列(Output Buffer/Queue):每台路由器都有缓存(内存区域),用于存储准备从某条链路发送出去的分组。
排队时延(Queuing Delay):如果到达路由器的分组需要从某条链路发出,但该链路正忙于传输其他分组,新到的分组必须在输出缓存中排队等待,由此产生排队时延。上图展示了当主机A和B同时向链路发送数据时,在速率较低的链路口产生排队。
丢包(Packet Loss):缓存空间是有限的。如果到达的分组发现缓存已满(即队列已满),路由器将丢弃(Drop) 该分组,造成数据丢失。
4.1.4 统计多路复用
主机A和B的报文分组按需共享带宽,称为统计多路复用(statistical multiplexing)
4.1.5 转发表和路由选择协议(Forwarding Table and Routing Protocol)
关键问题:路由器如何知道该将收到的分组从哪条链路转发出去?
转发表(Forwarding Table):每台路由器内部都维护一张表,类似于地图或交通指示牌。它记录了“去往目的地X的分组,应从接口Y转发”。
路由选择协议(Routing Protocol):路由器之间通过运行路由协议(如OSPF、BGP)来自动地、动态地学习和更新网络拓扑信息,从而生成和维护转发表。这确保了即使网络某处出现故障,分组也能找到新的可达路径。
总结分组交换流程:源主机将数据分段成组 → 分组被注入网络 → 每个路由器根据转发表为分组选择下一跳路径 → 采用存储转发机制,在链路上逐段传输 → 可能经历排队 → 最终到达目的主机并重组。
4.1.6 分组交换的优缺点
分组交换的优缺点 | 描述 |
---|---|
优点 | |
高效 | 在分组传输的过程中动态分配传输带宽,对通信链路是逐段占用。 |
灵活 | 为每一个分组独立地选择最合适的转发路由。 |
迅速 | 以分组作为传送单位,可以不先建立连接就能向其他主机发送分组。 |
可靠 | 保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性。 |
不需共享带宽 | 按需使用,不需共享带宽。 |
按需使用 | 按需使用,不需预留带宽。 |
缺点 | |
资源竞争 | 多个分组可能竞争同一资源,导致资源竞争。 |
拥塞 | 网络中分组过多时可能导致拥塞。 |
存储转发需要缓存 | 分组在各结点存储转发时需要排队,这就会造成一定的时延。 |
开销 | 分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。 |
4.2 电路交换(Circuit Switching)
这是传统电话网络采用的技术。其核心思想是:在通信双方之间预先建立一条专用的物理路径,并在整个通信期间独占该路径的所有资源。
4.2.1 背景介绍
N 部电话机两两直接相连,需 N(N –1)/2 对电线。这种直接连接方法所需要的电线对的数量与电话机数量的平方成正比。
当电话机的数量增多时,就要使用交换机来完成全网的交换任务。每一部电话都直接连接到交换机上,而交换机使用交换的方法,让电话用户彼此之间可以很方便地通信。所采用的交换方式就是电路交换 (circuit switching)。
交换(switching)的含义就是转接:把一条电话线转接到另一条电话线,使它们连通起来。从通信资源的分配角度来看,交换就是按照某种方式动态地分配传输线路的资源。
电话机两两直连 | 使用交换机连接电话 |
---|---|
4.2.2 核心概念:资源预留(Resource Reservation)
定义:在端系统间通信会话开始前,网络需要沿路径为这次连接预留必要的资源(如链路带宽)。
类比:这就像打电话。拨号后,网络在你和对方之间建立了一条专用线路,这条线路在你挂断之前一直为你服务,即使你不说话(线路空闲),别人也无法使用。
三个阶段:连接建立 → 通信 → 连接释放。
4.2.3 复用技术:FDM 与 TDM
如何实现一条物理链路上同时支持多条电路?有两种主要技术:
频分复用(FDM, Frequency-Division Multiplexing):将链路的频谱带宽划分成多个频段,每条电路独占一个频段。例如,调频收音机,每个电台占用一个特定频率。
时分复用(TDM, Time-Division Multiplexing):将时间划分为固定长度的帧,每个帧又分成固定数量的时隙。每条电路在每个帧中周期性地独占一个时隙。
FDM | TDM |
---|---|
例题:
文件大小:640,000 bits ,所有链路速率:1.536 Mbps ,使用 TDM(时分复用),每条链路分成 24 个时隙(slot) 。
建立端到端电路的时间:500 ms(0.5 秒) ,主机 A 与 B 相邻(意味着它们之间只有 一条链路,不需要经过多个交换机) 。
问:从开始建立连接到文件传输完毕的总时间是多少?
解:
$$
0.5s + \frac{640000bits}{1536000bps} \times 24 = 10.5s
$$
4.2.4 分组交换 vs. 电路交换:关键对比
特性 | 电路交换 | 分组交换 |
---|---|---|
资源使用 | 静态分配、独占。即使线路空闲,他人也无法使用。 | 动态分配、共享。按需使用,资源利用率高。 |
适合流量 | 恒定速率、实时性要求高的流量(如语音)。 | 突发式的计算机数据流量。 |
建立过程 | 需要呼叫建立,有初始时延。 | 无需建立,随时发送。 |
可靠性 | 更脆弱,专用路径一旦中断,通信立即终止。 | 更健壮,故障时可自动绕行。 |
经典例子:
一个1Mbps的链路,支持10个用户,每个用户活动时需求100kbps。
电路交换:最多只能支持10个用户(10 × 100kbps = 1Mbps)。
分组交换:35个用户(每个活动概率10%),出现10个以上用户同时活动的概率极小(约0.0004)。因此,在绝大多数时间里,分组交换能提供与电路交换相似的性能,却支持了3.5倍的用户。
结论:分组交换在资源利用率和成本效益上远优于电路交换,这是互联网选择它的根本原因。现代网络(包括电话网)的趋势是全面转向分组交换。
4.2.5 分组交换,电路交换与报文交换
存储转发原理并非完全新的概念在 20 世纪 40 年代,电报通信也采用了基于存储转发原理的报文交换 (message switching)。 报文交换的时延较长,从几分钟到几小时不等。现在报文交换已经很少有人使用了。
若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。
报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。
4.3 网络的网络(Network of Networks)
这一部分解释了互联网为何是“网络的网络”,以及其复杂的层次化结构是如何演化而来的。
结构1:单一全球传输ISP
天真的想法:每个接入ISP都直接连接到一個巨大的全球ISP。
问题:无法扩展,连接数呈O(N²)增长,不现实。
结构2:多全球ISP竞争
出现多个竞争的全球ISP(如Tier-1 ISP),接入ISP可以根据价格和服务选择提供商。
这些全球ISP之间必须互联(对等连接)。
引入互联网交换点(IXP, Internet Exchange Point)
作用:允许两个网络(如两个ISP)直接相连并交换流量,而不必通过第三个更高级的ISP转发。
好处:降低时延、减少费用(对等连接常免费)、使流量分布更合理。
出现内容提供商网络(如Google)
像Google、Microsoft这样的大型内容提供商,为了更高效地向用户分发内容,构建了自己的专用网络。
它们将自己的数据中心直接连接到较低层的ISP或IXP,甚至绕过高层ISP,将内容“推送”到离用户更近的地方。
最终结构:今天的互联网是一个复杂的、多层的、由商业关系驱动的生态系统,包括:
第一层ISP(Tier-1 ISP):全球覆盖,彼此对等,不向对方付费。
区域和本地ISP:较低级别的ISP,需要向更高级的ISP付费以接入全球互联网。
IXP:关键基础设施,促进ISP和内容提供商之间的直接互联。
内容提供商网络:如Google、Akamai,是互联网流量的主要产生者和消费者。
总结
1.3 网络核心部分阐明了互联网数据传送的引擎室是如何工作的:
核心技术:分组交换,采用存储转发机制。
关键设备:路由器,通过查询转发表来转发分组。
核心挑战:管理排队时延和丢包。
对比技术:电路交换,其特点是资源预留,效率较低。
宏观结构:互联网是由众多ISP、IXP和内容提供商网络通过商业关系互联而成的 “网络的网络”,具有复杂的层次结构。
五、网络中的时延、丢包和吞吐量(Delay, Loss, Throughput)
理想网络能瞬间、无丢失地移动数据,但物理定律和网络共享特性使得网络必然存在时延(Delay)、丢包(Loss) 和吞吐量(Throughput)限制。理解这些问题是研究计算机网络的起点和基础。
5.1 时延与丢包
当分组从源主机出发,经过一系列路由器,到达目的主机时,它会经历几种不同类型的时延。总时延是这些时延之和。
5.1.1 时延的类型
总时延公式: d_{\text{nodal}} = d_{\text{proc}} + d_{\text{queue}} + d_{\text{trans}} + d_{\text{prop}}
下图直观展示了一个分组在路由器A处经历的四种时延:
路由器A
比特流开始发送
处理时延
检查首部/错误
分组到达
排队时延
在输出缓存中等待
传输时延
将比特推向链路
传播时延
比特在链路上传播
路由器B
时延类型 | 描述 | 类比(车队与收费站) | 主要影响因素 |
---|---|---|---|
处理时延 d_{\text{proc}} | 检查分组首部、决定出口链路、差错检测等处理时间。 | 车辆在收费站入口处停车、取卡、缴费的时间。 | 路由器处理能力、网络流量。 |
排队时延 d_{\text{queue}} | 分组在输出缓存中等待被传输的时间。 | 车辆在收费站入口排队,等待前方车辆通过的时间。 | 流量强度(La/R)、流量突发性。 |
传输时延 d_{\text{trans}} | 将分组的所有比特推向(发射到)链路所需的时间。 | 整个车队依次通过收费站收费口所需的时间。 | 分组长度(L)、链路带宽(R)。 |
传播时延 d_{\text{prop}} | 一个比特从链路起点传播到终点所需的时间。 | 第一辆汽车从收费站出口开到下一个目的地的时间。 | 物理距离(d)、传播速率(v)。 |
关键区别:传输时延 vs. 传播时延
传输时延(发送时延)是路由器“推出”分组的时间,与分组长度和链路速率有关,与距离无关。
$$
\text{packet transmission delay} = \frac{L \, (\text{bits})}{R \, (\text{bits/sec})}
$$
L 是包的大小,以比特为单位。R 是链路的传输速率,以比特每秒为单位。
传播时延是比特“在路上”的时间,与距离和传播速度有关,与分组长度或链路速率无关。
$$
\text{Packet Propagation delay} = \frac{D \, (\text{meter})}{V \, (\text{m/sec})}
$$
D 是源到目的地的距离,以米为单位。 V 是信号在链路上的传播速度,以米每秒为单位。
5.1.2 排队时延与丢包(Loss)
这是最复杂、最有趣的时延成分。
流量强度(Traffic Intensity):
La/R
L
: 分组长度 (bits/packet)a
: 分组到达队列的平均速率 (packets/sec)R
: 链路传输速率 (bps)La: 比特到达队列的平均速率 (bps)
黄金法则: 如果 La/R > 1,则比特到达的速率超过发送的速率,队列将无限增长,时延趋于无穷大。 因此,系统设计必须保证流量强度小于1。
排队时延与流量强度的关系:
La/R ~ 0: 时延很小。
La/R -> 1: 时延急剧增加。强度轻微增加会导致时延大幅上升(类似交通拥堵)。
La/R > 1: 时延无限大(系统过载)。
丢包(Packet Loss):
原因: 路由器的缓存(队列)容量是有限的。当流量强度接近1时,队列会变满,后续到达的分组将被丢弃(丢失)。
处理: 丢失的分组可能由上游节点或源端系统通过重传机制来恢复。
5.1.3 端到端时延
计算: 如果路径上有N段链路(即N-1台路由器),忽略排队时延,且每段链路处理时延、传输时延和传播时延相同,则端到端时延为: d_{\text{end-end}} = N \times (d_{\text{proc}} + d_{\text{trans}} + d_{\text{prop}})
测量工具 - Traceroute:
原理: 源主机向目的地发送一系列特殊分组,每经过一个路由器,该路由器会向源返回一个消息。通过计算往返时间(RTT),可以测量到路径上每个路由器的时延,并绘制出网络路径。
用途: 诊断网络路径、定位高时延节点。
例题:
至少有三段链路,发送大小为480000B的文件,则加上包头一共500000B,对应1000个分组,代入公式 (N+P-1)\times\frac{L}{R}
$$
(1000 + 3 - 1)\times \frac{500 \times 8 bits}{100\times10^6bps} = 40.08ms
$$
5.2 吞吐量(Throughput)
吞吐量表示在单位时间内通过网络(或信道、接口)的数据量,即数据传送的速率。为用户流量中转所能达到的峰值。(bits/time unit)
5.2.1 瞬时吞吐量与平均吞吐量
瞬时吞吐量: 给定时刻的速率。
平均吞吐量: 传输一个F比特的文件所需总时间(T)的比值,即
F / T
。
5.2.2 瓶颈链路与端到端吞吐量
端到端的吞吐量受限于路径上所有链路中速率最小的那一条,即瓶颈链路。
如图:服务器链路速率 R_s,客户机链路速率 R_c。
端到端吞吐量 = min\{R_s, R_c\}。
文件传输时间 ≈ 文件大小 / min\{R_s, R_c\}。
多链路例子:
路径由 N 条链路组成,速率分别为 R_1, R_2, ..., R_N。
端到端吞吐量 = min\{R_1, R_2, ..., R_N\}。
5.2.3 现实互联网中的吞吐量
在今天的互联网中,核心网络通常超量配置,带宽很高。因此,吞吐量的限制因素通常是接入网(即“最后一公里”)。
例1:单个下载
服务器接入速率 R_s = 2Mbps,客户接入速率 R_c = 1Mbps。
瓶颈在客户接入网。
例2:多个共享下载(关键概念)
10个客户同时从10个服务器下载文件。
核心网络中有一条共享链路,速率 R = 5Mbps。
如果共享链路平等分配带宽,每个下载会话只能获得 5Mbps / 10 = 0.5Mbps。
此时,瓶颈链路从接入网转移到了核心的共享链路。
因此,吞吐量不仅取决于路径速率,还取决于网络中的干扰流量。
5.3 其他计算机网络度量单位
5.3.1 RTT (Round-Trip Time) - 往返时间
1. 核心定义
RTT 是指从发送方发送数据开始,到发送方收到来自接收方的确认(ACK) 所经历的总时间。
注意:RTT 不包括数据的传输时间(即发送时延),但包括确认分组的传输时间(通常很小)。
2. RTT 的组成部分
RTT 不仅仅是传播时延的两倍。它包含更复杂的因素,文档指出:“RTT由三个部分决定:链路的传播时间、末端系统的处理时间、路由器的缓存中的排队和处理时间。” 因此,一个更精确的组成是: RTT ≈ 传播时延 × 2 + 发送端处理时延 + 接收端处理时延 + 路径上所有路由器的排队和处理时延之和
排队时延是可变且关键的部分,它会随着网络拥塞程度剧烈波动。
3. 测量方法与工具
ping
命令:最常用的工具。它发送 ICMP 回显请求报文,并计算收到回显应答的时间。ping
得到的时延基本可以看作是 RTT。traceroute
/tracert
命令:用于探测数据包经过的路径以及每一跳的 RTT。它通过发送一系列 TTL(生存时间)递增的探测包来实现。pathping
命令:结合了ping
和traceroute
的功能,能提供更详细的路径节点延迟和稳定性信息。
4. 重要性
TCP 性能的核心:TCP 的超时重传计时器、拥塞控制算法(如慢启动)都严重依赖于对 RTT 的准确估计。
应用体验:对于实时应用(如视频会议、在线游戏),RTT 直接决定了交互的流畅度(延迟感)。
连接建立:TCP 三次握手需要 1.5 个 RTT,这影响了网页加载等应用的初始延迟。
5.3.2 时延带宽积 (Delay-Bandwidth Product)
1. 核心定义与公式
时延带宽积 是 传播时延 (d_prop) 和 链路带宽 (R) 的乘积。其单位是 比特 (bit)。
$$
\text{时延带宽积} = \text{传播时延} \times \text{带宽} = d_{\text{prop}} \times R
$$
2. 物理意义:管道中的比特数
这是理解时延带宽积最关键的概念。文档中有一个绝佳的比喻:将通信链路比作一条空心管道。
管道的长度:由 传播时延 决定。传播时延越长,管道越长。
管道的横截面积(宽度):由 带宽 决定。带宽越宽,管道越粗。
管道的容积:就是 时延带宽积。它表示在这条链路上同时可以容纳多少比特。
具体场景:当发送方连续发送数据时,在 第一个比特即将到达接收方 的那个瞬间,发送方已经发出的比特数量 就等于时延带宽积。这些比特都正在链路上“飞行”。
3. 重要性
衡量链路利用率:时延带宽积表示为了“填满”这条链路,发送方至少需要准备的数据量。只有当代表链路的管道充满比特时,链路才得到最充分的利用。
TCP 接收窗口大小的设置依据:为了达到最高的吞吐量,TCP 的接收窗口大小(rwnd)应该至少设置为时延带宽积。如果接收窗口小于时延带宽积,即使网络能力很强,发送方也会因为等待确认而无法全力发送,导致带宽浪费。这就是所谓的“长肥网络”问题。
4. 举例说明
假设一条链路:
传播时延 d_{\text{prop}} = 0.1 秒
带宽 R = 100 Mbps = 10^8 bps 则时延带宽积为: 0.1 \text{ s} \times 10^8 \text{ bps} = 10^7 \text{ bits} = 1.25 \text{ MB} 这意味着,发送方需要连续发送 1.25 MB 的数据,才能让这条链路处于“满负荷”工作状态。
5.3.3 其它计算机网络度量单位
文档中还提到了其他几个重要的性能指标,它们从不同维度衡量网络质量。
1. 吞吐量 (Throughput) 与 有效吞吐量 (Goodput)
吞吐量:单位时间内通过某个网络(或信道、接口)的实际数据量。单位是 bps。它更侧重于测量网络的实际传送能力。
有效吞吐量:单位时间内,目的地正确接收到的有用信息的数目。它排除了协议开销(如分组首部)和重传的数据。
区别:吞吐量包含了所有传输的比特,而有效吞吐量只计算最终对应用层有用的数据比特。有效吞吐量才是用户真正感知到的“速度”。
2. 利用率 (Utilization)
信道利用率:指出某信道有百分之几的时间是被利用的(有数据通过)。
网络利用率:是全网络的信道利用率的加权平均值。
关键规律:根据排队论,信道利用率并非越高越好。当利用率接近 1(100%)时,网络时延会急剧增加(公式:D = D_0 / (1-U))。因此,网络设计时需要控制利用率,通常主干网的 ISP 会控制信道利用率不超过 50%。
3. 丢包率 (Packet Loss Rate)
所丢失数据包的数量占所发送数据包的比率。
丢包主要由网络拥塞导致的路由器队列溢出引起,也可能是传输过程中的比特差错导致。
4. 时延抖动 (Jitter)
定义:变化的时延称为抖动。它起源于网络中的队列或缓冲,由于排队时延是动态变化的,导致分组到达时间间隔不稳定。
影响:在语音、视频等实时多媒体业务中,抖动会严重影响用户体验。为了消除抖动,接收端需要设置播放缓冲区,但这又会引入额外的延迟。
5. 延迟丢包
在多媒体应用中,由于数据包延迟到达(抖动过大),在接收端可能已经失去了播放的时效性,因此会被应用程序丢弃。这也是一种由时延引起的有效数据丢失。
总结
度量指标 | 核心概念 | 公式/单位 | 重要性 |
---|---|---|---|
RTT | 数据往返一次的时间 | 时间(s, ms) | TCP性能、应用响应延迟的基础 |
时延带宽积 | 链路可容纳的比特数 | 比特(bit) | 衡量链路容量、指导TCP窗口设置 |
吞吐量/有效吞吐量 | 实际/有效数据发送速率 | 比特/秒(bps) | 用户感知的网速、网络实际能力 |
利用率 | 信道或网络的繁忙程度 | 百分比(%) | 网络规划和拥塞控制的关键 |
丢包率 | 数据丢失的比率 | 百分比(%) | 网络可靠性和拥塞的标志 |
时延抖动 | 时延的变化量 | 时间(s, ms) | 影响实时多媒体应用的质量 |
这些指标相互关联,共同描绘了计算机网络的性能全景图,是分析、设计和优化网络的基础。
六、协议层次与服务模型(Protocol Layers, Service Models)
计算机网络是一个极其复杂的系统,涉及大量硬件、软件和协议。为了简化设计、便于讨论和理解,我们采用分层的体系结构。这就像构建一个复杂的项目时,我们会将任务分解为不同的模块或阶段,每个模块负责特定的功能,并通过清晰的接口与其他模块协作。
因特网交换点 | 对等ISP |
---|---|
ISP:Internet Service Provider 互联网服务提供商。
ISP A / ISP B:两个互联网服务提供商。
IXP:Internet Exchange Point,因特网交换点。
ISP A 和 ISP B 是两个独立的ISP,它们通过IXP进行对等互联,数据不需要经过更高层级的Tier-1 ISP。
peering link:对等链路,表示两个ISP之间的直接连接。
Access Network:接入网络
regional net:区域网络,可能是地区性的ISP或教育科研网络。
内容网络构建 | 网络结构 |
---|---|
互联网结构正从“运营商为中心”的层级模型,演变为“内容提供商为中心”的扁平化、分布式模型;内容商通过自建网络、IXP 对等、缓存下沉,逐步绕过 Tier-1 ISP,成为事实上的“新骨干”。
6.1 核心概念:协议分层与服务
6.1.1 协议分层
通过一个航空旅行类比来解释分层思想。假设你从北京飞往纽约,这个过程涉及多个步骤:
票务层:购票、改签、投诉。
行李层:托运、领取行李。
登机口层:登机、离机。
起飞/着陆层:飞机在跑道的起飞和降落。
航线飞行层:飞机按预定航线飞行。
关键点:
每层功能独立:票务人员不关心飞机如何飞行,飞行员也不负责处理你的行李。
下层为上层提供服务:行李层需要依赖起飞/着陆层将行李从北京运到纽约。登机口层为票务层和行李层的旅客提供登机服务。
接口清晰:每一层通过标准的接口(如登机牌、行李票)与上下层交互。
这种抽象使得:
上层开发更简单:应用开发者只需要知道运输层能提供“可靠的数据传输”(如TCP),而无需关心网络层是如何通过复杂的路由选择来实现的。
技术迭代更容易:只要层间接口(服务)保持不变,某一层内部技术的变更不会影响其他层。例如,从4G移动网络升级到5G(链路层/物理层变化),上层的网页浏览(HTTP)和视频通话(Skype)等应用完全无需修改
将这种思想应用到网络中,就形成了协议栈。
6.1.2 服务与服务模型
服务与服务模型的概念:
服务:某一层为它的上一层所提供的功能操作。
服务模型:对该层所能提供的服务的精确定义。
接口:相邻层之间交换信息的连接点。上层通过接口使用下层的服务。
协议:对等层(不同机器上的同一层)之间通信规则的集合。协议是实现服务的内部机制,对上层是“透明”的(不可见的)。
服务与协议的重要关系:
协议是水平的(控制对等实体间通信),而服务是垂直的(由下层向上层提供)。
实体用协议实现其定义的服务,上层实体通过接口使用下层实体服务。(由于分层架构,无法调用跨层服务,只能用相邻层的服务)
6.2 因特网协议栈(五层模型)
6.2.1 OSI参考模型
各层的主要功能如下表所示:
6.2.1.1 物理层(Physical Layer)
定义如何在信道上传输0、1:Bits on the wire
机械接口(Mechanical):网线接口大小形状、线缆排列等
电子信号(Electronic):电压、电流等
时序接口(Timing):采样频率、波特率、比特率等
介质(Medium):各种线缆、无线频谱等
6.2.1.2 数据链路层 (Data Link Layer)
实现相邻(Neighboring)网络实体间的数据传输
成帧(Framing):从物理层的比特流中提取出完整的帧
错误检测与纠正:为提供可靠数据通信提供可能
物理地址(MAC address):48位,理论上唯一网络标识,烧录在网卡,不便更改
流量控制,避免“淹没”(overwhelming):当快速的发送端遇上慢速的接收端,接收端缓存溢出
共享信道上的访问控制(MAC):同一个信道,同时传输信号。如同:同一间教室内,多人同时发言,需要纪律来控制
6.2.1.3 网络层 (Network Layer)
将数据包跨越网络从源设备发送到目的设备(host to host)
路由(Routing):在网络中选取从源端到目的端转发路径,常常会根据网络可达性动态选取最佳路径,也可以使用静态路由
路由协议:路由器之间交互路由信息所遵循的协议规范,使得单个路由器能够获取网络的可达性等信息
服务质量(QoS)控制:处理网络拥塞、负载均衡、准入控制、保障延迟
异构网络互联:在异构编址和异构网络中路由寻址和转发
为何在唯一的MAC地址之外,还需要唯一的IP地址?
答:MAC地址和IP地址就像是身份证和住址的关系。MAC地址和IP地址处在不同的层级,它们解决的是不同的问题。MAC地址是“身份标识”,而IP地址是“位置标识”。
6.2.1.4 传输层 (Transport Layer)
将数据从源端口发送到目的端口(进程到进程)
网络层定位到一台主机(host),传输层的作用域具体到主机上的某一个进程
网络层的控制主要面向运营商,传输层为终端用户提供端到端的数据传输控制
两类模式:可靠的传输模式,或不可靠传输模式
可靠传输:可靠的端到端数据传输,适合于对通信质量有要求的应用场景,如文件传输等
不可靠传输:更快捷、更轻量的端到端数据传输,适合于对通信质量要求不高,对通信响应速度要求高的应用场景,如语音对话、视频会议等
6.2.1.5会话层 (Session Layer)
利用传输层提供的服务,在应用程序之间建立和维持会话,并能使会话获得同步
6.2.1.6 表示层(Presentation Layer)
关注所传递信息的语法和语义,管理数据的表示方法,传输的数据结构
6.2.1.7 应用层(Application Layer)
通过应用层协议,提供应用程序便捷的网络服务调用
6.2.2 TCP/IP参考模型
TCP/IP模型是随着互联网的实践发展而来的,它更侧重于“实现”而非“设计”。其核心思想是 “端到端原则”,即复杂的功能(如可靠性保证)尽可能放在网络的边缘(端系统),而网络核心(路由器)则保持简单,只负责尽最大努力的分组转发,从而实现极高的灵活性和可扩展性。
TCP/IP模型通常被表述为一个 4层模型,另一种更贴近实际协议栈的描述是 沙漏模型。
![]() | ![]() |
---|
A. 四层模型结构
层次 | 名称 | 功能描述 | 对应协议数据单元(PDU) | 关键设备 |
---|---|---|---|---|
4 | 应用层 | 包含所有高层协议,负责具体的应用进程通信。 | 报文(Message) | 主机 |
3 | 运输层 | 为应用进程提供端到端的通信服务,包括可靠传输(TCP)和简单无连接传输(UDP)。 | 报文段(Segment) / 用户数据报 | 主机 |
2 | 网际层 | 核心层。负责将分组从源主机跨越多个网络发送到目的主机。主要解决寻址和路由问题。 | 数据报(Datagram) | 路由器 |
1 | 网络接口层 | 负责在本地网络上传输数据,相当于OSI的数据链路层和物理层的结合。 | 帧(Frame) | 主机、链路层交换机 |
关键点:TCP/IP模型没有明确定义物理层,认为物理介质是底层细节。同时,它将OSI的会话层和表示层的功能合并到了应用层中。
B. 沙漏模型(理解互联网的钥匙)
“沙漏模型” 是理解互联网架构精髓的绝佳比喻。
沙漏的细腰:就是 IP层。IP协议是互联网唯一的、共同的“语言”。所有上层应用(HTTP, FTP, SMTP等)和下层网络技术(以太网、WiFi、4G/5G等)都必须通过IP层进行通信。
上层(沙漏上部):丰富多彩的应用层协议。这就是 “Everything over IP” 的含义:任何应用都可以建立在IP之上。
下层(沙漏下部):多样化的网络接入技术。这就是 “IP over everything” 的含义:IP协议可以运行在任何现有的或未来出现的物理网络之上。
这种设计使得互联网在技术和应用上都具有巨大的包容性和创新空间。
6.2.3 OSI模型与TCP/IP模型的优缺点比较
TCP/IP模型在实践中取得了压倒性的胜利,成为了互联网的事实标准。
1. OSI参考模型
优点:
概念清晰,理论完整:模型结构清晰,严格定义了服务、接口和协议的概念,层次分工明确,非常适合教学。
通用性强:产生于协议发明之前,不依赖于任何特定网络协议,具有很好的理论前瞻性和通用性。
缺点:
实现过于复杂:分层不够理想,会话层和表示层功能相对单薄,而数据链路层和网络层又过于繁杂。协议庞大且低效。
标准制定周期长:由于是国际标准,制定和审核过程缓慢,导致符合OSI标准的设备无法及时进入市场,错过了发展时机。
缺乏市场驱动力:被认为是政府和机构强加的标准,而非市场需求驱动,未能得到厂商和市场的广泛支持。
2. TCP/IP参考模型
优点:
实践出真知,简单高效:模型来自于互联网的实践,经过实际检验,协议简单明了,运行效率高。
侧重互联,成功关键:一开始就重点考虑异构网络互联这个核心问题,IP协议成功地扮演了“黏合剂”的角色。
对等重视:对面向连接(TCP)和无连接(UDP)的服务并重,适应了不同应用的需求。
强大的生命力:遵循“端到端原则”和“沙漏模型”,核心简单稳定,边缘不断创新,这是互联网爆炸式增长的根本原因。
缺点:
模型通用性差:该模型几乎是为描述TCP/IP协议族而量身定做的,很难用来描述其他非TCP/IP网络。
核心概念模糊:没有清晰区分服务、接口和协议之间的界限。
模型不完整:网络接口层本身并非一个真正的层次,只是一个接口;且未包含物理层,而物理层是通信的基础。
功能重复:例如,差错控制、流量控制在不同层次反复出现,违背了分层的初衷。
总结与启示
对比维度 | OSI模型(理想主义) | TCP/IP模型(实用主义) |
---|---|---|
出发点 | 先有模型,后设计协议(理论驱动) | 先有协议,后归纳模型(实践驱动) |
核心思想 | 分层清晰,服务、接口、协议分离 | 端到端原则,网络核心简单,边缘智能 |
成功关键 | 理论严谨,适合教学 | IP协议的成功(沙漏模型的细腰) |
最终结果 | 失败(未能成为现实网络的标准) | 巨大成功(成为全球互联网的基础) |
最终结论:OSI模型是一个复杂而完美的理论模型,但它输给了简单而实用的TCP/IP模型。技术的胜利往往属于那些能够解决实际问题、并快速适应市场变化的方案。互联网的成功证明了 “粗糙的可行好过完美的不可用” 这一工程哲学。因此,我们现在学习和研究计算机网络,虽然会参考OSI的七层模型来理解概念,但最终的核心仍然是深入掌握TCP/IP协议族的工作原理。