CN103888910B - 组播树的更新方法以及*** - Google Patents
组播树的更新方法以及*** Download PDFInfo
- Publication number
- CN103888910B CN103888910B CN201410125962.XA CN201410125962A CN103888910B CN 103888910 B CN103888910 B CN 103888910B CN 201410125962 A CN201410125962 A CN 201410125962A CN 103888910 B CN103888910 B CN 103888910B
- Authority
- CN
- China
- Prior art keywords
- multicast
- mag
- source
- mag2
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000011144 upstream manufacturing Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 abstract description 69
- 230000002457 bidirectional effect Effects 0.000 abstract description 53
- 230000008569 process Effects 0.000 abstract description 35
- 230000027455 binding Effects 0.000 abstract description 23
- 238000009739 binding Methods 0.000 abstract description 23
- 101100356345 Homo sapiens RETREG2 gene Proteins 0.000 description 183
- 101150009428 MAG2 gene Proteins 0.000 description 183
- 102100024733 Reticulophagy regulator 2 Human genes 0.000 description 183
- JQAACYUZYRBHGG-QHTZZOMLSA-L magnesium;(2s)-5-oxopyrrolidine-2-carboxylate Chemical compound [Mg+2].[O-]C(=O)[C@@H]1CCC(=O)N1.[O-]C(=O)[C@@H]1CCC(=O)N1 JQAACYUZYRBHGG-QHTZZOMLSA-L 0.000 description 183
- 102100024017 Glycerol-3-phosphate acyltransferase 3 Human genes 0.000 description 111
- 101000904259 Homo sapiens Glycerol-3-phosphate acyltransferase 3 Proteins 0.000 description 111
- 230000033001 locomotion Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- RXACEEPNTRHYBQ-UHFFFAOYSA-N 2-[[2-[[2-[(2-sulfanylacetyl)amino]acetyl]amino]acetyl]amino]acetic acid Chemical compound OC(=O)CNC(=O)CNC(=O)CNC(=O)CS RXACEEPNTRHYBQ-UHFFFAOYSA-N 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000004087 circulation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- -1 i.e. Proteins 0.000 description 1
- 238000010030 laminating Methods 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种组播树的更新方法以及***,主要技术方案包括:第一MAG接收组播源从当前接入的第一MAG切换到第二MAG之前发送的切换预告消息;第一MAG根据切换预告消息中携带的第二MAG的标识,建立与第二MAG之间的双向隧道;并根据确定的切换后组播模式以及建立的双向隧道,组播来自组播源的组播数据,其中,切换后组播模式为所述组播源切换到所述第二MAG后采用的组播模式。采用该技术方案,通过预先建立双向隧道,在组播源与第二MAG之间进行绑定更新、认证等过程时,第一MAG可以通过建立的该双向隧道传输组播数据,从而减少了由于组播源在MAG之间切换而导致的组播服务中断时延。
Description
本发明申请是申请日为2010年12月20日、申请号为201010597699.6、发明名称为“传输组播数据的方法、组播树的更新方法以及***和装置”的发明申请的分案申请。
技术领域
本发明涉及移动通信技术领域,尤其涉及一种组播树的更新方法以及***。
背景技术
近年来,无线技术的成熟使得越来越多的人通过无线设备连接到网络中,并希望能够随时随地的对网络进行访问。支持移动通信成为网络发展的必然要求,已有大量研究关注于网络如何为移动提供支持,其中IETF(Internet Engineering Task Force,Internet工程任务组)的PMIPv6(代理移动IPv6)作为一种局部移动性管理技术,将移动性管理功能从终端侧转移到网络侧,网络代表主机来负责管理IP移动性,网络中的移动实体负责跟踪主机的移动并且初始化所要求的移动信号传输。PMIPv6在不需要主机参与任何移动性相关信号传输的前提下实现了主机的IP移动性,从而大大减轻了终端的负担,同时方便了集中控制。
另一方面,组播技术被越来越广泛地应用到各个领域。组播是一种点到多点的信息传输方式,要求数据能从一个源节点同时传输到多个目的节点,目的节点构成一个特定的节点集合,称为组或者群组。由于组播技术具有网络利用率高、减少骨干网络拥塞、节省资源、可扩展性强等优点,在视频会议、文件分发、实时信息发布、IP电视等新型网络应用中发挥了很大的作用。在一个典型的移动IPTV(交互式网络电视)应用中,大量用户可以通过组播技术获得网络分发的音频/视频流数据。
随着移动通信技术的发展,移动与组播的结合成为一项迫切的需求。在移动环境中,无线链路的链路带宽有限且有着较高的错误率,同时,移动节点的能量供应、处理器能力等都是非常有限的,这对传统组播技术提出了新的挑战。传统的组播协议基于固定的网络,有线的通信方式,不能满足移动性的要求。移动组播架构不仅要处理移动主机位置的动态改变,而且要处理组播组中动态变化的组成员关系。总体来说,移动环境中的组播架构需要满足以下要求:节点切换时保证组播对话的无缝连续性;保证数据包的最佳路由;支持组播通信中的流切换(不同的流有不同的特性和标识);避免组播解决方案特殊化(只能支持组播,不支持单播);能够处理丢包、重复副本;组播数据流动态适应当前网络的状况(调整发送速率等);易于部署;加快路由协议的收敛速度等。
目前,IETF工作组对于支持组播源移动的研究工作仍处于初始阶段,提出了在PMIPv6中支持组播源移动性的方案。这个方案提出了在PMIPv6中支持共享树(RendezvousPoint Tree,RPT)和最短路径树(Shortest Path Tree,SPT)的方法。
方案提出,当使用RPT模式传输组播数据时,使用LMA(本地移动锚点)作为组播汇聚点(Rendezvous Point RP),由它来回复组播接收节点发送的加入消息,建立LMA到组播接收节点的最短路径组播树。组播数据由组播源发送到LMA,再由LMA通过组播树转发到组播接收节点。这种模式下,当组播源位置移动时,不需要重新建立LMA到组播接收节点之间的最短路径树,组播树比较稳定。但是,由于通过LMA转发的路径并不是组播源到组播接收节点之间的最优路由,所以这种模式会引入很大的延时和网络负担。
RPT模式下,当组播源MN进入PMIPv6域后,执行的流程如图1所示,主要包括如下步骤:
步骤101、建立移动接入网关MAG1与组播源MN之间的链路,组播源MN在RS(RouterSolicitation)消息中包含“S”=1和“J”=1,标识自己是组播源并且选择RPT模式。
步骤102、MAG1确定组播源MN接入后,发送扩展的PBU消息到LMA,建立MAG1和LMA之间的双向隧道。
该步骤102中,LMA接收到PBU消息后,解析该PUB消息中包含的扩展信息,并且回复组播加入消息。
步骤103、组播数据按照PMIPv6中定义的基本方式由组播源MN发送到LMA。
该步骤中,在LMA和组播接收节点之间建立SPT,组播数据按照组播路由协议在LMA和组播接收节点之间传输。
步骤104、组播源MN移动到MAG2,组播源MN通过RS消息把组播相关信息发送到MAG2。
步骤105、更新LMA和MAG2之间的双向隧道。
该步骤105中,更新LMA和MAG2之间的双向隧道的过程对LMA和组播接收者之间的SPT不造成影响。
在组播源MN切换后,组播数据继续传输。组播源的移动对组播接收者不产生影响。
方案提出,当使用SPT模式传输组播数据时,由组播源回复组播接收节点发送的加入消息,直接建立组播源到组播接收节点的最短路径组播树,组播数据由组播源直接通过建立的组播树发送到组播接收节点。这种模式下,由于路由的最优化,网络延迟比较小,但是它会引起路由器存储负担过重、组播树不稳定的问题。当组播源在网络中移动时,组播树需要频繁地进行更新。
SPT模式下,当组播源MN进入PMIPv6域后,执行的流程如图2所示,主要包括如下步骤:
步骤201、建立MAG1与组播源MN之间的链路,组播源MN在RS消息中包含“S”=1和“J”=0,标识自己是组播源并且选择SPT模式。
步骤202、MAG1确定组播源MN接入后,发送扩展的PBU消息到LMA,建立MAG1和LMA之间的双向隧道。
该步骤202中,LMA接收到PBU消息后,解析该PBU消息中包含的扩展信息,但并不回复组播加入消息。
步骤203、组播数据按照PMIPv6中定义的基本方式由组播源MN发送到LMA。
该步骤203中,当LMA把组播加入消息重定向给组播源MN时,组播源和组播接收节点之间的SPT开始建立,接下来的组播数据将按照优化后的路径在组播源和组播接收节点之间传输。
步骤204、组播源MN移动到MAG2后,组播源MN通过RS消息把组播相关信息发送到MAG2。
步骤205、更新LMA和MAG2之间的双向隧道。
该步骤205中,更新LMA和MAG2之间的双向隧道时,也需要更新组播源和组播接收节点之间的SPT,因为组播树的根节点移动到了一个不同的位置。
方案中规定,组播源根据移动速度来进行模式的选择。当组播源在网络中以较小的速率移动时,采用SPT的方式,在组播源和组播接收节点之间建立最短路径组播树;当组播源在网络中的移动速度较快时,采用RPT的方式,由LMA充当汇聚节点,在LMA和组播接收节点之间建立最短路径组播树。
现有技术的缺点在于不能支持组播源的快速切换,组播源在PMIPv6域中两个MAG之间进行切换时存在较大的延迟。现有方案中规定,当组播源从旧的MAG(即MAG1)移动到新的MAG(即MAG2)时,需要进行组播源与MAG2之间的绑定更新、认证等一系列过程,尤其在SPT模式下,还需要执行组播树重建过程。在这些过程完成后,才能继续进行组播数据的分发,这会使组播服务产生很长时间的中断。由于组播服务一对多的特性,组播源的切换延迟将会影响到组内的所有用户,这显然不能满足组播会话的无缝连续性,对具有实时性要求的应用的影响尤为严重。
发明内容
有鉴于此,本发明实施例提供了一种组播树的更新方法以及***,采用该技术方案,减少了由于组播源在移动接入网关之间切换而导致的组播服务中断时延,保证了PMIPv6***中组播业务的实时性。
本发明实施例通过如下技术方案实现:
根据本发明实施例的一个方面,提供了一种组播树的更新方法,包括:
第一组播节点接收第一移动接入网关MAG发送的数据包;
在确定所述数据包中携带组播源切换指示后,构建用于生成组播树的加入Join消息,并将所述数据包中携带的第二MAG的地址信息携带在所述Join消息中转发;
接收到所述Join消息的第二组播节点根据所述Join消息携带的第二MAG的地址信息更新组播路由,并继续转发所述Join消息直至已根据所述第二MAG的地址信息更新组播路由后的组播节点接收到所述Join消息。
根据本发明实施例的一个方面,提供了一种组播树的更新***,包括:
第一组播节点,用于接收第一移动接入网关MAG发送的数据包,在确定所述数据包中携带组播源切换指示后,构建用于生成组播树的加入Join消息,并将所述数据包中携带的第二MAG的地址信息携带在所述Join消息中转发;
第二组播节点,用于接收所述第一组播节点转发的所述Join消息,根据所述Join消息携带的第二MAG的地址信息更新组播路由,并继续转发所述Join消息直至已根据所述第二MAG的地址信息更新组播路由后的组播节点接收到所述Join消息。
通过本发明实施例提供的上述至少一个技术方案,第一MAG接收组播源发送的包括第二MAG标识的切换预告消息,根据该切换预告消息中包括的第二MAG标识,建立与该第二MAG标识对应的第二MAG之间的双向隧道;并根据确定的切换后组播模式以及建立的双向隧道,组播来自组播源的组播数据,其中,切换后组播模式为组播源切换到第二MAG后采用的组播模式。采用该技术方案,由于切换预告消息在组播源从当前接入的第一MAG切换到第二MAG之前发送,通过预先建立双向隧道,在组播源与第二MAG之间进行绑定更新、认证等过程时,第一MAG可以通过建立的该双向隧道传输组播数据,从而减少了由于组播源在MAG之间切换而导致的组播服务中断时延,保证了PMIPv6***中组播业务的实时性以及连续性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为现有技术提供的RPT模式下组播源进入PMIPv6域的切换流程图;
图2为现有技术提供的SPT模式下组播源进入PMIPv6域的切换流程图;
图3为本发明实施例一提供的传输组播数据的方法流程图;
图4为本发明实施例一提供的MAG1与MAG2之间建立双向隧道的流程图;
图5为现有技术中定义的HI消息的基本消息格式示意图;
图6为本发明实施例一提供的扩展后的HI消息的基本消息格式示意图;
图7为本发明实施例一提供的组播源切换选项的格式示意图;
图8为现有技术中定义的HAck消息的基本消息格式示意图;
图9为本发明实施例一提供的扩展后的HAck消息的消息格式示意图;
图10为本发明实施例一提供的RPT模式下传输组播数据的流程图;
图11为本发明实施例一提供的SPT且不更新组播树模式下传输组播数据的流程图;
图12为本发明实施例一提供的SPT且组播树预更新模式下传输组播数据的流程图;
图13为本发明实施例一提供的组播源由接入点1移动到接入点2时的组播树示意图;
图14为本发明实施例一提供的组播树更新的流程图;
图15为本发明实施例一提供的更新组播路由的流程图;
图16为本发明实施例一提供的IPv6逐跳选项头的格式示意图;
图17为本发明实施例一提供的组播源切换选项的格式示意图;
图18为本发明实施例一提供的进一步更新组播路由器的流程图;
图19为本发明实施例二提供的传输组播数据的装置示意图一;
图20为本发明实施例二提供的传输组播数据的装置示意图二;
图21为本发明实施例二提供的传输组播数据的装置示意图三;
图22为本发明实施例三提供的传输组播数据的***示意图;
图23为本发明实施例四提供的组播树更新***示意图。
具体实施方式
为了给出保证PMIPv6***中组播业务的实时性以及连续性的实现方案,本发明实施例提供了一种传输组播数据的方法、组播树的更新方法以及***和装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例一
本发明实施例一首先提供了一种传输组播数据的方法,通过该方法能够解决移动组播源在PMIPv6***中两个MAG之间切换时组播中断过长的问题,以达到在尽可能小的时延内恢复组播服务的目的;本发明实施例一还提供了一种组播树的更新方法,通过该方法解决了PMIPv6中组播源移动时SPT的预更新问题,在对组播接收者透明的前提下实现了组播源切换完成之前预先更新SPT的目的。
本发明可以应用于同一个PMIPv6***内组播源MN切换的场景,例如,组播源MN由当前接入的MAG1移动到同一个PMIPv6域中的MAG2。在对本发明实施例一提供的传输组播数据的方法进行详细描述之前,首先对本发明实施例中提出的切换后组播模式进行详细说明,此处,切换后组播模式即组播源MN在接入MAG2以后采用的组播模式。
本发明实施例提供了三种切换后组播模式,该三种切换后组播模式分布为:
RPT模式;
SPT且不更新组播树模式;
SPT且组播树预更新模式。
以下对该三种切换后组播模式进行详细说明:
(1)RPT模式
组播源MN在接入MAG1时采用RPT模式传输组播数据,即使用LMA作为RP,组播数据首先发送到LMA,再由LMA传输给各组播接收者。在该情况下,当该组播源MN切换到MAG2后,仍然需要使用RPT模式,即组播源MN接入MAG2以后采用的组播模式为RPT模式。这种模式下MAG1需要把RP地址传递给MAG2,MAG2需要构建到RP的路径。
根据该RPT模式,在组播源与MAG2建立连接且完成绑定更新等过程之前,组播数据可以通过MAG1以及MAG2之间建立的双向隧道转发,即组播数据发送到组播接收者对应的组播接收节点时通过的路径为:
Source(即组播源)→MAG2→MAG1→LMA(RP)→组播树传输到组播接收节点。
当组播源与MAG2建立连接且完成绑定更新等过程之后,组播数据发送到组播接收者对应的组播接收节点时通过的路径为:
Source→MAG2→LMA(RP)→组播树传输到组播接收节点。
(2)SPT且不更新组播树模式
组播源MN在接入MAG1时采用SPT模式传输组播数据,若此时组播源MN的移动速度较快(例如,大于设定阀值)时,当该组播源MN切换到MAG2后,需要继续使用SPT模式传输组播数据,但不需要更新组播树,该切换后组播模式称为SPT且不更新组播树模式。
根据该SPT且不更新组播树模式,可以通过MAG1以及MAG2之间建立的双向隧道转发,即组播数据在组播源与MAG2建立连接且完成绑定更新等过程之前以及之后,组播数据发送到组播接收者对应的组播接收节点时通过的路径均为:
Source→MAG2→MAG1→组播树。
采用该SPT且不更新组播树模式,MAG1和MAG2之间的隧道不随着组播源与MAG2建立连接且完成绑定更新等过程的结束而撤销,组播源发往外界的数据一直通过该双向隧道传输到组播接收节点。采用该模式可以减少组播源MN移动速度过快在MAG之间切换而导致的频繁拆、建组播树,从而避免网络资源浪费,提高组播转发效率。
(3)SPT且组播树预更新模式
组播源MN在接入MAG1时采用SPT模式传输组播数据,若此时组播源的移动速度比较慢(例如,不大于设定阀值)时,当该组播源MN切换到MAG2后,需要继续使用SPT模式传输组播数据,此时,需要预更新组播树,该切换后组播模式称为SPT且组播树预更新模式。
这种模式下,MAG1在接收到MAG2反馈的建立双向隧道的回复消息后、需要发起组播树的预更新过程。该组播树的预更新过程主要包括:MAG1在组播数据包中携带组播源切换选项,该选项中包括组播源切换指示、MAG2的地址等信息。随着组播数据包在旧的组播树上的传递,组播源选项向组播树中的路由器通告即将发生的组播源切换、以及切换后的MAG2的地址,从而触发组播树的预更新。此处,旧的组播树指组播源MN接入MAG1时建立的用于传输组播数据的组播路径。当新的组播树更新完毕、且组播源MN在MAG2完成绑定更新等过程之后,组播数据通过新的组播树发送到组播接收节点。此处,新的组播树指组播源MN接入MAG2时建立的用于传输组播数据的组播路径。
根据该SPT且组播树预更新模式,在组播源与MAG2建立连接且完成绑定更新等过程之前,组播数据可以通过MAG1以及MAG2之间建立的双向隧道转发,即组播数据发送到组播接收者对应的组播接收节点时通过的路径为:
Source→MAG2→MAG1→组播树(旧的组播树)。
在组播源与MAG2建立连接且完成绑定更新等过程之后,组播数据发送到组播接收者对应的组播接收节点时通过的路径为:
Source→MAG2→组播树(新的组播树)。
基于以上定义的切换后组播模式以及相应的数据传输路径,本发明实施例一提供的传输组播数据的方法如图3所示,主要包括如下步骤:
步骤301、MAG1接收组播源MN从当前接入的MAG1切换到MAG2之前发送的切换预告消息,该切换预告消息携带MAG2的标识信息。
步骤302、MAG1根据该切换预告消息中携带的MAG2的标识,建立与MAG2之间的双向隧道。
步骤303、根据确定的切换后组播模式以及建立的双向隧道,组播来自组播源的组播数据。
该步骤303中,根据确定的切换后组播模式不同,该步骤303采用的传输组播数据的具体方式不同,该过程将在后续实施例中详细描述,此处暂不描述。
至此,在组播源由于移动而需要改变接入的MAG改变时对应的传输组播数据的流程结束。
上述流程在具体实现时,主要应用于组播源MN由于移动需求需要切换MAG时传输组播数据的场景。具体地,组播源MN需要从MAG1切换到MAG2时,MAG1与MAG2之间需要建立双向隧道,该建立双向隧道的流程如图4所示,主要包括如下步骤:
步骤401、未发生切换之前,组播源MN连接在MAG1上,按照采用的组播模式传输组播数据。
该步骤401中,若采用RPT模式传输组播数据,组播数据由组播源MN发送到MAG1,然后传输到LMA(LMA作为RP汇聚点)、由LMA转发到组播接收者;若采用SPT模式传输组播数据,组播数据直接根据建立的SPT由组播源转发到组播接收者。
步骤402、组播源MN确定即将发生切换,向MAG1报告组播源MN的ID以及MAG2的ID。
该步骤402中,组播源MN确定即将发生切换,即确定即将从当前接入的MAG1切换到MAG2,也就是说组播源MN从MAG1所在网络的覆盖区域移动到MAG2所在网络的覆盖区域。
步骤403、MAG1发送扩展后的HI消息(Handover Initiate Message,切换初始化消息)给MAG2。
该步骤403中,MAG1发送的HI消息中包括组播源切换的指示信息、组播源标识、切换后组播模式的指示信息、组播组地址以及组播源家乡地址。进一步地,在该HI消息指示的组播模式为RPT模式时,该HI消息还进一步包括RP地址。
步骤404、MAG2接收到HI消息后,发送HAck消息(Handover Acknowledge Message,切换回复消息)给MAG1。
该步骤404中,HAck消息中包含MAG2是否接受组播源切换的指示。实际应用中,MAG2可能由于本地策略、不支持组播源切换、负载过重等原因拒绝组播源切换。若MAG2同意组播源切换,则建立MAG1与MAG2之间的双向隧道。
至此,MAG1与MAG2之间建立双向隧道的流程结束。
进一步地,本发明优选实施例中,若确定切换后的组播模式为RPT模式,则MAG2在接收到MAG1发送的HI消息后,可以预先根据该HI消息中包括的RP地址,更新其与该RP对应的LMA之间的组播路径。通过MAG2与LMA之间的组播路径的预更新,进一步缩短了组播源切换MAG后引起的组播时延。
本发明实施例中,上述流程中涉及的HI消息以及HAck消息为扩展后的消息,以下针对HI消息以及HAck消息的扩展方式进行详细说明。
本发明扩展后的HI消息中增加了用于表示本次切换为组播切换且为组播源切换的指示位。此外,扩展后的HI消息还包含组播源MN的标识和一个扩展的移动选项(Mobilityoptions)。该移动选项包括:切换后组播模式选择位(对应RPT模式、SPT且不更新组播树模式以及SPT且组播树预更新模式之一),组播组地址(可选),RP地址(可选)、组播源家乡地址(可选)。
RFC5568定义了FMIPv6协议用于单播节点的快速切换的方案,协议中定义了HI/HAck消息,用于在旧的接入路由器和新的接入路由器之间建立隧道、传输上下文,如组播源MN的标识、Ipv4家乡地址等。IETF Mipshop工作组对PMIPv6中的快速切换方案进行了研究,对FMIPv6协议进行了扩展,重新定义了HI/HAck消息,本发明实施例在此基础上进一步对HI/HAck消息进行了扩展,用于实现本发明实施例中建立MAG1以及MAG2之间双向隧道的目的。
具体地,对HI消息以及HAck消息的扩展说明如下:
(1)HI消息的扩展说明
HI消息由MAG1发送给MAG2,用于发起组播源MN的切换过程。
现有技术中定义的HI消息的基本消息格式如图5所示,对应其中的字段说明如下:
根据本发明实施例提供的技术方案扩展后的HI消息的基本消息格式如图6所示,该扩展后的HI消息在原有HI消息中增加新的标志位M、R,并且在Mobility Options(移动选项)中增加新定义的组播源切换选项来实现。其中:
M位:表示移动组播切换请求。
R位:表示是组播接收者的切换还是组播源的切换。
M=0,R=0:单播节点的快速切换;
M=1,R=1:组播接收者节点的快速切换;
M=1,R=0:组播源的快速切换。
M=0,R=1:不合法。
根据上述定义,当HI消息中的M=1,R=0时,即表示组播源切换,此时,Mobilityoptions中需要包括新定义的组播源切换选项,具体如图7所示,其中,主要包括如下字段:
Option-Code(组播选项),用于表示切换后组播模式,例如,可以定义为:“0“表示切换后组播模式为RPT模式,“1”表示切换后组播模式为SPT且不更新组播树模式,“2”表示切换后组播模式为SPT且组播树预更新模式;
Multicast Address(组播组地址);
Multicast Source Home Address(组播源家乡地址),即组播源发送组播数据包时使用的地址。
RP Address(RP的地址),该字段在Option-Code=0时,即选择RPT模式时存在。
(2)HAck消息的扩展说明
HAck消息由MAG2发送给MAG1,用于对MAG1发送的HI消息进行回复。
现有技术中定义的HAck消息的基本消息格式如图8所示,对应其中的字段说明如下:
域 | 比特 | 描述 |
code | 8 | 指示是否接受HI中提出的切换请求 |
其余域 | 与HI消息中相应域定义相同 |
根据本发明实施例提供的技术方案扩展后的HAck消息的基本消息格式如图9所示,该扩展后的HAck消息在原有HAck消息中增加新的标志位M、R,用于表示对HI消息的回复。其中M、R位的定义与扩展的HI消息中M、R的定义相同,此处不再赘述。
图3所述流程的步骤303中,根据确定的切换后组播模式以及建立的双向隧道,组播来自组播源的组播数据时,根据确定的切换后组播模式的不同,具体处理过程也有所不同,以下针对上述三个不同的组播模式,对该过程进行详细说明。
一、切换后组播模式为RPT模式时传输组播数据的流程
RPT模式下,MAG1需要把RP地址传递给MAG2,MAG2构建到RP的路径。当组播源MN与MAG2建立连接且完成绑定更新等过程之后,组播数据通过路径:Source(即组播源)→MAG2→LMA(RP)→组播树传输到组播接收节点。
如图10所示,RPT模式下传输组播数据,主要包括如下步骤(该流程可接上述图4所述的双向隧道建立的流程):
步骤1001、组播源MN断开与MAG1的连接,开始切换过程(即接入到MAG2)。
步骤1002、组播源MN连接到MAG2,组播数据由组播源MN发送到MAG2,再通过MAG2与MAG1之间的双向隧道传输到旧的组播树上,通过该旧的组播树发送给组播接收者。
此处,旧的组播树即指该组播源MN接入MAG1时用于传输组播数据的组播路径。
步骤1003、MAG2根据现有流程向LMA发送扩展的绑定更新消息(PUB消息),更新MAG2和LMA之间的隧道,请求LMA作为组播源的RP。
步骤1004、组播源MN与RP(LMA)之间的路径更新完成,组播数据开始沿着source(即组播源MN)→MAG2→LMA(RP)→组播树的路径进行转发。
步骤1005、MAG2与MAG1之间的隧道撤销,MAG1向LMA发送解除与组播源MN绑定的PBU消息。
至此,RPT模式下传输组播数据的流程结束。
根据上述流程,在组播源MN接入MAG2后用于组播数据的组播路径建立完成之前,即组播源MN与RP(LMA)之间的路径更新完成之前,MAG1通过建立的双向隧道接收MAG2转发的组播源MN的组播数据,并根据组播源接入时建立的组播路径传输该组播数据。在组播源接入MAG2后用于组播数据的组播路径建立完成之后,则采用MAG2与RP(LMA)之间的路径传输组播数据,并且撤销MAG1与MAG2之间建立的双向隧道。
二、切换后组播模式为SPT且不更新组播树模式时传输组播数据的流程
如图11所示,SPT且不更新组播树模式下传输组播数据,主要包括如下步骤(该流程可接上述图4所述的双向隧道建立的流程):
步骤1101、组播源MN断开与MAG1的连接,开始切换过程。
步骤1102、组播源MN连接到MAG2,组播数据由组播源MN发送到MAG2,再通过MAG2与MAG1之间的双向隧道传输到旧的组播树上,通过该旧的组播树发送给组播接收者。
步骤1103、MAG2向LMA发送PMIPv6正常的绑定更新消息,更新MAG2和LMA之间的隧道。
此时,MAG1和MAG2之间的隧道不撤销,组播源发往外界的数据一直保持由source(组播源MN)→MAG2→MAG1→组播树的路径传输到组播接收节点。
在该SPT且不更新组播树模式下,由于组播源MN的移动速度很快,因此,选择MAG1一直作为组播树的根节点,保持与组播源MN的最新接入的MAG之间建立隧道。当组播源MN再次发送切换时,即从MAG2切换到MAG3,组播源MN将MAG3的地址通知MAG1,MAG1重新建立与MAG3之间的双向隧道,重复上述流程传输MAG3转发的组播源MN的组播数据。在MAG1建立与MAG3之间的双向隧道后,需要撤销与MAG2之间的双向隧道。
在该SPT且不更新组播树模式下,在组播源与MAG2建立连接且完成绑定更新等过程之前以及之后,组播数据发送到组播接收者对应的组播接收节点时通过的路径均为:
Source(组播源)→MAG2→MAG1→旧的组播树。
根据该方式,无需重建组播树,减少了组播树建立的操作。
三、切换后组播模式为SPT且组播树预更新模式时传输组播数据的流程
如图12所示,SPT且组播树预更新模式下传输组播数据,主要包括如下步骤(该流程可接上述图4所述的双向隧道建立的流程):
步骤1201、MAG1发起组播树预先更新的过程,该组播树预更新过程将在后续实施例中详细描述,此处暂不描述。
步骤1202、组播源MN断开与MAG1的连接,开始切换过程。
步骤1203、组播源MN连接到MAG2,组播数据开始由组播源MN发送到MAG2,再通过MAG2与MAG1之间的双向隧道传输到旧的组播树上,通过该旧的组播树发送给组播接收者。
步骤1204、MAG2向LMA发送PMIPv6正常的绑定更新消息。
步骤1205、组播源MN的绑定更新以及组播树的更新均已完成,组播数据开始沿着新的组播树进行转发。
步骤1206、MAG2与MAG1之间的隧道撤销,MAG1向LMA发送解除与组播源MN绑定的PBU消息。
至此,SPT且组播树预更新模式下传输组播数据的流程结束。
根据上述流程,在组播源接入MAG2后用于组播数据的组播路径建立完成之前,MAG1通过建立的双向隧道接收MAG2转发的组播源的数据,并根据组播源接入时建立的组播路径组播该数据。同时,进行组播树的预更新流程,在组播源接入MAG2后用于组播数据的组播路径建立完成之后,则采用新的组播路径(即更新后的组播树)传输组播数据。
以下对本发明实施例所涉及的组播树预更新流程进行详细说明:
组播树预更新过程由MAG1接收到MAG2发送的HAck消息后发起,即MAG1根据组播源接入时建立的组播路径以及MAG2的地址,触发建立该组播源接入MAG2后用于组播数据的组播路径,即触发组播树更新过程。具体地,MAG1在通过双向隧道接收的数据包中或组播源直接发送的数据包中携带组播源切换指示以及MAG2的地址信息,并根据组播源接入时建立的组播路径(即旧的组播树),发送携带组播源切换指示以及MAG2的地址信息的数据包。具体可以在数据包的Ipv6逐跳选项头中携带组播源切换指示以及MAG2的地址信息。
在传统的PMIPv6中,节点在PMIPv6域内移动时IP地址是不发生变化的,那么,当组播源移动到新的MAG之后,它仍然使用相同的IP地址发送组播数据。若***中采用需求驱动、显式加入的方法重建组播树,则由于组播接收节点不知道移动节点发生了切换,那么也就不会重新发送加入消息,这样就没有办法进行组播树重建。而若采用数据驱动、扩散剪枝的方式重建组播树,则通过新的MAG发送出去的组播数据包不能通过RPF检查,这样也没有办法进行组播树重建。针对这个问题,本发明实施例提出了一种PMIPv6环境中更新SPT树的方法。
如图13所示,组播源(source)由接入点1移动到接入点2时分别对应的组播树(即组播路径),其中,路径:接入点1对应的DR→Router1(路由1)→Router2→Router3→DR,代表组播源切换之前的组播树,即组播源接入接入点1时的组播路径;路径:接入点2对应的DR→Router4→Router2→Router3→DR,代表预更新后的组播树,即组播源接入接入点2后的组播路径。由图13可以看出,与组播树相关的路由器可以分为以下四类:
1、在旧的组播树中,但不在新的组播树中,例如Router1。
2、在旧的组播树中,也在新的组播树中,但是接收组播数据的接口发生了改变,例如Router2。
3、在旧的组播树中,也在新的组播树中,并且接收组播数据的接口没有发生改变,例如Router3。
4、不在旧的组播树中,但在新的组播树中,例如Router4。
根据本发明实施例,当MAG1获得MAG2关于支持组播源切换的同意消息(HAck消息)之后,MAG1立即开始启动组播树的预更新过程,不需要等待组播源与MAG2建立连接。这样做的目的是为了能够争取时间尽快地更新组播树,减少组播源等待组播树更新的时间。在现有方法中,组播树的更新势必会影响到旧组播树的使用,新的组播树会导致旧组播树的废弃。而这是组播快速切换所不希望的,因为在预更新组播树的过程中,我们仍希望使用旧的组播树来发送组播数据,以达到减小组播服务停顿时延的目的。
为了克服以上的困难,本发明实施例提供的技术方案中,在进行组播树预更新时,仍然能从旧的组播树上接收数据。为了实现此目的,本发明对组播路由器上保存的(S,G)路由状态进行了扩展,使每个组播源对应的组播路由拥有两个接收组播数据的接口:
数据接收接口Active interface;以及
预切换接口pre-handover interface。
其中:
Active interface是切换之前使用的接收组播数据的接口,即路由器到组播源的旧接入点MAG1的RPF接口。此处,旧接入点指组播源MN在切换前接入的MAG1。在组播树预更新的过程中,路由器一直通过这个接口从旧的组播树中接收组播数据;
Pre-handover interface是路由器到组播源的新接入点MAG2的RPF接口。此处,新接入点指组播源MN在切换后接入的MAG2。在切换发生之前,pre-handover interface设置为空。在预更新的过程中,它被设置为路由器到MAG2的RPF接口。当有组播数据通过此接口到达时,说明新的组播树已经开始工作,此接口升级为Active interface。
另外,本发明实施例中,当叶子路由器(即组播树中的组播节点)发起到MAG2的组播加入请求时,由于组播源的IP地址不变,如果按照普通方式发送加入Join消息就会出现问题。为了能够通知沿途路由器向着MAG2的方向转发此Join消息,路由器需要把Join(S,G)消息封装在以MAG2为目的地址的IP数据包中,此IP数据包的选项头中也需要携带含有组播源切换选项的逐跳选项头。
如图14所示,组播树更新的具体过程,主要包括如下步骤:
步骤1401、切换开始之前,组播树路由器中(S,G)状态的Active interface设置为路由器到组播源的旧接入点MAG1的RPF接口,pre-handover interface设置为空。
步骤1402、MAG1发起组播树预更新过程,向组播数据的Ipv6逐跳选项头中添加本发明扩展的组播源切换选项,选项中包括组播源切换指示及组播源即将接入的MAG2的地址。
该步骤1402中,扩展的组播源切换选项将在后续进行详细说明,此处暂不描述。
步骤1403、当带有组播源切换选项的数据包到达第一组播节点时,第一组播节点构建用于生成组播树的Join消息,并将该数据包中携带的MAG2的地址信息携带在Join消息中转发。
步骤1404、接收到该Join消息的第二组播节点根据该Join消息携带的MAG2的地址信息更新组播路由,并继续转发该Join消息直至成功加入新的组播树,即已根据MAG2的地址信息更新组播路由后的组播节点接收到该Join消息。
该步骤1404中,当Join消息到达MAG2后,如果此时组播源MN还没有连接到MAG2,则MAG2代替组播源MN对该Join消息进行处理,具体处理过程遵照PIM-SM协议(即RFC4601的内容),此处不再详细描述。
完成上述步骤的处理之后,网络中预先建立起了一个以组播源新接入点MAG2为根的组播树,在这棵预更新的组播树中,所有路由器(S,G)状态的pre-handover interface均被设置为路由器到组播源的新接入点MAG2的RPF接口。
至此,组播树更新流程结束。
图14所述流程包括的步骤1403中,第一组播节点将MAG2的地址信息携带在Join消息中转发,具体通过如下过程:
第一组播节点将该Join消息封装在以MAG2的地址为目的地址的数据包中,并在该数据包中携带组播源切换指示;
根据设定的上游邻居路由器地址转发携带组播源切换指示的数据包。
图14所述流程包括的步骤1404中,接收到该Join消息的第二组播节点根据该Join消息携带的MAG2的地址信息更新组播路由,即根据Join消息携带的MAG2的地址信息,将组播路由状态中的Pre-handover Interface设置为到MAG2的RPF接口。具体地,更新组播路由的过程如图15所示,包括如下步骤:
步骤1501、第二组播节点解析Ipv6报文选项头中的组播源切换选项,获取其中携带的MAG2的地址。
步骤1502、第二组播节点判断自身是否存在与此组播服务对应的组播路由状态,若是,执行步骤1503;若否,执行步骤1504。
该步骤1502中,若判断结果为是,则对应以上所述的Router2、3类型,即在旧的组播树中、也在新的组播树中的路由;若判断结果为否,则对应以上所述的Rounter4类型,即不在旧的组播树中、但在新的组播树中,其中,Rounter1不会收到该Join消息。
步骤1503、将此组播服务对应的组播路由状态中的Pre-handover Interface设置为到MAG2的RPF接口,并保持Active Interface的状态不变。
步骤1504、创建与此组播服务对应的组播路由状态,并将Pre-handoverInterface的状态设置为到MAG2的RPF接口,将Active Interface的状态设置为空。
至此,更新组播路由的流程结束。
完成上述流程后,第二组播节点继续向着MAG2的上游方向转发该Join数据包。具体地,在转发该Join数据包时,根据设定的上游邻居路由器地址转发。
图14所述流程中涉及的扩展的组播源切换选项携带在IP数据包的选项头中,具体地,IPv6逐跳选项头由RFC2460定义,其格式如图16所示,在options(选项)字段中,本发明定义了如下新的选项:
组播源切换选项。
组播源切换选项表示组播源即将发生切换,其中包括组播源的新接入点MAG2的地址,具体地,本发明实施例定义的组播源切换选项如图17所示,其中:
H表示组播源切换指示;
New access point’s Address表示组播源的新接入点MAG2的地址。
其余字段与现有字段含义相同,此处不再赘述。
在图14所述流程的执行过程中,组播数据一直保持通过旧的组播树到达组播接收节点。当组播源在MAG2完成绑定更新等操作之后,组播数据开始沿着新的组播树转发,即开始从(S,G)状态的pre-handover interface接口到达每个路由器。
当新组播树上的路由器首次从pre-handover interface接口接收到组播数据时,证明新的组播树开始投入使用,组播路由器需要进一步更新,具体如图18所示,包括如下步骤:
步骤1801、判断组播路由状态中的Active Interface状态是否为空,若是,执行步骤1804,若否,执行步骤1802。
该步骤1801中,若判断结果为是,则对应上述的Router4类型,即不在旧的组播树中、但在新的组播树中的路由。
步骤1802、判断组播路由状态中的Active Interface与Pre-handover Interface是否相同,若是,执行步骤1804,若否,执行步骤1803。
该步骤1802中,当判断结果为是时,则对应上述的Router3类型,即在旧的组播树中、也在新的组播树中的路由;若判断结果为否,则对应上述的Router2类型,即在旧的组播树中、也在新的组播树中的路由。
步骤1803、向Active Interface的方向发送剪枝消息,将该路由器从组播树中剪掉。
步骤1804、根据Pre-handover Interface的状态设置Active Interface的状态,并将Pre-handover Interface的状态设置为空。
至此,新旧组播树的交替工作完成,组播数据沿着新的组播树转发。
通过图18所述的流程,第二组播节点根据Join消息携带的MAG2的地址信息更新组播路由之后,若首次通过Pre-handover Interface接收到数据,则在确定ActiveInterface状态为空或Active Interface与Pre-handover Interface相同时,将Pre-handover Interface升级为Active Interface(即根据Pre-handover Interface的状态设置Active Interface的状态),并将Pre-handover Interface的状态设置为空。
根据本发明实施例提供的上述技术方案,需要对MAG1(组播源切换前接入的MAG)、MAG2(组播源切换后接入的MAG)以及组播树预更新过程中组播路由器做相应的改进,具体地,MAG1、MAG2以及组播路由器上的操作分别如下:
一、MAG1上的操作主要包括如下几个方面:
(1)MAG1接收到组播源MN发送的切换预告消息后,提取出该组播源MN的ID以及MAG2的ID。确定组播源切换后组播模式,并准备好组播组地址,RP地址(选择RPT模式时)、组播源家乡地址等信息以待传输。
(2)MAG1发送扩展的HI消息给MAG2,该扩展的HI消息中指示位M=1,R=0,表示本切换为组播切换且为组播源切换。另外,扩展后的HI消息还包含组播源MN的ID和一个扩展的移动选项。该扩展的移动选项中包括:切换后组播模式选择位,组播组地址,RP地址(选择RPT模式时)、组播源家乡地址等信息。
(3)接收从MAG2返回的HAck消息,与MAG2之间建立用于传输组播数据的双向隧道。
(4)接收由MAG2通过双向隧道转发过来的组播数据,按照切换之前的组播模式转发组播数据。
(5)根据切换后组播模式的不同,进行不同的操作:
RPT模式下:当组播源在新位置的组播树更新完成之后,MAG1接到MAG2的通知,撤销MAG1到MAG2的双向隧道,向LMA发送解除与组播源MN绑定的PBU消息。
SPT且不更新组播树模式下:MAG1和MAG2之间的隧道不撤销,组播源发往外界的数据一直保持着source→MAG2→MAG1→组播树的路径传输到组播接收节点。由于组播源移动速度很快,MAG1一直作为组播树的根节点,一直保持与组播源MN的最新接入点MAG2之间建立隧道。当组播源MN发生第二次、第三次……移动时,它通过现有隧道把下一个接入点的地址通知MAG1,MAG1循环建立其到组播源MN的新接入点MAG之间的隧道,组播数据通过新的隧道传输到MAG1,继而传输到组播树上。而MAG1与组播源MN上个接入点的隧道随之撤销。
SPT且组播树预更新模式下:MAG1发起组播树预先更新的过程。它向组播数据的Ipv6逐跳选项头中添加本发明扩展的组播源切换选项,选项中包括组播源切换指示及组播源即将接入的MAG2的地址。当组播源在新位置的组播树更新完成之后,MAG1接到MAG2的通知,撤销MAG1到MAG2的双向隧道,向LMA发送解除与组播源MN绑定的PBU消息。
二、MAG2上的操作主要包括如下几个方面:
(1)MAG2接收MAG1发送过来的HI消息,通过解析该HI消息确定本次切换为组播源切换,提取出其中携带的切换后组播模式信息、组播组地址、RP地址(选择RPT模式时)、组播源家乡地址等信息。根据本地策略确定是否支持组播源切换、负载是否过重等情况决定是否接受切换。
(2)发送HAck消息给MAG1,包含MAG2是否接受组播源切换的信息,若MAG2同意切换,则与MAG1之间建立双向隧道。
(3)组播源MN连接到MAG2后,MAG2接收组播源发送的组播数据,再通过MAG2与MAG1之间的双向隧道传输给MAG1。
(4)MAG2根据切换后组播模式的不同,执行不同的操作:
RPT模式下:MAG2向LMA发送扩展的绑定更新消息,请求LMA作为组播源的RP。当绑定更新等过程完成之后,MAG2向MAG1通知停止组播数据的转发,撤销MAG1到MAG2的双向隧道。
SPT且不更新组播树模式下:MAG2向LMA发送PMIPv6正常的绑定更新消息。由于组播源移动速度很快,MAG1和MAG2之间的隧道不撤销,组播源发往外界的数据一直保持着source->MAG2->MAG1->组播树的路径传输到组播接收节点。当组播源MN再次发生移动时,MAG2通过MAG1和MAG2之间的隧道把组播源MN再次移动的新接入点MAG的地址通知MAG1,当MAG1与新接入点MAG的隧道建立之后,当前MAG1与MAG2之间的隧道撤销。
SPT且组播树预更新模式下:MAG2向LMA发送PMIPv6正常的绑定更新消息。组播树更新的过程中,它接收特殊的Join消息,如果此时组播源MN还没有连接到MAG2,则MAG2代替组播源MN对Join消息进行处理。当组播树更新完成之后,组播数据开始沿着新的组播树进行转发,MAG2向MAG1通知停止组播数据的转发,撤销MAG1到MAG2的双向隧道。
三、组播树预更新过程中组播路由器上的操作主要包括如下几个方面
(1)在切换开始之前,组播树路由器中(S,G)状态的Active interface设置为路由器到组播源旧就接入点MAG1的RPF接口,pre-handover interface设置为空。
(2)当叶子节点路由器(对应组播节点)接收到MAG1发送的带有组播源切换选项的组播数据后,它需要解析组播源切换选项,从中提取出MAG2的地址,构造Join(S,G)消息,把Join(S,G)消息封装在以MAG2为目的地址的IP数据包中,IP数据包的IPv6逐跳选项头中携带组播源切换选项。最后,它把这个用IP报文封装的Join消息向着MAG2的方向发送出去。
(3)沿途路由器接收到用IP报文封装的Join消息后,更新组播路由。并接收从MAG2返回的对于Join消息的回复,网络中预先建立起了一个以组播源新接入点MAG2为根的组播树,在这棵预更新的组播树中,所有路由器(S,G)状态的pre-handover interface均被设置为路由器到组播源的新接入点MAG2的RPF接口。
(4)在组播树预更新的过程中,从Active interface接收并转发组播数据。当组播源在MAG2完成绑定更新等操作之后,组播数据开始沿着新的组播树转发,即开始从(S,G)状态的pre-handover interface接口到达每个路由器。
(5)当新组播树上的路由器首次从pre-handover interface接口接收到组播数据时,证明新的组播树开始投入使用,进一步更新组播路由。
(6)新旧组播树的交替工作完成后,路由器需要按照新的路径转发组播数据。
实施例二
本发明实施例二提供了一种传输组播数据的装置,如图19所示,该装置包括:
切换预告消息接收单元1901、隧道建立单元1902以及组播数据传输单元1903;
其中:
切换预告消息接收单元1901,用于接收组播源从当前接入的第一移动接入网关MAG切换到第二MAG之前发送的切换预告消息;该切换预告消息携带该第二MAG的标识信息;
隧道建立单元1902,用于根据切换预告消息接收单元1901接收的切换预告消息中携带的第二MAG的标识,建立与该第二MAG之间的双向隧道;
组播数据传输单元1903,用于根据确定的切换后组播模式以及隧道建立单元1902建立的双向隧道,组播来自该组播源的组播数据,其中,该切换后组播模式为该组播源切换到第二MAG后采用的组播模式。
本发明实施例二提供的一个优选实施方式中,图19所示装置包括的隧道建立单元1902,具体用于:
向第二MAG发送切换初始化HI消息,并在接收到该第二MAG发送的切换回复HAck消息后,建立与该第二MAG之间的双向隧道。
本发明实施例二提供的一个优选实施方式中,图19所示装置包括的隧道建立单元1902,具体用于:
向该第二MAG发送包括组播源切换的指示信息、组播源标识以及切换后组播模式的指示信息的HI消息。
本发明实施例二提供的一个优选实施方式中,图19所示装置包括的隧道建立单元1902,具体用于:
向该第二MAG发送还包括组播组地址以及组播源家乡地址的HI消息,并且在该HI消息指示的组播模式为共享树RPT模式时,该HI消息还包括组播汇聚点RP地址。
本发明实施例二提供的一个优选实施方式中,图19所示装置包括的组播数据传输单元1903,具体用于:
确定该组播源接入到第一MAG时采用的组播模式;
在确定该组播源接入到第一MAG时采用的组播模式为RPT模式时,确定切换后组播模式为RPT模式;
在确定该组播源接入到第一MAG时采用的组播模式为SPT模式且确定该组播源的移动速度大于设定阈值时,确定切换后组播模式为SPT且不更新组播树模式;
在确定该组播源接入到第一MAG时采用的组播模式为SPT模式且确定该组播源的移动速度不大于设定阈值时,确定切换后组播模式为SPT且组播树预更新模式。
本发明实施例二提供的一个优选实施方式中,图19所示装置包括的组播数据传输单元1903,具体用于:
在确定的切换后组播模式为RPT模式或SPT且组播树预更新模式时,在该组播源接入该第二MAG后用于组播数据的组播路径建立完成之前,第一MAG通过建立的该双向隧道接收该第二MAG转发的该组播源的数据,并根据该组播源接入时建立的组播路径组播数据;
在确定的切换后组播模式为SPT且不更新组播树模式时,第一MAG通过建立的该双向隧道接收该第二MAG转发的该组播源的数据,并根据该组播源接入时建立的组播路径组播该数据。
如图20所示,本发明实施例二提供的一个优选实施方式中,图19所示装置还可以进一步包括:
组播树更新控制单元1904,用于在确定的切换后组播模式为SPT且组播树预更新模式时,在接收到第二MAG发送的HAck消息后,根据该组播源接入时建立的组播路径以及第二MAG的地址,触发建立该组播源接入第二MAG后用于组播数据的组播路径。
本发明实施例二提供的一个优选实施方式中,图20所示装置包括的组播树更新控制单元1904,具体用于:
在组播源发送的数据包中携带组播源切换指示以及第二MAG的地址信息,并根据该组播源接入时建立的组播路径,向该组播路径上的组播节点发送携带组播源切换指示以及该第二MAG的地址信息的数据包。
本发明实施例二提供的一个优选实施方式中,图20所示装置包括的组播树更新控制单元1904,具体用于:
在组播源发送的数据包的Ipv6逐跳选项头中携带组播源切换指示以及该第二MAG的地址信息。
如图21所示,本发明实施例二提供的一个优选实施方式中,图19所示装置还可以进一步包括:
隧道撤销单元1905,用于在确定的切换后组播模式为RPT模式或SPT且组播树预更新模式时,在组播源接入第二MAG后用于组播数据的组播路径建立完成之后,接收该第二MAG发送的双向隧道撤销指示,并根据该撤销指示撤销与第二MAG之间的双向隧道。
应当理解,以上传输组播数据的装置包括的单元仅为根据该装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的装置所实现的功能与上述实施例一提供的传输组播数据的方法流程一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例一中已做详细描述,此处不再详细描述。
实施例三
本发明实施例三提供了一种传输组播数据的***,如图22所示,该***主要包括:
组播源2201、第一移动接入网关MAG2202以及第二MAG2203;
组播源2201,用于在从当前接入的第一MAG切换到第二MAG之前,向第一MAG2202发送的切换预告消息;该切换预告消息携带第二MAG2203的标识信息;
第一MAG2202,用于根据组播源2201发送的切换预告消息中携带的第二MAG2203的标识,建立与第二MAG2203之间的双向隧道;并根据确定的切换后组播模式以及建立的双向隧道,组播来自组播源的组播数据,其中,切换后组播模式为组播源切换到第二MAG2203后采用的组播模式。
应当理解,以上传输组播数据的***包括的第一MAG所实现的功能与上述实施例二提供的传输组播数据的装置对应,对于该第一MAG所实现的更为详细的处理流程,在上述实施例二中已做详细描述,此处不再详细描述。
实施例四
本发明实施例四提供了一种组播树的更新***,如图23所示,该***主要包括:
第一组播节点2301以及第二组播节点2302;
其中:
第一组播节点2301,用于接收第一移动接入网关MAG发送的数据包,在确定该数据包中携带组播源切换指示后,构建用于生成组播树的加入Join消息,并将数据包中携带的第二MAG的地址信息携带在Join消息中转发;
第二组播节点2302,用于接收第一组播节点2301转发的Join消息,根据该Join消息携带的第二MAG的地址信息更新组播路由,并继续转发该Join消息直至已根据第二MAG的地址信息更新组播路由后的组播节点接收到Join消息。
本发明实施例四提供的一个优选实施方式中,图23所示***包括的第一组播节点2301,具体用于:
将Join消息封装在以第二MAG的地址为目的地址的数据包中,并在数据包中携带组播源切换指示,并根据设定的上游邻居路由器地址转发携带组播源切换指示的数据包。
本发明实施例四提供的一个优选实施方式中,图23所示***包括的第二组播节点2302,具体用于:
根据Join消息携带的第二MAG的地址信息,将此组播服务对应的组播路由状态中的预切换接口Pre-handover Interface设置为到第二MAG的反向路径转发RPF接口。
本发明实施例四提供的一个优选实施方式中,图23所示***包括的第二组播节点2302,具体用于:
确定自身是否存在与此组播服务对应的组播路由状态;
在确定存在与此组播服务对应的组播路由状态时,将组播路由状态中的Pre-handover Interface设置为到第二MAG的RPF接口;
在确定不存在与此组播服务对应的组播路由状态时,创建组播路由状态,并将组播路由状态中的Pre-handover Interface的状态设置为到第二MAG的RPF接口,将组播路由状态中的数据接收接口Active Interface的状态设置为空。
本发明实施例四提供的一个优选实施方式中,图23所示***包括的第二组播节点2302,还用于:
在根据Join消息携带的第二MAG的地址信息更新组播路由之后,若在首次通过Pre-handover Interface接收到数据,在确定组播路由状态中的Active Interface状态为空或Active Interface与Pre-handover Interface相同时,根据Pre-handover Interface的状态设置Active Interface的状态,并将Pre-handover Interface的状态设置为空。
本发明实施例提供的上述技术方案,在组播源切换之前,MAG1通过扩展的切换发起(HI)和切换应答(HAck)信令消息,提前把组播源的组播组地址、RP地址、组播模式选择方式等信息发送到MAG2,并预先在MAG1和MAG2之间建立一条双向隧道。在组播源完成绑定更新、认证、组播树重建等过程之前,组播数据通过组播源→MAG2→MAG1的路径传输到原来的组播树上,从而转发到组播接收节点。这样,最小化了组播服务的停顿时间,一旦组播源与MAG2建立连接,组播服务即可恢复。当使用SPT且组播树更新模式时,根据本发明实施例提供的技术方案,可以进行以下分析:
在现有技术情形下,组播源切换的延迟为:组播源MN移动并连接到MAG2的时间+MAG2向LMA绑定更新的时间(包括PBU、PBA消息的发送、传输、LMA认证的时间)+组播树重构的时间(SPT模式)。而在使用本方案情形下,组播源的切换延迟仅为:组播源MN移动并连接到MAG2的时间。可见,本方案有效地减少了组播源的切换延迟,达到了在尽可能小的时延内恢复组播服务的目的。此外,当使用SPT且组播树更新模式时,由于在切换之初就开始了组播树的预更新工作,这也有效减小了组播源等待组播树重构的时间。
进一步地,本发明补充完善了现有技术的切换后组播模式。针对现实中切换的不同情况,本发明定义了三种切换后组播模式:RPT模式、SPT且不更新组播树模式以及SPT且组播树预更新模式。每种模式针对于不同的现实情况采取不同的切换方式,这样能够更加贴合实际,可用性更高,避免了网络资源浪费、组播服务延迟过长等情况。
进一步地,本发明还定义了一种预先更新SPT的方法,在移动节点发生切换之前就启动组播树的预更新工作,预先进行组播树的重建,减小了更新组播树需要的时延。而且实现了组播树预更新的过程中不影响旧的组播树,利用旧的组播树来转发数据。本发明克服了组播源移动过程中组播源地址不变的情况下RPF检测失效的问题,保证了组播源移动对组播接收者透明。减小了组播源MN切换到MAG2后等待组播树更新的时间,避免了组播树更新过程中组播数据的丢失。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种组播树的更新方法,其特征在于,包括:
第一组播节点接收第一移动接入网关MAG发送的数据包;
在确定所述数据包中携带组播源切换指示后,构建用于生成组播树的加入Join消息,并将所述数据包中携带的第二MAG的地址信息携带在所述Join消息中转发;
接收到所述Join消息的第二组播节点根据所述Join消息携带的第二MAG的地址信息更新组播路由;并
继续转发所述Join消息直至已根据所述第二MAG的地址信息更新组播路由后的组播节点接收到所述Join消息;
其中,接收到所述Join消息的第二组播节点根据所述Join消息携带的第二MAG的地址信息更新组播路由,包括:
第二组播节点确定自身是否存在与此组播服务对应的组播路由状态;
在确定存在与此组播服务对应的组播路由状态时,将所述组播路由状态中的预切换接口Pre-handover Interface设置为到所述第二MAG的反向路径转发RPF接口,并保持数据接收接口Active Interface的状态不变;
在确定不存在与此组播服务对应的组播路由状态时,创建组播路由状态,并将所述组播路由状态中的Pre-handover Interface的状态设置为到所述第二MAG的RPF接口,将所述组播路由状态中的数据接收接口Active Interface的状态设置为空。
2.如权利要求1所述的方法,其特征在于,所述组播源切换指示以及所述第二MAG的地址信息携带在所述数据包的Ipv6逐跳选项头中。
3.如权利要求1所述的方法,其特征在于,第一组播节点将所述数据包中携带的第二MAG的地址信息携带在所述Join消息中转发,包括:
第一组播节点将所述Join消息封装在以所述第二MAG的地址为目的地址的数据包中,并在所述数据包中携带组播源切换指示;
根据设定的上游邻居路由器地址转发携带组播源切换指示的数据包。
4.如权利要求1所述的方法,其特征在于,第二组播节点根据所述Join消息携带的第二MAG的地址信息更新组播路由之后,还包括:
第二组播节点首次通过所述Pre-handover Interface接收到数据;
在确定组播路由状态中的Active Interface状态为空或所述Active Interface与Pre-handover Interface相同时,根据所述Pre-handover Interface的状态设置所述Active Interface的状态,并将所述Pre-handover Interface的状态设置为空。
5.一种组播树的更新***,其特征在于,包括:
第一组播节点,用于接收第一移动接入网关MAG发送的数据包,在确定所述数据包中携带组播源切换指示后,构建用于生成组播树的加入Join消息,并将所述数据包中携带的第二MAG的地址信息携带在所述Join消息中转发;
第二组播节点,用于接收所述第一组播节点转发的所述Join消息,根据所述Join消息携带的第二MAG的地址信息更新组播路由,并继续转发所述Join消息直至已根据所述第二MAG的地址信息更新组播路由后的组播节点接收到所述Join消息;
所述第二组播节点,具体用于:
确定自身是否存在与此组播服务对应的组播路由状态;
在确定存在与此组播服务对应的组播路由状态时,将所述组播路由状态中的预切换接口Pre-handover Interface设置为到所述第二MAG的反向路径转发RPF接口,并保持数据接收接口Active Interface的状态不变;
在确定不存在与此组播服务对应的组播路由状态时,创建组播路由状态,并将所述组播路由状态中的Pre-handover Interface的状态设置为到所述第二MAG的RPF接口,将所述组播路由状态中的数据接收接口Active Interface的状态设置为空。
6.如权利要求5所述的***,其特征在于,所述第一组播节点,具体用于:
将所述Join消息封装在以所述第二MAG的地址为目的地址的数据包中,并在所述数据包中携带组播源切换指示,并根据设定的上游邻居路由器地址转发携带组播源切换指示的数据包。
7.如权利要求5所述的***,其特征在于,所述第二组播节点,还用于:
在根据所述Join消息携带的第二MAG的地址信息更新组播路由之后,若在首次通过所述Pre-handover Interface接收到数据,在确定组播路由状态中的Active Interface状态为空或所述Active Interface与Pre-handover Interface相同时,根据所述Pre-handoverInterface的状态设置所述Active Interface的状态,并将所述Pre-handover Interface的状态设置为空。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410125962.XA CN103888910B (zh) | 2010-12-20 | 2010-12-20 | 组播树的更新方法以及*** |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010597699.6A CN102547582B (zh) | 2010-12-20 | 2010-12-20 | 传输组播数据的方法、组播树的更新方法以及***和装置 |
CN201410125962.XA CN103888910B (zh) | 2010-12-20 | 2010-12-20 | 组播树的更新方法以及*** |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010597699.6A Division CN102547582B (zh) | 2010-12-20 | 2010-12-20 | 传输组播数据的方法、组播树的更新方法以及***和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103888910A CN103888910A (zh) | 2014-06-25 |
CN103888910B true CN103888910B (zh) | 2017-06-20 |
Family
ID=50957596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410125962.XA Expired - Fee Related CN103888910B (zh) | 2010-12-20 | 2010-12-20 | 组播树的更新方法以及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103888910B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114466318B (zh) * | 2022-01-30 | 2023-04-07 | 西安电子科技大学 | 组播服务有效认证和密钥分配协议实现方法、***及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1856958A (zh) * | 2003-09-25 | 2006-11-01 | 诺基亚有限公司 | 多播设备 |
CN101179457A (zh) * | 2006-11-09 | 2008-05-14 | 华为技术有限公司 | 一种基于本地移动管理域中路由优化的切换方法 |
CN101212773A (zh) * | 2006-12-31 | 2008-07-02 | 华为技术有限公司 | 一种支持移动网络移动的方法和*** |
EP2012478A1 (en) * | 2006-04-21 | 2009-01-07 | Panasonic Corporation | Multicast packet transfer device, multicast packet management device, and multicast packet reception device |
CN101800742A (zh) * | 2010-01-28 | 2010-08-11 | 华为技术有限公司 | 路由设备上游信息的更新处理方法、路由设备及网络*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101940014B (zh) * | 2008-02-04 | 2013-10-23 | 爱立信电话股份有限公司 | 用于提供路由优化的方法和设备 |
-
2010
- 2010-12-20 CN CN201410125962.XA patent/CN103888910B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1856958A (zh) * | 2003-09-25 | 2006-11-01 | 诺基亚有限公司 | 多播设备 |
EP2012478A1 (en) * | 2006-04-21 | 2009-01-07 | Panasonic Corporation | Multicast packet transfer device, multicast packet management device, and multicast packet reception device |
CN101179457A (zh) * | 2006-11-09 | 2008-05-14 | 华为技术有限公司 | 一种基于本地移动管理域中路由优化的切换方法 |
CN101212773A (zh) * | 2006-12-31 | 2008-07-02 | 华为技术有限公司 | 一种支持移动网络移动的方法和*** |
CN101800742A (zh) * | 2010-01-28 | 2010-08-11 | 华为技术有限公司 | 路由设备上游信息的更新处理方法、路由设备及网络*** |
Also Published As
Publication number | Publication date |
---|---|
CN103888910A (zh) | 2014-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102547582B (zh) | 传输组播数据的方法、组播树的更新方法以及***和装置 | |
EP2067372B1 (en) | Multicast fast handover | |
Tan et al. | A fast handoff scheme for wireless networks | |
Tan et al. | MobiCast: A multicast scheme for wireless networks | |
EP1928133B1 (en) | Method of transmitting data in handover between base stations in wireless communication system | |
CN101743768B (zh) | 用于在切换情景中减少控制信令的方法 | |
Schmidt et al. | Multicast mobility in mobile IP version 6 (MIPv6): problem statement and brief survey | |
CN101112058A (zh) | 组播数据的隧道 | |
CN103067865A (zh) | 在组播接收端切换场景下建立优化路径的方法及*** | |
CN101047617B (zh) | 一种移动组播切换的方法及装置 | |
EP1892917B1 (en) | Method and apparatus for seamless handover | |
CN101924704B (zh) | 二层组播链路切换方法及其装置 | |
CN103888910B (zh) | 组播树的更新方法以及*** | |
KR100617682B1 (ko) | 모바일 아이피를 사용하는 이동통신 시스템에서멀티캐스트 제공 시스템 및 방법 | |
CN103051545B (zh) | 一种为组播数据建立优化路径的方法及*** | |
Chang et al. | Synchronized multimedia multicast on mobile IP networks | |
Kwon et al. | An efficient mobile multicast mechanism for fast handovers: A study from design and implementation in experimental networks | |
Yoo et al. | Fast handover mechanism for seamless multicasting services in mobile IPv6 wireless networks | |
Moritani et al. | Seamless hand-off method of multicast receivers based on wireless link connection intensity | |
Kim et al. | Proxy mobile IP extension for mobile multimedia multicast services | |
CN103067866B (zh) | 在组播源切换场景下建立优化路径的方法及*** | |
Singh et al. | Core based tree multicast (M-CBT) approach in supporting mobility | |
Kim et al. | A Study on an efficient handover scheme for real-time multicast services in PMIPv6 network | |
Takahashi et al. | Multicast source handover scheme based on proxy router discovery | |
Fairhurst | Internet Research Task Force (IRTF) T. Schmidt Request for Comments: 5757 HAW Hamburg Category: Informational M. Waehlisch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170620 |