Appearance
ALOHA 协议
2026 大纲 三(五)2 随机访问介质访问控制(ALOHA 协议)。同一条目下的另外三个协议在《CSMA/CD》与《CSMA/CA》。
一、换场景:信道被很多站共享
到上一节为止,本章所有协议都跑在点对点链路上——两个端点,"该谁发"根本不是问题。
局域网不一样:一条信道被很多站共享,一台机器发出的信号所有机器都收得到。第一节那张功能表里的第四项——介质访问控制——终于要登场了:谁能发、什么时候发。
解决办法一共三类,分类依据是发送权在什么时候确定:
| 类别 | 发送权何时确定 | 会不会冲突 | 代表 |
|---|---|---|---|
| 静态划分信道 | 通信开始之前就定死 | 绝不会 | FDM / TDM / CDM |
| 随机接入 | 不预先定,事后靠冲突消解 | 会,靠协议善后 | ALOHA、CSMA/CD、CSMA/CA |
| 受控接入 | 运行时按规则轮转 | 不会 | 令牌传递 |
后两类合称动态媒体接入控制。第一类在物理层那一章已经讲过,这一节起讲第二类。
局域网为什么选随机接入? 因为局域网的流量是突发的——一台机器可能几分钟不发一个字节,然后突然要传一个大文件。给这种流量固定切一份信道,绝大部分时间那份是空的,所以静态划分"代价较高,不适合于局域网使用"。
ALOHA 是随机接入的第一版,也是最裸的一版:除了"想发就发、撞了重发"什么机制都没有。正因为什么都没有,它的吞吐量上限成了后面所有随机接入协议的参照基线——每一步改进值多少,都是拿 ALOHA 的 18.4% 比出来的。
二、纯 ALOHA 的三条规则
① 想发就发,不侦听信道;② 靠 ACK 判断成败;③ 超时认为冲突,等一个随机时间后重发。
第三条里的"随机"不能省。若等固定时间,冲突各方会原样再撞一次,而且永远撞下去——随机化的唯一作用就是把这批站在时间轴上打散。
三、易受攻击时间为什么是
这是本节全部推导的起点。
设帧的传输时间为
区间长度正是
时间轴:
|← T₀ →|← T₀ →|
─────┼─────────┼─────────┼─────
t₀-T₀ t₀ t₀+T₀
|← 易受攻击时间 →|
前半段:别人比我早开始,但还没发完,尾巴压住我的头
后半段:别人比我晚开始,但我还没发完,他的头压住我的尾关键在于"部分重叠也算冲突",只算后半段就会漏掉一半窗口。所以判据不是"帧多长",而是"部分重叠这种撞法存不存在"——下一节的时隙 ALOHA 正是靠消灭它把窗口砍了一半。
四、吞吐量:先升后降是必然的
先分清两个量,它们最容易混:
信道负载 = 一个 内全网尝试发送的平均帧数(含新帧与重传,可以远大于 1); 吞吐量 = 一个 内成功传输的平均帧数(恒小于 1)。
⚠️
推导只有两步:
假设全网的发送尝试是泊松过程(大量互相独立的站、每站发送很稀疏,这是泊松分布的标准适用场景)。在长度为
一次尝试要成功,条件是易受攻击时间内没有别的帧开始发送。纯 ALOHA 该窗口长
| 纯 ALOHA | |||||
| 时隙 ALOHA |
这个"掉头"是随机访问协议的通病,不是 ALOHA 独有的毛病。 负载越高冲突越多,冲突又触发重传,重传进一步抬高负载——正反馈一旦形成,系统会滑向"全是碰撞、没有成功"的拥塞崩溃。CSMA/CD 的二进制指数退避、CSMA/CA 的争用窗口加倍做的都是同一件事:用"失败越多退得越久"给这个正反馈踩刹车。
五、时隙 ALOHA:只加了一条约束
时隙 ALOHA 把时间划分为等长的时隙,每个时隙刚好能传一帧,站点只能在时隙的起始时刻开始发送。
关键推论:既然所有帧都只能在时隙边界开始、且刚好占满一个时隙,那么两个帧的占用区间要么完全重合,要么完全不沾——部分重叠这种情况被消灭了。
而部分重叠恰好是纯 ALOHA 那个
两个极大值点有一个好用的记忆锚点:极大值恰在"易受攻击时间归一化后等于 1"的那个
| 对比项 | 纯 ALOHA | 时隙 ALOHA |
|---|---|---|
| 发送时机 | 随时可发 | 只能在时隙起始时刻发 |
| 是否可能部分重叠 | 可能 | 不可能 |
| 易受攻击时间 | ||
| 吞吐量公式 | ||
| 最大吞吐量 | ||
| 需要时钟同步 | 不需要 | 需要 |
| 是否侦听信道 | 否 | 否 |
表里最后两行各藏着一条容易记错的事。
时隙化的代价是全局时钟同步:所有站必须对齐同一时隙边界。纯 ALOHA 完全不需要同步,这是它唯一的优势。
两种 ALOHA 都不侦听信道。时隙 ALOHA 只是限制了发的时刻,不是先听——"先听后发"是下一代协议 CSMA 才引入的。
还有一条口径要说清:"时隙 ALOHA 是纯 ALOHA 的两倍"只在各自最优点成立。同一个
六、随机访问协议的演进
| 协议 | 新增的一件事 | 换来了什么 | 代价 |
|---|---|---|---|
| 纯 ALOHA | — | 极简,零同步要求 | 利用率仅 18.4% |
| 时隙 ALOHA | 限制发送时刻 | 消灭部分重叠,利用率翻倍 | 需要全局时钟同步 |
| CSMA | 发送前侦听信道 | 别人在发就不发,冲突大幅减少 | 仍有传播时延带来的"听不到" |
| CSMA/CD | 发送中继续侦听 | 撞了立刻停,不再白发完整帧 | 要求半双工、最小帧长限制 |
| CSMA/CA | 发送前预约信道 | 无线环境下也能压低冲突 | 预约帧本身有开销 |
核心线索:从"事后知道"到"事前知道"。ALOHA 只能靠 ACK 超时事后判断,CSMA 能在发之前知道信道忙,CSMA/CD 能在发的过程中知道撞了,CSMA/CA 能提前把信道占住。信息越早拿到,浪费越少。
本节小结
- 易受攻击时间是全部推导的起点:两帧的占用区间只要部分重叠就双双作废,解
得窗口 ——前半段是"别人的尾巴压我的头",后半段是"别人的头压我的尾"。 - 吞吐量按
展开:尝试服从泊松过程,"窗口内 0 次到达"的概率是 ,于是纯 ALOHA 得 ( 取极大 0.184)、时隙 ALOHA 得 ( 取极大 0.368)。两个最大值之比恰为 2,但同一 下比值是 。 先升后降是线性项与指数项相乘的必然结果,这条下降段就是拥塞崩溃的数学形态:冲突 → 重传 → 负载更高 → 冲突更多,后续所有退避算法都是给它踩刹车。时隙化只加了"只能在时隙边界开始发"一条,消灭部分重叠,代价是需要全局时钟同步。
考点速记
本节在真题里被考过的形式是判断哪一类介质访问控制会发生冲突(cn-2013-36,四个选项是 CDMA、CSMA、TDMA、FDMA)。
答 CSMA。判据就是本节第一部分那张三分类表:CDMA、TDMA、FDMA 都属于静态划分信道,发送权在通信开始之前就定死了,绝不会冲突;只有 CSMA 属于随机接入——不预先分配,谁想发就发,撞了再善后。
这道题真正考的是"信道划分 vs 随机访问"这条分界,不是四个协议各自的细节。 四个选项里三个的名字都带"MA"(多址接入),很容易被字面带偏;抓手是前两个字母——FD/TD/CD 说的是"按什么维度切分资源",CS(Carrier Sense,载波侦听)说的是"发之前先听一下",前者切分、后者争用。
ALOHA 本身的吞吐量公式与易受攻击时间在 cn 真题里不单独成题,但本节的两条结论在别处会被反复用到:"部分重叠也算冲突" 这条判据是 CSMA/CD 争用期
易错:FDMA / TDMA / CDMA 属于信道划分,不会冲突;CSMA 属于随机接入,会冲突。 名字里都有 MA,别按字面分类。
易错:两种 ALOHA 都不侦听信道。 时隙 ALOHA 限制的是发送时刻,不是"先听后发"。
易错:
是"一个 之内"的尝试数,不是每秒尝试数。 题目给每秒数据时要先乘 。
易错:"时隙 ALOHA 是纯 ALOHA 的两倍"只在各自最优点成立,同一
下比值是 。
易错:ALOHA 的吞吐量曲线先升后降。 "负载越大吞吐量越大"是错的。
教材出处
- 谢希仁《计算机网络》(第 8 版)印刷 p84–p85,3.3.1 局域网的数据链路层:共享信道的两条技术路线原文——"(1) 静态划分信道……用户只要分配到了信道就不会和其他用户发生冲突。但这种划分信道的方法代价较高,不适合于局域网使用。(2) 动态媒体接入控制,它又称为多点接入",其下再分"随机接入"与"受控接入"两类。本篇的三分类与"局域网为什么选随机接入"直接依据这一段。
- 同书印刷 p85:随机接入的定义——"随机接入的特点是所有的用户可随机地发送信息。但如果恰巧有两个或更多的用户在同一时刻发送信息,那么在共享媒体上就要产生碰撞(即发生了冲突),使得这些用户的发送都失败。因此,必须有解决碰撞的网络协议。"
谢希仁第 8 版全书未展开讨论 ALOHA 协议本身(该书第 3 章直接从随机接入进入以太网的 CSMA/CD)。因此本篇的易受攻击时间与吞吐量推导不标注该书页码——推导过程写在正文里可自行复核,不借教材背书。
相关知识
数据链路层的组帧|CSMA/CD 协议|CSMA/CA 协议|令牌传递协议|以太网与 MAC 地址|信道划分复用