一种卫星移动通信中空口数据传输优化算法
2018-07-05顾少龙
骆 盼,顾少龙,王 冲
(中国电子科技集团公司第五十四研究所,河北 石家庄 050081)
0 引言
我国卫星移动通信系统建设[1-2]近年来发展迅速,相关技术研究也呈井喷式增长,其中空口传输技术[3]便是其中重要的研究内容之一。在空口传输技术方面,空口协议栈设计具有举足轻重的地位。在系统体制确定之后,物理层承载能力已经明确,空口协议栈设计水平就决定了系统空口传输能力,进而影响系统整体容量。我国卫星移动通信系统空口标准[4]规定了空口消息格式、数据传输链路帧格式和端到端的控制流程,而对终端侧或网路侧内部空口协议栈层间交互只是给出指导性的交互原语,这就为空口数据传输算法的实现提供了一定的灵活空间和优化的可能。
1 研究现状
国内卫星移动通信系统的建设起步较晚,标准制定时更多地参考了国际卫星移动通信系统相关标准[5-8]和地面移动通信系统的协议标准[9-12]。与地面移动通信系统相比,地球同步轨道卫星通信的长时延特点决定了卫星移动通信协议栈特有的协议设计属性和实现方法,但恰恰是在这方面能够搜集和参考的资料非常有限,尤其在空口数据传输实现层面。
为了突出空口数据传输的主要过程,将卫星移动通信协议栈简化为三层,分别是数据应用层、传输链路层和物理层。数据应用层是数据的产生地,包括控制消息和业务数据,每包数据具有独立的语义;传输链路层负责数据应用层中数据包的传输,根据物理层能力和数据包长度进行分段和组帧;物理层负责将传输链路层的每帧进行编码和调制,然后在空口物理信道上发送。通信协议栈如图1所示。
图1 通信协议栈分层结构
目前协议栈中实现的数据传输算法如图2所示,数据应用层逐包发送,只有收到前一包数据的应答响应后才发送下一包数据[13-15]。传输链路层将上层数据分段发送给物理层去处理,收到最后分段的应答响应后,发送数据包应答响应给数据应用层。物理层从发送第N段数据到收到第N段数据的响应,最少经过2跳卫星链路,将近300 ms。在地面移动通信中,物理层从发送第N段数据到收到第N段数据的响应,也要经过2跳基站,但是基站与终端之间距离很短,传输时延可以忽略不计。本文后续提出的优化算法将着力解决通信过程中应用数据经过2跳卫星链路带来的时延过长问题。
图2 目前数据传输算法示意图
2 优化算法的设计与实现
传输优化算法不改变卫星移动通信空口协议栈分层结构,亦不调整协议栈每层任务分工,而是通过重新设计传输链路层的数据包接收响应层间原语,来达到节省连续数据包发送时两包之间等待时间的目的。
2.1 滑动窗口协议
滑动窗口机制广泛应用于有线网络和无线网络中的链路层和传输层[16-17],主要作用就是进行传输控制和流量控制[18-19]。卫星移动通信的空口传输链路层也采用了滑动窗口机制,其作用除了进行流量控制外,更主要的是进行可靠性传输控制。
滑动窗口协议中主要参数有:① 块序列号(Block Sequence Number,BSN):每个传输链路层分段数据块中包含一个BSN域,用来标识此块的分段顺序号;②序列号空间(Sequence Number Space,SNS):块序列号(BSN)在SNS范围内循环;③ 窗口大小(Window Size,WS):用于发送方或接收方进行流量控制;④ 发送状态变量V(S):按顺序将要发送的下一个数据块的序列号,取值范围为0到SNS-1;⑤ 确认状态变量V(A):最早的没有被对端正确确认的BSN值,取值范围为0~SNS-1;⑥ 接收状态变量V(R):按顺序将要接收的下一个数据块的序列号;⑦ 确认状态数组V(B) :SNS个元素组成的数组,指示WS以前的数据块的确认状态;⑧接收状态数组V(N):SNS个元素组成的数据,指示WS以前的数据块的接收状态。
2.2 层间交互设计
空口数据传输主要涉及数据应用层、传输链路层和物理层,而传输算法的优化主要集中在数据应用层和传输链路层之间的原语交互上,传输算法的优化实现主要体现在传输链路层。传输链路层在收到数据应用层的数据请求原语后,将其根据物理层承载能力分成若干段,然后按照分段顺序置于滑动窗口队列中等待发送,同时立刻给数据应用层发送数据包接收响应原语。数据应用层收到数据包接收响应原语后,就会发送下一包数据的数据请求到传输链路层,传输链路层的处理过程与前述一致。对端实体的传输链路层发送过来的真正接收响应消息,由本端传输链路层处理。如果对端超时未响应接收消息或者响应消息中标识出为接收到的分段,则本端传输链路层负责重传。优化后的层间交互流程如图3所示。
图3 数据传输优化算法示意图
2.3 层间原语设计
层间原语又称为内部消息,是内部模块之间用来传输消息的逻辑定义实体,消息传输模式通常采用异步方式,便于多线程工作,提高处理效率。在整个协议栈的设计过程中,层间原语设计种类和数量非常多,每个层间原语都有若干定义参数,下面仅将与优化算法实现有关的原语与参数列出并解释参数含义。
2.3.1 数据发送请求原语
数据发送请求原语用于高层向低层发送数据时使用,其中关键参数为数据发送信道标识、数据确认键值和发送数据内容。信道标识是通过若干参数的组合来表示的,波束号、终端号、无线链路号、信道类型四个参数组合到一起才能唯一地标识一个信道。发送数据时高层生成一个唯一的能表示该发送数据内容的确认键值,用于低层发送完成后的确认。发送数据相关参数主要有发送数据长度和数据内容两个,数据长度单位是比特。具体原语定义如表1所示。
表1 数据发送请求原语定义
参数名称类型字长含义消息头STRUCT4表示原语类型和原语长度波束IDUINT81表示波束ID号,多波束区分终端IDUINT162表示终端ID号,用户区分无线链路IDUINT81表示无线链路ID号信道类型UINT81表示信道类型,区分信道是否需要确认UINT81表示原语内容是否需要确认确认键值UINT162原语内容确认键值数据长度UINT162请求发送数据的长度数据内容UINT8[]N数据内容,长度可变
2.3.2 数据发送应答原语
数据发送响应原语用于低层发送数据后向高层应答时使用,其中关键参数为数据发送信道标识、数据确认键值和数据发送结果。信道标识与数据发送请求原语中信道标识保持一致。数据确认键值必须是数据发送请求原语中携带的键值参数。数据发送结果是成功和失败,如果失败,则具体定义了失败原因值。具体原语定义如表2所示。
表2 数据发送响应原语定义
参数名称类型字长含义消息头STRUCT4表示原语类型和原语长度波束IDUINT81表示波束ID号,多波束区分终端IDUINT162表示终端ID号,用户区分无线链路IDUINT81表示无线链路ID号信道类型UINT81表示信道类型,区分信道确认键值UINT162原语内容确认键值发送结果UINT81表示数据发送是否成功
2.4 优化算法实现
卫星移动通信空口协议栈设计复杂,传输链路层的传输模式包括非确认模式和确认模式。非确认模式是不可靠传输模式,数据包不需要分段和重传,但是对传输实时性要求较高;确认模式是可靠传输模式,对数据包的完整性要求非常高,可以有重传,不对实时性进行过高的要求。根据上述分析,本文的数据传输优化算法只能应用于确认模式的数据传输。确认模式传输的上层数据包括高层信令消息、电路域业务数据和分组域业务数据等。
另外,空口协议栈是分为终端侧和网络侧分别实现的,每侧都有数据发送方和接收方。本文中的传输优化算法是针对发送方的优化,故在实现过程中,既可以单侧实现亦可以双侧实现,若双侧实现则将双向提升传输效率,最大可能地提高系统空口传输能力。
3 仿真验证
仿真中,传输链路层的帧结构与卫星移动通信系统的帧结构完全相同。影响优化算法性能的主要参数有两个:单向连续发送数据包个数和单个数据包分段块数。表3给出了每包数据分段块数固定(n=2)时数据包发送个数不同的仿真结果,表4给出了单向连续发送数据包个数固定(m=10)时每包数据分段块数不同的仿真结果。
表3 分段块数固定时的仿真结果
包数/个优化前/s优化后/s提升率/%10.660.66021.320.8138.653.31.2661.8106.62.0169.52013.23.5173.43019.85.0174.7
表4 连续发送数据包固定时的仿真结果
分段数/块优化前/s优化后/s提升率/%16.01.3477.626.62.1467.637.22.9459.258.44.5446.0810.26.9432.01011.48.5425.1
由上述仿真结果分析可得,该传输优化算法对空口数据传输性能提升明显,并且单向连续发送越频繁性能提升越高,单条消息分段越少性能提升越高。
4 结束语
首先研究了卫星移动通信系统空口数据传输协议现状,精简协议层次划分结构,描述目前空口数据传输算法,同时准确定位长时延条件下节省传输时间的应用场景和关键点。之后,以数据包连续发送为应用场景进行了优化算法设计和仿真验证,总结出单向数据包连续发送越频繁性能提升越高和单条消息分段越少性能提升越高两条规律。文本的研究结果可以作为后续卫星移动通信系统接续时延优化的研究参考。
[1] 吴建军,程宇新,罗常青,等.我国GEO卫星移动通信系统的地面思段建设模式考和建议[C]//第六届卫星通信新业务新技术学术年会,2010:51-55.
[2] 肖龙龙 ,梁晓娟 ,李信.卫星移动通信系统发展现状及应用[J].通信技术,2017,50(6):1093-1100.
[3] 陈振国,杨鸿文,郭文彬.卫星通信系统与技术[M].北京:北京邮电大学出版社,2003.
[4] 刘思杨.卫星移动通信系统发展现状及趋势[J].现代电信科技,2014(7):23-28.
[5] ITU-R M.1850-0. Detailed Specifications of the Radio Interfaces for the Satellite Component of International Mobile Telecommunications-2000 (IMT-2000) [S],2010.
[6] ITU-R M.1850-1. Detailed Specifications of the Radio Interfaces for the Satellite Component of International Mobile Telecommunications-2000 (IMT-2000) [S],2012.
[7] ITU-R M.2176. Vision and Requirements for the Satellite Radio Interface(s) of IMT-Advanced [S], 2010.
[8] ITU-R M.2047-0. Detailed Specifications of the Satellite Radio Interfaces of International Mobile Telecommunications-Advanced (IMT-Advanced)[S], 2013.
[9] 3GPP TM.TS25.321. Medium Access Control (MAC) Protocol Specification (Release 6)[S], 2006.
[10] 3GPP TM.TS25.322. Radio Link Control (RLC) Protocol Specification (Release 6)[S], 2006.
[11] 3GPP TM.TS25.323.Packet Data Convergence Protocol (PDCP) Specification (Release 6)[S], 2006.
[12] 3GPP TM.TS25.331.Radio Resource Control (RRC) Protocol Specification (Release 6)[S], 2006.
[13] 徐中虎.通用处理器中的TD-SCDMA空口协议栈设计与实现[D].成都:电子科技大学,2014.
[14] 单占营.基于DSP的TD-SCDMA协议空中接口协议栈的设计与实现[D].哈尔滨:哈尔滨工业大学,2010.
[15] 黄晓莹.卫星移动通信终端协议栈软件设计与实现[D].北京:北京大学,2011.
[16] 张锦灿,陈卫东,王大宇. 基于最优窗口的水声网络MAC协议研究[J].无线电工程,2016,46(2):10-13.
[17] 杨松.基于峰值比的叠加单滑窗信号检测算法[J].无线电工程,2017, 47(4):78-82.
[18] Tanewbaum A S, Weth- erall D J.计算机网络[M].5版.严伟,潘爱民,译.北京:清华大学出版社,2012.
[19] 谢希仁.计算机网络 [M]. 7版.北京:电子工业出版社,2017.