主机和路由器:节点
连接相邻节点的通信通道:链路
- 有线链路
- 无线链路
- 局域网
链路层数据分组:帧,封装网络层数据报
数据链路层负责通过一条链路从一个节点向另一个物理链路直接相连的相邻结点传送数据报。
链路层服务
组帧:
- 封装数据报构成数据帧,加首部和尾部
- 帧同步
链路接入:
- 如果是共享介质,需要解决信道接入
- 帧首部中的MAC地址,用于标识帧的源和目的(不同与IP地址)
相邻节点间可靠交付:
- 在低误码率的有线链路上很少采用
- 无线链路:误码率高
流量控制:协调相邻的发送结点和接收
差错检测:
- 信号衰减和噪声会因此差错
- 接收端检测到差错:通知发送端重传或直接丢弃帧
差错纠正:接收端直接纠正比特差错
半双工通信:链路两端结点交替双向传输;
全双工通信:链路两端结点同时双向传输;
差错编码
在数据上增加冗余比特去进行差错检测与纠正比特。
检错能力
差错编码可分为检错码和纠错码;
如果一个编码集的汉明距离ds = r + 1,则该差错编码可以检测r位的差错;
对于纠错码,如果编码集的汉明距离ds = 2r + 1,可以纠正r位的差错;
奇偶校验码
1比特校验位:检测奇数位差错
二维奇偶校验:检测奇数位差错、部分偶数位差错,纠正同一行/列的奇数位错
Internet校验和
发送端:将数据(校验内容)划分为16位的二进制整数序列,补码求和(最高位进位的1返回最低为继续加),取sum的反码,放入分组的校验和字段。
接收端:与发送端相同算法计算,计算得到的checksum,16位全0,无错。
循环冗余校验码(CRC)
多路访问协议(MAC协议)
两类链路:
- 点对点链路:拨号接入的PPP;以太网交换机与主机间的点对点链路;
- 广播链路(共享介质):早期的总线以太网;HFC上行链路;802.11无线局域网;
采用分布式算法决定结点如何共享信道,即决策节点何时可以传输数据;必须基于信道本身,通信信道共享协调信息。
理想MAC协议
给定:速率位R bps的广播信道;
期望:
- 当只有一个结点希望传输数据时,它可以以速度R发送;
- 当有M个结点期望发送速率时,每个结点平均发送数据的平均速率是R/M。
- 完全分散控制:无需特定结点协调;无需时钟、时隙同步
- 简单
MAC协议分类:
- 信道划分MAC协议:多路复用技术;TDMA、FDMA、CDMA、WDMA;
- 随机访问MAC协议:信道不划分,允许冲突;采用冲突恢复机制;
- 轮转MAC协议:结点轮流使用信道;
信道划分MAC协议
TDMA:
- 周期性接入信道;
- 每个站点在每个周期,占用固定的时隙;
- 未用时时隙空闲
FDMA:
- 信道频谱划分为若干频带
- 每个站点分配一个固定的频带
- 无传输频带空闲
随机访问MAC协议
当结点要发送分组时:
- 利用信道全部数据R发送分组
- 没有事先的结点间协调
两个或两个以上结点同时传输就会导致冲突
随机访问MAC协议需要定义:
- 如何检测冲突
- 如何从冲突中恢复
时隙ALOHA协议
假定:
- 所有帧大小相同
- 时间被划分为等长的时隙(每个时隙可以传输一个帧)
- 结点只能在时隙开始时刻发送帧
- 结点间时钟同步
- 如果两个或两个以上结点在同一时隙发送帧,结点即检测到冲突
运行:
- 当结点有新的帧时,在下一个时隙发送
- 如果无冲突,该结点可以在下一个时隙继续发送新的帧
- 如果冲突,该节点在下一个时隙以概率p重传该帧,直至成功
优点:
- 单个结点活动时,可以连续以信道全部速率传输数据;
- 高度分散化,只需同步时隙
- 简单
缺点:
- 冲突,浪费时隙
- 空闲时隙
- 结点也许能以小于分组传输时间检测到冲突
- 时钟同步
效率:长期运行时,成功发送帧的时隙所占比例(最大效率0.37)
ALOHA协议
非时隙ALOHA:更加简单,无需同步
- 当有新的帧生成时,立即发送
- 冲突可能性增大(效率0.18)
CSMA协议
载波监听多路访问协议CSMA
发送帧之前,监听信道:
- 信道空闲:发送完整帧
- 信道忙:1-坚持CSMA;非坚持CSMA;P坚持CSMA
但冲突仍然可能发生:信号传播延迟
CSMA/CD协议(检测冲突)
- 短时间内可以检测到冲突
- 冲突后传输中止,减少信道浪费
冲突检测:
- 有限局域网易于实现:测量信号强度,比较发射信号和接收信号
- 无线局域网很难实现:接收信号强度淹没在本地发射信号强度下
Lmin / R = 2dmax / V
Lmin / R = RTTmax
效率趋近于1
轮转访问MAC协议
信道划分MAC协议:
- 网络负载重时,共享信道效率高,且公平
- 网络负载轻时,共享信道效率低
随机访问MAC协议:
- 网络负载轻时,共享信道效率高,单个结点可以利用信道的全部带宽
- 网络负载重时,产生冲突开销
轮转访问MAC协议综合前两者优点
轮询:主结点轮流邀请从属结点发送数据(轮询开销,等待延迟,单点故障)
令牌传递:控制令牌从一个结点传递到下一个结点(令牌开销,等待延迟,单点故障)
令牌:特殊帧
MAC协议总结
信道划分MAC协议:时间、频带、码片划分(负担重的网络);
随机访问MAC协议:等等等(以太网)
轮转访问MAC协议:轮询,令牌传递(蓝牙,令牌环网等)