CN101540692A - 一种动态组播配置的方法及节点设备 - Google Patents
一种动态组播配置的方法及节点设备 Download PDFInfo
- Publication number
- CN101540692A CN101540692A CN200910082323A CN200910082323A CN101540692A CN 101540692 A CN101540692 A CN 101540692A CN 200910082323 A CN200910082323 A CN 200910082323A CN 200910082323 A CN200910082323 A CN 200910082323A CN 101540692 A CN101540692 A CN 101540692A
- Authority
- CN
- China
- Prior art keywords
- node
- dmcp
- vlan
- igmp snooping
- enabled state
- 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.)
- Granted
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种动态组播配置的方法及节点设备。所述方法包括:步骤A,组播网络中的第二节点接收第一节点发送的动态组播配置协议DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一虚拟局域网的IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;步骤B,所述第二节点根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置第二节点上的第一VLAN的IGMP Snooping的使能状态。按照本发明,可以实现了组播配置的自动化,降低配置工作量,并保证组播网络链路或拓扑发生变化之后组播流量的快速收敛。
Description
技术领域
本发明涉及数据通信技术领域,具体涉及一种动态组播配置的方法及节点设备。
背景技术
互联网组管理协议窥探(IGMP Snooping,Internet Group ManagementProtocol Snooping)是运行在开放式系统互联参考模型(OSI,Open SystemInterconnect)体系二层(数据链路层)设备上的组播约束机制,用于管理和控制组播组。运行IGMP Snooping的二层设备通过对收到的互联网组管理协议(IGMP,Internet Group Management Protocol)报文进行分析,为端口和介质访问控制(MAC,Media Access Control)组播地址建立起映射关系,并根据这样的映射关系转发组播数据。以下简单介绍现有协议中与IGMP Snooping相关的端口概念:
路由器端口(Router Port):交换机上与三层组播路由器(如指定路由器(DR,Designated Router)或IGMP查询器)连接的端口。交换机将本设备上的所有路由器端口都记录在路由器端口列表中。本说明书及权利要求书中所提到的路由器端口都是指交换机上朝向组播路由器一侧的端口,而不是指路由器上的端口。
成员端口(Member Port):即组播组成员端口,是指交换机上与组播组成员连接的端口。交换机将本设备上的所有成员端口都记录在IGMP Snooping转发表中。
实际应用中,为使网络能够支持IGMP snooping,需要在网络中各节点设备上分别进行基于虚拟局域网(VLAN,Virtual Local Area Network)的IGMPsnooping的配置,用以在对应的VLAN中使能IGMP snooping。目前,中型或大型的组播组网中都存在着非常多的网络节点设备,并且各个节点设备通常会配置多个VLAN,节点设备的某个端口还可以同时属于多个VLAN。当对某个VLAN使能IGMP snooping时,现有的配置方式是手工对二层组播网络中的各个节点设备进行配置,即在每个节点设备对相应的VLAN使能IGMP snooping。可以看出,当二层组播网络中存在较多的网络节点时,上述手工配置IGMPSnooping的方法所需要的配置工作量较大且不够灵活。
发明内容
本发明实施例所要解决的技术问题是提供一种动态组播配置的方法及节点设备,降低二层组播网络中IGMP snooping配置的工作量,提高IGMPsnooping配置的灵活性。
为解决上述技术问题,本发明实施例提供方案如下:
一种动态组播配置的方法,包括:
步骤A,二层组播网络中的第二节点接收第一节点发送的动态组播配置协议DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一虚拟局域网VLAN的互联网组管理协议窥探IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;
步骤B,所述第二节点根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置第二节点上的第一VLAN的IGMP Snooping的使能状态。
优选地,上述方法中,所述步骤B还包括:
所述第二节点进一步根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置第二节点上第一类端口的路由器端口属性,所述第一类端口是第二节点上预先配置的组播端口中属于所述第一VLAN的端口。
优选地,上述方法中,在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点上的第一VLAN使能IGMP Snooping;
所述配置第二节点上第一类端口的路由器端口属性是:将所述第一类端口配置为所述第一VLAN的路由器端口。
优选地,上述方法中,在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点上的第一VLAN去使能IGMP Snooping;
所述配置第二节点上第一类端口的路由器端口属性是:从第二节点上的第一VLAN的路由器端口中删除所述第一类端口。
优选地,上述方法中,在所述IGMP Snooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点全局去使能IGMP Snooping。
优选地,上述方法中,所述第二节点在接收到所述第一节点发送的DMCP报告报文后,进一步将所述DMCP报告报文通过除接收端口之外的其它端口透传出去。
优选地,上述方法中,所述第一节点是所述二层组播网络中距离组播源最近的节点,所述第二节点是所述二层组播网络中除所述第一节点之外的其它节点。
优选地,上述方法中,所述步骤A之前还包括:所述第二节点接收所述第一节点发出的DMCP主节点声明报文,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,其中,所述DMCP主节点声明报文是所述第一节点在被配置DMCP主节点后触发生成的携带有第一节点的MAC地址的报文;
所述步骤A中进一步包括:所述第二节点在接收到所述DMCP报告报文后,进一步将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则进入步骤B;否则,丢弃所述DMCP报告报文并结束流程。
优选地,上述方法中,所述第一节点在生成并发送所述DMCP之后,进一步在预定时间间隔后重复发送所述DMCP报告报文。
本发明实施例还提供了一种二层组播网络中的节点设备,包括:
接收单元,用于接收所述二层组播网络中的第一节点发送的DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一VLAN的IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;
组播使能配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态。
优选地,上述节点设备中,还包括:
端口配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一类端口的路由器端口属性,所述第一类端口是本节点设备上预先配置的组播端口中属于所述第一VLAN的端口。
优选地,上述节点设备中,所述组播使能配置单元,还用于在所述IGMPSnooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMPSnooping的使能状态由去使能变化为使能时,对本节点设备上的第一VLAN使能IGMP Snooping;
所述端口配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,将所述第一类端口配置为所述第一VLAN的路由器端口。
优选地,上述节点设备中,所述组播使能配置单元,还用于在所述IGMPSnooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMPSnooping的使能状态由使能变化为去使能时,对本节点设备上的第一VLAN去使能IGMP Snooping;
所述端口配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,从本节点设备上的第一VLAN的路由器端口中删除所述第一类端口。
优选地,上述节点设备中,所述组播使能配置单元,还用于在所述IGMPSnooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,对第二节点全局去使能IGMP Snooping。
优选地,上述节点设备中,还包括:
透传单元,用于在所述接收单元接收到所述第一节点发送的DMCP报告报文后,将所述DMCP报告报文通过除接收端口之外的其它端口透传出去。
优选地,上述节点设备中,所述接收单元,还用于接收所述第一节点发出的DMCP主节点声明报文,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,其中,所述DMCP主节点声明报文是所述第一节点在被配置DMCP主节点后触发生成的携带有第一节点的MAC地址的报文;
所述组播使能配置单元包括:
比较子单元,用于在所述接收单元接收到所述DMCP报告报文后,将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则输出第一判断结果;否则,输出第二判断结果;
配置子单元,用于在所述比较子单元输出第一判断结果时,根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态;以及在所述比较子单元输出第二判断结果时,丢弃所述DMCP报告报文。
本发明实施例还提供了另一种二层组播网络中的节点设备,包括:
检测单元,用于检测到本节点设备上VLAN的IGMP Snooping使能状态的变化;
DMCP报告报文发送单元,用于在所述检测单元检测到第一VLAN的IGMP Snooping的使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的DMCP报告报文,所述IGMP Snooping使能状态变化信息用于向所述二层组播网络中的其它节点设备提供据以配置该其它节点设备上第一VLAN的IGMP Snooping使能状态的信息。
优选地,上述节点设备中,还包括:
声明报文发送单元,用于在本节点设备被配置为DMCP主节点时,生成并发送携带有自身MAC地址的DMCP主节点声明报文。
从以上所述可以看出,本发明实施例提供的动态组播配置的方法及节点设备,通过DMCP报文在二层组播网络的节点之间传递相关信息,实现了在节点上的自动全局使能IGMP snooping、以及针对具体的VLAN的自动使能/去使能IGMP snooping,并实现了路由器端口的动态管理,从而降低了二层组播网络中IGMP snooping配置的工作量,提高了配置灵活性,并保证了二层组播网络链路或拓扑发生变化之后组播流量的快速收敛。
附图说明
图1为本发明实施例所述动态组播配置的方法的流程图;
图2为现有技术实现了组播流量快速收敛的二层组播网络的结构示意图;
图3为本发明实施例提供的一种节点设备的结构示意图;
图4为本发明实施例提供的另一种节点设备的结构示意图。
具体实施方式
本发明实施例提出一种新的组播配置协议一动态组播配置协议(DMCP,Dynamic Multicast Configuration Protocol),利用DMCP协议,本发明实施例实现了对二层组播IGMP Snooping的自动配置,提高了IGMP Snooping配置的自动化程度,降低了配置的工作量。以下将结合附图通过具体实施例对本发明作进一步的说明。
请参照图1,本发明实施例所述动态组播配置的方法,包括以下步骤:
步骤101,二层组播网络中的第一节点在检测到第一VLAN的IGMPSnooping使能状态发生变化时,生成携带有所述第一VLAN的IGMP Snooping使能状态变化信息的DMCP报告报文并向二层组播网络中发送。这里,所述使能状态包括使能和去使能两种状态,所述第一VLAN的IGMP Snooping使能状态发生变化包括以下三种情况:
(1)第一VLAN的IGMP Snooping由去使能变化为使能;
(2)第一VLAN的IGMP Snooping由使能变化为去使能;
(3)第一节点设备全局去使能IGMP Snooping。
这里,优选地,所述第一节点是所述二层组播网络中距离组播源最近的节点。所述DMCP报告报文用于向所述二层组播网络中的其它节点设备提供据以配置自身第一VLAN的IGMP Snooping使能状态的信息。
IGMP Snooping使能/去使能是节点上可配置的一个属性,通常包括对整个节点的全局使能/去使能以及对节点上某个VLAN的使能/去使能。如果希望节点的某个VLAN支持IGMP Snooping,则需要通过对该节点全局使能IGMPSnooping,并对该VLAN使能IGMP Snooping,从而在该VLAN中启用IGMPSnooping。全局使能/去使能IGMP Snooping相当于一个总开关,全局去使能(总开关断开)后将导致该节点上所有VLAN都去使能IGMP Snooping;全局使能(总开关闭合)后,该节点的各个VLAN才有可能使能IGMP Snooping。
步骤102,二层组播网络中的其它节点在接收到第一节点发送的DMCP报告报文后,根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置本节点上第一VLAN的IGMP Snooping的使能状态,使得本节点上第一VLAN的IGMP Snooping的使能状态与所述第一节点上第一VLAN的IGMP Snooping的使能状态相同。
这里,所述其它节点接收到所述DMCP报告报文后,一方面将所述DMCP报告报文通过除接收端口之外的其它端口透传到二层组播网络中,另一方面复制一份所述DMCP报告报文并进行相关处理。针对步骤101中所述的三种变化情况,所述相关处理具体包括:
(1)在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping使能状态由去使能变化为使能时,对本节点全局使能IGMP Snooping,并对本节点上的第一VLAN使能IGMP Snooping;如果本节点已经全局使能IGMP Snooping,则直接对本节点上的第一VLAN使能IGMP Snooping即可;
(2)在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping使能状态由使能变化为去使能时,对本节点上的第一VLAN去使能IGMP Snooping;
(3)在所述IGMP Snooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,对本节点全局去使能IGMP Snooping,全局去使能IGMP Snooping后将导致本节点上的所有VLAN(包括第一VLAN)都去使能IGMP Snooping。
通过以上流程,当第一节点上的某个VLAN的IGMP Snooping使能状态发生变化之后,会自动生成并发送DMCP报告报文,二层组播网络中的其它节点能够根据该DMCP报告报文对本节点上对应的VLAN进行自动配置,从而实现了二层组播IGMP Snooping的自动配置,降低了二层组播网络中IGMPsnooping配置的工作量,提高了IGMP snooping配置的灵活性。
以下先对IGMP Snooping转发机制以及现有技术为实现组播流量快速收敛所需进行的配置进行简单说明;然后,再说明本实施例是如何在图1所示方法流程的基础上,通过自动配置来实现在二层组播网络链路或拓扑结构发生改变之后二层组播流量的快速收敛,进而说明相对于现有技术,本实施例在实现快速收敛时的优点。
组播在二层转发时,二层交换机为了防止组播流量扩散,会配置IGMPSnooping来建立二层组播转发表,并且配置未知组播丢弃功能防止无效组播流过多扩散。在运行了IGMP Snooping的交换机上,目前是将接收到IGMP查询报文或者协议无关组播(PIM,Protocol Independent Multicast)协议的PIM Hello报文的端口标志为动态路由器端口。默认情况下,IGMP查询报文发送周期60秒,PIM Hello报文发送周期30秒。由于上述组播协议报文均是周期性发送,因此,在二层组播网络链路或拓扑发生变化时,交换机通常无法立刻收到上述组播协议报文,从而也就不能即刻判断出新的路由器端口,进而造成组播流量中断。
例如,如图2所示,上游路由器配置了三层组播相关协议(PIM和IGMP);下游交换机1~4组成的2层组播环网,点播者接入到交换机3的P3端口。环网中通过多实例生成树协议(MSTP,Multiple Spanning Tree Protocol)或者快速环网保护协议(RRPP,Rapid Ring Protection Protocol)防止环路,阻塞交换机4的P2端口。上述组播协议报文从路由器下发到环路上的交换机,交换机在某个接收端口上接收到该组播协议报文后,在该接收端口所在的VLAN中转发。这里,交换机1上的P1~P3端口、交换机2~4上的P1~P2端口均在同一个VLAN中,因此,交换机1~4上的P1端口均能接收到组播协议报文,均为动态路由器端口。由于被阻塞,交换机4的P2端口无法收到交换机3发出的上述组播协议报文,因此不是动态路由器端口。同时由于交换机4的P2端口处于阻塞状态,交换机3上的P2端口也无法收到上述组播协议报文,也不是动态路由器端口。同时,由于交换机4的P2端口被环网协议阻断,点播者发出的IGMP Join报文不能被交换机4的P2端口处理,即交换机4的P2不是组播组成员端口。
当交换机2、3之间的链路中断后,将触发MSTP/RRPP协议的相应机制打开交换机4的P2端口,组播源发出的组播数据流达到交换机4的P1端口后,而由于交换机4的P2端口不是组播组成员组端口,将导致流量无法从交换机4的P2端口转发出去。这时候即便点播者有重新点播的行为来触发立即发出IGMP Join报文,但是由于交换机3的P2端口不是动态路由器端口,这个IGMP Join报文还是不能达到交换机4的P2端口,需要依靠组播协议报文(PIM Hello报文或IGMP查询报文)来触发,以将交换机3的P2端口切换为路由器端口。而上述组播协议报文均是周期性发送,在这个周期内组播数据流还是不能到达点播者,导致组播流长时间中断。因此,现有技术为了保证网络拓扑变化后的二层组播的快速收敛,需要对交换机3和4上的P2端口均手工配置为静态路由器端口,从而使得组播流能够经由交换机1的P3端口->交换机4的P1端口->交换机4的P2端口->交换机3的P2端口,最终达到点播者。与动态路由器端口不同,静态路由器端口没有超时老化机制。同时,为保证二层环路中组播流量快速收敛,现有技术还需要将图2中环路上各节点之间连接的端口均配置为静态路由器端口,通常是基于VLAN配置,即,将端口配置为对应VLAN的静态路由器端口。
从以上介绍可以看出,现有技术为实现组播流量快速收敛,需要手工进行静态路由器端口配置。这种配置的工作量较大,同时也不够灵活。为简化该配置,提高配置灵活性,本实施例进一步在上述步骤102中增加以下处理:
步骤102’,二层组播网络中的其它节点接收第一节点发送的DMCP报告报文后,进一步根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置本节点上第一类端口的路由器端口属性,具体是:根据所述IGMP Snooping使能状态变化信息,判断所述第一节点上第一VLAN的IGMP Snooping当前是否使能,并根据所述第一节点上第一VLAN的IGMPSnooping当前是否使能,配置所述第一类端口为路由器端口或非路由器端口。其中,所述第一类端口是第二节点上预先配置的组播端口中属于所述第一VLAN的端口。
所述路由器端口属性用以标识节点的端口是否为路由器端口,所述组播端口是预先配置的:组播组网通常会预先规划好组播路径,进而在组播组网时对节点的端口进行配置,用以规划好用于传输组播报文的组播端口。仍然以图2为例,各交换机之间连接的端口(即,位于环网上的端口)、交换机1的P1端口,以及交换机3的P3端口,均需预先配置为组播端口。
这里,针对步骤101中所述的三种变化情况,所述配置本节点上第一类端口的路由器端口属性具体包括:
(1)在所述变化信息指示所述第一节点上的第一VLAN的IGMPSnooping使能状态由去使能变化为使能时,将所述第一类端口配置为所述第一VLAN的路由器端口。
(2)在所述变化信息指示所述第一节点上的第一VLAN的IGMPSnooping使能状态由使能变化为去使能时,从本节点上的第一VLAN的路由器端口中删除所述第一类端口。
(3)在所述变化信息指示所述第一节点全局去使能IGMP Snooping时,可以从本节点上的第一VLAN的路由器端口中删除所述第一类端口,也可以不对所述第一类端口作任何处理,因为在本节点全局去使能IGMP Snooping后,端口是否为路由器端口已经没有任何意义。
本实施例还可以首先在交换机1~4上全局使能DMCP,并在交换机1~4的所有组播端口上使能DMCP。使能DMCP的目的在于,使得交换机及其组播端口能够对本实施例所述的DMCP报告报文按照本实施例的处理流程进行处理。然后,在步骤102’中,可以根据将使能了DMCP且属于所述第一VLAN的端口作为所示第一类端口。
这里仍然以图2为例说明上述步骤102’的效果,假设交换机3、4上的P1和P2端口均事先配置为组播端口且均属于第一VLAN,第一节点为交换机1,交换机3、4均为第二节点。如果交换机1对第一VLAN使能了IGMP Snooping,则交换机3、4通告步骤102’能够自动地将P1和P2端口配置为路由器端口,从而保证了组播流量的快速收敛;如果交换机1对第一VLAN去使能IGMPSnooping,则交换机3、4通告步骤102’能够自动地将P1和P2端口配置为非路由器端口,可以防止无效组播流过多扩散。
另外,为了提高配置的安全性,可以规定在二层组播网络中只有特定的节点(DMCP主节点)才可以发送所述DMCP报告报文,而不是任意节点都可以发送所述DMCP报告报文;并且,各节点只处理DMCP主节点发送的DMCP报告报文。为此,可以预先定义DMCP设备角色包括DMCP主节点和DMCP从节点,规定只有DMCP主节点才会发送DMCP报告报文,DMCP从节点只进行接收DMCP并进行处理,不会发送DMCP报告报文。DMCP主节点也可以接收和处理DMCP报告报文。在二层组播网络,可以配置一个或多个DMCP主节点,不同的DMCP主节点之间可以没有备份功能。对于一个组播源,通常只有一个DMCP主节点,优选地,可以将离该组播源最近且全局使能IGMPSnooping的节点配置为对应于该组播源的DMCP主节点;DMCP从节点也可以手工配置或者节点缺省即为DMCP从节点。
因此,本发明实施例在所述步骤101之前还可以包括:
步骤100,第一节点在被配置为DMCP主节点后,生成携带有自身MAC地址的DMCP主节点声明报文并向二层组播网络发送,所述声明报文用以向二层组播网络中的节点通告DMCP主节点的身份信息;二层组播网络中的其它节点接收到所述DMCP主节点声明报文后,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,从而记录下DMCP主节点的身份信息;
于是,在步骤101中,本实施例还可以进一步包括:第二节点在接收到所述DMCP报告报文后,进一步将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则进入步骤102;否则,丢弃所述DMCP报告报文并结束流程。
本实施例中,在所述第一节点上的配置变化(例如VLAN的IGMPSnooping的使能状态变化)触发发送DMCP报告报文,为了确保网络中的其它节点能够接收到该DMCP报告报文以实现全网信息的同步,可以多次重复发送该DMCP报告报文;同时,为了避免大量的DMCP报告报文耗费设备资源,第一节点在生成并发送所述DMCP报告报文之后,还可以进一步在预定时间间隔后再重复发送该DMCP报告报文,例如,间隔10秒后重新发送DMCP报告报文,一共发送三次。为避免DMCP报告报文的相互干扰,重复发送的DMCP报告报文的发送优先级低于当前因配置变化而触发生成的新的DCMP报告报文。当新的DCMP报告报文与重复发送的DMCP报告报文所指示的信息矛盾时,例如新的DCMP报告报文携带有指示第一VLAN使能IGMPSnooping的信息,而所述重复发送的DMCP报告报文携带有指示第一VLAN去使能IGMP Snooping的信息,此时可以通过判断机制,停止所述重复发送的DMCP报告报文的发送,而发送新的DMCP报告报文。
应用本实施例所述方法之后,节点的端口切换为路由器端口有三种方式:一是通过PIM Hello或者IGMP查询报文触发切换为动态路由器端口,二是手动配置为静态路由器端口,三是基于DMCP报告报文触发切换为路由器端口。优选地,将这三种方式生成的路由器端口优先级由高到低设置为:静态配置>DMCP报告报文触发>PIM Hello或者IGMP查询报文触发。对于基于DMCP报告报文配置的路由器端口不启动定时器进行老化,只能基于DMCP报告报文进行增加或删除。
本实施例中所述DMCP报文包括DMCP主节点声明报文和DMCP报告报文。所述DMCP主节点声明报文用于在二层组播网络中声明DMCP主节点,所述DMCP报告报文用于向二层组播网络中的节点通知主节点的IGMPSnooping的使能变化情况。以下介绍本实施例所采用的DMCP报文的具体格式。需要说明的是,以下具体格式并非用于限定本发明,而只是提供了实现本发明的一种可能的DMCP报文格式。
本实施例的DMCP报文的具体格式,如下表1所示:
DA | SA | length | DSAP | SSAP | Ctrl | PDU | FCS |
表1
其中:
DA:6字节的目的MAC地址。DA为一个预先约定的二层组播地址,具体可以是01-80-C2-00-00-XX(可通过向相关机构申请使用该地址);节点可以根据DA判断出接收到的报文是否为DMCP报文,进而可以按照本实施例所述流程进行处理。
SA:6字节的源MAC地址;
length:2字节的封装数据长度,包括从DSAP开始到FCS之前的所有数据的长度;
DSAP:1字节的目的服务访问点,具体值可以采用通用的0x42;
SSAP:1字节的源服务访问点,具体值可以采用通用的0x42;
Ctrl:1字节的Ctrl字段,值为0x03;
PDU:封装的DMCP报文数据;
FCS:4字节的以太网封装帧校验序列(Frame Check Sequence)位,可以由硬件自动添加处理。
上述PDU的具体格式如下表2所示:
Protocol ID | Message 1 | ...... | Message n | End Marker |
表2
其中:
ProtocolID:2字节的协议ID号,值为0x0001,代表DMCP协议;
Message1~n:携带不同的属性消息,可以包括Message 1~n多个属性消息;
End Marker:1字节的PDU结束位,值为0x00。
每个Message都携带若干属性Attribute,其具体结构如下表3所示:
Attribute Type | Attribute 1 | ...... | Attribute n | End Marker |
表3
其中:
Attribute Type:1字节的属性类型,其中值为0x01时表示该Message中包含有VLAN的IGMP Snooping使能状态变化信息;值为0x02时表示该Message中包含有DMCP主节点的身份信息;
Attribute 1~n:要操作的属性;
End Marker:1字节的Message的结束标志,值为0x00。
上述的attribute具体格式如下表4所示:
每个Attribute都包括一个独立的属性项目,其结构如下:
Attribute Length | Attribute Event | Attribute Value 1 | Attribute Value2 | Attribute Value3 |
表4
其中:
Attribute Length:1个字节,表示该属性项目的字节长度(包括AttributeLength字段本身);
Attribute Event:1个字节,值为0x00时,表示DMCP主节点声明;值为0x01时表示主节点全局去使能IGMP Snooping;值为0x02时表示某个或某些VLAN使能了IGMP Snooping;值为0x03时表示某个或某些VLAN去使能了IGMP Snooping;其它取值保留;
当Attribute event值为0x00,通过3个Attribute Value1~3,共6个字节表明DMCP主节点的MAC地址;
当Attribute event为0x01~0x03,表明是DMCP报告报文。如果AttributeValue2值不为0,则通过Attribute Value1和Attribute Value2指明一个VLAN范围,该范围内的VLAN的IGMP Snooping使能变化相同,从而避免当VLAN范围较大时引发太多的DMCP报告报文;如果Attribute Value2为全0,则仅通过Attribute Value1指定具体VLAN ID的值。当需要发送多个VLAN的IGMPSnooping使能变化信息时,可以携带在一个DMCP报文中的多个message属性中。
以上详细说明了本实施例所述的动态组播配置的方法,本实施例还提供了相应的节点设备用以实现上述方法。
如图3所示,本实施例提供的二层组播网络中的节点设备,具体包括:
接收单元,用于接收所述二层组播网络中的第一节点发送的DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一VLAN的IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;
组播使能配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态,使得本节点设备上第一VLAN的IGMP Snooping的使能状态与所述第一节点上第一VLAN的IGMP Snooping的使能状态相同;
端口配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一类端口的路由器端口属性,具体是根据所述IGMP Snooping使能状态变化信息,判断所述第一节点上第一VLAN的IGMP Snooping当前是否使能,并根据所述第一节点上第一VLAN的IGMP Snooping当前是否使能,配置所述第一类端口为路由器端口或非路由器端口。其中,所述第一类端口是本节点设备上预先配置的组播端口中属于所述第一VLAN的端口。
优选地,上述组播使能配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,对本节点设备上的第一VLAN使能IGMP Snooping;在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,对本节点设备上的第一VLAN去使能IGMP Snooping;在所述IGMP Snooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,对第二节点全局去使能IGMPSnooping;
上述端口配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,将所述第一类端口配置为所述第一VLAN的路由器端口;以及在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,从本节点设备上的第一VLAN的路由器端口中删除所述第一类端口。
优选地,图3所示的节点设备还可以包括:透传单元,用于在所述接收单元接收到所述第一节点发送的DMCP报告报文后,将所述DMCP报告报文通过除接收端口之外的其它端口透传出去。
优选地,上述接收单元,还用于接收所述第一节点发出的DMCP主节点声明报文,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,其中,所述DMCP主节点声明报文是所述第一节点在被配置DMCP主节点后触发生成的携带有第一节点的MAC地址的报文;
所述组播使能配置单元包括:
比较子单元,用于在所述接收单元接收到所述DMCP报告报文后,将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则输出第一判断结果;否则,输出第二判断结果;
配置子单元,用于在所述比较子单元输出第一判断结果时,根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态;以及在所述比较子单元输出第二判断结果时,丢弃所述DMCP报告报文。
本实施例还提供了二层组播网络中的另一种节点设备,具体包括:
检测单元,用于检测到本节点设备上VLAN的IGMP Snooping使能状态的变化;
DMCP报告报文发送单元,用于在所述检测单元检测到第一VLAN的IGMP Snooping的使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的DMCP报告报文。其中,所述IGMPSnooping使能状态变化信息用于向所述二层组播网络中的其它节点设备提供据以配置该其它节点设备上第一VLAN的IGMP Snooping使能状态的信息。
优选地,图4所示的节点设备还可以包括:声明报文发送单元,用于在本节点设备被配置为DMCP主节点时,生成并发送携带有自身MAC地址的DMCP主节点声明报文,所述MAC地址用于向二层组播网络中的其它节点通告DMCP主节点的身份信息。
综上所述,本发明实施例通过DMCP报文在二层组播网络的节点之间传递相关信息,实现了在节点上全局使能IGMP snooping、以及针对具体的VLAN使能/去使能IGMP snooping,并实现了路由器端口的动态注册,从而实现了组播配置的自动化,并保证了二层组播网络链路或拓扑发生变化之后组播流量的快速收敛。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神范围,其均应涵盖在本发明的权利要求范围当中。
Claims (18)
1.一种动态组播配置的方法,其特征在于,包括:
步骤A,二层组播网络中的第二节点接收第一节点发送的动态组播配置协议DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一虚拟局域网VLAN的互联网组管理协议窥探IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;
步骤B,所述第二节点根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置第二节点上的第一VLAN的IGMP Snooping的使能状态。
2.如权利要求1所述的方法,其特征在于,所述步骤B还包括:
所述第二节点进一步根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置第二节点上第一类端口的路由器端口属性,所述第一类端口是第二节点上预先配置的组播端口中属于所述第一VLAN的端口。
3.如权利要求2所述的方法,其特征在于,在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点上的第一VLAN使能IGMP Snooping;
所述配置第二节点上第一类端口的路由器端口属性是:将所述第一类端口配置为所述第一VLAN的路由器端口。
4.如权利要求3所述的方法,其特征在于,在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点上的第一VLAN去使能IGMP Snooping;
所述配置第二节点上第一类端口的路由器端口属性是:从第二节点上的第一VLAN的路由器端口中删除所述第一类端口。
5.如权利要求4所述的方法,其特征在于,在所述IGMP Snooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,
所述配置第二节点上的第一VLAN的IGMP Snooping的使能状态是:对第二节点全局去使能IGMP Snooping。
6.如权利要求1所述的方法,其特征在于,所述第二节点在接收到所述第一节点发送的DMCP报告报文后,进一步将所述DMCP报告报文通过除接收端口之外的其它端口透传出去。
7.如权利要求1至6任一项所述的方法,其特征在于,所述第一节点是所述二层组播网络中距离组播源最近的节点,所述第二节点是所述二层组播网络中除所述第一节点之外的其它节点。
8.如权利要求7所述的方法,其特征在于,
所述步骤A之前还包括:所述第二节点接收所述第一节点发出的DMCP主节点声明报文,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,其中,所述DMCP主节点声明报文是所述第一节点在被配置DMCP主节点后触发生成的携带有第一节点的MAC地址的报文;
所述步骤A中进一步包括:所述第二节点在接收到所述DMCP报告报文后,进一步将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则进入步骤B;否则,丢弃所述DMCP报告报文并结束流程。
9.如权利要求1所述的方法,其特征在于,所述第一节点在生成并发送所述DMCP之后,进一步在预定时间间隔后重复发送所述DMCP报告报文。
10.一种二层组播网络中的节点设备,其特征在于,包括:
接收单元,用于接收所述二层组播网络中的第一节点发送的DMCP报告报文,所述DMCP报告报文是所述第一节点在检测到第一节点上的第一VLAN的IGMP Snooping使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的报文;
组播使能配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态。
11.如权利要求10所述的节点设备,其特征在于,还包括:
端口配置单元,用于根据所述DMCP报告报文中携带的所述IGMPSnooping使能状态变化信息,配置本节点设备上第一类端口的路由器端口属性,所述第一类端口是本节点设备上预先配置的组播端口中属于所述第一VLAN的端口。
12.如权利要求10所述的节点设备,其特征在于,
所述组播使能配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,对本节点设备上的第一VLAN使能IGMP Snooping;
所述端口配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由去使能变化为使能时,将所述第一类端口配置为所述第一VLAN的路由器端口。
13.如权利要求12所述的节点设备,其特征在于,
所述组播使能配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,对本节点设备上的第一VLAN去使能IGMP Snooping;
所述端口配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点上的第一VLAN的IGMP Snooping的使能状态由使能变化为去使能时,从本节点设备上的第一VLAN的路由器端口中删除所述第一类端口。
14.如权利要求13所述的节点设备,其特征在于,
所述组播使能配置单元,还用于在所述IGMP Snooping使能状态变化信息指示所述第一节点全局去使能IGMP Snooping时,对第二节点全局去使能IGMP Snooping。
15.如权利要求10所述的节点设备,其特征在于,还包括:
透传单元,用于在所述接收单元接收到所述第一节点发送的DMCP报告报文后,将所述DMCP报告报文通过除接收端口之外的其它端口透传出去。
16.如权利要求10所述的节点设备,其特征在于,
所述接收单元,还用于接收所述第一节点发出的DMCP主节点声明报文,获取其中携带的MAC地址并保存为DMCP主节点的MAC地址,其中,所述DMCP主节点声明报文是所述第一节点在被配置DMCP主节点后触发生成的携带有第一节点的MAC地址的报文;
所述组播使能配置单元包括:
比较子单元,用于在所述接收单元接收到所述DMCP报告报文后,将所述DMCP报告报文的源MAC地址与自身MAC地址、DMCP主节点的MAC地址相比较:如果所述DMCP报告报文的源MAC地址与自身MAC地址不同但与DMCP主节点的MAC地址相同,则输出第一判断结果;否则,输出第二判断结果;
配置子单元,用于在所述比较子单元输出第一判断结果时,根据所述DMCP报告报文中携带的所述IGMP Snooping使能状态变化信息,配置本节点设备上第一VLAN的IGMP Snooping的使能状态;以及在所述比较子单元输出第二判断结果时,丢弃所述DMCP报告报文。
17.一种二层组播网络中的节点设备,其特征在于,包括:
检测单元,用于检测到本节点设备上VLAN的IGMP Snooping使能状态的变化;
DMCP报告报文发送单元,用于在所述检测单元检测到第一VLAN的IGMP Snooping的使能状态发生变化时,生成并发送的携带有所述第一VLAN的IGMP Snooping使能状态变化信息的DMCP报告报文,所述IGMP Snooping使能状态变化信息用于向所述二层组播网络中的其它节点设备提供据以配置该其它节点设备上第一VLAN的IGMP Snooping使能状态的信息。
18.如权利要求17所述的节点设备,其特征在于,还包括:
声明报文发送单元,用于在本节点设备被配置为DMCP主节点时,生成并发送携带有自身MAC地址的DMCP主节点声明报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100823239A CN101540692B (zh) | 2009-04-14 | 2009-04-14 | 一种动态组播配置的方法及节点设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100823239A CN101540692B (zh) | 2009-04-14 | 2009-04-14 | 一种动态组播配置的方法及节点设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101540692A true CN101540692A (zh) | 2009-09-23 |
CN101540692B CN101540692B (zh) | 2011-07-27 |
Family
ID=41123695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100823239A Expired - Fee Related CN101540692B (zh) | 2009-04-14 | 2009-04-14 | 一种动态组播配置的方法及节点设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540692B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103595626A (zh) * | 2013-10-15 | 2014-02-19 | 苏州拓康自动化技术有限公司 | 一种环形网络中实现动态路径规划的方法 |
WO2015035852A1 (zh) * | 2013-09-16 | 2015-03-19 | 华为技术有限公司 | 一种节点间状态通告的方法和设备 |
CN109981308A (zh) * | 2017-12-27 | 2019-07-05 | 北京华为数字技术有限公司 | 报文传输方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159665B (zh) * | 2007-08-28 | 2010-04-14 | 杭州华三通信技术有限公司 | 实现未知组播报文向路由器端口转发的方法和装置 |
-
2009
- 2009-04-14 CN CN2009100823239A patent/CN101540692B/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015035852A1 (zh) * | 2013-09-16 | 2015-03-19 | 华为技术有限公司 | 一种节点间状态通告的方法和设备 |
CN103595626A (zh) * | 2013-10-15 | 2014-02-19 | 苏州拓康自动化技术有限公司 | 一种环形网络中实现动态路径规划的方法 |
CN103595626B (zh) * | 2013-10-15 | 2017-02-15 | 苏州拓康自动化技术有限公司 | 一种环形网络中实现动态路径规划的方法 |
CN109981308A (zh) * | 2017-12-27 | 2019-07-05 | 北京华为数字技术有限公司 | 报文传输方法及装置 |
CN109981308B (zh) * | 2017-12-27 | 2022-05-24 | 北京华为数字技术有限公司 | 报文传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101540692B (zh) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101706007B1 (ko) | 분산된 리질리언트 네트워크 상호 접속 〔drni〕 링크 애그리게이션 그룹에 있어서 이웃과 동기화하기 위한 방법 및 시스템 | |
US8400912B2 (en) | Activating a tunnel upon receiving a control packet | |
CN102025541B (zh) | 一种实现组播保护的方法及系统 | |
US9712334B2 (en) | Efficient multicast topology construction in a routed network | |
CN103748835A (zh) | 标签交换路径的动态更新 | |
US20080291922A1 (en) | Method of Preventing Transport Leaks in Hybrid Switching Networks by Extension of the Link Layer Discovery Protocol (LLDP) | |
CN102223312B (zh) | 一种基于链路状态的流量控制方法和设备 | |
EP3432527A1 (en) | Information processing method and device, and computer storage medium | |
CN101127724A (zh) | 一种城域以太网中基于802.1ah协议的组播系统、设备和方法 | |
CN102185712B (zh) | Vpls网络和以太环网的倒换方法及装置 | |
CN102282805A (zh) | 一种业务保护方法及接入设备 | |
US8279752B1 (en) | Activating tunnels using control packets | |
EP2897328B1 (en) | Method, system and apparatus for establishing communication link | |
CN104980302A (zh) | 一种在sdn框架下基于stp消除冗余链路的方法 | |
CN101540692B (zh) | 一种动态组播配置的方法及节点设备 | |
CN101262412A (zh) | 一种具有最小时延的组播恢复的方法及其接入设备 | |
US20120269056A1 (en) | Method, device, and system for protecting semi-ring network | |
CN101499950B (zh) | 运营商骨干传送环组播方法和组播环网以及节点设备 | |
CN103179031B (zh) | 基于流方式的多业务转发和处理方法 | |
CN102215165B (zh) | 一种相切环网的报文处理方法及以太网交换机 | |
CN102843282B (zh) | 一种报文处理方法及系统 | |
CN102025626B (zh) | 转发组播数据报文的方法和提供商边缘设备 | |
CN106357540A (zh) | 一种组播控制方法及装置、组播系统 | |
CN104683769B (zh) | 一种在环网环境下实现组播点播的方法及装置 | |
CN101480010B (zh) | 特定源组播方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110727 Termination date: 20200414 |
|
CF01 | Termination of patent right due to non-payment of annual fee |