李汝南 刘元安 刘凯明 唐碧华
(北京邮电大学 电子工程学院 无线电与电磁兼容实验室 北京 100876)
VoIP业务在无线Mesh网络中的应用
李汝南 刘元安 刘凯明 唐碧华
(北京邮电大学 电子工程学院 无线电与电磁兼容实验室 北京 100876)
将VoIP应用于在无线Mesh网中,必须考虑时延、时延抖动、丢包率等因素。本文设计了一种新型的度量值Metric,将影响VoIP的主要因素时延与时延抖动充分考虑在内,使这种度量值更适用于传输VoIP类强实时性业务。此外,本文设计出基于HWMP协议改进的EHWMP协议,大大减小了路由维护阶段的时延与开销,并使协议更加适用于无线Mesh网络。
VoIP(Voice over IP)近年来发展迅猛,各种商业模式与产品也层出不穷(如Skype、MSN等)。最近,人们越来越关注一个热点问题,VoIP如何应用于无线Mesh网络环境下。一旦VoIP能够应用于无线Mesh网络,就能够给用户提供很大的便利。
本文关注的是基于802.11s上的无线Mesh网络。研究发现,无线Mesh网络中VoIP传输性能不理想。主要原因是802.11s无法提供严格的QoS保障,时延、时延抖动等因素对VoIP影响较大[1]。另外在无线网络中,链路出现故障时增大了路由维护阶段的时延与开销。为了解决上述问题,本文设计了一种新型的度量值Metric,将影响VoIP的主要因素时延与时延抖动充分考虑在Metric内,使这种度量值更适用于传输VoIP。另外本文基于HWMP协议,设计了改进型路由协议EHWMP,大大减小了路由维护阶段的时延与开销,并使协议更加实用于无线Mesh网络。
在无线Mesh中传输VoIP,首先需要考虑的QoS因素就是端到端的时延抖动与时延,此二者能够在极大程度上影响传输性能。传统的协议和算法中很少涉及时延抖动对传输性能的影响。故此本文中提出一种将时延抖动与时延因素综合考虑的Metric度量值。
传统的ETT只考虑了数据包在MAC层的传输时延,却没有考虑数据包在网络层时的时延。因为每个节点的缓存区内都有包在排队,在缓存区内的排队等待时间也需要被考虑进总时延,才能算出比较准确的端到端时延[2]。此外,传统的ETT默认最大重传限制为无穷大。对于VoIP这类实时性强的业务,必须规定一个最大重传次数N。所以,在此基础上,本文将传统的传统的ETT,改进成EETTi:
综合考虑上述的二者时延抖动σDelay和改进型期待重传时间 EETTi,本文采取一种新的度量判据Metric,计算公式(5)如下:
这种新型的度量判据全面考虑了时延与时延抖动的影响,使得Mesh网络更加符合VoIP的传输QoS性能要求。
现有的无线Mesh网络结构如图1[6]。
图1 无线Mesh网络结构图
802.11 s设备必须默认实现HWMP协议,以保证其互操作性。下面简单介绍一下HWMP协议,该协议由两部分组成。第一部分是类似于Ad-hoc网络的按需距离矢量路由协议AODV并对其进行了部分改进,能够成一种新的路由协议RM-AODV;第二部分是基于树形的先应式路由协议,该协议是对前一部分按需路由协议的一种补充,其主要思想是让带有网络出口的Portal节点作为树根(Root),将其他MP连接成一棵逻辑的路由树,让所有Mesh节点都知道去Root的路径[3][4]。
本文在HWMP基础之上,提出了一种新型的路由协议EHWMP,协议的具体内容如下:
路由发现阶段:每个Mesh节点维护三张表格,除了邻居表和路由表之外,还需单独维护一张“全路由表”。路由表的格式如表1。
表1 路由表格式
其中路径有效标志,存放0和1,0表示该路径无效,1表示此路径有效;单跳Metric表项,存放源节点到下一跳节点之间的路径判据度量值Metric;总Metric表项,存放源节点到目的节点通过此下一跳节点转发的所有路径中,路径判据度量值Metric最小的一个;优先级表项,表示这条路径的优先级,数字越小优先级越高,0是当前路径,1是备份路由,是通过比较总Metric表项得到的。
Mesh终端以及MAP节点以广播的方式、周期性地向周围的一跳邻居节点发送hello包,目的在于探测一跳邻居节点。而后向一跳邻居节点发送一组probe包,用于测算本节点到一条邻居的时延抖动与时延等值,通过第2节的公式(5),可以计算出本节点到一跳邻居的链路上的Metric值,将上述信息存入路由表中。而后各Mesh终端将一跳邻居信息和Metric一起发送至MAP。
MAP将覆盖范围内所有节点发送信息汇集成一张“全路由表”,并将该表广播给覆盖范围内所有Mesh终端。同时,每个MAP节点将自己通信范围内的所有Mesh终端信息周期性向所有Mesh功能节点进行泛洪(由于Mesh功能节点移动性较低,变化较小,故此更新周期可以长一些)。使Mesh网络中,任意一个Mesh功能节点都能了解任意一个Mesh终端处在哪个MAP节点的通信范围之内。
有数据需要传输时,具体的发送流程如图2所示:
图2 数据发送流程图
路由维护阶段:当Mesh终端有移动性的时候,可能会有新的Mesh终端移动进入原MAP的覆盖范围。此时新Mesh终端需向周围一跳可达邻居发送hello包,探测一跳邻居。在收到一跳邻路由维护阶段:当Mesh终端有移动性的时候,可能会在周期之间有新的Mesh终端移动进入原MAP的覆盖范围。此时新Mesh终端需向周围一条邻居发送hello包,探测一跳邻居,并计算本节点到一条邻居的链路上的Metric值。而后向MAP发送这些信息,表示自己是新加入的Mesh终端,MAP收到后更新自己的“全路由表”,广播给所有Mesh终端,并向所有MP节点广播这一更新。
当某一跳链路发生断裂时,Mesh终端迅速查找自己的路由表,根据链路断裂的状况启动相应的备份路由。
MAP将“全路由表”广播给所有Mesh终端,则所有Mesh节点均可使用路由查找算法,根据“全路由表”建立自己的路由表。
假设源节点为节点i,目的节点为节点j(j≠i)。路由查找算法具体步骤如下:
步骤1:源节点i首先查找自己的路由表,如果目的节点j已经存在于源节点i的路由表的目的节点中,则执行步骤2;否则,执行步骤3。
步骤2:查看路由表中到达目的节点的当前路径,若其路径有效标志置1(置1为有效),则表示当前路由有效,将数据发送给相应的下一跳节点;若当前路由失效,则启动备份路由中优先级最高的有效路径传送数据。
图3 全路由表示意图
步骤11:整理路由表,将所有路径有效标志仍然置0的路径条目都删除,而后执行步骤12。
步骤12:按照总Metric表项内填充的数值比较大小,来填充优先级表项,总Metric越小对应的优先级就越高。而后执行步骤2。
EHWMP协议对节点移动性的支持表现在:若某Mesh终端移出了原MAP的覆盖范围,则MAP更新自己的“全路由表”。具体做法是:对于MAP节点而言,若节点j移出自身覆盖范围,则删除“全路由表”中的第j行与第j列,而后向覆盖范围内所有Mesh终端广播新“全路由表”。对于其他Mesh终端而言,假如节点i发现原本可以到达的节点j已经移动走了,无法到达,则立刻删除自己路由表中所有与节点j有关的路由,并且马上启用备份路由传输数据。
VoIP在无线Mesh网络上传输,由于Mesh终端有移动性、网络有不稳定性,一旦原路由失效,重新进行路由发现会造成很大的试验和时延抖动,这是VoIP所不能容忍的。采用上述改进型协议EHWMP,在每个节点的路由表内加入备份路由,以便在原路由失效时启动备份路由。另外MAP进行实时性地更新“全路由表”,可以进一步避免时延,在最大程度上保证VoIP这类实时性要求很强的业务能够在无线Mesh网络上进行传输。
本文采用OPNET仿真工具,在无线Mesh网络的框架之下,分别使用HWMP以及EHWMP路由协议在随机场景下对网络性能的影响进项测试。仿真场景为一个1000m×1000m的开阔环境,共有50个经过改进的无线节点散列在场中,仿真时间为30分钟。VoIP业务用CBR业务进行模拟。对VoIP连接服务质量是否满足,要看连接的吞吐量,如果吞吐量大于VoIP语音速率的80%,而认为这个业务流的QoS需求得到满足。因为只有在时延小,时延抖动小的情况下,才能达到这个吞吐量。
图4 两种协议端到端时延显示图
图4表示的是两种协议的端到端时延对比示意图。EHWMP协议基于HWMP协议作出了改进,将Mesh终端间的寻路方式改进成了表驱动型,使得先验式路由协议在原HWMP中的比重加大,进而使得端到端时延降低了;此外,EHWMP协议采取新型的Metric作为判据度量,此度量值综合考虑了端到端时延与时延抖动因素,使数据包的发送能够选择时延较低的链路;另外EHWMP加入了备份路由机制,减小了链路断裂时的路由维护时延,从而进一步降低了端到端时延。
图5支持最大VoIP的连接数目
图5 表示的是,在HWMP和EHWMP协议下运行的两种场景,其单位带宽所能支持的VoIP最大连接数量对比图。EHWMP协议对HWMP协议做出了有效改进,采取新型的Metric作为判据度量值,将时延与时延抖动等因素考虑在内,使得网络的平均端到端时延降低了。同时EHWMP将HWMP的按需式路由协议RM-AODV加以改进,改为先验式路由协议,更加适于VoIP等强实时性业务的传输。另外EHWMP协议加入了备份路由机制,在一定程度上支持了VoIP客户的移动性。从图4中可以很明显地看出,经改进后的EHWMP协议与HWMP协议相比,其所支持的VoIP最大连接数量有了显著地提升。
本文的研究点立足于将VoIP应用于在无线Mesh网络中。鉴于VOIP为实时性要求极高的业务,本文将影响VoIP的主要因素时延与时延抖动充分考虑在Metric内,设计了一种新型的度量值Metric,使这种度量值更适用于传输VoIP,保证其QoS。另外本文基于HWMP协议进行了改进,改进型协议EHWMP使改进后的协议大大减小了路由维护阶段的时延与开销,增加了单位带宽上VoIP支持数量,并使协议更加实用与无线Mesh网络。本文通过OPNET的仿真,证明了改进后的协议确实能够大幅度提高VoIP在无线Mesh网中的传输性能。
[1] 孙登银.孙精科.VoIP技术分析与系统设计[M].第1版.北京:人民邮电出版社,2005:1-344.
[2] Samrat Ganguly,Vishnu Navda.Performance Optimizations for Deploying VoIP Services in Mesh Networks[J].IEEE:2006,24(11):2147-2158.
[3] 钟斌.无线Mesh网络VoIP业务聚合技术研究[D].重庆:西南交通大学.2009
[4] 裴晓萍.HWMP路由协议的研究与仿真[D].西安:西安电子科技大学,2008
[5] Hongkun Li, Yu Cheng. Minimizing End-to-End Delay: A Novel Routing Metric for Multi-Radio Wireless Mesh Networks[C]// IEEE INFOCOM,2009:46-54
[6] Michael Bahr,Update on the Hybrid Wireless Mesh Protocol of IEEE 802.11s[J].IEEE:2007,24(5):1455-1459.
10.3969/j.issn.1001-8972.2011.02.045
国家863计划项目(2008AA01Z211),国家自然科学基金资助项目
李汝南(1986-),男,硕士,主要研究方向无线Mesh网络中的路由协议。
VoIP;无线Mesh网;路由协议