令牌、环网、访问控制,这些术语乍一看或许有点令人头晕。但当你真正理解了它们之后,就会发现,令牌传递协议的设计思路其实非常朴素,甚至有点“生活化”。
刚开始学习网络时,很多人一看到“令牌传递协议”这几个字,第一反应就是:又是一个需要死记硬背的抽象概念。
听起来很高深的技术名词,背后往往藏着朴素的思想。令牌传递协议的设计核心,其实就源于生活中一个简单的协调需求。

一、为什么需要令牌传递协议
让我们从一个非常现实的问题说起:如果一条共享链路上有很多设备,大家同时想发送数据,会发生什么?
答案很简单:会发生冲突,谁也发不出去。
早期的以太网采用 CSMA/CD 机制,本质上是“抢着说”,谁先抢到谁先说,抢不到的退避重试。这种方式在设备少、流量小的时候还行得通,但一旦设备增多、数据量变大,网络效率就会急剧下降。
于是有人想,既然“抢”会乱,那不如换个方式:大家轮流来。
令牌传递协议,正是在这个背景下诞生的。在网络中,所有节点按顺序连接成一个逻辑环,一个特殊的“令牌”(其实就是一种控制帧)沿着这个环依次传递。一个节点只有拿到令牌,才有发送数据的权利。这样一来,就彻底避免了冲突。

工作机制其实很简单:
在任何时刻,整个环上只允许存在一个令牌。谁拿到了令牌,谁才有发送数据的权限。没有令牌的节点,只能安静地等待。
这意味着,网络通信的方式从“大家抢着说话”,变成了“谁拿着话筒谁发言”。这样一来,永远不会有两个人同时开口的“冲突”情况,通信变得井然有序。
二、令牌传递协议优缺点
令牌传递协议的主要优点包括:
确定性:你可以准确预测一个节点最多需要等多久才能拿到令牌,网络时延是可控的,不会出现某个节点因长期抢不到发送机会而“饿死”的情况。公平性:每个节点都有均等的机会获得发送权。
基于这些优点,令牌传递协议在早期被广泛用于对实时性和确定性要求较高的场景,比如工业控制网络。
当然,它也存在一些明显的缺点:
结构不灵活:网络中所有节点必须形成一个逻辑环,任何一个节点出问题,都可能导致整个环的通信中断,可靠性依赖环的完整性。维护成本高:增加或删除网络设备时,都需要重新构建和调整这个逻辑环,操作较为复杂。扩展性一般:随着环上节点数量的增加,令牌传递一圈的时间会相应变长,从而增加每个节点的平均等待时间。
相比之下,以太网虽然看起来“乱一点”,但更灵活、成本更低且易于扩展。
不过,如今令牌传递协议已较少使用了。这并非因为它本身不好,而是网络环境变了。随着交换式以太网的普及、全双工通信的出现以及硬件性能的飞速提升,“冲突”本身已不再是一个严重问题,自然也就不再需要用令牌来严格管控发送顺序了。因此,它逐渐退出了主流网络技术的舞台,但其设计思想依然具有很高的参考价值。
