计网学习笔记
自述
本文是笔者的寒假计算机网络学习记录,内容持续更新中。
第一章:计算机网络概述
定义:一个将众多分散的、自治的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
核心名词辨析
- 计算机网络 (Computer Networking):由**结点 (Node)和链路 (Link)**组成。
- 互连网 (internet):泛指多个网络互连。
- 互联网 (Internet):即因特网,特指全球最大的、基于TCP/IP协议的网络。
物理设备:到底谁在干活?
局域网设备(内网)
-
集线器 (Hub):物理层设备。相当于"带孔的网线",傻瓜式转发。
- 特性:不能隔离冲突域,也隔离不了广播域。
- 原理:集线器会将信号广播给所有接口,导致同一时间只能有一台设备发数据。
-
交换机 (Switch):数据链路层设备。内网主力,解决冲突问题。
- 特性:能隔离冲突域,不能隔离广播域。
- 补充解释:交换机像给每个设备开了私密包间。A 给 B 说话,走专属通道,不会影响 C 给 D 说话,每个接口都是独立的冲突域。
跨网/全球设备
-
路由器 (Router):网络层设备。连接不同的子网。
- 特性:能隔离广播域(也能隔离冲突域)。
- 补充解释:广播就像在走廊大喊。路由器像一扇隔音门,防止一个网络的"广播垃圾流量"淹没另一个网络,从而保护全网性能。
-
家用路由器:功能合体版 = 交换机 + 路由器 + 无线接入点 (AP)。
-
无线接入点 (AP):
- 胖AP:自带管理,独立工作(如家用)。
- 瘦AP:仅负责收发,需配合AC 控制器(如校园、商场覆盖)。
ISP (Internet Service Provider):互联网服务供应商(电信/移动)。买网 = 买一个接入其高级路由器的资格。
逻辑视角:组成与分工
组成视角
- 硬件:主机、链路、通信设备。
- 软件:各种网络应用(浏览器等)。
- 协议:通信规则。硬件(网卡)+ 软件(内核协议栈)共同实现。
- 注:网卡(网络适配器)通常在主板上,虽在主机内,但逻辑上属于通信子网。
工作/功能视角
- 边缘部分:端系统(主机/软件),直接为人服务。
- 核心部分:路由器和通信网络,负责数据中转。
- 资源子网:提供共享硬件、算力、数据的部分(主要是主机)。
- 通信子网:负责传输的部分(含链路、设备、协议、网卡等)。
核心功能
- 数据通信:最基本功能。
- 资源共享:硬件(算力)、软件、数据(视频)。
- 分布式处理:如 MapReduce,多机协作处理任务。
- 提高可靠性:宕机选主,多机备份。
- 负载均衡:如 Nginx 压力分摊。
数据交换演进史
1. 电路交换 (Circuit Switching)
- 原理:建立连接 → 通信(独占线路) → 释放连接。
- 特点:数据直达,传输延迟小;但建立连接时间长,线路利用率低,无差错控制。
- 比喻:老式人工电话交换机,占线时别人打不进来。
2. 报文交换 (Message Switching)
- 前身:ARPANET(现代互联网的前身)。
- 原理:整块报文"存储转发",报头包含源/目地址。
- 痛点:报文长度不一,对中间设备内存不友好;长报文时延大,出错重传代价大。
3. 分组交换 (Packet Switching) —— 现代主流
- 原理:报文切片(等长分组)+ 首部。
- 优点:灵活性极高,对缓存友好,出错只需重传一小块。
- 缺点:有首部开销,可能存在乱序/丢失。
4. 虚电路交换 (Virtual Circuit)
- 原理:分组交换的底子 + 电路交换的逻辑(先建立虚拟路径再发分组)。
- 现状:未在全球互联网普及。因为现代端系统处理乱序能力极强,没必要为了"顺序"而牺牲核心网的灵活性。
前三种交换的性能分析
电路
可以类比机组的流水线思考。

释放连接其实就是a最后一次发送报文之后就可以开始了,无限接近,但是图片为了图示容易所以隔开了一段距离。
报文

分组

对比

计网分类
按覆盖范围
就是 WMLP,广城局个,依次范围是,跨国跨省,城市之间,学校企业家庭,家庭个人。以太网就是局域网的代名词,城和局都是用以太网技术。通过无线技术连接的网络叫 无线个域网WPAN。
对于路由器是通过WAN口与广域网进行连接,而局域网内的设备都是连LAN口。
按传输方式
广播式网络 以及 点对点网络,无线就是广播式的,根据分组信息判断这个包是不是咱的。
按拓扑结构
总线形(hub连接的) 数据是广播的,存在 总线争抢 的现象。环形 数据还是广播的,通过 令牌token 解决总线争抢的问题 以击鼓传花的形式。星形 对 中心设备 实现 点对点 传输数据,所以 不存在总线争抢,例子是以太网交换机连接的设备。网状 各自阶段存储转发,也是点对点传输,例子是路由器构建的广域网。
按使用者
公用网,专用网,其实就是公网和内网。
按传输介质
有线和无线。
补充:令牌环网的兴衰
局域网的令牌环网在20世纪之前如日中天,因为解决了争抢问题,而后来集线器的以太网技术出现了以太网交换机所以令牌环网技术就逐步退休了。
计网性能指标(*)
单位换算陷阱:网络速率用 10进制(1Kbps = 1000bps),存储容量用 2进制(1KB = 1024B)。做题记得区分,而且大写B是字节要乘8转成小写b比特。
相关概念,信道不等于通信线路,一条通信线路逻辑上有一对 发送信道 和 接收信道。
速率
速率 = 数据率 = 比特率 = 数据传输速率,单位 bit/s = b/s = bps
kmgt,按照10进制的指数是3倍的。和机组的规格是不同的
带宽
带宽 = 信道能传送的 最高数据率,就看信道双方的网卡的速率上限,但我在想网卡应该速率也会受限于链路的带宽吧。买网线也得看是几类的看是否会限制带宽,或者看路由器WAN口防止限制速率。
短板效应:实际能跑多快,取决于整条路径上带宽最小的那一环。千兆网卡接百兆网线,速度就是百兆。
这种现象叫 协商速率:网卡会和链路协商,自动降级到双方都支持的最高速率。带宽限制本质上受限于物理介质(光纤 vs 铜线)和信号编码技术。
还有个理解的角度是按照通信原理来理解,就是信道中波承载信息的频率。而人眼视觉信道可见的光也是有限的,这是扩展。
总而言之,本质就是带宽就是传输数据的能力大小。
关于香农定理和奈氏准则的联系,放到物理层再细说,这里先记住:奈氏管"码元速率上限"(无噪声理想情况),香农管"信息速率上限"(有噪声现实情况)。两者共同决定了信道的极限传输能力。

吞吐量
吞吐量,某个网络、信道、接口的实际数据量,可以用来判断复杂网络的负载。注意和带宽区分:带宽是理论上限,吞吐量是实际跑出来的。

时延
时延,数据端到端传输的所需时间。
总时延 = 发送(传输)+ 传播 + 处理 + 排队
- 发送时延:数据长度 / 发送速率。就是网卡把数据从缓冲区推到链路上的时间,产生于 主机/路由器。
- 传播时延:信道长度 / 电磁波速率。就是信号在介质里跑的时间,产生于 链路介质。
- 处理时延:路由器查表、校验的时间,产生于 中间节点。
- 排队时延:在路由器缓冲区排队等 I/O 的时间,网络拥塞时会变大,产生于 中间节点。
发送 vs 传播的比喻:发送时延是"车头出车库到车尾出车库"的时间(比特上链),传播时延是"车头从 A 城开到 B 城"的时间(电磁波飞行)。
做题常用:光速在空气中约 $3.0 \times 10^8 m/s$,但在光纤(玻璃介质)中打约 2/3 折,约为 $2.0 \times 10^8 m/s$。

所以处理和排队是到中间节点产生的,发送是端产生的,传播是介质产生的。
时延带宽积
时延带宽积 = 传播时延 × 带宽,水管的长度乘水管横截面。最短帧长?
物理意义:代表链路被"填满"时,有多少比特正在路上还没到终点。也叫 "以比特为单位的链路长度"。

往返时延RTT
往返时延RTT = ack的时间 = 发送方传播 + 接收方处理 + 接收方发送 + 确认消息传播(无路由器,所以没有存储转发),想想游戏的反馈时延
补充:
ping命令测的就是 RTT。但要注意ping 127.0.0.1或ping localhost走的是 本地回环接口(loopback),数据根本没出网卡,直接在协议栈内部转了一圈,所以时延极小(通常 <1ms)。只有ping远程主机时测的才是真正的网络 RTT。
信道利用率
信道利用率 = 有数据过的时间 / 有无数据的总时间,利用率低浪费资源,高则容易网络阻塞。
注意:利用率并非越高越好。接近 100% 时排队时延会急剧增大(堵车),所以要控制在合理范围。
分层
七层 OSI(法律标准)
口诀:物联网输会示用
- 物理层:比特的传输
- 数据链路层:做两件事,一是逻辑上做 差错控制,毕竟01可能出错。另一件事就是做 流控,做协商速率,帧是单位。
- 网络层:通过分组标记源和目标节点,做四件事,路由选择 和 分组转发,拥塞控制 和 网际互联,其他功能,差错控制和流控的功能它也有,但是是以 packet 数据报为单位,以及 建立连接和释放,和 可靠传输 ack。或者说数据链路是做的局部正确,而网络是做全局正确。
- 传输层:进程到进程的通信,也就是端到端通信。功能就 复用和分用,然后网络的功能它也有,但是单位变成 segment 变成报文段。
- 会话层:管理进程间会话,采用检查点机制,当进程恢复断了通过断点恢复。
- 表示层:解决编码和压缩算法不一致
- 应用层:实现特定应用,以报文 message 为单位
可以看出来,1→7,数据单位是越来越大的。
TCP/IP(现实标准)
口诀:接网输用
- 网络接口层:类比 OSI 的物理层+数据链路层
- 网络层(IP)
- 传输层
- 应用层:类比 OSI 的会话层+表示层+应用层
会示层其实可有可无,另外 OSI 低两层让厂商自由发挥。条件都具备的话,所以咱们这个模型就简洁了。
可以看出数据的局部正确不等于全局正确,但是数据的全局正确等于局部正确。


五层(教学方便的)
- 物理层
- 数据链路层
- 网络层
- 传输层
- 应用层
体系结构 是各层及其协议的 集合,是构建完成 功能的精确定义。
两个视角
水平视角
- 实体:在 n 层活动的软硬件称为 n 层实体,而对等实体是指不同分层中相同的层,例如两边的应用层就是对等实体。
- 协议:是为了不同实体之间通信的,由 语法、语义、同步 构成。语法就是占多少字节格式,语义是是否需要应答,同步也称时序,事件实现顺序的详细说明,就是顺序,多少秒重连之类的。
垂直视角
- 接口:同节点的不同层之间通过 服务访问点(SAP) 交互
- 服务:下层为上层提供的 功能调用
发送接收数据从垂直角度下降或上升,添头尾拆头尾,再到介质水平传输。

PDU、SDU、PCI
PDU = SDU + PCI,SDU 就是 data,PCI 就是数据链路层的头尾巴,PDU 就是他们整体。其实看英文更直观:
- PDU(Protocol Data Unit):协议数据单元
- SDU(Service Data Unit):服务数据单元
- PCI(Protocol Control Information):协议控制信息

第二章:物理层
《通信基础》概念
信源
信号的来源,数据的发送方
信宿
信号的归宿,数据的接收方
信号
数据的载体,分为数字离散信号以及模拟连续信号
信道
信号的通道
码元
信号是若干个二进制,每一个信号就是个码元。信号周期可以称为码元宽度。
一个码元可能携带四种状态,那它被称作四进制码元,一个码元携带 2bit 数据。

速率
- 波特率 = 每秒传输多少个码元,单位 波特(Baud)
- 比特率 = 每秒传输多少个比特,单位 bps
带宽
噪声会影响带宽的传输能力。
奈奎斯特定理是指无噪声的信道,极限波特率是 2W,W 是信道的带宽,单位是波特。

这题可以这么理解,4 个振幅相当于是 4 种电平,每种电平承载一个码元,这个码元解压之后就是 2 个 bit,而 200kHz 是速度,在无噪声的情况下是两倍的 200kHz,答案就有了。或者可以这么理解,按一次快门会有 bit 张照片,而带宽就是按下快门的次数。而如果最终单位是码元仅仅只需要理解为一次快门一张照片即可。
香农定理,是对于有噪声、带宽有限的信道而言的,极限比特率是 W·log₂(1+S/N),单位 b/s。信噪比 = S/N = 信号功率/噪声功率,没有单位,就是比值。

总结

编码和调制
编码
不归零编码就正常 10 编码,而归零编码就是每个周期内归零一下当心跳保证双方时序一致。
反向非归零编码,逢 0 跳其他都不变。
曼彻斯特编码(以太网默认),周期内若高电平往下跳变,低电平往上跳变。
差分曼彻斯特编码,看虚线。
特点
- 自同步就是看有没有心跳
- 带宽浪费就是看跳变是否携带信息
- 抗干扰,就边沿触发就容易区分相较于水平编码



调制解调


4 种调制类比初中数学,对于 QAM 是指调幅与调相位一起用,码元 = log₂n。



传输介质
就分有线(导向型)和无线(非导向型)
- 双绞线,有屏蔽层 STP 和没有屏蔽层 UTP 的,结构就是两根线相互绞合。
- 同轴电缆,中间有个导体外面有个绝缘层与屏蔽层。
- 光纤,纤芯+包层的高低折射率作为全反射特性,分类有单模光纤(适合长距离)和多模光纤(适合近距离),它抗干扰强,信号损失率小。
命名区分
- 速率 Mbps + Base + 介质信息(普通数字就是同轴电缆,F 就是光纤,T 是双绞线)

无线介质
- 无线电波,穿透强,距离长,指向性弱也就是传输是四面八方的。
- 短波=微波通信,频率带宽高,指向性强,保密性容易被窃听。
- 其他,红外或者激光,指向性强。

设备
中继器,信号整形再生让失真不太严重。
- 两个端口一个接收一个发送且因为再生会有时延
- 半双工,两端口不能同时发数据,否则会有冲突
- 两个端口对应两个网段
集线器,就是多端口中继器,N 个端口对应多个网段,各网段属于一个冲突域,它不能隔离冲突域。
两台设备发数据冲突,则他们处在同个冲突域。

交换机是可以隔离冲突域的。
543 原则
中继器和集线器不能无限串联,要遵循 543 原则:最多五个网段,4 台集线或者中继器,只有 3 个网段可以挂接计算机。

集线器特性
集线器的物理星拓扑其实还是总线型的,会有信道争用。
集线器会分享总带宽。
- 集线器可以连接不同介质,进而导致连接的网段物理层协议也可以不同。
- 如果速率不同的网段,则会导致所有网段速率向下兼容。
- 以上两点国内教材有争议。
第三章:数据链路层
待更新...
第四章:网络层
待更新...
第五章:传输层
待更新...
第六章:应用层
待更新...