短波自适应数据通信协议设计.doc_第1页
短波自适应数据通信协议设计.doc_第2页
短波自适应数据通信协议设计.doc_第3页
短波自适应数据通信协议设计.doc_第4页
短波自适应数据通信协议设计.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

短波自适应数据通信协议设计 摘要:本文根据短波信道的时变特性,基于链路控制层对短波自适应数据通信协议进行设计,协议采用了半双工ARQ协议的设计方式,设计了链路控制层的帧结构,详细的描述了建链、数传、拆链和状态转移的方法。 关键词:短波;链路控制层;协议;半双工 1 链路控制层协议简介 链路控制层负责监督数据终端之间的信息流动。链路控制层首先要解决数据格式问题,数据通常组成帧加以传输。链路层要控制数据传输的启止,检测传输是否正确、当发现错误时请求对方重发。链路层还要解决流量控制问题,以提高链路的传输效率。本文的链路控制层协议是参考X.25、HDLC等协议的有关部分构造的,主要用于半双工方式下的点对点的联接。 2 链路控制层的帧结构 链路控制层的协议数据单元,或者叫作帧,是构成链路控制层协议的基础。本文中的协议数据单元是由字节(字符)序列构成的,每个字节有各自的作用和含义。为了区分帧的开始和结束,本文采取了按事先约定的长度分帧的思路。即每帧的第1个字节是这一帧的标志,根据这个标志就可以判断帧的类型和长度。为了保证在这个标志识别出错时,不致因为分帧错误造成连锁反应,协议作出如下规定:某一帧必须连续的传送,在同一传输方向上,相邻两帧之间必须间隔适当的时间;这样分帧错误只会影响到当前帧。按照功能不同,链路控制层的帧一共分为三类:控制帧、信息帧、应答帧(错误图样帧和确认帧)。下面分别介绍它们的功能和构成。 2.1 控制帧 控制帧是主站向从站发送的命令、从站的应答或请求,用于数据连路的建立、维护及流量控制。控制帧由两部分组成:帧头和地址。帧头部分为由标志部分和代号部分组成,其中十六进制数“C”示控制帧的标志,十六进制数“X”代表不同控制信息。地址部分由发送地址和接收地址构成。 2.2 信息帧 信息帧是数据的载体,同时隐含地规定了FEC层传送数据时的速率和方式,信息帧由三部分组成:帧头、地址、负载部分。帧头部分为由标志部分和代号部分组成。其中十六进制数“1”示信息帧的标志。SN(Send Number,发送方序号)为信息帧的序号,交替取0或者1,区分先后发送的信息帧是否为同一帧,用于支持信息帧和应答帧之间的停等重发协议。“X”是信息帧的代号,代表不同的速率信息,同时隐含的约定了FEC层对信息帧的处理方式,具体见表1: 地址部分由发送地址和接收地址构成,8比特可以容纳256个地址。负载部分:由N个数据包构成,每个数据包由:包号、数据体、CRC校验3部分组成,如表2所示: 包号部分对数据包7比特的代号(1比特保留),同时记录这一包数据在数据缓冲区中的位置,包号采取模128循环记数,同时也与数据在文件中的位置相关。数据体部分是从文件中读取(或将写入文件)的内容。校验部分是对前面 M+1 字节的CRC校验,用于检错。 2.3 应答帧(错误图样帧) 应答帧主要用于对信息帧的应答,起到流量控制和收发同步的作用。应答帧分为两种:错误图样帧和确认帧。错误图样帧在接收方发现校验出错的数据包时使用,可以把出错数据包在信息帧中的位置通知发送方。错误图样帧不仅是错误图样的载体,同时带有与信息帧对应的速率信息。错误图样帧由四部分组成:帧头、地址、错误图样和校验部分,如表3所示: 帧头部分为由标志部分和代号部分组成,其中十六进制数“2”示错误图样帧的标志。 RN(Receive Number,接收方序号)为应答帧的序号,交替取0或者1,区分先后发送的应答帧是否为同一帧,用于支持信息帧和应答帧之间的停等重发协议。错误图样帧代号“X”代表的取值范围、含义与信息帧代号的相同,并且在收发过程中对应。地址部分由发送地址和接收地址构成,8比特可以容纳256个地址; 错误图样部分携带32比特的错误图样,当错误图样不足32比特时,可以用重复的方式不足32比特。校验部分仅仅是对错误图样的校验,用于防止错误图样传输出错。 2.4 确认帧 在信息帧中所有的数据包接收完全正确的情况下,接收方发出确认帧对信息帧进行应答。确认帧可以看作是对包含“全对错误图样”的错误图样帧的简化,有提高效率和可靠性的作用。为了实现的方便,确认帧利用了控制帧的结构,在FEC层用发送控制帧的方法发送,因此确认帧可以看作是特殊的控制帧。具体结果如表4: 帧头部分为由标志部分和代号部分组成,其中十六进制数“C”示控制帧的标志。 RN(Receive Number,接收方序号)为应答帧的序号,交替取0或者1,区分先后发送的应答帧是否为同一帧,用于支持信息帧和应答帧之间的“停等”重发协议。地址部分由发送地址和接收地址构成,8比特可以容纳256个地址。 3 建链、数传、拆链和状态转移 数传的过程,一般可以分为建链、数传、拆链三个阶段;在不同的阶段,接收方和发送方分别处于不同的状态,双方分别从一个状态转向另一个状态,整个数传过程也就从一个阶段转向另一个阶段。本文用状态转移的方法分析和讨论数据传输建链、传输、和拆链的过程。 为了控制数传过程,链路控制层定义了11个状态,如表5所示。表中“RECV”、“SEND”是“瞬时”状态,即进入该状态之后依次完成该状态的工作后,然后转入其它状态。其余的状态是“可持续”状态,即在进入该状态时做一些操作然后等待对方的应答,会在该状态停留一段时间,根据对方的应答决定下一步的操作;如果在规定的时间等不到应答,则产生计时期超时。如果出现计时期超时,须做相应的处理,然后回到该状态。在某一状态连续多次超时,往往是由链路中断引起的,此时可回到IDLE状态。 根据建链的方式不同链路控制层的状态转移可以分为可分成四种方式,其中主站发送方式和从站接收方式对应、主站查询方式和从站发送方式对应。在此首先介绍前一种组合的建链过程、发送接收过程和拆链过程,然后接收后一种对应的建链过程。不论用那种方式完成建链,数据的接收和发送过程以及拆链过程都是相同的。当主站以发送方式建链时,从站以接收方式建链。下面将作详细描述。 3.1 主站发送和从站接收时的建链步骤 某一数传终端收到用户的发送命令,从IDLE状态转入LINK(主站发送)状态;为了建链,主站发LINK帧命令对方站点以从站接收方式建链;另一数据终端收到LINK帧,进入BELI NK状态,检查有没有准备好接收。如果没有准备好,发送 DM帧拒绝对方建链的请求;如果已经准备好接收数据,发UA帧接受主站的命令,然后转入MORE状态等待信息帧,此时从站已完成了建链工作。主站在LINK状态收到DM帧,返回IDLE状态,结束本次建链。如果收到UA帧,主站完成建链,可以进入SEND状态发送文件。 3.2 主站发送和从站接收时的建链的特殊情形 主站发出LINK帧后,如果LINK帧丢失,或者从站的应答丢失,此时在规定的时间内无法收到应答;主站可以重发LINK帧尝试建链,但如果3次都没有成功,则建链失败返回IDLE状态。从站发出UA帧同意主站发送数据,然后就进入了MORE状态等待接受数据;但是由于UA帧丢失,主站又发来了LINK帧,此时从站可以再此发UA帧,确认主站的建链命令。 3.3 发送数据和接收数据的步骤 发送方进入SEND状态,判断数据是否发送完毕,如果已经发完,进入DISC状态开始拆链;如有数据发送,则组织信息帧,发送信息帧,进入WHAT状态等待应答。接收方已经在MORE状态等待信息帧,收到信息帧后转入RECV状态。接收方在RECV状态对收到的信息帧进行处理,生成错误图样,如果无错,直接发R0R3帧确认已经全部收对,如果有错,用错误图样应答发送方。然后上交接收正确的数据包,回到MORE状态等待下一信息帧。如果接收完毕进入BEDISC状态,等候拆链。发送方在WHAT收到应答后,确定那些数据包已经发送正确不须发送,那些下一次还需要发送,然后再回到SEND状态,进行下一次发送。 3.4 发送数据和接收数据的过程中的异常 发送方发出信息帧的丢失或应答帧丢失,规定时间发送方内无法收到应答,此时发送方应重发信息帧。如果3次收不到应答,链路中断,回IDLE状态。如果出现信息帧的代号应答帧代号不匹配,也要重发信息帧。发送方收到的错误图样校验出错,发送方发送WHAT帧,对错误图样进行查询。接收方在MORE状态收到WHAT帧,则重发上次收到的信息帧的应答。 3.5 拆链的步骤 发送方进入DISC状态发送DISC帧,等待应答。接收方已经处于BEDISC状态,收到DISC帧,发送UA帧确认拆链,然后回到IDLE状态。发送方收到UA帧,也完成拆链,回IDLE状态。 3.6 拆链时的异常 如果DISC帧或UA帧丢失,发送方因无法收到应答而超时,则重新发DISC帧,如果3次都收不到应答,回IDLE状态。接收方处于BEDISC收不到DISC,超时后自动回IDLE状态。接收方处于BEDISC状态,上一个应答帧丢失,发送方又发来WHAT帧询问,此时数据已经接收完毕,发送全对的应答。接收方处于BEDISC状态,此时数据已经接收完毕,如若再收到信息帧,则发送全对的应答。 3.7 主站查询和从站发送时的建链步骤 某一数传终端收到用户的查询命令,从IDLE状态转入POLL(主站查询)状态;主站发POLL帧命令对方站点以从站接收方式建链;另一数据终端收到POLL帧,进入BEPOLL状态,检查有没有准备好发送。如果没有准备好,发送 DM帧拒绝对方建链的请求;如果已经准备好发送数据,发UA帧接受主站的命令,等待主站发来的MORE帧。主站在POLL状态收到DM帧,返回IDLE状态,结束本次建链。如果收到UA帧,发送MORE帧要求从站发送信息帧,主站完成建链,可以进入MORE状态接收数据。从站收到MORE帧,完成建链,进入SEND状态开始发送数据。 3.8 主站查询和从站发送时的异常 主站发出POLL帧后,如果POLL帧丢失,或者从站的应答丢失,此时在规定的时间内无法收到应答;主站可以重发POLL帧尝试建链,但如果3次都没有成功,则建链失败返回IDLE状态。从站发出UA帧同意向主站发送数据,在BELINK状态等待主站的MORE帧;但是由于UA帧丢失,主站又发来了POLL帧,此时从站可以再此发UA帧,确认主站的建链命令。 4 结语 本协议经过测试,当信道条件较好,用示波器观察,接收到的基带信号的波形清晰但有轻微噪声干扰时,数传效率非常高,速率可自适应地调节到4800bps;当信道条件较差时,接收到的基带信号眼图无法张开时,数传速率可自适应地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论