发布时间:2020-03-10 16:57:56
组播是一种一对多(或者多对多)的数据通信方式。使用组播通信,发送方只要发送一个信息包,所有目的地将收到同一信息包,每个链路上只有一个信息包的拷贝。实现组播的关键是设计合理的组播路由算法构造一棵组播通信树。评价一个组播路由算法的重要指标包括组播树代价(cost)、时延(delay)和可扩展性(sealability)等。移动IP出现后,原有的组播路由算法受到了严重的挑战,不再适合于新的移动Internet环境。因此研究移动环境下的组播路由问题成为移动IPv6研究的一个重要方面。
1.集中式移动IP路由算法
为了解决组播在移动IP中应用的问题,IETF在移动IPv4和移动IPv6协议中提出了双向隧道BT和远程签署RS两个方案来解决这些问题。
双向隧道BT算法中,当MN移动到外地子网时,在外地子网获取转交地址,并向家乡代理注册,MN则通过隧道经家乡代理收发组播数据包。可见,在BT方式中,MN的移动切换对其他结点而言是透明的。但BT方式也因此导致了三角路由及路由非最优化,由于隧道路径过长而导致切换时加人时延较大,不同家乡代理的隧道聚焦等问题。
远程签署RS算法中,当MN移动到外地子网时,通过外地子网上的接人路由器(access router,AR)申请加人组播组,直接从外地子网接收组播数据,因而它的组播路径是最优化的。但MN切换时RS方式导致频繁的组播路径重构,由于切换时延较大导致严重的丢包率。
.为了克服BT算法中的隧道聚焦和包复制等问题,Vineet Chikamane等设计了一个MoM算法。主要是在MIP(mobile IP)协议体系中引入了一个DMSP(de-signed multicast servlce provider)实体,DMSP是从多个HA中按一定程序选出的-个HA,避免了多个HA同时向同一个FA转发组播数据包等情况,从而解决了BT的隧道聚焦和包复制问题;但并没有改变BT利用HA带来的路由非最优化、时延过长等问题,而且带来了DMSP选举的问题。
为了在组播树路由优化和组播树的重构频率方面达到一个折中,C.R.Lin和K.M.Wang提出了一个RBMoM(range based mobile multicast)算法。主要是在MIP的体系结构中引入一个组播家乡代理MHA(multicast home agent),并提出了服务范围的概念。通过MHA的选择来优化路由,通过服务范围的选择来减少重构频率。主要问题是服务范围的不确定性及引人了MHA的选举。
为了减少移动切换时延和降低移动IP组播的丢包率,J.Wu等提出了一个基于MSA(mobility Support agent)的组播路由算法。MSA是移动结点漫游所在外部子网中的一个路由器,它负责在切换发生时向即将切换到的外部子网提前预注册(pre-registration),从而减少切换时的加人时延和降低丢包率。这个算法主要的问题是要预测移动结点的切换事件及其切换方向。
M.S.Shin等提出了一个MMA(multicast bymulticast agent)的组播方式,用于解决切换时的丢包问题。主要是引入了MF(multicast forwarder)实体,MF是一个组播转发路由器。当切换出现时,MF负责缓冲切换过程中的组播数据包,然后转发给新的子网,实质是切换前、后子网间通过MF的协作来避免丢包。
切换给移动组播带来了较多的问题,除了采用优化切换的策略外,C.L.Tan等提出了MobiCast组播路由策略。该方式主要是基于“分层”的思想,将网络分为Macro和Micro两层,每一个Micro引人了一个DFA(domain foreign agent)实体,管理若干个子网,MN在同一Macro的不同Micr。层子网间移动时不需要启动组播树重构,避免了切换;当MN在不同Macro间子网间移动时DFA代表移动结点加人组播树,重构组播树。
2,分布式移动IP路由算法
以上算法基本上属于集中式的算法,为了优化组播树的代价和减少结点切换时的加人时延,可以采用基于分布式策略设计的一个移动IP组播路由算法BNSBMR(bone node set based multicast r。utmg algorithm),该算法基于移动IPv6的“骨干结点集”的思想。分布式算法相对集中式算法更适合于大规模的网络环境,有利于实现算法的可扩展性;特别是在移动IP环境下,分布式更具有独特的优势,路由进程的运行只依赖于移动结点,而不需要网络中所有结点的参与,简化了移动IP的运行,进一步优化了移动结点切换性能和全局的网络管理性能。下面详细介绍该算法。
(1)基本概念
网络可用图G(V,E)来表示,其中V为网络节点集,E为网络的边集合,则网络节点数为b=|V|,设组播信息源为S,目的节点集D,D∈V,目的节点数为m=
其中Ti,指结点i停留在某子网的连续时间,△为时间下限。
显然,若某个目的结点为静态结点,则其接入路由器为骨干结点。若用Rout-er(i)表示组播目的结点i所在子网的接入路由器,则骨干结点集可表示为:
Nb={Router(i)i为静态目的结点}U{Router(i)|i为移动目的结点,且Ti>△)
在移动IPv6协议中,主要是引人了两个实体:移动结点MN和家乡代理HA。设Subnet 1为移动结点MN的家乡子网,HA为其家乡代理;Subnet 2、Subnet 3分别为外地子网。当MN在子网Subnet 2和Subnet 3之间移动时将发生切换(handover),并将在其接人路由器处获取转交地址CoA,重构组播树或者从家乡代理HA加人组播树。从移动IPv6模型可以看出,移动组播路由问题主要包括两个方面:其一是如何在移动IP环境下构建优化的组播树;其二是如何优化移动结点的“切换”性能。
(2)算法基本思想
当组播源发起组播会话时对当前所有组播目的结点生成一棵组播树T和骨干结点集合Nb,组播树T实现组播信息的转发;骨干结点集Nb是以后移动结点发生切换时进行组播树重构和路径优化的根据和基础。
如果某移动结点i发生切换,则其通过搜索骨干结点集几中的所有结点,找到某个j∈Nb使得i和j的距离是i到骨干结点集Nb的最小距离。通过骨干结点集,一方面降低了组播树的代价,优化了路由路径,并使得移动结点犭能找到一条相对较短的路径加人组播树,从而减少了加人时延;另一方面,根据定义3骨干结点集的定义,骨干结点是组播树中相当稳定的那些接人路由器,因而使得移动切换发生时组播树重构保存了较大的稳定性。
另一方面,骨干结点集不是固定的共享树;按照骨干结点集的定义,当公式(4.1)满足时,移动结点的骨干结点维护事件就会触发并修改骨干结点集,从而保存骨干结点集的正确性和优越性。
大客户
微信
置顶