选择性重传arq协议

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择性重传arq 协议
篇一:ARQ
一、ARQ (Automatic Repeat-reQuest )是OSI 模型中数据链路层的错误纠正协议之一。

它包括停止等待ARQ 协议和连续协议和连续ARQ 协议,错误侦测(Error Detection)、正面确认()、正面确认(Positive Acknowledgment )、逾时重传(Retransmission after Timeout )与负面确认继以重传(Negative Acknowledgment and Retransmission )等机制。

自动重传请求(Automatic Repeat reQuest),通过接收方请求发送方重传出错的数据报文来恢复出错的报文,是通信中用于处理信道所带来差错的方法之一,有时也被称为后向纠错(Backward Error Correction ,BEC);另外一个方法是信道纠错编码。

);另外一个方法是信道纠错编码。

传统自动重传请求分成为三种,即停等式(stop-and-wait))ARQ ,回退n 帧(go-back-n))ARQ ,以及选择性重传(selective repeat )ARQ。

后两种协议是滑动窗口技术与请求重发技术的结合,由于窗口尺寸开到足够大时,帧在线路上可以连续地流动,因此又称其为连续ARQ 协议。

三者的区别在于对于出错的数据报文的处理机制不同。

三种ARQ 协议中,复的杂性递增,效率也递增。

除了传统的ARQ ,还有混合ARQ((Hybrid-ARQ )。

1. 停等式ARQ
在停等式ARQ 中,数据报文发送完成之后,发送方等待接收方的状态报告,如果状态报告报文发送成功,发送后续的数据报文,否则重传该报文。

停等式ARQ为,发送窗口和接收窗口大小均为1,发送方每发送一帧之后就必须停下来等待接收方的确认返回,仅当接收方确认正确接收后再继续发送下一帧。

该方法所需要的缓冲存储空间最小,缺点是信道效率很低。

2.回退n 帧的ARQ
在回退n 帧的ARQ 中,当发送方接收到接收方的状态报告指示报文出错后,发送方将重传过去的中,当发送方接收到接收方的状态报告指示报文出错后,发送方将重传过去的n 个报文。

回退N ,发送窗口大于1 ,接收窗口等于1。

允许发送方可以连续发送信息帧,但是,一旦某帧发生错误,必须重新发送该帧及其后的n 帧。

这种方式提高了信道的利用率,但允许已发送有待于确认的帧越多,可能要退回来重发的帧也越多。

这种方式提高了信道的利用率,但允许已发送有待于确认的帧越多,可能要退回来重发的帧也越多。

3. 选择性重传ARQ
在选择性重传ARQ 中,当发送方接收到接收方的状态报告指示报文出错,发送方只发送传送发生错误的报文。

选择重传协议,发送窗口和接收窗口都大于1 。

发送方仅重新传输发生错误的帧,并缓存错误帧之后发送的帧。

与回退N 相比,减少了出错帧之后正确的帧都要重传的开销。

4. 混合ARQ
在混合ARQ 中,数据报文传送到接收方之后,即使出错也不会被丢弃。

接收方指示发送方重传出错报文的部分或者全部信息,将再次收到的报文信息与上次收到的报文信息进行合并,以恢复报文信息。

应用
在现代的无线通信中,ARQ 主要应用在无线链路层。

比如,在主要应用在无线链路层。

比如,在WCDMA 和和cdma2000 无线通信中都采用了选择性重传ARQ 和混合ARQ 。

优缺点
优点:比较简单。

缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。

二、FEC(forward error correcting) 前向纠错是一种差错控制方式,它是指信号在被送入传输信道之前预先按一定的算法进行编码处理,加入带有信号本身特征的冗码,在接收端按照相应算法对接收到的信号进行解码,从而找出在传输过程中产生的错误码并将其纠正的技术。

作用
①于标准的解决方案
首先,这是基于标准的。

EFC 连接,无论是在非屏蔽双绞线连接,无论是在非屏蔽双绞线UTP (100BaseTX )或者光纤(100BaseFX),都是兼容的),都是兼容的IEEE802.3 连接。

需要注意的是,尽管FEC 技术提供了可以扩展到技术提供了可以扩展到800Mbps 的连接,其中的每条连接仍旧是100Mbps (或者200Mbps )。

②多平台支持
FEC 技术可以在包括路由器和交换机的多平台上部署,在各种产品上实现的法则是非常简单的(在后面论述)。

尽管当前仅仅可以在技术可以在包括路由器和交换机的多平台上部署,在各种产品上实现的法则是非常简单的(在后面论述)。

尽管当前仅仅可以在Catalyst 5000 系列上部署,FEC 很快会支持很快会支持Catalyst 3000 ,系列,Catalyst 企业级桌面系列(包含1900 和和2820 ),以及Catalyst 2900XL 系列。

而且,几家服务器和网卡制造商将支持这项技术,以便实现在交换机和服务器之间的高速带宽聚合。

③扩展性
FEC 以提供多条200Mbps 连接(假设是全双工连接)的能力允许网络管理者来扩展其网络。

例如,网络管理者可以在单个配线间和数据中心之间配置由几对全双工快速以太网链路组成的FEC 来提供400Mbps 的连接。

在数据中心中,可以在服务器和网络主干设备间配置最高到800Mbps 容量的连接来实现高带宽的网络核心。

当802.3z 标准(定义了千兆以太网)完成和广泛部署之后,这项技术将会扩展到千兆以太网通道速度(最高支持到8Gbps )。

④负载平衡和冗余
FEC 技术的实现,在提供高带宽的同时也提供了负载平衡和冗余。

这项技术通过将负载分布到通道中的多条链路上的方式来提供对每条链路的管理和负载平衡。

单播,多播和广播传输也分布到通道中的多条链路上。

而且,FEC 提供了对链路失效的冗余。

如果提供了对链路失效
的冗余。

如果FEC中的一条链路被切断,在几毫秒内,传输被重新分配到其他的链路上,并且对于用户来说,收敛是透明的。

⑤与Cisco IOS 兼容
因为FEC ,连接被交换机和路由器视为单一逻辑链路,FEC有技术和所有Cisco IOS 特性完全兼容。

这些特性包括Inter--Switch Link (ISL )trunking ,ISL 提供了在一条快速以太网通道上中继多虚拟局域网提供了在一条快速以太网通道上中继多虚拟局域网VLAN 的能力。

并且,HSRP有(路由热备份协议)也可以在带有RSMs (route switch modules )的交换机或者Cisco 7500 路由器上运行。

⑥千兆以太网就位(Gigabit Ethernet Ready )
最后,FEC 技术的一项关键益处是当标准完备后,其可以很容易的升级到千兆以太网。

这个想定可以使高速网络核心扩展到数G 的带宽篇二:ARQ
4.3 连续ARQ 协议
1. 连续ARQ 协议的工作原理参照图4-6
在简单停止等待协议的基础上,允许连续发送若干帧,在收到相应ACK 后继续发送若干帧,用以提高传输效率。

这时后继续发送若干帧,用以提高传输效率。

这时ACK 及及NAK也必须有对应的帧序号,才能够一一对应起来。

在发生差错时丢弃原已发送的所有后续帧,重发差错发生以后的所有帧,相当于完全返回重传。

信道较差时传输效率不高。

2. 连续ARQ 协议的吞吐量
o o o o o o tv = tI + (1- p )?ipitT = tI[1+ (?-1 )p]/ (1-p )tT 略大于略大于tI + 2tp + ts ,略大于tI + tout ?max = 1/tv = (1- p))/tI[1+(?-1)p] 归一化后: ???????·tI??? (1-P )/[1+(?-1)p]??;其中;其中???? = tT / tI 1
思考题: 与简单ARQ 的吞吐量进行比较.
全双工下, 应答信息可附在数据帧里, 可以提高效率发送方收到应答的最短时间是2tp + tI, 取略大些tout = 2tp + 2tI 则则tT = tI + tout = 2tp + 3tI ? = tT/tI = 3 + 2tp/tI, 这时连续ARQ 将优于简单ARQ
例1 、例2 、例3 请自看,但注意卫星传播延时较大,故必须使用连续请自看,但注意卫星传播延时较大,故必须使用连续ARQ 协议
3. 滑动窗口的概念
应当对已发出去但未收到确认信息的数据帧的数目加以限制应当对已发出去但未收到确认信息的数据帧的数目加以限制o 参照和两个例子,了解滑动窗口的原理o 注意点? 缓冲区是循环使用的? 上界与下界问题n ? 可用的缓冲区大小为2-1 (窗口计数器为n 位),请参见P73 图图4-9 o
4. 信道利用率与最佳帧长
由于帧头的存在,帧长增加导致效率提高;o 但信道不可靠时,帧长增加导致错误概率增加,引起重发机会增加,最终效率下降;
o 综上所述,必然有一个最佳帧长。

一般帧长为1000-2000 bit ,
(请参阅图4-11 )
o 几种不同环境下的最佳数据长度计算式见P75 - P76 。

连续ARQ 协议
回退n 帧(go-back-n )GBN ,以及选择性重传(selective repeat )ARQ,两种协议是滑动窗口技术与请求重发技术的结合,由于窗口尺寸开到足够大时,帧在线路上可以连续地流动,因此又称其为连续ARQ 协议。

连续重发请求ARQ方案是指发送方可以连续发送一系列信息帧,即不用等前一帧被确认便可继续发送下一帧,效率大大提高。

但在这种重发请求方案中,需要在发送方设置一个较大的缓冲存储空间(称作重发表),用以存放若干待确认的信息帧。

当发送方收到对某信息帧的确认帧后,便可从重发表中将该信息帧删除。

所以,连续重发请求ARQ 方案的链路传输效率大大提高,但相应地需要更大的缓冲存储空间。

在这一协议中,当发送站点发送完一个数据帧后,不是停下来等待应答帧,而是可以连续再发送若干个数据帧。

如果在此过程中又收到了接收端发来的应答帧,那么还可以接着发送数据帧。

由于减少了等待时间,整个通信的吞吐量就提高了。

篇三:ARQ 协议模拟实现课程设计报告
课程设计报告
学院:专业名称:课程名称:课程代码:所在班级:学号:姓号:课题名称:任课教师:完成时间:******** 软件工程软件工程网络技术课程设计******** ** ******** ******** ARQ 协议模拟实现******
2013
目录
第1 章
实验介绍 (1)
1. 1 实验目的???????????????????????????1
第2 章协议介绍...........................................1 2. 1 停止等待协议的简单介绍(停止等待协议的简单介绍(ARQ ).................................12. 2 停等协议中相关事件的介绍停等协议中相关事件的介绍......................................12. 3 连续ARQ 协议简述协议简述..............................................22. 3.1 介绍介绍.....................................................22. 3.2 特点原理特点原理.................................................2第 3 章实验环境...........................................3 3. 1 实验环境???????????????????????????3第 4 章停止等待ARQ 协议...................................3 4. 1 实验内容......................................................34.
2 实验步骤实验步骤......................................................44. 3停等协议的模拟实现............................................44. 4 实验结果实验结果......................................................9第 5 章连续ARQ 协议.......................................12 5. 1 实验内容... ..................................................125. 2 实验设计及分析...............................................125. 2.1窗口机制总体设计及分析..................................125. 2.2 协议选择及分
析..........................................135. 2.3 发送方与接收方设计流程..................................135. 3 程序测试程序测试.. (18)
引言
ARQ 协议中,发送方每发送一个字符便要启动计时器,在规定时间内,若发送方未收到接收方返回的确认信息,则认为超时,需重发原字符。

经过思考,我通过for 循环反复读取循环反复读取file2 文件实现了这一定时功能,而循环的次数则决定定时器的时间。

此外还可利用文件实现了这一定时功能,而循环的次数则决定定时器的时间。

此外还可利用c++ 语言自带的time()函数来实现计时功能。

此外,为方便读取中间结果,file2 文件的内容每次都会更新,并且采用简单的字符代表复杂的字符串,这些简化都使程序更加简洁,但并未影响整个模拟功能的实现。

为了更加流畅地更新、利用文件中的数据,sender()函数调用了()函数调用了receiver()函数,以及时对文件数据进行接收端的相应处理,以供发送端使用。

从而模拟实现整个发送接收过程。

第1 章实验介绍
1 .1 实验目的
(1) 掌握停止等待协议的基本原理
(2)理解数据链路层的主要功能(数据出错控制,数据重复控制,数据丢失控制等等)
(3) 分析简单的协议数据单元
(4) 掌握停止等待协议的运行机制
(5) 了解连续ARQ 协议
(6) 掌握滑动窗口的工作机制
第2 章协议介绍
2. 1 停止等待协议简单介绍(ARQ ):
停止等待协议是数据链路层的几个协议中最基本的协议,是数据链路层各种协议的基础。

此实验是基于winsock 编程,是在编程,是在VC++6.0 的的windows 界面下和控制台下实现的。

它采用客户机界面下和控制台下实现的。

它采用客户机/ 服务器(C/S)模型。

停止等待协议就是通过双方的收发数据而达到相互通信的目的。

在通信时,当收方收到一个正确的数据帧后,便会向发送方发送一个确认帧ACK,表示发送的数据正确接收。

当发送方收到确认帧后才能发送一个新的数据帧,这样就实现了接收方对发送方的流量控制。

由于通信线路质量各方面的影响,数据帧从发送方到接收方传输的过程中可能会出现差错。

为了保证数据的正确性和完整性,接收方在收到数据后,会用一定的方法对接收到的数据进行差错检验,所以接收方很容易检测出收到的数据帧是否出现差错。

当接收方发现收到的数据出现差错时,就会向发送方发送一个否认帧NAK,表示对方发送的数据错误。

发送方会根据接收方发来的信息做出相应的操作。

采用这样的有效的检错机制,数据链路层可以对上面的网络层提供了可靠的传输的服务。

2. 2 停等协议中相关事件的介绍
帧丢失:
有时,链路上的噪声干扰很严重,或者由于其他的一些原因,接收方收不到发送方发送过来的数据帧,这种情况称为数据帧丢失。

发生数据帧丢失时,接收方自然不会向发送方发送任何应答帧。

如果发送方要等收到收方的应答信息后再发送下一个数据帧,那么双方将永远等下去,这样就出现了死锁现象。

为了解决这个问题,可在发送方发送完一个数据帧后,就启动一个超时定时器。

若到了超时定时器所设置的重发时间tout 仍收不到收方的任何应答帧,则发送方就重传前面所发送的这一数据帧。

如果在重传时间仍tout 内收到确认信息,则将超时定时器清零并停止计时。

tout 一般的时间设置为略大于一般的时间设置为略大于“从发完数据帧到收到确认帧所需的平均时间”。

帧重复:
若丢失的是应答帧,则超时重发将会使接收方收到两个同样的数据帧。

由于接收方无法识别重复的数据帧,因而在接收方收到的数据中出现了一种接收序号差错,称为重复帧。

要解决这个问题,必须使每一个数据帧带上不同的发送序号。

若接收方收到序号相同的数据帧,就表明出现了重复帧。

这时接收方应当丢弃这个重复帧,同时向发送方发送一个确认帧。

大家都知道,任何一个编号系统的序号所占用的比特数应是有限的。

经过一段时间,发送序号就可重复。

使用序号占用的比特数越少,数据传输的额外开销就越少。

对于停等协议,由于每发送一个数据帧就停止等待,用一个比特来编号就够了,也就是说序号轮流使用0 和和1 。

帧出错:
数据在传输的过程中,不可能保证100%的正确传输,而错误的数据帧对于接收方来说是没有什么意义的。

为了避免收到错误的数据帧,接收方在收到数据帧后,就会采用一定的机制对收到的数据帧进行校验,当校验数据正确时,会向高层传送该帧,反之,则丢弃该帧,从而对上面的网络层提供了传输的服务。

2. 3 连续ARQ 协议简述
2.3.1 介绍
回退n 帧(go-back-n )GBN ,以及选择性重传(selective repeat )ARQ ,两种协议是滑动窗口技术与请求重发技术的结合,由于窗口尺寸开到足够大时,帧在线路上可以连续地流动,因此又称其为连续ARQ 协议。

连续重发请求ARQ 方案是指发送方可以连续发送一系列信息帧,即不用等前一帧被确认便可继续发送下一帧,效率大大提高。

但在这种重发请求方案中,需要在发送方设置一个较大的缓冲存储空间(称作重发表),用以存放若干待确认的信息帧。

当发送方收到对某信息帧的确认帧后,便可从重发表中将该信息帧删除。

所以,连续重发请求ARQ 方案的链路方案的链路传输效率大大提高,但相应地需要更大的缓冲存储空间。

传输效率大大提高,但相应地需要更大的缓冲存储空间。

在这一协议中,当发送站点发送完一个数据帧后,不是停下来等待应答帧,而是可以连续再发送若干个数据帧。

如果在此过程中又收到了接收端发来的应答帧,那么还可以接着发送数据帧。

由于减少了等待时
间,整个通信的吞吐量就提高了。

吞吐量就提高了。

ARQ 代表的是自动重传请求(Auto Repeat reQuest,ARQ ),而GBN 与选择重传都属于其中。

其中BGN是的接收窗口是1,且具有累计确认的特点。

而选择重传没有累计确认的特点。

2.3.2 特点与原理
连续重发请求ARQ 方案的特点如下:
(1 )发送方连续发送信息帧,而不必等待确认帧的返回;
(2 )在重发表中保存所发送的每个帧的备份;
(3)重发表按先进先出()重发表按先进先出(FIFO )队列规则操作;
(4)接收方对每一个正确收到的信息帧返回一个确认帧,每一个确认帧包含一个惟一的序号,随相应的确认帧返回;
(5)接收方保存一个接收次序表,包含最后正确收到的信息帧的序号。

当发送方收到相应信息帧的确认后,从重发表中删除该信息帧的备份;
(6 )当发送方检测出失序的确认帧(即第N 号信息帧和第号信息帧和第N+2 号信息帧的确认帧已返回,。

相关文档
最新文档