在计算机网络中,如何协调多个节点在共享信道上的通信是一个核心问题。在上一节中,我们讨论了以太网(Ethernet)所采用的"随机访问"机制(如 CSMA/CD),其特点是"先听后说,冲突重发"。然而,在某些对实时性、确定性要求极高的应用场景下,随机竞争带来的不确定性是无法接受的。
本节将深入探讨另一种介质访问控制(MAC)策略------受控访问(Controlled Access) ,重点介绍其中的令牌传递协议(Token Passing Protocol)。这种机制通过有序的"轮询"方式,彻底消除了信道冲突。
4.1 历史背景与发展
4.1.1 从无序到有序的需求
20世纪70年代末至80年代初,局域网(LAN)技术方兴未艾。虽然基于总线拓扑的以太网因其简单低廉而迅速普及,但它有一个致命弱点:不确定性。在重负载情况下,以太网的碰撞几率急剧上升,导致网络吞吐量下降,且无法保证数据包在特定时间内送达。
对于工业自动化、银行交易系统以及IBM的大型机环境而言,网络必须是"确定性"的(Deterministic)。为了解决这一问题,IBM公司牵头研发了令牌环(Token Ring)技术。
4.1.2 标准化进程
- IEEE 802.5(令牌环): 1985年,IEEE发布了802.5标准,定义了令牌环网的物理层和MAC子层规范。它成为了当时以太网最强有力的竞争对手。
- IEEE 802.4(令牌总线): 为了适应工厂自动化中对总线物理拓扑的需求,同时保留令牌传递的确定性,IEEE制定了802.4标准(Token Bus)。
- FDDI(光纤分布式数据接口): 随着光纤技术的发展,基于令牌传递机制的FDDI标准出现,将传输速率提升至100 Mbps,常用于当时的园区网主干。
虽然随着交换式以太网(Switched Ethernet)的出现,令牌环在商业局域网中逐渐式微,但其核心的"轮询"与"无冲突调度"思想至今仍在工业控制、嵌入式系统及部分无线通信协议中发挥着重要作用。
4.2 令牌传递的基本原理
令牌传递协议的核心思想非常朴素:持有"许可证"的人才有资格发言 。在网络中,这个许可证被称为令牌(Token)。
4.2.1 拓扑结构:物理星型,逻辑环型
在理解令牌传递前,必须厘清物理连接与逻辑流向的区别。
- 逻辑环型: 无论物理线路如何连接,网络中的站点在逻辑上组成一个首尾相接的环。令牌和数据帧沿着环路单向(通常是顺时针)逐站传递。
- 物理星型: 在实际部署(如IBM Token Ring)中,为了易于管理和维护,通常采用星型布线。所有计算机连接到一个中心设备------多站接入单元(MAU, Multistation Access Unit)。MAU内部通过继电器将各个端口串联成环。

图 4-1:令牌环网的物理与逻辑结构示意图
4.2.2 工作流程
令牌是一个特殊的短帧(通常只有3个字节),它有两种状态:空闲(Free)和忙(Busy)。
- 令牌巡回: 当网络空闲时,一个"空闲令牌"在环路上从一个站点传到下一个站点。
- 捕获令牌: 当站点 AAA 需要发送数据时,它必须等待并捕获到这个空闲令牌。
- 发送数据: 站点 AAA 将令牌的状态位修改为"忙",并在其后附加数据载荷,构成一个完整的数据帧发送出去。此时,环路上不再有空闲令牌,其他站点(如 B,CB, CB,C)即使想发送数据也只能等待。
- 数据转发与接收: 数据帧沿着环路经过 B,CB, CB,C。每个站点都会检查帧的目的地址。如果 CCC 发现自己是接收者,它会复制帧中的数据,并标记帧状态为"已接收",然后将帧转发回环路。
- 移除数据与释放令牌: 数据帧绕环一周后回到发送者 AAA。AAA 检查确认数据已被接收,然后将数据帧从环上"剥离"(Drain),并产生一个新的"空闲令牌"发送到下游,将发送权移交给下一个站点。
4.3 技术细节与机制分析
为了保证网络的健壮性(Robustness)和效率,令牌传递协议包含许多精细的设计。
4.3.1 帧结构与令牌格式
在 IEEE 802.5 标准中,令牌和数据帧共用部分字段。
- 令牌(3字节): 起始定界符(SD) + 访问控制字段(AC) + 结束定界符(ED)。
- 访问控制字段(AC): 这是核心字段,包含:
- 优先级位(Priority Bits, P): 用于服务质量(QoS)控制。
- 令牌位(Token Bit, T): T=0T=0T=0 表示空闲令牌,T=1T=1T=1 表示数据帧(忙)。
- 监视位(Monitor Bit, M): 用于防止孤儿帧无限循环。
4.3.2 环的维护:主动监视器
如果令牌丢失了怎么办?如果数据帧在环上无限循环怎么办?
为了解决这些问题,环中会选举出一个站点作为主动监视器(Active Monitor, AM)。
AM 的职责包括:
- 检测令牌丢失: 如果在设定时间 TmaxT_{max}Tmax 内未检测到令牌经过,AM 会生成一个新的空闲令牌。
- 处理孤儿帧: 当一个忙令牌(数据帧)经过 AM 时,AM 会将帧中的 MMM 位置为 1。如果该帧再次经过 AM 且 M=1M=1M=1,说明发送该帧的站点未能将其移除(可能已宕机),AM 会强制销毁该帧并生成新令牌。

图 4-2:主动监视器的工作机制
4.3.3 性能分析:确定性与效率
假设环上有 NNN 个站点,信号在环上传播一圈的时间为 τ\tauτ(包括线路传播延迟和每个站点的比特延迟)。
- 无冲突: 任何时刻只有一个站点持有令牌,因此信道利用率 theoretically 可以接近 100%,不会像 CSMA/CD 那样在高负载下因碰撞导致吞吐量骤降。
- 最大等待时间: 设每个站点持有令牌传输数据的最大时间为 ThtT_{ht}Tht (Token Holding Time)。那么,一个站点想要发送数据,最坏情况下的等待时间 TwaitT_{wait}Twait 约为:
Twait≈N×(Tht+τN) T_{wait} \approx N \times (T_{ht} + \frac{\tau}{N}) Twait≈N×(Tht+Nτ)
这表明等待时间是有上界的(Bounded Latency),这就是确定性的来源。
4.4 实际应用与现代演进
4.4.1 传统应用领域的衰退
在20世纪90年代,随着交换式以太网技术的成熟(全双工通信消除了冲突域)以及快速以太网(100Mbps/1000Mbps)带来的巨大带宽优势,复杂的令牌环硬件(需要昂贵的MAU和复杂的MAC芯片)在办公网络市场逐渐被淘汰。
4.4.2 工业控制系统(Fieldbus)
然而,令牌传递并未消失。在工业自动化领域,如 Profibus 等现场总线协议,依然广泛使用令牌总线(Token Bus)机制。
- 原因: 工厂里的机械臂、流水线必须在严格的时间窗口内接收指令。以太网的"大概率送达"无法满足工业级的"绝对准时"。令牌机制保证了指令传输的实时性和最坏情况响应时间。
4.4.3 现代及嵌入式网络
- 光传输网络: 一些城域网环网保护技术(如RPR, Resilient Packet Ring)借用了令牌环的拓扑和公平性算法。
- 存储区域网络(SAN): 光纤通道(Fibre Channel)的某些仲裁环路模式(FC-AL)采用了类似的轮询访问机制。
- 无线网络: 虽然 Wi-Fi 主要使用 CSMA/CA,但其协议中包含一个无竞争周期(CFP),在此期间,接入点(AP)充当中央控制器,通过轮询(Polling)各个站点来分配传输机会,这本质上就是一种集中式的令牌传递,用于保障语音或视频流的质量。
小结
令牌传递协议代表了计算机网络中"有序控制"的设计哲学。与以太网的"自由竞争"相比,它通过牺牲一定的设备复杂度和轻负载下的延迟,换取了高负载下的高吞吐量和严格的确定性延迟。
尽管经典的 IEEE 802.5 令牌环网已成为历史,但其蕴含的轮询(Polling) 、环路维护 以及无冲突调度的思想,依然深深植根于现代通信系统的底层逻辑中,特别是在那些对可靠性和实时性要求苛刻的关键任务系统中。