第3章 数据链路层 设计问题 为网络层提供的服务 帧 差错控制 流量控制 05:55:10
3.1 数据链路层设计的问题 为网络提供的服务 成帧 无确认的无连接服务 有确认的无连接服务 有确认的面向连接的服务 字符计数法 -[see fig 3-3] 带字符填充的首尾界符法 -[see fig 3-4] 带位填充的首尾界符法 -(01111110)-[see fig 3-5] 物理层编码违例法 (1->高-低电平对,0->低-高电平对) 05:55:10
3.1 数据链路层设计的问题 差错控制 流量控制 检错 纠错 重复 丢失 定时器 解决发送方的发送能力比接收方接受能力大的问题 05:55:10
3.2 差错检测和纠正 纠错码 检错码 码字 海明距离 奇偶位 多项式编码(循环冗余码,CRC码) 计算校验和的算法: -[see page 140] CRC-12 = x12+x11+x3+x2+x1+1 CRC-16 = x16+x15+x2+1 CRC-CCITT = x16+x12+x5+1 05:55:10
3.3 基本数据链路协议 进程、分组(packet)和帧(frame)-[see fig 3-8] 一种无限制的单工协议(wtopia)-[see fig 3-9] 一种单工的停-等协议-[see fig 3-10] stop-and-wait 有噪声信道的单工协议-[see fig 3-11] 一个肯定确认的重传协议 计时器、序号、PAR/ARQ 05:55:10
3.4 滑动窗口协议 双向传输、捎带、带宽利用率、 滑动窗口(slide window)、接收/发送窗口 一个1位滑动窗口协议-[see fig 3-12/13] Window size =1 使用后退n帧的协议-[see fig 3-15(a)/16] 窗口大小为W=1 抛弃所有后续的帧 最多允许有MAX_SEQ帧未被确认 软件定时器-[see fig 3-17] 05:55:10
3.4 滑动窗口协议 使用选择性重传的协议-[see fig 3- 15(b)/18/19] 允许接收后续的帧 窗口大小为W<=(MAX_SEQ+1)/2 所需缓冲器的数量=W 所需计时器的数量=W 否定性确认帧-NAK 05:55:10
3.5 协议描述和验证(自学) 有限状态机模型-[see fig 3-20] Petri网模型-[see fig 3-22] 图论 转换、初始状态、可达性分析 死锁(deadlock) Petri网模型-[see fig 3-22] 4个基本元素:位置、转换、弧和标记 05:55:10
3.6 数据链路层示例 HDLC-高级数据链路控制 SDLC(IBM’SNA)ADCCP(ANSI) HDLC(ISO)LAP(CCITT)LAPB(X.25) 面向位(bit)的协议 帧格式-[see fig 3-24] 帧分隔符(01111110)、最小帧:3个字段、32位 三种类型的帧:信息、监控、无序号帧-[see fig 3-25] 05:55:10
3.6 数据链路层示例 因特网中的数据链路层-[see fig 3-26] SLIP串行线路IP--- Serial Line IP 面向字符 许多缺点: 不能进行错误检测和纠正 只支持IP 双方必须预先知道IP地址 没有身份验证 不是因特网标准 05:55:10
3.6 数据链路层示例 因特网中的数据链路层-[see fig 3-26] PPP—点到点协议 支持:错误检测、多协议、动态IP地址分配、身份验证… 链路控制协议LCP 网络控制协议NCP 帧格式(as HDLC):面向字符-[see fig 3-27] 工作流程图-[see fig 3-28] 05:55:10
3.6 数据链路层示例(自学) ATM网中的数据链路层-[see fig 3-30] 信元传输 信元接收 5字节头部(4字节信息及1字节的校验和〈头部错误控制HEC>) 传输手段:异步、同步 无数据信元:空闲信元(idle cell)、操作和维护(OAM)信元 信元接收 05:55:10
3.7 小结 数据链路层的任务 窗口大小、滑动窗口 停-等协议、滑动窗口协议 协议的模拟:有限状态机模型和Petri网模型 链路层协议实例: 面向比特(Bit):SDLC、HDLC、ADCCP或LAPB 面向比特(Bit):SLIP和PPP(因特网使用) ATM系统:自己的简单协议,简化错误校验、无流量控制 05:55:10