发明名称 一种基于覆盖网络组播系统的动态节点高效管理方法
摘要 本发明公开了一种基于覆盖网络组播系统的动态节点高效管理方法,该方法采用快速灵活的节点加入和优化机制;当节点加入时,从组播树的根节点开始,在满足一定的QoS性能的条件下,往远离根节点的方向偏移;当完成加入后,周期性地利用局部信息进行动态优化。组播方法可以快速的构建组播路由,具有较好的QoS性能,同时通过节点的带约束条件的偏移和动态优化,既保证了延时特性,又在一定程度上优化网络资源利用率,并可以适应网络动态变化。
申请公布号 CN101931543A 申请公布日期 2010.12.29
申请号 CN201010272200.4 申请日期 2010.09.03
申请人 浙江大学 发明人 刘奇;赵问道;华能威
分类号 H04L12/18(2006.01)I;H04L12/56(2006.01)I 主分类号 H04L12/18(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 周烽
主权项 1.一种基于覆盖网络组播系统的动态节点高效管理方法,其特征在于,包括以下步骤:(1)覆盖网络组播系统初始化:覆盖网络是构建在底层网络之上的虚拟网络。假设底层IP网络能够提供透明的端到端单播路由,网络链路是对称的,那么覆盖网络组播的网络模型可以用一个完全无向图G(V,E)来描述,其中V是节点的集合,表示覆盖网节点,E=V×V是边的集合,表示覆盖网虚拟链路,每一条虚拟链路对应于一条底层的单播路径,包含一条或者多条物理链路。对于节点v∈V,定义如下参数:节点的带宽Bv(v)∈R<sup>+</sup>,表示节点的最大带宽容量;节点的代价C<sub>v</sub>(v)∈R<sup>+</sup>,表示节点的费用开销等。对于边e∈E,定义如下参数:边的带宽B<sub>e</sub>(e)∈R<sup>+</sup>,表示虚拟链路的带宽容量;边的延时D<sub>e</sub>(e)∈R<sup>+</sup>,表示虚拟链路的端到端延时;边的代价C<sub>e</sub>(e)∈R<sup>+</sup>,表示虚拟链路占用的网络资源等。(2)动态节点加入覆盖网络组播系统:假设节点可以通过第三方机制获得组播树根节点r的信息。当一个新的节点v要加入组播组时,它首先将根节点r作为当前父节点,记为p<sub>cur</sub>。然后节点v向p<sub>cur</sub>发送查询请求,节点p<sub>cur</sub>收到请求后,发送响应,并将自身节点信息以及当前子节点列表V<sub>c</sub>返回给v;v在获得上述信息后,将V<sub>c</sub>作为其潜在父节点列表,记为V<sub>po</sub>,计算其当前到根节点的延时,记为D<sub>cur</sub>(v),探测其到各个潜在的父节点p的往返延时D<sub>e</sub>(v,p),其中p∈V<sub>po</sub>;根据探测到得延时信息,计算v通过p节点可以预计的到根节点r的延时D<sub>try</sub>(v,p,r)=D<sub>e</sub>(v,p)+D<sub>cur</sub>(p),其中p∈V<sub>po</sub>。判断是否存在满足条件<img file="FSA00000256565900011.GIF" wi="595" he="101" />的潜在节点p,即节点v通过节点p预计获得的到根节点的延时与当前延时D<sub>cur</sub>(v)之差的归一化值是否小于K,K为阈值。将这个节点p压入栈,继续查询是否存在其他满足条件的潜在父节点,并将符合的节点压入堆栈直到栈的规模达到阈值M或者查询完成,然后从中取出使得<img file="FSA00000256565900012.GIF" wi="224" he="101" />最小的节点p<sub>b</sub>,将其设为当前父节点p<sub>cur</sub>=p<sub>b</sub>,重新发送查询请求。重复上面的加入查询和探测过程。若不存在满足条件的潜在父节点,则向p<sub>cur</sub>发送加入请求报文,p<sub>cur</sub>接纳其为子节点,发送确认报文,并更新其子节点列表信息。(3)覆盖网络组播系统进行节点优化:节点v周期性与父节点p交换信息:节点v向父节点p报告自己的更新信息,父节p点发送其子节点列表V<sub>c</sub>信息和其父节点p<sub>g</sub>的信息。与节点加入的过程类似,节点v将这些节点作为潜在的可优化节点,记为集合V<sub>op</sub>,探测通过这些节点可以获得到根节点的预计延时信息D<sub>try</sub>(v,p<sub>op</sub>,r),若(D<sub>cur</sub>(v)-D<sub>try</sub>(v,p<sub>op</sub>,r))/D<sub>cur</sub>(v)>δ,其中参数δ>0,则更新p<sub>op</sub>作为其当前父节点,向当前父节点p发送离开报文,收到确认后,向p<sub>op</sub>发送加入报文,更新节点信息。(4)组播节点的离开和失效:当组播成员节点v正常离开时,节点需要发送离开报文给它的父节点和各个子节点。父节点在收到报文后更新子节点列表信息;各个子节点在收到报文后以v的父节点,即自身的祖父节点作为新的当前父节点,然后重新运行节点加入的过程。当组播成员节点v非正常离开或者失效时,由于父节点和子节点之间会周期性的交换信息,v的父节点会在周期内检测到子节点失效,更新其子节点列表。节点v的子节点同样会周期内检测到父节点的失效,然后以祖父节点作为当前节点,重新运行节点的加入过程。(5)覆盖网络组播组信息管理:FQMP采用分布式的方法构造组播路由,每个节点都只需要维护局部的信息,而不是整个组播树的信息,这大大增强了组播的拓展性。由以上的节点加入,离开和动态优化过程可知,节点需要维护以下信息:(A)自身节点信息,包括到根节点的延时D<sub>cur</sub>等;(B)组播树上的邻居节点信息,包括子节点列表V<sub>c</sub>,父节点信息;(C)在动态优化和节点失效处理过程中,节点还需要维护一部分的潜在优化节点列表V<sub>op</sub>,该列表包括祖父节点和其父节点的兄弟节点,也称为叔节点。假设当前节点的度为d<sub>T</sub>(v),当前父节点的度为d<sub>T</sub>(p),则节点维护的信息量为o(d<sub>T</sub>(v)+d<sub>T</sub>(p))。
地址 310027 浙江省杭州市西湖区浙大路38号