@TOC
数据链路层概述
术语简述:
- 主机和路由器:结点(nodes)
- 连接相邻结点的通信信道:链路(links): ①有线链路(wired links) ②无线链路(wireless links) ③局域网(LANs)
- 链路层(第2层)数据分组:帧 (frame),封装网络层数据报
功能概述:
- 数据链路层负责通过一条链路从一个节点向另一个物理链路直接相连的相邻结点传送数据报。
链路层服务:
- 组帧(framing) ①封装数据报构成数据帧,加首部和尾部 ② 帧同步
- 链路接入(link access) ①如果是共享介质,需要解决信道接入(channel access) ② 帧首部中的“MAC”地址,用于标识帧的源和目的, 不同于IP地址!
- 相邻结点间可靠交付 ①在低误码率的有线链路上很少采用 (如光纤,某些双绞线等) ②无线链路:误码率高,需要可靠交付
- 流量控制(flow control) ①协调(pacing)相邻的发送结点和接收
- 差错检测(error detection) ①信号衰减和噪声会引起差错. ②接收端检测到差错: 通知发送端重传或者直接丢弃帧
- 差错纠正(error correction) ① 接收端直接纠正比特差错
- 全双工和半双工通信控制 ①全双工:链路两端结点同时双向传输 ②半双工:链路两端结点交替双向传输
链路层的具体实现:
- 每个主机或路由器接口
- 链路层在“适配器” (即网络接口卡-NIC)中实 现 或者在一个芯片上实现 ①以太网网卡,802.11网卡;以太网芯片组 ②实现链路层和物理层
- 链接主机的系统总线
- 由硬件、软件与固件组成
网卡:
网络适配器又称网卡或网络接口卡(NIC),英文名NetworkInterfaceCard。Emulex网络适配器的内核是链路层控制器,该控制器通常是实现了许多链路层服务的单个特定目的的芯片,这些服务包括成帧,链路接入,流量控制,差错检测等。- 网络适配器是使计算机联网的设备,平常所说的网卡就是将PC机和LAN连接的网络适配器。网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输。它的主要技术参数为带宽、总线方式、电气接口方式等。
网卡间通信:
- 发送端: ①将数据报封装成帧 ②增加差错检测比特,实现可靠数据传输和流量控制等.
- 接收端: ①检测差错,实现可靠数据传输和流量控制等 ②提取数据报,交付上层协议实体
差错编码
简述:
- 差错检测:差错编码
- 差错编码的检错能力:差错编码可分为检错码与纠错码
- 差错编码方法: ①奇偶校验码 ②Internet校验和(Checksum) ③循环冗余校验码(CRC)
多路访问控制(MAC)协议
两类“链路”:
- 点对点链路 ① 拨号接入的PPP ②以太网交换机与主机间的点对点链路
- 广播链路 (共享介质) ① 早期的总线以太网 ② HFC的上行链路 ③802.11无线局域网
注意:
- 单一共享广播信道,两个或者两个以上结点同时传输形成干扰(interference) 就会发生冲突(collision): ①结点同时接收到两个或者多个信号→接收失败!
多路访问控制协议(multiple access control protocol):
- 采用分布式算法决定结点如何共享信道,即决策结点何时可以传输数据
- 必须基于信道本身,通信信道共享协调信息! ①无带外信道用于协调
MAC协议分三大类:
- 信道划分(channel partitioning)MAC协议 ①多路复用技术 ② TDMA、FDMA、CDMA、WDMA等
- 随机访问(random access)MAC协议 ① 信道不划分,允许冲突 ② 采用冲突“恢复”机制
- 轮转(“taking turns”)MAC协议 ①结点轮流使用信道
随机访问MAC协议
随机访问MAC协议:
- 当结点要发送分组时: ① 利用信道全部数据速率R发送分组 ②没有事先的结点间协调
- 两个或多个结点同时传输:➜ “冲突”
- 随机访问MAC协议需要定义: ①如何检测冲突 ② 如何从冲突中恢复 (e.g., 通过延迟重传)
- 典型的随机访问MAC协议: ① 时隙(sloted)ALOHA ② ALOHA ③ CSMA、CSMA/CD、CSMA/CA
时隙ALOHA协议:
- 假定: ① 所有帧大小相同 ② 时间被划分为等长的时隙(每个时隙可以传输1个帧) ③结点只能在时隙开始时刻发送帧 ④ 结点间时钟同步 ⑤ 如果2个或2个以上结点在同一时隙发送帧,结点即检测到冲突
- 运行: ①当结点有新的帧时,在下一个时隙(slot)发送 ② 如果无冲突:该结点可以在下一个时隙继续发送新的帧 ③如果冲突:该结点在下一个时隙以概率p重传该帧,直至成功
- 优点: ①单个结点活动时,可以连续以信道全部速率传输数据 ②高度分散化:只需同步时隙 ③简单
- 缺点: ①冲突,浪费时隙 ② 空闲时隙 ③结点也许能以远小于分组传输时间检测到冲突 ④ 时钟同步
- 效率(efficiency): ①长期运行时,成功发送帧的时隙所占比例 (很多结点,有很多帧待发送)
ALOHA协议:
- 非时隙(纯)Aloha:更加简单,无需同步
- 当有新的帧生成时,立即发送
- 冲突可能性增大:, 在t0时刻发送帧,会与在[t0-1, t0+1]期间其他结点发送的帧冲突
- 比时隙ALOHA协议更差!
CSMA协议:
- 全名:载波监听多路访问协议CSMA (carrier sense multiple access)。
- 发送帧之前,监听信道(载波): ①信道空闲:发送完整帧 ②信道忙:推迟发送 1、1-坚持CSMA 2、非坚持CSMA 3、P-坚持CSMA
- 冲突可能仍然发生:信号传播延迟
- 继续发送冲突帧:浪费信道资源
CSMA/CD协议:
- 全名:CSMA/CD: CSMA with Collision Detection。
- 短时间内可以检测到冲突
- 冲突后传输中止,减少信道浪费
- 冲突检测: ①有线局域网易于实现:测量信号强度,比较发射信号与接收信号 ②无线局域网很难实现:接收信号强度淹没在本地发射信号强度下(eg:因此无线局域网使用CSMA/CA)
轮转访问MAC协议
发展由来简述:
- 信道划分MAC协议: ①网络负载重时,共享信道效率高,且公平 ②网络负载轻时,共享信道效率低!
- 随机访问MAC协议: ①网络负载轻时,共享信道效率高,单个结点可以利用信道的全部带宽 ② 网络负载重时,产生冲突开销
- 轮转访问MAC协议: ①综合两者的优点!
轮转访问MAC协议:
- 轮询(polling): ①主结点轮流“邀请”从属结点发送数据
- 典型应用: ①“哑(dumb)” 从属设备
- 问题: ①轮询开销 ②等待延迟 ③单点故障
令牌传递(token passing):
- 控制令牌依次从一个结点传递到下一个结点.
- 令牌:特殊帧
- 问题: ①令牌开销 ②等待延迟 ③单点故障
MAC协议总结
总结:
- 信道划分MAC协议:时间、频带、码片划分 ① TDMA、FDMA、CDMA
- 随机访问MAC协议: ① ALOHA, S-ALOHA, CSMA, CSMA/CD ② CSMA/CD应用于以太网 ③ CSMA/CA应用802.11无线局域网
- 轮转访问MAC协议: ① 主结点轮询;令牌传递 ②蓝牙、FDDI、令牌环网