目录
二、介质访问控制子层(Media Access Control, MAC层)
4、CSMA(Carrier Sense Multiple Access)协议:载波监听多路访问协议
1、发送帧的方法:CSMA/CD(Carrier Sense Multiple Access With Collision Detection)协议,即1-persistent CSMA
2、二进制指数退避算法(binary exponential backoff)
3、802.3的MAC帧格式(802.3标准是以太网的一个协议)
六、生成树协议(Spanning Tree Protocol)
一、概述
1、多路访问链路
多路访问链路(广播链路)采用共享介质连接所有站点。发送站点通过广播方式发送数据并占用整个共享介质的带宽。每个站点只需要一条线接入网络就可以访问该链路上的所有站点。【局域网LAN使用的就是多路访问链路】
2、介质访问控制子层的由来
在多路访问链路中多个站点同时发送数据会造成冲突,因此OSI(开放式系统互联通信参考模型)为解决冲突问题,专门在数据链路层划分出一个子层:介质访问控制子层,以控制和协调所有站点对共享介质的访问,避免或减少冲突。即MAC层定义了主机何时以及如何访问共享介质。
二、介质访问控制子层(Media Access Control, MAC层)
1、逻辑链路控制子层
MAC子层不提供可靠的数据传输,在这一层之上又定义了一个子层:逻辑链路控制子层(logic link control, LLC)用来为上层协议提供服务。如滑动窗口就是在LLC层中实现的,其中LLC2提供了有确认的面向连接的服务(TCP)。【LLC:提供可靠的数据传输】
2、以太网(Ethernet)
以太网属于OSI参考模型的数据链路层,是为了实现局域网通信而设计的一种技术,它规定了包括物理层的连线、电子信号和介质访问层协议,是目前应用最普遍的局域网技术。
3、世界上最早的无线电计算机通信网:ALOHA
- 纯ALOHA协议(随机访问/竞争发送协议):想发送就发送,超时未收到确认则认为发送了冲突。
- 分槽ALOHA协议:把时间分为长度相同的时槽(slot),每个站点只在时槽开始时发送,信道空则立即以概率P发送,以概率1-P延迟一个时槽;若信道忙则延迟一个时槽。
4、CSMA(Carrier Sense Multiple Access)协议:载波监听多路访问协议
CSMA协议属于随机访问协议(Random Access Protocol)的一种,它遵循发送前先监听信道的规则:
- 1-persistent CSMA(以太网使用):信道空则立即发送,信道忙则持续监听(所以如果信道为空时有两个站点同时发送数据则它们一定会产生冲突);
- non-persistent CSMA:信道空则发送,信道忙则延迟一段随机长度的时间(这种方式在信道较忙时最省电)。
- p-persistent CSMA(分槽ALOHA):信道空则立即以概率P发送,以概率1-P延迟一个时槽,信道忙则延迟一个时槽。
三、以太网的MAC层协议
1、发送帧的方法:CSMA/CD(Carrier Sense Multiple Access With Collision Detection)协议,即1-persistent CSMA
- 发送数据帧之前先监听信道,如果信道空闲则立即发送,如果信道忙则持续监听,直到信道空闲,立即发送。(发送前持续监听时,如果监听到96bits的空闲则说明当前信道空闲,立即发送信号。96bits的空闲可以用于区分帧,即以太网采用了inter-frame space的成帧方法)
- 边发送边检测冲突,如果发送完毕都没有检测到冲突则发送成功。
- 如果检测到冲突,则停止发送,并发送32位干扰位(jamming signal)以加强冲突信号。采用二进制指数退避算法随机延迟一段时间后执行第一条操作。(因此第一个冲突的概率无法计算)
注意两个概念:
- 监听信道:指的是在未发送信号时监听,监听的是主机接入到多路访问链路上的共享链路的位置是否有数据在传输;
- 边发送边检测冲突:指的是在帧的发送延迟这段时间内检测是否有冲突;
2、二进制指数退避算法(binary exponential backoff)
这里引入最短帧的问题:
以太网(10Mbps)相距最远的两个站点之间的信号往返时间为51.2微秒。如果A发送的数据在快到B时与其发送的数据冲突(因为B检测到其上方的共享链路为空则发送,此时可能A还没传到B,但B一发送A就到了),因为发送站点只有在发送的时候才检测冲突