- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AB协议的分析与应用
《通信系统软件开发》实验四报告——AB协议的分析与应用实验名称AB协议的分析与应用。软硬件平台操作系统:Windows10使用工具:6.0Visual、 SDL_TTCN_Suite4.2实验目的通过本次实验,了解AB协议的工作原理并修改它的某些部分,使之达到想要的效果。实验内容1. 熟悉AB协议,并回答相关问题:(1) 分析Abp example 的功能,简要说明流程,并说明是否陷入循环以及原因。(2) Abp example 中的定时器T1,两个是否一样?设置一个是否影响另一个?T1 的时间是否累积?比如开始设置T1定时2 秒,当还没timeout 时,再设置T1 定时now+2,总时间是否为4 秒,为什么?2. 修改任务任务一:Process NetworkLayer2 原功能只是简单的将收到的信息返回给数据层,再由数据层经物理层传回发送者,现在改进其功能,使之能够将原数据反转后在回传。任务二:Process NetworkLayer1 完成原env 的功能,要求该部分在初始化以后能自动发送3 次数据, 每次数据要编号(可以用原Pack 中的info表示),之后就是将收到的消息直接转发出去。实验步骤及结果分析(1)熟悉ABP协议,并回答相关问题:AB协议是最早的端到端通信协议之一。它是运行在数据链路层的一个简单的网络协议,用于重传丢失或损坏的帧数据。它可以被看成是使用窗口大小为1 bit的滑动窗口协议的特殊例子,而且设定一个简单的计时器来限制消息发送的顺序,来确保接收方在接收到消息后能及时回传确认,即它的功能是在不可靠的传输信道上完成数据的可靠传输。下面是用SDL描述该协议的OSI示意图。从图上可以看出,AB协议包括了以下几个部分:系统环境、物理层(PhysicalLayer)、数据链路层1(DataLayer1)、数据链路层2(DataLayer2)、网络层1(也就是系统环境)、网络层2(NetworkLayer2)。假设消息是从发送方A到接收方B,并且我们认为A和B的信道没有消息在传送。每个从A发到B的消息包含了一个数据域和一个1bit的sequence number(不是0就是1)。B有两个ACK序号可以发送到A作为确认号:ACK0和ACK1。当A发出一个消息时,它会定时地将这个消息以同一个sequence number来发送,直到它收到B回传的相同的sequence number的确认消息,然后A才转换另一个sequence number来发送下一个消息给B。如当B收到一个完好的消息并且sequence number为0时,它开始一直回传一个带ACK0的消息给A,直到它收到下一个sequence number为1的合法的消息,若收到,则开始一直回传带ACK1的消息,直到收到下一个sequence number为0的消息,如此循环。这意味着,当A已经发送了一个sequence number为1的消息后,可能仍会收到来自B的带ACK0的消息(这个时候A应该想接收的是ACK1的消息),这时候,A会把这种消息视为NAKs (Negative-Acknowledge Characters)而把它无视掉,然后继续发送sequence number为1的消息,直到它收到B回传的带ACK1的确认消息。为什么会进入循环?答:通过上面的工作原理分析可知,当环境发送第一条消息到时,它经过了:DataLayer1(seq为0,启动计时器T1,在规定的时间内想要接收来自接收方的带ACK0消息,如果收不到就一直发这一条消息)-PhysicalLayer1 -PhysicalLayer2 -DataLayer2-NetworkLayer2 -DataLayer2(回传带ACK0的消息,T1开始计时,期望收到seq为1的下一条消息,否则一直发送这条回传消息,问题就出现在这里)-PhysicalLayer2 -PhysicalLayer1 -DataLayer1(如愿收到带ACK0的消息,准备接收从环境或NetworkLayer1传来的消息并打它打包为seq=1的消息再发送给DataLayer2)-环境。由于环境只发送了一条消息给NetworkLayer2,而没有继续发送接下来的另外的消息,这首先会引起DataLayer1里面的T1超时再进入等待状态(等待从环境NetworkLayer1传来的下一条消息),然后会导致DataLayer2里面一直期待接收下一个seq=1的消息的T1计时器超时,超时后DataLayer2一直回传seq=0且带ACK0的消息(从PhysicalLayer1回传的消息不是DataLayer1想要的从NetworkLayer1传来的下一条消息,所以对DataLayer2回传的seq=0,ACK0的消息作无视处理),所以就
您可能关注的文档
- 37 应急准备和响应管理规定.doc
- 39《幸福的婚姻》.docx
- 3dmax2015基本教程=.docx
- 3D打印钛合金孔隙支架骨长入影响因素的分析.doc
- 3ICU感染预防与控制制度.doc
- 3DMAX+VRAY效果图表现课程标准.doc
- 3个字母的英文单词大全.doc
- 3份三年级《白鹅》赵菲.doc
- 3分钟熟记中医针灸顺口溜(附穴位图).docx
- 3分部植树验收鉴定书.doc
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)