网络- 第四章据链路层.pptVIP

  • 4
  • 0
  • 约9.14千字
  • 约 70页
  • 2018-10-15 发布于江苏
  • 举报
网络- 第四章据链路层

计算机网络 数据链路层 本章内容 掌握链路、数据数据链路的概念,理解数据链路层的功能 理解停止等待协议的工作原理与过程 理解数据链路层差错控制原理 理解数据链路层流量控制的意义与方法 掌握面向比特数据链路层协议HDLC的帧结构与帧分类 理解PPP链路协议的工作过程 难点与重点 数据链路层基本概念与功能 ARQ协议原理 链路层差错控制原理 HDLC协议与帧结构 4.1 数据链路层功能 链路概念(Link):是一条无源的点到点的物理线段,中间没有任何其他节点,进行通信的两台计算机的通路往往由许多链路组成。 数据链路(Data Link):在不可靠的物理链路上添加一些由硬件及软件实现的控制规程,构成数据链路,以保证准确传输数据帧。 数据链路层功能 链路管理 链路的建立、维持与释放。 帧同步 保证接收方能从比特流中分离出数据帧 流量控制 协调发送方与接收方同步工作 差错控制 接收方能检验出有错误的帧,并采取相应措施。 数据链路层功能 透明传输 数据链路层并不关心所传数据内容,按一定规则能从帧中区分数据与控制信息。 寻址 在多点连接时保证帧被准确送达目的节点。 4.2 停止等待协议 理想的链路: 链路很可靠,数据帧不会出错与丢失; 不管发送方以多快的速率发送,接收方都能来得及接收而保证不丢失数据帧。 此时不需要链路层协议。 停止等待协议 不可靠的链路导致可能出现的情况: 数据帧出错(噪声干扰) 数据帧不能到达(链路错误) 接收溢出(结点差异) 数据帧重复(链路阻塞) 数据链路层差错控制 解决“数据帧出错”方法: 可对欲发送的帧进行差错编码,接收方通过差错校验,可判断出接收的数据帧是否发生错误。如果接收错误,就向发送方发送一出错标识帧,称为否认帧NAK,通知发送方重新传送原数据帧。 数据链路层差错控制示意图 数据链路层简单流量控制 解决“接收溢出”方法: 可以采用发送方每发送一帧,就停止发送,等待接收方的确认信息。接收方每收到一个正确的数据帧就向发送方发送一确认标识帧,称为确认帧ACK。发送方接收到确认帧,则继续发送下一帧。 数据链路层简单流量控制示意图 超时自动重新传送 解决“数据帧丢失” 方法: 可在发送方每发送完一个数据帧就启动一个超时计时器,其时间可设为略大于“从发完数据帧到收到确认帧所需的平均时间”。如果超时,发送方还没有收到ACK,则认为帧丢失,自动将数据帧重新发送。 超时重新传送示意图 重复帧处理 当接收方正确接收数据帧并发出确认帧,但确认帧丢失。发送方在规定时限内没有接收到确认信息,认为数据帧丢失,自动重新传送原数据帧。这样接收方又收到一个同样的数据帧,称为重复帧。 可通过对数据帧编号的方法解决。发送方将欲发送的数据帧编好序号,如接收方收到序号相同的帧,则将重复帧丢弃,并向发送方重新发送确认帧。 重复帧处理示意图 停止等待协议 发送方每发送完一帧就要等待接收方的确认信息。如果出错可由发送方自动重传。因此称为自动请求重传,即ARQ(Automatic Repeat reQuest)。因为每次只发送一帧,可用1个比特为帧序号编码,来区分重复帧。 停止等待协议 数据帧出错或丢失(发送确认与否认帧) 确认帧出错或丢失(超时重传) 否认帧出错或丢失(超时重传) 溢出(停止等待) 重复数据(帧编号) 停止等待协议发送算法 ⑴vs←0 {发送序号初始化} ⑵data←get_host( ) {从主机取数据} ⑶data_s←(data,vs,CRC) {数据帧编码} ⑷send(data_s) { {发送数据帧} ⑸time_out( ) {启动超时计时器} ⑹data_r←recive( ) {接收数据帧} ⑺if (data_r=null)and(time_out( )=0) goto ⑹ ⑻if (data_r=ACK) vs=1-vs ,goto ⑵ {正确} ⑼if (data_r=NAK) goto ⑷ {出错重传} ⑽if (time_out( )=1) goto ⑷ {超时重传} 停止等待协议接收算法 ⑴vr←0 {接收序号初始化} ⑵data_r=recive( ) ⑶if (data_r=null) goto ⑵ {等待接收} ⑷if CRC(data_r) send(NAK),data_r=null, goto ⑵ {帧错误,发送否认帧} ⑸if (ns!=vs) data_r=null,goto ⑻{丢弃重复} ⑹if (data_r!=null) send_host(data_r) ⑺vr=1-vr {变接收序号,准备接

文档评论(0)

1亿VIP精品文档

相关文档