APP下载

基于FPGA的IP over CCSDS协议中长帧拆分的实现与仿真

2016-01-20张庆顺周拴柱刘赞于天燕张锁良

关键词:数据链字节数据包

张庆顺,周拴柱,刘赞,于天燕,张锁良

(1. 河北大学电子信息工程学院,河北省数字医疗工程重点实验室,河北保定 071002;

2.中国人民解放军66165部队通信修理所,河北保定 071002)

摘 要:在借鉴IP over CCSDS(consultative committee for space data systems)space links等相关建议的基础上,就TCP/IP协议和CCSDS AOS(高级在轨系统)空间数据链路协议之间的转换,提出了一种基于FPGA(field-programmable gate array)的IP over CCSDS协议长帧拆分算法的设计实现方法,并给出了仿真验证结果.

关键词:TCP/IP;CCSDS;AOS;IP over CCSDS;协议转换

DOI:10.3969/j.issn.1000-1565.2015.02.017

基于FPGA的IP over CCSDS协议中长帧拆分的实现与仿真

张庆顺1,周拴柱1,刘赞1,于天燕2,张锁良1

(1. 河北大学电子信息工程学院,河北省数字医疗工程重点实验室,河北保定071002;

2.中国人民解放军66165部队通信修理所,河北保定071002)

摘要:在借鉴IP over CCSDS(consultative committee for space data systems)space links等相关建议的基础上,就TCP/IP协议和CCSDS AOS(高级在轨系统)空间数据链路协议之间的转换,提出了一种基于FPGA(field-programmable gate array)的IP over CCSDS协议长帧拆分算法的设计实现方法,并给出了仿真验证结果.

关键词:TCP/IP;CCSDS;AOS;IP over CCSDS;协议转换

DOI:10.3969/j.issn.1000-1565.2015.02.017

收稿日期:2014-12-05

基金项目:第一作者:张庆顺(1979-),男,陕西汉中人,河北大学讲师,主要从事高速数据通信的研究.E-mail:zqs@hbv.cn

通信作者:张锁良(1966-),男,河北藁城人,河北大学教授,主要从事高速数据通信的研究.E-mail:zhangsl@hbu.cn

中图分类号:TN915

文献标志码:志码:A

文章编号:编号:1000-1565(2015)02-0204-06

Abstract:On the basis of drawing on IP over CCSDS space links and other relevant recommendations,it is proposed that the implementation method of FPGA-based IP over CCSDS protocol long frame split about the protocol conversion between TCP/IP protocol and CCSDS AOS (advanced orbit system) space data link. Simulation results are given.

Implementation and simulation of FPGA-based IP over CCSDS

protocol long frame split

ZHANG Qingshun1,ZHOU Shuanzhu1,LIU Zan1,YU Tianyan2,ZHANG Suoliang1

(1.Key Laboratory of Digtal Medical Engineering of Hebei Province, College of Electronic

and Information Engineering,Hebei University,Baoding 071002,China;2.Communi cation

Repairment Institute,The Chinese People’s Liberation Army Unit 66165,Baoding 071002,China)

Key words: TCP/IP;CCSDS;AOS;IP over CCSDS;protocol conversion

为了适应空间技术的发展要求,由世界主要的空间机构组成的国际空间数据系统咨询委员会(consultative committee for space data systems,CCSDS)于1982年成立.CCSDS是一个各空间局国际合作组织,致力于建立有助于航天通信和数据交换系统的标准,共同探讨一些空间数据系统的开发和运营中出现的常见问题,其目的是建立标准化、开放性的空间数据系统,以便相互支持和提高费效比.它当前有11个成员机构、28个观察机构和超过140个工业协会组成,超过700个太空任务选择CCSDS标准,而且数量还在继续增长.中国于20世纪90年代初开始研究CCSDS协议,空间探测技术发展较晚.随着空间探测的不断深入和深空探测的开展,现有的体制已经不能满足需求,因此研究CCSDS建议意义重大[1].

Internet及其技术的迅猛发展引发了信息时代的一次革命,TCP/IP是Internet网络数据传输时使用的主要协议族,已成事实上的标准.它的主要优势在于它的路由性、共享性、管理性和安全性[2].TCP/IP技术已发展成熟,各类相关产品种类较多.航天测控通信网采用这种标准协议的网络,可以降低系统运营、维护与管理的成本,并有利于测控通信网的未来发展.此外,航天测控领域采用TCP/IP协议使得航天测控通信增加许多优势:数据传输不再是点对点路由,而是网络的拓扑和路由协议,选取最佳可用路径,大大提高了传输的灵活性;TCP/IP网络还能够提供很多服务,包括文件传输服务、电子邮件服务、Web服务和统一网络管理等服务,这对航天测控通信将产生深远的影响[3].

IP over CCSDS是CCSDS推荐的,在航天器和地面系统之间、航天器之间及航天器内部利用TCP/IP协议进行空间数据通信的标准规范.本文在借鉴IP over CCSDS space links蓝皮书702.1-B-1的基础上,提出了一种基于FPGA的IP over CCSDS协议长帧拆分算法的设计实现方法,并给出了仿真验证结果.

1IP over CCSDS协议转换技术分析

图1为IP over CCSDS网关部署示意,它实现了TCP/IP协议和CCSDS空间链路协议的转换,可部署在空间站和地面测控站之间,空间站和地面测控站均为TCP/IP网络[4].

图1 IP over CCSD网关部署示意 Fig.1 IP over CCSDS gateway deployment diagram

1.1 IP数据包在CCSDS空间链路上的传输方式

IP over CCSDS Space Links提出了4种传输方式,分别为telemetry(TM),telecommand(TC),advanced orbiting systems(AOS)和Proximity-1.TM空间数据链路协议通常用于从航天器到地面站发送遥测信息,即空-地链路,用于低速下行链路.TC空间数据链路协议通常用于从地面站向航天器发送命令,即地-空链路,主要用于低速上行链路.AOS空间数据链路协议服务于空-空、空-地探测通信等系统,可以处理大容量、高速率数据,支持不同需求用户同时访问,用于高速上/下行链路.Proximity-1空间数据链路协议是中等速率上/下行链路、近距离及低功耗链路,可以提高邻近航天器之间的通信效率.Proximity-1延时短、信号强度中等,适合短途、双向、固定或变化的无线链路.由于AOS协议适用于大容量、高速率上/下行链路,并支持多路虚拟通道复用,因此适合传输视频、图像和音频等,符合现实需要[5].

为在CCSDS空间链路之上传输IP包,IP over CCSDS space links蓝皮书提出利用AOS封装服务,将IP数据包放入到CCSDS封装分组中进行传输(图2)[6].如图2所示,由于TCP/IP 协议不适合空间通信信道,IP数据包必须通过CCSDS IP封装(IPE)协议进行CCSDS封装,CCSDS封装包再利用AOS空间数据链路协议进行传输.该方案还可以将IP数据包进行分包重组后再封装到CCSDS封装包里,可以充分利用有限的信道资源.本文依据上述方案研究并提出了IP数据包分包重组并通过数据链路层的AOS帧进行传输的设计实现方法.

1.2 IP over CCSDS模块结构

IP over CCSDS模块包含物理层接口、IP解析与封装、IP over CCSDS(图中简称IPoC)解析与封装和同步发送、接收,如图3所示.

图2 CCSDS空间链路之上传输IP数据包          图3 IP over CCSDS模块功能结构  Fig.2 On CCSDS space link transmission of IP packets    Fig.3 IP over CCSDS module function structure

物理层接口包含以太网卡和光纤模块,其中以太网卡负责与地面测控通信网和空间通信网连接,光纤模块负责与Modem连接再进行天地链路传输.IP解析:对IP包进行分析,拆分出数据域.IP封装:把数据域加上IP头封装成IP包.IP over CCSDS封装:把IP包进行分包重组,并封装成CCSDS的AOS数据帧.

2IP协议和AOS数据链路协议的转换

2.1 AOS传输帧的结构

采用的AOS传输帧的结构[7]如图4所示,整个传输帧总共65字节,其中AOS帧头5字节、传输帧数据字段58字节及帧差错控制字段2字节.

图4 AOS传输帧的帧结构 Fig.4 AOS transmission frame of frame structure

AOS传输帧由AOS帧头、M_PDU头、封装包头、IPE和IP数据包组成.封装包头、IPE和IP数据包在M_PDU分组区中,其中在成帧的时候会发生2种情况[8],如图5所示.当IP数据包长度大于AOS帧的数据字段时需要对IP数据包进行拆分放到2个及以上AOS传输帧中,如图5a所示.为了充分利用有限的信道资源,当AOS传输帧中已有IP数据包#2但是还有足够空间,此时可以再放入IP数据包#3,如图5b所示.

图5 AOS传输帧 Fig.5 AOS transmission frame

图6 IP数据包处理流程 Fig.6 packet processing flow chart

2.2 协议转换的设计

在发送端,采用FIFO(First input first output,先入先出队列)来实现变长的IP数据包封装到固定长度的CCSDS AOS数据链路帧,将IP数据包放入FIFO中,通过计数器来控制IP数据包按顺序从FIFO输出,再通过拼接和分割的方式将IP数据包封装到AOS帧[9-10],如图6所示.

由于AOS帧的长度是一定的,而IP数据包的长度是可变的,因此不可避免地带来了IP数据包分割的问题,包分割不同于IP数据包的分片,分片的过程中必须生成数据包头部,而分割则不需要.数据能分割传输,这是由AOS协议提供的服务的特性所决定的.如果IP数据包的长度大于M_PDU包区长度则需对其分割,将分割结果分别放入M_PDU的包区.

假设封装包头长度为LE,IPE头长度为LI,M_PDU长度为LM,IP数据包长度为LIP,M_PDU的包区长度为L=LM-LE-LI.

IP 数据包到CCSDS AOS 空间链路数据帧的转换过程包括以下步骤:

1)读取IP数据包,将其长度LPL与M_PDU的包区长度L进行比较,当不大于L时,读取IP数据包放入M_PDU包区,未满区域补Idle Packet,生成AOS帧后返回重新读取IP数据包.

2)当IPL大于L时,对IP数据包进行分割,读取L长的IP数据放入M_PDU包区,生成AOS帧,并将IP数据包的长度减少L.

3)剩余长度再判断是否大于LM.

4)当剩余长度不大于LM时,读取IP数据包放入M_PDU包区,生成AOS帧后返回重新读取IP数据包.

5)当剩余长度大于LM时,对IP数据包进行分割,读取LM长的IP数据放入M_PDU包区,生成AOS帧,并将IP数据包的长度减少LM,再返回到3.

3仿真结果与分析

本仿真采用Modelsim SE 10.1b工具软件,仿真结果如图7所示.图7为时间在700 ns内的仿真图,图8,图9是图7的局部显示.

图7 仿真图 Fig.7 Simulation diagram

图7中,当full 1下降沿来临时,开始在len_fifo中写入数据,当full 2下降沿来临时,开始在data_fifo中写入数据.AOS为输出数据.AOS_valid为数据有效标识,当AOS数据有效时,AOS_valid为1,否则AOS_valid为0.frame_header_sof为AOS数据的第1字节,frame_header_eof为AOS数据的最后1字节.flag为IP的标识,当传输同一个IP包的数据时,flag为1,否则为0.

图8 仿真图的前部分 Fig.8 Early part of the simulation diagram

图8中,当full 1和full 2下降沿到来后,等待12个时钟,开始生成AOS帧,frame_header_sof和AOS_valid变为“1”,AOS帧的前13个字节为帧头,其中包含AOS帧头、M_PDU头、封装包头和IPE.其帧头的前2个字节是传输帧头、航天标识和虚拟信道标识,用十六进制表示为16′h4000.接下来6个字节为信道帧计数、信令字段和M_PDU头,本文只生成AOS帧不涉及传输,因此在这里全部设置为0.接着是封装头,它由4字节组成,即32′h EA000000.帧头的最后一个字节是IPE,由1字节组成,即8′h21.AOS帧数据段的内容为data_fifo中写入的数据,由图7可知,data_fifo的数据内容从“02”开始,因此AOS帧数据段的第1个字节为8′h02.当1个AOS帧传输结束时,frame_header_eof变为“1”.

如图9所示,AOS帧结束时,frame_header_eof会出现1个时钟周期的“1”,同时AOS_valid变为“0”.AOS帧的数据字段为50字节,读取的len_fifo中的第1个数据为49,所以会从data_fifo中读取49个数据填充到AOS帧数据字段,剩余1字节补0,从而生成1个完整的AOS帧.如图7所示,当读取的数据长度为51字节时,1个IP数据包会拆分重组为2个AOS帧.第1个AOS帧填充50个字节的数据,第2个AOS帧填充剩下的最后1个字节的数据,其余的位置会全部补零.仿真结果实现了预定的功能.

图9 仿真图的后部分 Fig.9 Second part of the simulation diagram

本设计最终使用Verilog HDL语言,在Xilinx公司的XC5VLX110T FPGA芯片上实现了上述设计并进行了硬件验证,结果与仿真结果一致,硬件处理的性能指标可以达到1 Gbps.

参考文献:

[1]李少宾,白海斌,张亚生.IP over CCSDS协议适配的高速并行实现技术[J]. 飞行器测控学报,2013(5):432-437.

LI Shaobin,BAI Haibin,ZHANG Yasheng.High speed parallel implementation of IP over CCSDS protocol adaptation technology[J].Journal of aircraft measurement and control, 2013(5):432-437.

[2]张辉.一种基于TCP/IP协议的网络安全防御系统设计[J]. 电脑开发与应用,2013(1):35-37.

ZHANG Hui.A network security defense system based on TCP/IP protocol design[J].Development And application of the Computer,2013(1):35-37.

[3]魏晨曦.TCP/IP技术在航天测控通信中的应用[J].无线电工程,2005,35(8):21-23.

WEI Chenxi.TCP/IP technology application in aerospace measurement and control communication[J].Radio Engineering,2005,35(8):21-23.

[4]李少宾,张亚生,宋春晓.IP over CCSDS协议转换技术研究[J].载人航天,2012(6):13-19.

LI Shaobin,ZHANG Yasheng,SONG Chunxiao.IP over CCSDS protocol conversion technology research[J].Manned Space,2012(6):13-19.

[5]任放,赵和平,陈曦.基于CCSDS Proximity-1协议的动态变帧长策略研究[J].航天器工程,2013,22(4):72-76.

REN Fang,ZHAO Heping,CHEN Xi.Based on CCSDS protocol Proximity-1 dynamic strategy research variable frame length[J].The Spacecraft Engineering, 2013,22(4):72-76.

[6]CCSDS 702.1-B-1-2012.IP over CCSDS SpaceLinks[S].

[7]CCSDS 732.0-B-2-2006.Aos Space Data Link Protocol[S].

[8]CCSDS 702.1-R-4-2010.IP over CCSDS SpaceLinks[S].

[9]梁莉,鲁士文.CCSDS标准和TCP/IP协议间的网关设计与实现[J].计算机工程,2006(4):134-136.

LIANG Li,LU Shiwen.CCSDS standard and TCP/IP protocol between the gateway design and implementation[J].Computer Engineering, 2006(4):134-136.

[10]丁艳会,李健.高级在轨系统下行链路控制器的设计与实现[J].微计算机信息,2008(4):297-298.

DING Yanhui,LI Jian.Advanced orbit system down link controller design and implementation[J].Micro Computer Information,2008(4):297-298.

(责任编辑:王兰英)

猜你喜欢

数据链字节数据包
二维隐蔽时间信道构建的研究*
No.8 字节跳动将推出独立出口电商APP
多平台通用数据链助力未来战场
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
高速公路工程项目实施中数据链应用探析
基于深度学习的无人机数据链信噪比估计算法
No.10 “字节跳动手机”要来了?
SmartSniff
一种无人机数据链信道选择和功率控制方法
简谈MC7字节码