专利名称:一种基于动态组播表的l2层组播实现方法
技术领域:
本发明涉及接入网,具体地说,本发明涉及一种基于动态组播表的L2层组播实现 方法。
背景技术:
组播(Multicast)传输在发送者和每一接收者之间实现点对多点网络连接。如 果一台发送者同时给多个的接收者传输相同的数据,也只需复制一份的相同数据包。它提 高了数据传送效率。减少了骨干网络出现拥塞的可能性。目前网络内的管理报文很多都是 通过组播或者广播的形式发送的,比如ARP报文等等,减少了网络资源的利用,大大的提高 了系统的处理速度,所以,组播/广播技术在当今的网络技术中占有重要的位置。目前实现组播的技术主要是通过ARP表项来实现对L2层组播转发。然而,广播/组播如果处理的不好,会造成广播风暴,产生很多垃圾报文,给系统 带来不必要的麻烦,目前的无线通信移动网络中,其特点就是没有固定的基站,所有的用户 都可以任意的移动,通过无线传输来进行组网和通信。这就给如何控制组播报文,合理的利 用信道资源,减少协议开销,提高数据传输的吞吐量带来一定的难度。本发明用到的英文缩写与全称对照如下aGW -Access Gateffay 接入网关;MS :Mobile Station,移动用户;BS :Base Station,基本基站;DP :DataPath 数据通道;GRE Generic Routing Encapsulation,通用路由封装协议;L2 :Layer2 层二;IP Internet Protocol 因特网协议。
发明内容
本发明的目的在于,为克服目前无线通信移动网络中如何控制组播报文避免造成 广播风暴以及无线资源的浪费,从而提出一种基于动态组播表的L2层组播实现方法。为实现该目的本发明提出的一种基于动态组播表的L2层组播实现方法,该方法 用于移动和Internet网络融合的网络中,所述的方法包含如下步骤1)建立组播结构实体移动终端用户建立数据通道时,同时触发锚定网关建立组 播结构实体;2)收发广播/组播报文锚定网关根据组播表项的内容,进行组播报文的发送/ 转发;3)删除或修改组播结构实体当移动终端删除数据通道时,触发锚定网关对组播 结构实体进行删除或者修改处理;其中,所述的组播结构实体包含本地IP地址、远端IP地址和一个计数值,所述的本地IP地址为锚定网关的IP地址,远端IP地址是用户接入基站的IP地址,计数值为与该 组播结构具有相同远端IP地址的数据通道的数量;所述的组播表是一个链表结构,一个头指针始终指向该表的第一个组播结构实 体,一个尾指针始终指向该表中的最后一个组播结构实体。上述技术方案,步骤1)所述的建立组播结构实体还包含如下子步骤1-1)判断用户建立的数据通道的类型,如果接入网关是该用户的中继网关,则不 需要进行组播表的操作;如果接入网关是该用户的锚定网关,转到1-2);1-2)根据数据通道的远端IP地址,在组播表项中查找有无对应的组播结构实体, 如果有相应的组播结构实体,则将该组播结构实体的引用计数加一,转到1-4);如果没有 相应的结构实体,转到1-3);1-3)根据远端IP地址建立新的组播结构实体,并该结构实体的计数值置一;1-4)将建立好的组播结构实体插入组播表。上述技术方案,步骤2)所述的组播报文的发送/转发还包含如下子步骤如果是接入网关自己发的组播报文,则该接入网关的组播表中的每个组播结构实 体记录的远端用户都要发送;如果是利用该网关转发的中继组播报文,则该接入网关会将 此组播/广播报文通过数据通道以“单播”的形式,发给锚定在发送/转发该组播报文的接 入网关下的用户;如果对于转发的其它组播报文,除报文的发送者外,组播表中的每个组播 结构实体对应的远端用户都要发送。上述技术方案,步骤3)所述的删除或修改组播结构实体还包含如下子步骤3-1)判断将要删除的数据通道的类型,如果接入网关是该用户的中继网关,则不 需要进行组播表的操作;如果接入网关是该用户的锚定网关,转到3-2);3-2)根据待删除的数据通道的远端IP地址,在组播表项中找到对应的组播结构 实体,将其计数值进行减一操作;3-3)如果该组播结构实体的计数值为0,则在组播表中删除该组播结构实体;如 果该组播结构实体的计数值大于或等于1,此过程结束。本发明通过使用简单的组播表技术以及配合目前已经成熟的数据通道,很好的实 现了 L2层的广播/组播功能,同时避免了广播风暴,实施起来简单,运行稳定可靠。本发明使用组播表的形式,来实现L2层下的组播管理功能。本发明的优点在于1、通过建立组播表来完成L2层组播报文的转发,实现了选择性组播发送,避免了 对中继在该aGW下的用户进行发送组播报文,大大减少了广播风暴,提高了系统的利用率, 处理方法简单可靠。采用动态组播表结构,维护简单;2、通过数据通道的删除、修改和建立,触发对组播表的删除、修改以及建立等相关 操作,无需专门模块维护;3、使用计数值,对于建立多条数据通道的终端,仅需要建立一个组播结构;采用动 态组播表结构,维护简单。
图1是为本发明为每个建立数据通道的用户建立组播结构实体示意图2是组播结构实体只在该用户的锚定网关中建立示意图;图3是本发明的每个BS最多只有一个组播结构实体的示意图;图4是本发明利用结构表中的组播结构实体转发中继广播报文示意图;图5是本发明的移动网络和Internet网络之间建立组播结构时序流图;图6是本发明的移动网络和Internet网络之间删除组播结构时序流图;图7是本发明的移动网络和Internet网络之间修改数据通道对组播表处理时序 流图。
具体实施例方式下面结合附图对本发明进行进一步说明。图1是为每个建立数据通道的用户建立组播结构实体。其中,三个移动终端(MS) 首先分别接入3个不同基站(BS),每个基站分别有一个对应的IP地址;然后3个基站通过 aGW网关接入核心网,该aGW网关为每个建立数据信道的用户建立组播结构实体,如附图1 中的表格所示。图2是组播结构实体只在该用户的锚定网关中建立。其中,三个移动终端分别为 MSI、MS2和MS3,MS1的锚定网关为aGW2,而MS2和MS3的锚定网关为aGWl,从图2可以看 出针对MS1用户,只在它的锚定网关aGW2上建立组播实体,即图2左边靠近网关aGW2的表 格;而对于MS2和MS3用户,只在他们的的锚定网关为aGWl中建立组播实体,即图2右边靠 近网关aGWl的表格。图3是每个用户仅可能存在一个组播结构实体,即每个用户只存在一个组播结构 实体,只能在该用户对应的锚定网关上建立与之对应的组播结构实体。本发明是实现网关下的二层网络内发送组播/广播报文,中继在本网关下用户的组 播/广播报文,由建立的中继数据通道转发和接收,锚定在本网关下的用户,则根据组播表进 行发送和接收,如图4所示。aGWl下面有两个BS,假设BS1的IP地址是192. 168. 7. 12,BS2 的 IP 地址为 192. 168. 7. 11,aGWl 的 IP 地址是 192. 168. 7. l,aGW2 的 IP 地址为 192. 168. 7. 2。aGWl是MS2和MS3的锚定网关,并且各自建立起数据通道DPI和DP3,aGWl的组 播表中有两个组播结构实体,本地IP地址都是aGWl的IP地址,而远端IP地址分别记录了 BS1和BS2的IP地址,当aGWl所属的L2网络收发广播/组播报文时,根据组播表内的远端 IP地址经过建立的数据通道DPI和DP3将报文发送给BS1和BS2,或者接收其发送的报文。MS1锚定在aGW2下,aGWl是其中继网关,同样aGW2的组播表中会记录BS1的IP 地址,经过DP2收发有关MS1的组播/广播报文,而aGWl仅仅起到一个中继的作用。这样,通过组播表的形式实现了 L2网络下对组播/广播报文的处理,实现起来简 单,性能稳定可靠。组播表的初始化是在系统初始化开始时处理的,组播表是一个链表结 构,一个头指针始终指向该表的第一个结构体,一个尾指针始终指向该表中的最后一个结 构体。每个组播结构体记录了两个IP地址,本地IP地址为aGW的IP地址,远端IP地址是 用户的IP地址,引用计数则是表明了与该组播结构具有相同远端IP地址的数据通道的数 量,只有该引用计数的值为0的时候,才可以进行删除操作。对组播表进行的建立、删除操作都是有数据通道模块来触发的,实现起来简单可 靠,当有建立数据通道的操作时,触发对组播表的建立操作;当有删除数据通道的操作时,会触发对组播表的删除操作;修改数据通道信息则会触发对组表的删除和建立操作。下面结合图例进行介绍本发明说明的建立组播表的操作,如图5 1)提取建立数据通道阐述,判断数据通道的类型,如果是中继类型,返回。2)获得数据通道的远端IP地址,以该IP地址为远端地址在组播表中查找符合要 求的组播数据结构体,如果找到符合要求的数据结构,将其引用计数值加一操作,返回。3) 一改IP的地址为远端地址,建立一个新的组播结构体,将其引用计数值置一, 本地IP地址填写网关IP地址,插入组播表中。删除数据通道按照如下方式操作,如图6所示1)判断待删除的数据通道类型,如果是锚定在该网关下的用户删除数据通道,触 发组播结构体的删除处理操作;如果是中继类型的,则直接返回。2)提取待删除的数据通道远端IP地址,根据该IP地址在组播表中查找对应的组 播结构体。3)将查找到的组播结构体的引用计数减一操作。4)判断组播结构体的引用计数,如果该值为0,将其在组播表中删除;如果其值大 于等于1,处理结束。修改数据通道时,对组播表的处理按照如下方式操作,如图7 1)判断数据通道的修改信息,如果是将中继数据通道类型修改为锚定,转到2), 如果是将锚定数据通道修改为中继类型转到4),如果是修改数据通道的远端IP地址,转到 6),否者转到10);2)提取修改后的数据通道的远端IP地址,根据该IP在组播表中查找组播结构体, 如果找到对应的组播结构体,将该结构体的引用计数增加一,转到7),否者转到3);3)以该IP地址为远端地址,建立一个新的组播结构,插入组播表中;4)提取修改之前的数据通道的远端IP地址,以该IP地址为远端地址在组播表中 查找组播结构,如果找到转到5),否者转到10);5)提取该组播结构的引用计数,如果其值为一,将该组播结构体在组播表中删除, 否者将其值减一,转到10);6)提取数据通道的原远端IP地址,在组播表中查找组播结构,如果没有找到,转 到10),否者转到7);7)判断该组播结构的引用计数,如果为一,将其在组播表中删除,否者将该引用计 数作减一操作,转到10);8)提取修改后的数据通道的远端IP地址,在组播表中查找组播结构,如果找到将 其引用计数作加一操作,否者转到9);9)以该IP地址为远端IP地址,建立一个新的组播结构体,将其引用计数置一,转 到 10);10)返回。最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参 照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方 案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明 的权利要求范围当中。
权利要求
一种基于动态组播表的L2层组播实现方法,该方法用于移动网络和Internet网络融合的网络中,所述的方法包含如下步骤1)建立组播结构实体移动终端用户建立数据通道时,同时触发锚定网关建立组播结构实体;2)收发广播/组播报文锚定网关根据组播表项的内容,进行组播报文的发送/转发;3)删除或修改组播结构实体当移动终端删除数据通道时,触发锚定网关对组播结构实体进行删除或者修改处理;其中,所述的组播结构实体包含本地IP地址、远端IP地址和一个计数值,所述的本地IP地址为锚定网关的IP地址,远端IP地址是用户接入基站的IP地址,计数值为与该组播结构具有相同远端IP地址的数据通道的数量;所述的组播表是一个链表结构,一个头指针始终指向该表的第一个组播结构实体,一个尾指针始终指向该表中的最后一个组播结构实体。
2.根据权利要求1所述的基于动态组播表的L2层组播实现方法,其特征在于,步骤1) 所述的建立组播结构实体还包含如下子步骤1-1)判断用户建立的数据通道的类型,如果接入网关是该用户的中继网关,则不需要 进行组播表的操作;如果接入网关是该用户的锚定网关,转到1-2);1-2)根据数据通道的远端IP地址,在组播表项中查找有无对应的组播结构实体,如果 有相应的组播结构实体,则将该组播结构实体的引用计数加一,转到1-4);如果没有相应 的结构实体,转到1-3);1-3)根据远端IP地址建立新的组播结构实体,并该结构实体的计数值置一;1-4)将建立好的组播结构实体插入组播表。
3.根据权利要求1所述的基于动态组播表的L2层组播实现方法,其特征在于,步骤2) 所述的组播报文的发送/转发还包含如下子步骤如果是接入网关自己发的组播报文,则该接入网关的组播表中的每个组播结构实体记 录的远端用户都要发送;如果是利用该网关转发的中继组播报文,则该接入网关会将此组 播/广播报文通过数据通道以“单播”的形式,发给锚定在发送/转发该组播报文的接入网 关下的用户;如果对于转发的其它组播报文,除报文的发送者外,组播表中的每个组播结构 实体对应的远端用户都要发送。
4.根据权利要求1所述的基于动态组播表的L2层组播实现方法,其特征在于,步骤3) 所述的删除或修改组播结构实体还包含如下子步骤3-1)判断将要删除的数据通道的类型,如果接入网关是该用户的中继网关,则不需要 进行组播表的操作;如果接入网关是该用户的锚定网关,转到3-2);3-2)根据待删除的数据通道的远端IP地址,在组播表项中找到对应的组播结构实体, 将其计数值进行减一操作;3-3)如果该组播结构实体的计数值为0,则在组播表中删除该组播结构实体;如果该 组播结构实体的计数值大于或等于1,此过程结束。
全文摘要
本发明提出一种基于动态组播表的L2层组播实现方法,该方法用于移动网络和Internet网络融合的网络中,所述的方法步骤如下1)建立组播结构实体移动终端用户建立数据通道时,同时触发锚定网关建立组播结构实体;2)收发广播/组播报文锚定网关根据组播表项的内容,进行组播报文的发送/转发;3)删除或修改组播结构实体当移动终端删除数据通道时,触发锚定网关对组播结构实体进行删除或者修改处理;其中,所述的组播结构实体包含本地IP地址、远端IP地址和一个计数值,本地IP地址为锚定网关的IP地址,远端IP地址是用户接入基站的IP地址,计数值为与该组播结构具有相同远端IP地址的数据通道的数量;所述的组播表是一个链表。
文档编号H04W4/08GK101827314SQ201010144559
公开日2010年9月8日 申请日期2010年4月9日 优先权日2009年12月29日
发明者唐晖, 唐鼎, 秦小伟, 谭红艳, 赵志军 申请人:中国科学院声学研究所