当前位置:首页 > 通信技术 > 通信技术
[导读]Ad Hoc网络中无线信道的时变特性和网络拓扑的不断变化导致了链路的频繁断续,使得数据包大量丢失。这就要求高层应用协议能够快速访问底层传输协议甚至信道的状态信息,各层协议之间能够根据需要互相交换信息,迅速作出决策,提高分组接收成功率。本文基于QualNet网络仿真器设计并实现了一种网络协议栈跨层交互的机制。结果表明,利用该机制,能够快速建立跨层协议的交互,使得高层协议及时获取低层协议的有用信息,从而可根据信道的状况动态调节网络协议设置,提高分组发送成功率,优化网络传输的性能。

摘要:Ad Hoc网络中无线信道的时变特性和网络拓扑的不断变化导致了链路的频繁断续,使得数据包大量丢失。这就要求高层应用协议能够快速访问底层传输协议甚至信道的状态信息,各层协议之间能够根据需要互相交换信息,迅速作出决策,提高分组接收成功率。本文基于QualNet网络仿真器设计并实现了一种网络协议栈跨层交互的机制。结果表明,利用该机制,能够快速建立跨层协议的交互,使得高层协议及时获取低层协议的有用信息,从而可根据信道的状况动态调节网络协议设置,提高分组发送成功率,优化网络传输的性能。

关键词:无线,网络,跨层,自组织,仿真

1.    引言

传统的基于TCP/IP的网络协议栈将各个协议层独立开来,相邻层之间通过良好的层间接口进行直接通信,而非相邻层之间不允许进行直接通信。每个协议层专注于完成本层内部的全部功能,而不必去关心其它层的功能实现。这样做的好处在于,设备厂商内能够专注于某一协议层的网络设备的开发,进行功能优化与添加,只要保证层间接口的标准化,就不会影响到整个网络的互通。这一理念鼓励了设备厂商的技术创新,使得市场上不断出现质优价廉的产品和服务,促成了全球互联网Internet的飞速发展。但是,对于无线动态网络和有线、无线混合异构网络来说,严格的分层限制了信息获取的灵活性,使得网络设计者无法根据无线网络的动态特性做出自适应优化,导致传统用于有线网络的严格分层的协议栈在上述网络中无法高效运行。
 
在一个典型的无线移动自组织网络(MANET)中,由于无线信道的时变性和节点的移动性,使得链路的断开、路由的改变频繁发生,要维护网络的正常运行,就要及时发送网络控制信息,这就会给目前低带宽的无线链路带来很大的开销。在某一层次的性能优化也许还会导致全局协议栈的性能的降低。同时,基于严格分层的协议栈使得高层协议希望直接得到的网络底层信息需要经历几个中间协议层才能得到,信息的更新带有明显的迟滞性。针对无线网络的特点及问题,许多研究人员提出,打破基于TCP/IP协议栈的严格分层限制,使得相关协议层次能够直接进行信息的交互,从而极大提高网络的传输性能。Vineet Srivastava等人综述了跨层设计的现状和发展方向,将跨层定义为违反参考协议栈构架的协议设计,并将跨层分类为创建新接口、合并相邻层、无新接口的耦合设计和全局垂直信息交互四种。Taesang Yoo等人利用NS-2网络仿真器构建了一个跨层设计框架用以研究Ad Hoc网络上的视频传输性能。XinSheng Xia和Qilian Liang利用OPNET建立了一个MAC层和物理层耦合的跨层机制。Ning Yang等人基于NS-2建立了物理层和介质访问控制(MAC)层、网络层和MAC层之间的信息交互。

目前的跨层协议研究大多是基于网络仿真器软件实现的,跨层协议交互的研究主要针对于有延时限制的多媒体信息传输,而仿真软件的仿真速度及实时性影响着许多研究的顺利开展,例如我们建立的Ad Hoc网络实时视频传输实验平台就必须要依托于高速的网络仿真引擎。同时,仿真工具的易用性也影响着我们的研究进度。基于上述原因,我们选择QualNet作为我们的网络仿真工具,取得了良好的效果。

本文首先介绍了QualNet网络仿真器及与我们跨层协议实现相关的消息处理机制,接着以应用层和网络层跨层交互为例,讲解了如何在QualNet里面实现跨层协议设计,然后给出了不同节点、不同应用之间跨层协议交互的设计实现。最后总结全文并指出下一步的工作方向。

2.    QualNet及其消息处理机制

2.1    QualNet网络仿真器

QualNet是一种应用于无线、有线以及混合动态网络的快速而且精确的开发、仿真系统。Scalable Network Technologies Inc.公司将美国加州大学洛杉矶分校(UCLA)开发的开放源代码的GloMoSim成功地转化为了商业版本——QualNet。目前已经在世界范围内50多个国家和地区得到了推广应用,它的客户主要是美国的大的军方项目承包商,包括DARPA、微软、NASA、雷神、美国空军等,目前已经成为美国军方网络中心战及未来作战系统(FCS)的主要仿真平台。

2.2    QualNet协议栈构架

QualNet协议栈的设计遵循着TCP/IP网络协议栈分层结构, 如图1所示。但是,QualNet还提供了一套完整的消息传递机制,使得我们能够进行类似图2所示的跨层协议开发。

2.3    QualNet消息处理流程

以应用层恒定比特率(CBR)协议为例,QualNet标准协议栈的内部消息处理流程如图3所示。

首先,应用层对CBR分组使用MESSAGE_Alloc( )函数分配内存空间,并利用MESSAGE_PacketAlloc( )函数将用户载荷拷贝到packet结构体指针,通过MESSAGE_Send( )递交给传输层,传输层利用MESSAGE_AddHeader( )函数增加一个TCP或者UDP头,通过MESSAGE_Send( )函数递交给网络层,网络层通过路由寻径,增加了IP头以后递交给MAC子层,MAC子层增加MAC帧头后递交给物理层,经过相应的编码、调制、天线发射出去,经过无线信道的模拟传输,历经了衰落、多径、损耗,到达接收端,如果发生差错就要根据MAC层设置进行相应的处理,如重传。接收端的处理过程与发送端相反,经过MESSAGE_RemoveHeader( )函数层层剥离协议头,将消息递交给上层进行相应的处理,最终到达目的应用协议,利用MESSAGE_Free( )函数释放掉由发送端使用的MESSAGE_Alloc( )函数和MESSAGE_PacketAlloc( )函数分配的内存空间。

可见,如果要想实现跨层信息交互,就要在执行MESSAGE_Send( )函数的时候,将原来的消息参数进行相应的更改,使得仿真器经过事件调度以后能够将此消息递交给期望的处理函数。下面,我们就将CBR协议进行修改,实现如图2所示的绕过UDP传输协议直接将CBR分组递交给IP层的跨层协议交互功能。

3    基于QualNet的跨层交互机制

如图2所示,跨层协议交互分为两个部分,一部分是应用层直接将数据递交给IP层处理,另一部分是IP层将数据绕过UDP协议传送到CBR处理函数入口。

3.1    应用层到网络层的通信

常规协议栈中,基于UDP的应用层协议将用户数据发送到UDP,添加UDP头后发送到IP。为了使得CBR能直接将用户数据发送到IP,我们就要首先确定UDP使用了哪些接口来和网络层进行通信,然后在CBR和IP之间使用相同的接口。



图4所示为分层的协议栈接口,可以看到,CBR调用接口函数APP_UdpSendNewHeaderVirtualDataWithPriority( )将CBR数据发送给UDP协议,UDP协议调用接口函数NetworkIpReceivePacketFromTransportLayer( )将数据发送给IP,接着IP进行相应的处理并调用函数RoutePacketAndSendToMac( )将数据包发送到MAC层。我们所需要做的,就是要将原来的数据通路打断,让CBR协议直接调用接口函数NetworkIpReceivePacketFromTransportLayer( ),并传递相应的参数。

3.2    网络层到应用层的通信

对于网络层到应用层的跨层通信,首先要确定传输层和应用层之间使用的是什么接口函数,然后使得网络层使用相同的接口将数据传递给应用层。网络层函数DeliverPacket( )从接收到的IP包的头内读取接收端协议编号ipProtocolNumber,将数据包传递给目的协议。对于一个基于UDP的应用程序,DeliverPacket( )使用函数SendToUdp( )发送接收到的数据包给UDP,因而,将数据包传递给应用层就要使用UDP函数TransportUdpSendToApp( )。为了使得IP能够直接向CBR发送数据,编写一个函数SendToCbr( )并修改DeliverPacket( )使之调用SendToCbr( )向CBR发送数据包,该修改过程的伪代码如图5所示。

4    跨层仿真实例

我们针对上述的CBR跨层协议交互,进行了无线移动Ad Hoc网络数据传输的仿真实验,实验结果表明,即使是经过简单的跨层交互(只是跨过了传输层),较之严格分层的协议栈,分组投送成功数量提高了33%。

4.1    实验设置

我们选取了1000M×1000M见方的场景,上面均匀放置着50个无线通信节点,都运行802.11b的MAC协议和物理层协议,移动模型是Random Waypoint,暂停时间0S,最小移动速度10M/S,最大移动速度20M/S,都运行AODV路由协议。业务流量配置如下:每隔10MS发送一个长度为1240字节的CBR包,直到仿真结束,仿真时间2000S。


图5  IP函数DeliverPacket( )的修改

我们主要考察了延时、抖动、分组投送成功数量、网络吞吐量四种网络性能参数指标,进行了多次实验,实验结果取平均值列于表1当中。

 

延时

抖动

接收量

吞吐量

分层

1.283S

0.246S

8572.8

42623.8bps

跨层

1.368S

0.231S

11410.4

56721.0bps

性能变化

增大6.58%

减少6.28%

增大33.1%

增大33.07%

表1 跨层交互与分层协议的网络性能对比

4.3    实验结论

从表1当中可以看出,经过跨层,减少了UDP传输层的处理流程,在延时和抖动变化不大(±6.5%左右)的情况下,极大地提高了网络吞吐量和成功接收应用层分组的数量(提高了约33%),降低了丢包率,对于数字通信网络的多媒体视频传输质量而言是至关重要的。
 
5    结语
我们设计并实现了基于QualNet的跨层协议的交互机制,仿真结果表明,跨层协议信息交互在Ad Hoc网络中能明显地改善多媒体传输的性能。

下一步我们要基于这个实验平台,针对不同的路由协议、MAC协议和应用层协议进行跨层优化,以改善Ad Hoc网络视频传输的性能。

北京华仪盛科科技有限公司供稿
www.qualnet.com.cn

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭