法律状态公告日
法律状态信息
法律状态
2016-04-06
未缴年费专利权终止 IPC(主分类):H04W4/06 授权公告日:20130515 终止日期:20150225 申请日:20110225
专利权的终止
2013-05-15
授权
授权
2011-07-13
实质审查的生效 IPC(主分类):H04W4/06 申请日:20110225
实质审查的生效
2011-05-25
公开
公开
技术领域
本发明涉及无线自组织网络技术领域,尤其涉及一种基于网络按需距离矢量多播路由的多播树更新方法及系统。
背景技术
无线自组织网络具有无中心、自组织、无需固定基础设施和支持多跳等特性,因此,在需要临时、快速组网的特殊通信场合有着广泛的应用前景。由于其具有移动性和带宽受限等特点,有线网络的路由技术及传统的无线路由技术无法适用于无线自组织网络,因而需要对无线自组织网络的路由技术进行研究。多播技术作为一种点对多点的网络层技术,在自组织网络部署的多种场合有着广泛的应用,MAODV(网络按需距离矢量多播路由,Multicast Ad Hoc On-Demand Multipath Distance Vector)协议作为一种基于树结构的多播路由协议,具有很高的分组转发效率,但由于节点间只有一条链路,在网络移动性较强的情况下,树结构容易遭到破坏。
发明内容
本发明所要解决的技术问题是提供一种基于网络按需距离矢量多播路由的多播树更新方法及系统,以及时对网络的拓扑结构变化做出反应,有效减少路由寻找时间,提高协议的鲁棒性,保证移动性较强的无线自组织网络的多播路由质量。
本发明公开了一种基于网络按需距离矢量多播路由协议的多播树更新方法,包括如下步骤:组通知消息泛洪步骤,组领导周期性地在全网中泛洪组通知消息GRPH;更新步骤,节点基于接收的所述组通知消息GRPH对多播树进行更新。
上述多播树更新方法,优选所述更新步骤进一步为:节点收到所述组通知消息GRPH后,在标志位为GRPH_NO_FLAG时,若该节点从相同节点接收过相同的GRPH消息,则丢弃该组通知消息GRPH;若该节点从相同节点没有接收过该GRPH消息,则更新节点的组领导表,判断收到组通知消息GRPH的该节点是否为组成员,i)若是组成员,1)在多播路由表中的组领导地址等于该GRPH消息中的组领导地址时,判断该GRPH消息是否来自于该节点的父节点,11)若是来自于父节点,更新多播路由表信息,并转发该GRPH消息;12)若不是来自于父节点,判断GRPH消息携带的到组领导的跳数是否小于多播路由表中记录的到组领导的跳数,若小于,则更新多播树结构,即向原父节点发送剪枝消息MACT_P,向新的分支发送激活消息MACT_J;若不小于,则丢弃该GRPH消息;2)在多播路由表中的组领导地址不等于该GRPH消息中的组领导地址时,判断该节点是否为组领导,若是,则进行多播树的合并;若否,则向组领导发送RREQ_R消息,请求进行多播树的重构;ii)若不是组成员,则将标志位M置位,并转发该GRPH消息。
另一方面,本发明还公开了一种基于网络按需距离矢量多播路由协议的多播树更新系统,包括:组通知消息泛洪模块和更新模块。组通知消息泛洪模块,用于组领导周期性地在全网中泛洪组通知消息GRPH;更新模块用于节点基于接收的所述组通知消息GRPH对多播树进行更新。
上述多播树更新系统,优选所述更新模块进一步为:
节点收到所述组通知消息GRPH后,在标志位为GRPH_NO_FLAG时,若该节点从相同节点接收过相同的GRPH消息,则丢弃该组通知消息GRPH;若该节点从相同节点没有接收过该GRPH消息,则更新节点的组领导表,判断收到组通知消息GRPH的该节点是否为组成员,i)若是组成员,1)在多播路由表中的组领导地址等于该GRPH消息中的组领导地址时,判断该GRPH消息是否来自于该节点的父节点,11)若是来自于父节点,更新多播路由表信息,并转发该GRPH消息;12)若不是来自于父节点,判断GRPH消息携带的到组领导的跳数是否小于多播路由表中记录的到组领导的跳数,若小于,则更新多播树结构,即向原父节点发送剪枝消息MACT_P,向新的分支发送激活消息MACT_J;若不小于,则丢弃该GRPH消息;2)在多播路由表中的组领导地址不等于该GRPH消息中的组领导地址时,判断该节点是否为组领导,若是,则进行多播树的合并;若否,则向组领导发送RREQ_R消息,请求进行多播树的重构;ii)若不是组成员,则将标志位M置位,并转发该GRPH消息。
本发明充分利用MAODV协议已有控制消息及路由信息,不添加其他额外的控制消息,从组领导周期性泛洪的GRPH消息中获取有效信息动态刷新多播树结构,保证链路的有效性,从而提高分组投递率,减少路由请求的发起次数,降低多播数据分组的投递时延。
附图说明
图1为现有技术中,MAODV协议GRPH消息处理流程图;
图2a为本发明基于网络按需距离矢量多播路由协议的多播树更新方法的步骤流程图;
图2b为本发明基于网络按需距离矢量多播路由协议的多播树更新方法的详细步骤流程图;
图3为本发明基于网络按需距离矢量多播路由协议的多播树更新方法的一个实例;
图4是现有技术中的MAODV和本发明的方法分组投递率比较示意图;
图5是现有技术中的MAODV和本发明的方法分组端到端的平均时延比较示意图
图6是现有技术中的MAODV和本发明的方法控制分组开销比较示意图;
图7为基于网络按需距离矢量多播路由的多播树更新系统实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
方法实施例
本发明基于网络按需距离矢量多播路由协议的多播树更新方法,其设计的核心原则是,充分利用协议已有控制消息及路由信息,不添加其他额外的控制消息,从组领导周期性泛洪的GRPH消息中获取有效信息,及时更新多播树信息,在维护多播树结构的同时,提高多播树的鲁棒性。
在MAODV中,组领导通过周期性地在全网中泛洪GRPH消息来维护多播树,对具有相同多播组地址和组领导地址的GRPH消息,每个节点仅处理一次,根据GRPH消息来更新自身的组领导表。MAODV协议中,节点接收到GRPH消息后的处理流程如图1所示。
基于网络按需距离矢量多播路由协议的多播树更新方法需要对多播组成员接收到广播的GRPH消息时的操作进行修改,具体操作为:多播组成员接收到周期性广播的GRPH消息时,如果GRPH消息中携带的组领导地址大于本节点所保存的多播组组领导地址,则遵循MAODV协议本身的操作,发起多播树合并过程或向自身的多播组领导发送RREQ_R消息请求树的重构;如果GRPH消息中携带的组领导地址与自身多播组领导中相同,则判断是否从自己的父节点接收到此消息,是则遵循MAODV协议操作;否则查看GRPH消息中携带的到组领导的跳数信息,如果小于自身多播路由表中的跳数信息,则向自身父节点发送剪枝信息,同时向发送此GRPH消息给自己的节点发送MACT_J消息,激活新的树分支。
参照图2a,图2a为为本发明基于网络按需距离矢量多播路由协议的多播树更新方法的步骤流程图,包括如下步骤:组通知消息泛洪步骤S210,组领导周期性地在全网中泛洪组通知消息GRPH;更新步骤S220,节点基于接收的所述组通知消息GRPH对多播树进行更新。
具体处理流程如图2所示,包括:节点收到所述组通知消息GRPH后,在标志位为GRPH_NO_FLAG时,若该节点从相同节点接收过相同的GRPH消息,则丢弃该组通知消息GRPH;若该节点从相同节点没有接收过该GRPH消息,则更新节点的组领导表,判断收到组通知消息GRPH的该节点是否为组成员:
i)若是组成员,1)在多播路由表中的组领导地址等于该GRPH消息中的组领导地址时,判断该GRPH消息是否来自于该节点的父节点,11)若是来自于父节点,更新多播路由表信息,并转发该GRPH消息;12)若不是来自于父节点,判断GRPH消息携带的到组领导的跳数是否小于多播路由表中记录的到组领导的跳数,若小于,则更新多播树结构,即向原父节点发送剪枝消息MACT_P,向新的分支发送激活消息MACT_J;若不小于,则丢弃该GRPH消息;2)在多播路由表中的组领导地址不等于该GRPH消息中的组领导地址时,判断该节点是否为组领导,若是,则进行多播树的合并;若否,则向组领导发送RREQ_R消息,请求进行多播树的重构;
ii)若不是组成员,则将标志位M置位,并转发该GRPH消息。
节点收到所述组通知消息GRPH后,若标志位不是GRPH_NO_FLAG时,则交由其他函数进行处理。
使用上述方法操作的一次GRPH消息处理实例如图3所示,节点A某时刻接收到来自B和C节点的GRPH消息且此消息中携带的多播组相关信息足够新,节点A判断两个GRPH消息中携带的到组领导的跳数信息分别为2和3,由于节点A多播路由表中保存的到组领导的跳数为3,则此时A节点向其父节点F发送剪枝消息,从原来的树分支剪除自己,同时向B节点发送激活消息MACT_J,成为B节点的子节点,形成新的多播树分支。
使用网络仿真软件NS2对上述方法和MAODV进行仿真分析,分别从分组投递率、分组端到端的平均传输时延以及控制分组开销三个方面对二者进行比较。
如图4所示,随着节点运动速度的增加,两种算法的分组投递率都逐渐降低,这是因为,随着节点移动速度的加快,网络拓扑变 化更快,树结构更容易遭受破坏,需要不断进行链路修复,断链下游的节点进行路由修复后,新的父节点可能不是原来的父节点,无法从原来的父节点接收到断链修复期间源节点发送的多播数据分组,从而导致分组投递率的降低。图中,曲线4a为本发明分组投递率,曲线4b为MAODV分组投递率。从图中可以看出,本发明分组投递率明显高于MAODV,这是由于本发明的树枝更新机制能够保证新生成树结构的有效性,确保数据分组及时可靠的传输。
如图5所示,随着节点移动速度的增加,端到端的平均传输时延逐渐增加,这是因为,随着节点的移动速度加快,网络拓扑变化更快,树结构更容易遭受破坏,从而导致分组端到端的延时增加。图中,曲线5a为本发明端到端平均传输时延,曲线5b为MAODV端到端平均传输时延。从图中可以看出,本发明的端到端平均传输时延明显低于MAODV,这是由于根据组领导定期广播的GRPH消息及时进行树结构的刷新,形成尽可能短的树分支,缩短了数据分组的传输距离,因而有较好的时延性能。
如图6所示,随着节点运动速度的增加,两种算法的控制分组开销逐渐增加,这是因为,根据算法机制,断链修复过程中,请求断链修复的节点在全网中泛洪RREQ_J分组,因而需要大量的控制分组开销。图中,曲线6a为本发明的控制分组开销,曲线6b为MAODV的控制分组开销。从图中可以看出,本发明的控制分组开销明显低于MAODV,由于及时更新树结构,减少了断链修复的过程,因而避免了大量的控制分组泛洪,在树结构刷新过程中,下游节点只需要向原父节点和新的父节点各发送一个MACT消息,分别用于剪枝和激活新路由,其开销远小于路由修复过程中的分组泛洪,因而能获得较低的控制分组开销。
系统实施例
另一方面,本发明还提供了一种基于网络按需距离矢量多播路由的多播树更新系统实施例,包括组通知消息泛洪模块70和更新模块72。组通知消息泛洪模块70用于组领导周期性地在全网中泛洪组通知消息GRPH;更新模块72用于节点基于接收的所述组通知消息GRPH对多播树进行更新。
其中,更新模块72进一步为:
节点收到所述组通知消息GRPH后,在标志位为GRPH_NO_FLAG时,若该节点从相同节点接收过相同的GRPH消息,则丢弃该组通知消息GRPH;若该节点从相同节点没有接收过该GRPH消息,则更新节点的组领导表,判断收到组通知消息GRPH的该节点是否为组成员:
i)若是组成员,1)在多播路由表中的组领导地址等于该GRPH消息中的组领导地址时,判断该GRPH消息是否来自于该节点的父节点时,11)若是来自于父节点,更新多播路由表信息,并转发该GRPH消息;12)若不是来自于父节点,判断GRPH消息携带的到组领导的跳数是否小于多播路由表中记录的到组领导的跳数,若小于,则更新多播树结构,即向原父节点发送剪枝消息MACT_P,向新的分支发送激活消息MACT_J;若不小于,则丢弃该GRPH消息;2)在多播路由表中的组领导地址不等于该GRPH消息中的组领导地址时,判断该节点是否为组领导,若是,则进行多播树的合并;若否,则向组领导发送RREQ_R消息,请求进行多播树的重构;
ii)若不是组成员,则将标志位M置位,并转发该GRPH消息。
需要说明的是,系统实施例与方法实施例的原理相同,相关之处不再赘述,互相参照即可。
以上对本发明所提供的一种基于网络按需距离矢量多播路由的多播树更新方法及系统进行详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
机译: 无线传感器网络中Ad hoc按需距离矢量路由协议的路由修复
机译: 在分布式无线通信网络中发现具有至少最小可用资源集的按需点播距离矢量路由的方法
机译: 在分布式无线通信网络中发现具有至少最小可用资源集的按需点播距离矢量路由的方法