局域网与广域网协议

以太网(IEEE 802.3)

以太网是目前应用最广泛的局域网技术,由 Xerox、Intel 和 DEC 于 1975 年联合开发,后由 IEEE 802.3 委员会标准化。

MAC 地址

MAC 地址

MAC 地址(Media Access Control Address)是数据链路层使用的物理地址,用于在局域网中唯一标识一个网络接口。MAC 地址长度为 48 位(6 字节),通常表示为 12 个十六进制数,如 00:1A:2B:3C:4D:5E

MAC 地址的结构:

  • 前 24 位(OUI,Organizationally Unique Identifier):厂商代码,由 IEEE 分配给设备制造商
  • 后 24 位:厂商分配的设备序列号

特殊 MAC 地址:

  • 广播地址FF:FF:FF:FF:FF:FF,表示局域网内所有站点
  • 组播地址:第一字节最低位为 1,表示一组站点
  • 单播地址:第一字节最低位为 0,表示单个站点

以太网帧结构(Ethernet II 格式)

| 前导码(Preamble) | SFD | 目的MAC | 源MAC | 类型/长度 | 数据(Payload) | FCS |
|     7字节        |1字节|  6字节  | 6字节 |   2字节   |  46~1500字节  |4字节|

各字段说明:

  1. 前导码(Preamble):7 字节,交替的 0 和 1(10101010),用于接收方同步时钟
  2. 帧起始定界符(SFD, Start Frame Delimiter):1 字节,10101011,标志帧的开始
  3. 目的 MAC 地址:6 字节,接收方的物理地址
  4. 源 MAC 地址:6 字节,发送方的物理地址
  5. 类型/长度字段:2 字节
    • 值 ≥ 1536(0x0600)时表示类型(如 0x0800 表示 IPv4,0x0806 表示 ARP,0x86DD 表示 IPv6)
    • 值 ≤ 1500 时表示长度(802.3 原始格式)
  6. 数据字段:46~1500 字节。不足 46 字节时需要填充(Padding),这是因为以太网最小帧长为 64 字节(14 字节首部 + 46 字节数据 + 4 字节 FCS)
  7. FCS(Frame Check Sequence):4 字节,使用 CRC-32 校验,用于检错

以太网的演进

标准速率传输介质名称由来
10BASE510 Mbps粗同轴电缆最大段长 500 m
10BASE210 Mbps细同轴电缆最大段长约 200 m(实际 185 m)
10BASE-T10 Mbps双绞线T = Twisted Pair
100BASE-TX100 Mbps5类双绞线快速以太网
1000BASE-T1 Gbps5e类双绞线千兆以太网
10GBASE-T10 Gbps6a类双绞线万兆以太网

现代以太网几乎全部使用交换机和双绞线(或光纤),工作在全双工模式下,不再使用 CSMA/CD。

虚拟局域网(VLAN)

VLAN(Virtual LAN)是在物理局域网的基础上,通过交换机配置逻辑地划分出多个独立的广播域。

  • 作用:隔离广播域,提高网络安全性和性能
  • 实现方式:在以太网帧中插入 4 字节的 VLAN 标签(802.1Q 标签),包含 VLAN ID(12 位,0~4095)
  • Trunk 端口:交换机之间连接的端口,传输带 VLAN 标签的帧
  • Access 端口:连接终端设备的端口,只属于一个 VLAN,收发不带标签的帧

无线局域网(IEEE 802.11)

无线局域网(WLAN)使用无线电波作为传输介质,最常见的标准是 IEEE 802.11 系列(商业名称为 Wi-Fi)。

802.11 标准演进

标准发布年份频段最大速率说明
802.1119972.4 GHz2 Mbps原始标准
802.11b19992.4 GHz11 Mbps第一个广泛使用的标准
802.11a19995 GHz54 Mbps不与 b 兼容
802.11g20032.4 GHz54 Mbps向下兼容 b
802.11n (Wi-Fi 4)20092.4/5 GHz600 MbpsMIMO 技术
802.11ac (Wi-Fi 5)20145 GHz3.5 Gbps更宽信道,更多 MIMO
802.11ax (Wi-Fi 6)20192.4/5 GHz9.6 GbpsOFDMA,更高密度

802.11 帧结构

802.11 帧比以太网帧复杂,包含最多 4 个地址字段(因为无线环境中需要区分发送方、接收方、源、目的):

| 帧控制 | 持续时间/ID | 地址1 | 地址2 | 地址3 | 序列控制 | 地址4 | 数据 | FCS |
|  2字节 |    2字节    | 6字节 | 6字节 | 6字节 |  2字节   | 6字节 | 可变 | 4字节|
  • 地址1:接收方地址(RA,Receiver Address)
  • 地址2:发送方地址(TA,Transmitter Address)
  • 地址3:源地址(SA)或目的地址(DA),取决于帧类型
  • 地址4:仅在无线分布式系统(WDS)中使用

工作模式

  1. 基础设施模式(Infrastructure Mode):所有站点通过 AP(Access Point,接入点)通信,AP 连接有线网络。这是最常见的模式。
  2. 自组织模式(Ad Hoc Mode):站点之间直接通信,不需要 AP。也称为 IBSS(Independent BSS)。

WiFi 安全

  • WEP(Wired Equivalent Privacy):最早的加密标准,使用 RC4 算法,已被破解,不安全
  • WPA(Wi-Fi Protected Access):WEP 的改进版,使用 TKIP 加密
  • WPA2:目前的主流标准,使用 AES 加密(CCMP),安全性高
  • WPA3:最新标准,进一步增强安全性,支持 192 位加密

广域网协议

PPP 协议(Point-to-Point Protocol)

PPP 是在点对点链路上传输网络层数据的数据链路层协议,广泛用于拨号上网、DSL、专线等场景。

PPP 协议

PPP 是一种面向字节的数据链路层协议,用于在两个节点之间的点对点链路上传输数据。它支持多种网络层协议(IP、IPX 等),提供身份验证、压缩和差错检测功能。

PPP 帧结构

| 标志(Flag) | 地址(Addr) | 控制(Ctrl) | 协议(Protocol) | 数据(Payload) | FCS | 标志(Flag) |
|   1字节    |   1字节    |   1字节    |    2字节       |    可变       | 2字节|   1字节    |
  • 标志字段0x7E,帧的定界符(与 HDLC 相同)
  • 地址字段0xFF,广播地址(PPP 是点对点,无实际意义)
  • 控制字段0x03,无编号帧(UI)
  • 协议字段:指示数据字段的协议类型(如 0x0021 = IPv4,0xC021 = LCP,0x8021 = IPCP)
  • FCS:通常 2 字节(也可协商为 4 字节),CRC 校验

PPP 的工作阶段

PPP 链路的建立和维护分为四个阶段:

  1. 链路建立阶段(Link Establishment):使用 LCP(Link Control Protocol,链路控制协议) 协商链路参数,如最大接收单元(MRU)、认证协议、压缩协议等
  2. 身份验证阶段(Authentication):可选阶段,使用 PAP(Password Authentication Protocol)CHAP(Challenge Handshake Authentication Protocol) 进行身份验证
    • PAP:两次握手,明文传输密码,安全性低
    • CHAP:三次握手,使用 MD5 哈希,不传输明文密码,安全性高
  3. 网络层协议阶段(Network Layer Protocol):使用 NCP(Network Control Protocol) 为每种网络层协议配置参数。例如 IPCP(IP Control Protocol)用于分配 IP 地址
  4. 数据传输阶段(Network Layer Protocol):正常传输网络层数据
  5. 链路终止阶段(Link Termination):使用 LCP 终止链路

HDLC 是 ISO 制定的面向比特的数据链路层协议,是许多其他链路层协议(如 PPP、LAPB、LAPD)的基础。

HDLC 帧结构

| 标志(Flag) | 地址(Addr) | 控制(Ctrl) | 信息(Info) | FCS | 标志(Flag) |
|   1字节    |   1字节    |   1字节    |   可变     | 2字节|   1字节    |
  • 标志字段0x7E01111110),使用比特填充法保证数据中不出现该模式
  • 地址字段:标识从站地址(多点连接时),点对点时通常为 0xFF
  • 控制字段:标识帧类型和序号
  • FCS:2 字节或 4 字节,CRC 校验

HDLC 帧类型

根据控制字段的格式,HDLC 帧分为三类:

  1. 信息帧(I 帧,Information):控制字段第 1 位为 0

    • 携带用户数据
    • 包含发送序号 N(S) 和接收序号 N(R)
    • 可捎带确认(N(R) 表示期望收到的下一帧序号)
  2. 监控帧(S 帧,Supervisory):控制字段前 2 位为 10

    • 不携带数据,用于流量控制和差错控制
    • 四种类型:RR(接收就绪,ACK)、RNR(接收未就绪)、REJ(拒绝,GBN)、SREJ(选择拒绝,SR)
  3. 无编号帧(U 帧,Unnumbered):控制字段前 2 位为 11

    • 不包含序号,用于链路管理
    • 如 SABM(设置异步平衡模式)、UA(无编号确认)、DISC(断开连接)等

HDLC 工作模式

  • 正常响应模式(NRM, Normal Response Mode):主从模式,从站只有在收到主站的询问后才能发送
  • 异步响应模式(ARM, Asynchronous Response Mode):从站可以主动发送,但仍由主站管理链路
  • 异步平衡模式(ABM, Asynchronous Balanced Mode):对等模式,两个站地位平等,都可以发起传输。PPP 就使用类似 ABM 的模式

数据链路层设备

网桥(Bridge)

  • 工作在数据链路层,基于 MAC 地址转发帧
  • 通常只有 2 个端口,用于连接两个局域网段
  • 自学习 MAC 地址表,隔离冲突域
  • 存储转发方式,转发速度较慢

交换机(Switch)

  • 工作在数据链路层(二层交换机),本质上是多端口网桥
  • 基于 MAC 地址转发帧,每个端口是一个独立的冲突域
  • 支持存储转发和直通转发(Cut-through)两种方式
  • 支持 VLAN、QoS、端口聚合等高级功能
  • 是现代局域网的核心设备

典型例题

例题1:以太网帧填充计算

一个以太网帧的数据字段只有 20 字节,请问需要填充多少字节?该帧的总长度是多少?

参考答案(4 个标签)
以太网帧结构最小帧长填充
  1. 以太网数据字段最小为 46 字节(保证最小帧长 64 字节)
  2. 当前数据为 20 字节,需要填充:4620=2646 - 20 = 26 字节
  3. 以太网帧首部(目的MAC+源MAC+类型)= 6+6+2 = 14 字节
  4. FCS = 4 字节
  5. 总长度 = 14(首部)+ 46(数据+填充)+ 4(FCS)= 64 字节

注意:前导码(7字节)和 SFD(1字节)通常不计入帧长。

答案:需要填充 26 字节,帧总长度为 64 字节(最小帧长)。

例题2:PPP 协议分析

PPP 链路建立过程中,LCP 和 NCP 分别负责什么?如果一个 PPP 连接只传输 IPv4 数据,需要哪些协议参与?

参考答案(5 个标签)
PPPLCPNCPIPCP链路建立
  1. LCP(Link Control Protocol):负责数据链路层的参数协商和链路管理,包括:

    • 最大接收单元(MRU)协商
    • 认证协议协商(PAP/CHAP)
    • 压缩协议协商
    • 链路质量监控
    • 链路建立和终止
  2. NCP(Network Control Protocol):负责网络层参数的配置,每种网络层协议对应一个 NCP:

    • IPCP(IP Control Protocol):配置 IP 地址、DNS 等
    • IPXCP:配置 IPX 协议
    • IPv6CP:配置 IPv6
  3. 如果只传输 IPv4,需要的协议:

    • LCP:链路层参数协商
    • 认证协议(可选):PAP 或 CHAP
    • IPCP:IP 地址分配和配置
    • IPv4:数据传输

答案:LCP 负责链路层参数协商,NCP 负责网络层参数配置。只传 IPv4 时需要 LCP、(可选的认证协议)、IPCP 和 IPv4。

例题3:MAC 地址与广播

一个以太网帧的目的 MAC 地址为 FF:FF:FF:FF:FF:FF,这是什么类型的地址?该帧会被哪些站点接收?

参考答案(4 个标签)
MAC地址广播地址以太网广播域
  1. FF:FF:FF:FF:FF:FF广播地址(所有位全为 1)。
  2. 广播帧会被同一个广播域内的所有站点接收和处理。
  3. 在传统的共享式以太网(集线器连接)中,所有站点都在同一个广播域和冲突域中。
  4. 在交换式以太网中,交换机默认会将广播帧从除接收端口外的所有端口泛洪(Flooding),因此所有连接在同一台交换机(或同一 VLAN)上的站点都会收到。
  5. 路由器不会转发广播帧(路由器隔离广播域),因此广播帧不会跨网段传播。

答案:这是广播地址,会被同一广播域内的所有站点接收。路由器不转发广播帧,因此广播仅限于本地网段。


练习题

练习1

比较 PPP 和 HDLC 协议的异同。

参考答案(4 个标签)
PPPHDLC协议比较数据链路层

相同点

  1. 都是数据链路层协议,都支持点对点连接
  2. 都使用 0x7E 作为帧定界符,使用比特填充(PPP 异步模式也支持字符填充)
  3. 都提供差错检测(FCS/CRC)
  4. 帧结构相似(标志、地址、控制、数据、FCS)

不同点

  1. 面向方式:PPP 面向字节,HDLC 面向比特
  2. 复杂度:PPP 简单灵活,HDLC 功能更强大但更复杂
  3. 连接类型:PPP 主要支持点对点,HDLC 支持点对点和多点
  4. 身份验证:PPP 支持 PAP/CHAP 身份验证,HDLC 不支持
  5. 多协议支持:PPP 通过 NCP 支持多种网络层协议,HDLC 不关心网络层协议
  6. 序号机制:HDLC 有完整的序号和确认机制(I帧/S帧),PPP 默认不提供可靠传输(可选的可靠传输模式)
  7. 应用场景:PPP 用于拨号、DSL、专线等;HDLC 用于早期的专线网络和 Cisco 路由器的串行链路(Cisco HDLC)

练习2

以太网交换机和集线器的主要区别是什么?为什么交换机取代了集线器?

参考答案(5 个标签)
交换机集线器冲突域全双工局域网

主要区别

  1. 工作层次:集线器工作在物理层,交换机工作在数据链路层
  2. 冲突域:集线器所有端口共享一个冲突域,交换机每个端口是独立的冲突域
  3. 工作模式:集线器只能半双工,交换机支持全双工
  4. 转发方式:集线器将信号广播到所有端口,交换机基于 MAC 地址表转发到特定端口
  5. 带宽:集线器所有端口共享总带宽,交换机每个端口有独立带宽
  6. 功能:集线器只有信号放大和转发功能,交换机支持 MAC 地址学习、VLAN、QoS 等

交换机取代集线器的原因

  1. 性能更高:全双工、独立冲突域、并行传输,大大提高了网络吞吐量
  2. 减少冲突:每个端口独立冲突域,避免了 CSMA/CD 的冲突开销
  3. 安全性更好:单播帧只转发到目标端口,其他端口无法窃听
  4. 功能更丰富:支持 VLAN 隔离广播域、QoS 优先级、端口聚合等
  5. 成本下降:随着技术发展,交换机的价格降到了可接受的水平

术语对照表

中文术语英文术语缩写说明
介质访问控制地址Media Access Control AddressMAC48位物理地址
以太网Ethernet-最广泛的局域网技术
帧校验序列Frame Check SequenceFCSCRC校验字段
最大传输单元Maximum Transmission UnitMTU数据字段最大长度
虚拟局域网Virtual LANVLAN逻辑划分广播域
接入点Access PointAP无线局域网中心设备
点对点协议Point-to-Point ProtocolPPP点对点链路层协议
链路控制协议Link Control ProtocolLCPPPP链路参数协商
网络控制协议Network Control ProtocolNCPPPP网络层参数协商
挑战握手认证协议Challenge Handshake Auth ProtocolCHAPPPP安全认证
高级数据链路控制High-level Data Link ControlHDLC面向比特的链路层协议
服务集标识符Service Set IdentifierSSIDWiFi网络名称
载波监听多路访问/冲突避免CSMA with Collision AvoidanceCSMA/CA无线局域网MAC协议
网桥Bridge-二层转发设备(2端口)
交换机Switch-多端口二层转发设备
集线器Hub-物理层共享设备
前导码Preamble-以太网帧同步字段
帧起始定界符Start Frame DelimiterSFD以太网帧开始标志