一种基于软交换的短波接入网关设计
2012-09-03周义健戚云军黄国策王国强
景 渊,周义健,戚云军,黄国策,王国强
(1.空军工程大学信息与导航学院,西安 710077;2.空军司令部 信息化部,北京 100843)
1 引 言
软交换是一种功能实体,为下一代网络(NGN)中具有实时性要求的业务提供呼叫控制和连接控制功能,是下一代网络呼叫与控制的核心[1]。
软交换也称为呼叫代理、呼叫服务器或者媒体接入网关。与传统网络的区别是它将呼叫控制功能从媒体接入网关中分离出去,在服务器中通过软件来实现这一功能[2]。那么就是可以实现控制和交换,以及软件的可编程功能之间的分离结构,为使用者和服务商提供灵活的业务传输和协议控制,也就使得网络更加开放和自由[3]。
短波通信虽然存在诸如速率低、频带窄、可用频率少等缺点,但是也具有开通时间短、设备成本低等优点。在各种突发事件和遭受自然灾害之后,基础通信设施无法使用时,短波通信可以快速建设、快速开通,实时传输数据和话音信息,因此具有重要的作用。将短波用户接入到Internet网络中可以将重要信息快速地进行传输,利用Internet网络实现信息的快速共享。例如在5·12汶川地震中,短波通信就发挥了重要的作用。如果可以增加短波接入网关设备,使短波用户直接接入到Internet网络当中,实现信息快速分发。此外,对于平时的短波网络用户也可以通过短波接入网关实现一些Internet服务,诸如电子邮件收发、web网页服务等。
本文设计的短波接入网关主要实现短波网络用户通过短波信道建立与Internet网络的连接。短波接入网关主要实现短波网络协议和IP协议在网络层的转换,以及建立应用层的业务连接。
2 短波接入网关主要功能
图1展示了一个简化的短波链路接入Internet网络的网络结构。
图1 短波网络接入到Internet网络中Fig.1 HF network accessing to the Internet
国外对短波与Internet网络的互联早就进行了尝试。例如澳大利亚的Longfish短波网络,通过在澳大利亚沿海的多个接入站点实现近海海上用户通过短波链路访问Internet网络,而每一个接入站点都配置有短波接入网关,但是由于其义务较为单一,主要负责向用户广播天气等信息,以及用户的邮件推送业务,其邮件网关的功能单一。
美国海军的BFEM66系统是点对点的单频链路系统,系统中短波邮件网关主要使用相应的邮件代理完成与本地局域网用户的邮件交互与传输,底层使用STANAG 5066传输协议与其他短波站点之间的邮件传输,但是仍然存在协议结构不清晰、业务种类单一等问题[4]。
目前,最受大家关注的是以STANAG 5066协议作为基础的短波IP网络研究,其中提出一种HF IP Router来实现关键数据传输,北约分别在2004和2006年的两次大的军演中对该网络展开研究。这种网络协议分层更加明确,支持的业务更加灵活[5]。
国内一些学者也设计了短波接入网关[6-7],增加特定的业务代理,例如增加邮件传输代理或者交互式聊天业务代理,在应用层直接完成与短波用户的数据交互。这样可以增加信息传输的速率,减少信息在短波网络中的传输开销。
通过研究目前短波组网通信的发展,分析认为短波接入网关应当满足如下要求。
2.1 物理层设备的控制
短波接入网关实现短波网络与有线网络之间的互联首先必须实现数据在两个网络中均能够进行传输,那么实现对物理层设备的控制就是非常必要的,特别是在短波链路一侧,短波接入网关必须能够有效地控制短波电台的数据发射和接收,以及短波Modem的数据收发。其次,由于短波信道的特性,短波接入网关还应当可以控制物理层数据的调制方式、编码方式以及发射功率,由此来提高短波链路中数据传输的效率。
2.2 协议转换
短波链路和Internet网络中使用截然不同的链路层及网络协议,要实现两种链路之间的数据无缝传输,短波接入网关还必须实现两种网络中协议的可靠转换,保证数据传输的可靠性和有效性。
2.3 业务代理
在Internet网络中有着大量的应用业务,不同的业务需要不同的协议支持。总体来说这些协议为保证可靠性要求需要在通信过程中进行多次协议交互。然而这种交互在短波链路中却是致命的,因为它将严重影响数据传输的效率,增加数据传输的延时[8]。为此,需要在短波接入网关中增加业务代理功能,即满足Internet网络中服务提供方的协议要求,又满足短波链路的实际需求。例如美军为其短波网络开发的HMTP(HF Mail Transfer Protocol)和CFTP(Compress File Transfer Protocol)[9]。
3 基于软交换的短波接入网关设计
3.1 短波接入网关总体设计
短波用户建立与Internet网络的连接,短波接入网关首先要实现短波网内协议与IP协议的转换。
由图1可知,短波网络用户要使用Internet网络中的资源必须连接到Internet网络中的服务器,但是由于服务器一般只有有线连接,任何无线方式的登陆都必须经过相应的接入网关,不论是卫星通信还是移动通信。以移动通信为例,如果移动台(即手机等无线通信终端)要实现对Internet网络服务器的登陆,对于小区内的基站就成为了移动台接入到Internet网络的接入网关,基站完成与本地服务器之间数据传输,然后由本地服务器将数据推送到Internet网络当中,而对于数据的接收就是一个逆过程。
短波网络与移动通信网络的接入方式类似,网络中都需要一个接入网关来实现数据的传输和协议的转换。但是在移动通信网络中,任何一个移动台的通信都是建立在移动台和基站之间,也就是说任何两个移动台之间不能直接连接,都必须通过基站进行转接。而在短波网络中,整个网络是一个网状网,各个站点都可以建立连接,当然也可实现中间站点的转接,在网络内部没有所谓的基站。网络中的接入网关只完成对Internet网络接入的功能,在功能上比移动基站简单。
所以对于短波接入网关来说,只有在网络有数据发送到Internet网络中时才进行工作。
协议转换如图2所示。由图2可以看出,在短波网络一侧并没有使用在NGN中推荐使用的IP协议,这是因为在短波网络中使用IP的效率并不高,主要是由于IP协议的多次交互过程会造成短波网络中信道利用率低的问题,而针对短波通信实际的特点所使用的协议更加适合在短波网络中使用。
图2 短波接入网关协议框图Fig.2 Block diagram of the protocol architecture for HF access gateway
最新版本的北约短波数据通信标准STANAG 5066中IP代理是通过STANAG 5066协议栈来实现IP数据在HF中的传输。其中IP代理使用ARQ来提供一个可靠的点对点数据链路连接。同时,STANAG 5066协议栈利用HF信道所固有的广播特性,使用无ARQ的协议来支持多播传输[10]。
短波接入网关只是将短波网内数据进行接收,重新封装,建立TCP/UDP连接,在Internet网络中传输,起到了一个将短波用户接入到Internet网络中的作用。
3.2 tun/tap关键技术
在设计中主要使用了Linux操作系统中的tun/tap虚拟网卡技术来实现短波网关接收的短波用户数据向Internet转发的功能。
tun/tap虚拟网络设备为用户空间程序提供了网络数据包的发送和接收能力。作为虚拟网卡驱动,tun/tap驱动程序的数据接收和发送是通过用户态来转交[11],如图3所示。
图3 tun/tap虚拟网卡Fig.3 The virtual network card of tun/tap
从结构上来说,相对于内核tun/tap不仅能够实现网卡的功能,还可以实现字符设备驱动,以字符设备的方式连接用户态和核心态。
如图4所示,从虚拟网卡出来的数据可以直接经过处理转换为短波网内数据,并在短波网内进行传输。而从短波网内来的数据通过相反的处理交给虚拟网卡,传递给系统内核,内核只会认为这是一个从普通网卡接收来的用户数据,与本地局域网接收到的数据做相同处理,然后发送到Internet网络当中。
图4 tun/tap虚拟网卡功能实现Fig.4 Function realization of tun/tap
由于短波接入网关中的虚拟网卡对于操作系统内核来说是一个完整意义上的网卡,短波用户可以认为是短波接入网关的一个窄带局域网用户。
3.3 软件实现
结合短波接入网关的功能要求和业务的需求,对短波接入网关进行软件开发,软件总体框架如图5所示。
图5 软件组成框图Fig.5 Block diagram of software composition
(1)电台和Modem控制模块
该模块主要完成对电台发射和接收的控制,同时可以实现对Modem传输方式的控制,包括数据发送、数据接收、编码方式和传输速率选择等。
(2)短波数据发送和接收模块
该模块主要完成对短波数据帧结构中数据的组侦和发送,以及对接收到的短波链路数据帧进行处理,完成对短波链路的交互过程和所有分组的接收。
(3)数据处理模块
当短波数据发送和接收模块接收全部的短波链路数据之后,由数据处理模块提取出其中的所有分组,并根据数据的内容对数据重新进行标示为特定的业务种类。
当需要使用短波链路发送数据之前,数据处理模块将需要发送的数据分割为固定大小的分组,并增加校验等冗余信息,最后交由短波数据发送和接收模块进行发送。
(4)协议分析模块
该模块主要完成对数据处理模块和业务代理模块的调度工作。首先当接收到短波用户数据时,数据处理模块会根据数据内容标示特定的业务,协议分析模块根据该标示将数据传递给对应的业务代理模块,由特定的业务代理模块完成Internet网路中的数据传输。其次,当接收到来自Internet网络的数据并且目标地址为短波用户,协议分析模块从相应的代理模块中获取数据并填充相应的业务类型标示,将数据重新组合,减少不必要的冗余信息,并传递给数据处理模块。
(5)业务代理模块
业务代理模块可以有很多个,根据不同的应用层或者传输层分业务或者协议进行区分,用来完成与Internet网络中各类服务器之间的数据交互和传输,并将相应的结果通过短波链路反馈给短波用户。
(6)数据传输模块
该模块主要完成有线链路中数据的底层连接的建立和传输。
4 实验结果
在实验室中搭建测试平台,构建了一个简单的短波网络和有线广域网,测试短波用户与有线服务器之间的联通性,如图6所示。
图6 验证平台Fig.6 Verification platform
在测试的网络中,短波用户站点的组成主要包括用户终端、短波Modem、短波电台。在短波接入端站点一侧,主要由短波电台、短波Modem、短波接入网关、本地交换机、本地路由器、网络服务器组成,各个设备之间使用相应的连接线连接。
网络中短波用户终端的IP地址设置为223.0.0.5;短波接入网关的IP地址为193.168.0.2(物理网卡 IP地址,实现与本地交换机之间的连接),虚拟网卡的IP地址为223.0.0.6(该IP地址与短波网络用户在同一个网段);Internet网中的网络服务器IP地址为194.168.0.2。
需要说明的是,短波用户终端也需要一个数据传输软件,将用户的业务数据在应用层(也可以使网络层进行收集,例如ICMP协议的ping报文)进行收集、发送和接收。本文不做讨论。
实验中主要通过传输ping报文来验证在短波网络用户与Internet网络服务器之间的连通性。从图7中可以看到这种设计实现了短波网络用户与Internet网络服务器之间的连接。实际测试中也测试了短波网络用户与短波接入网关之间的连通性,如图8所示。图中两个的测试时间相差较大,这并不是在本交换机和网络路由器中消耗的,而是由于在短波链路中传输时使用长交织的方式,在短波Modem中调制解调的时间具有一定的随机性造成的,而图7和图8是测试的截图。
图7 短波用户ping网络服务器Fig.7 The HF user ping the network server
图8 短波用户ping短波接入网关Fig.8 The user ping the HF access gateway
前面的测试证明了短波用户与Internet网络之间在网络层的连通性。进一步对本文设计的短波接入网关与相关网络中的设备进行比较,如表1所示。
表1 与其他网关的比较Table 1 Comparison with other Gateway
需要说明的是,BFEM66的下一步演进计划中增加了对STANAG 5066协议的支持,由此也增加了不同业务的传输。而Longfish网络中直接在短波链路中传输一种改进协议FITFEEL(Fast Information Transfer For Extremely Errored Links)来实现对TCP和UDP协议的支持。
由于短波接入网关中使用tun/tap虚拟网卡技术,在与Internet网络中服务器的服务交互数据在网络就进行了捕获,因此,可以结合对应业务的不同而进行不同的数据处理。基于以上特点,网关中可以实现各种应用层业务的数据传输,只需要得到相关软件代理的支持。
本文没有对相同协议下速率进行比较,主要是由于不同电台的使用造成业务传输时延不具有可比性。
5 结 论
短波用户接入到Internet网络中,可以实现用户通过短波链路与Internet网络的互联,在一些特殊环境中可以发挥重要作用,具有一定的现实意义和实用价值。
下一步将更加完善短波接入网关的功能,同时将其扩展到短波用户一侧,实现由两个短波网关来完成不同局域网的广域互联,进一步实现短波IP网络。
[1] 于扬.SUBCENTREX软交换系统的研究与改进[D].北京:北京邮电大学,2006.YU Yang.Research and Improvement on SUBCENTREX Softs witch System[D].Beijing:Beijing University of Posts and Telecommunications,2006.(in Chinese)
[2] 谢泉.下一代络的媒体网关与设计[D].贵阳:贵州大学,2008.XIE Quan.The Design of the Media Gateway for NGN[D].Guiyang:Guizhou University,2008.(in Chinese)
[3] 王立国.基于软交换技术的SIP网络电话会议系统的研究与实现[D].北京:华北电力大学,2010.WANG Li-guo.Research and Design of SIP Network Teleconference System Based on Softs witch[D].Beijing:North China Electric Power University,2010.(in Chinese)
[4] Renfree P R.The US Navy Returns to HF with STANAG 5066 as the Path[C]//Proceedings of 2001 IEEE Military Communications Conference.McLean,Virginia,USA:IEEE,2001:471-476.
[5] Kallgren D G,Smaal J W,Gerbrands M,et al.An Architecture for Internet Protocol over HF:Allied High-Frequency Wide-Area Networking using STANAG 5066(AHFWAN66)[C]//Proceedings of 2005 Military Communication Confierence.Atlantic City,New Jersey,USA:IEEE,2005.
[6] 顾芳.电子邮件在短波信道中的应用与改进[D].成都:电子科技大学,2007.GU Fang.The Implementation and Improvement for E-mail in HF Channel[D].Chengdu:University of Electronic Science and Technology of China,2007.(in Chinese)
[7] 石峰.短波电子邮件转发系统设计研究[D].哈尔滨:哈尔滨工业大学,2003.SHI Feng.Research on the Designing of the E-mail Forwarding System in HF Communication[D].Harbin:Harbin Institute of Technology,2003.(in Chinese)
[8] Johnson E E,Balakrishnan M,Tang Zibin.Impact of Turnaround Time on Wireless MAC Protocols[C]//Proceedings of 2003 IEEE Military Communications Conference.San Jose,CA:IEEE,2003:375-381.
[9] Gillespie A F R,Trinder S E,Brown D J.Client Application Considerations for Low Bandwidth Communications[C]//Proceedings of 2003 IEEE Military Communications Conference.San Jose,CA:IEEE,2003:477-481.
[10] 景渊,曹鹏,黄国策.北约短波数据通信标准最新进展[J].舰船电子工程,2009,29(6):24-28.JING Yuan,CAO Peng,HUANG Guo-ce.New Development of the Standardfor Data Applications over HF Radio by NATO[J].Ship Electronic Engineering,2009,29(6):24-28.(in Chinese)
[11] Kallgren D G.IP Unicast/Multicast Operation over STANAG 5066.NATO 3G Radio Branch[C]//Proceedings of 2001 IEEE Military Communications Conference.McLean,VA:IEEE,2001:501-505.