一种因特网组管理协议监听方法及交换机的制作方法

文档序号:7970735阅读:296来源:国知局
专利名称:一种因特网组管理协议监听方法及交换机的制作方法
技术领域
本发明涉及通信技术,具体的讲是应用于环型以太网络的一种因特网组管理协议监听方法及交换机。
背景技术
在以太网中,传统的二层交换网络的交换机将路由器的组播数据报文转发至主机时,交换机会向其所有接口进行泛洪,即,将收到组播数据报文向交换机的每个接口进行转发,即使该接口下没有对该组播数据报文感兴趣的主机也同样进行转发,降低了网络效率。
为优化以太网交换机的组播数据报文转发,现有的二层以太网交换机上运行的因特网组管理协议监听(IGMP Snooping)可以对收到的主机和路由器之间传递的IGMP消息携带的信息进行分析。当交换机监听到主机发出IGMP成员报告消息(IGMP membership report message)时,交换机将收到该消息的接口添加到相应的组播转发表项的出接口列表中。当交换机监听到主机发出IGMP离开消息(IGMP leave message)时,交换机将与该主机连接的接口从组播表转发表项的出接口列表中删除。
假设图1中二层交换网络为运行生成树(STPSpanning Tree Protocol)协议的以太环型网络,交换机S1,S2和S3上启动IGMP Snooping。交换机S1连接路由器R1。主机H1和H2连接在交换机S2上。生成树协议为避免环网中出现环路,将S2与S3之间的链路阻塞。
路由器R1连接交换机S1的接口由于启动了IGMP协议,路由器R1周期性发送因特网组管理协议查询(IGMP查询)消息,查询哪些组播组存在成员,交换机S1、S2和S3的IGMP Snooping模块收到路由器的IGMP查询消息后,将收到路由器R1该消息的接口加入到各自的本地IGMP Snooping表的路由器(router)接口列表中。
交换机S2将收到的IGMP查询消息向其所有接口转发。当连接交换机S2的主机H1、H2收到IGMP查询消息后,生成IGMP成员报告消息以加入某个组播组(譬如,组播组G)。交换机S2收到IGMP成员报告消息后,在本地建立与组播组G对应的组播转发表项,将收到主机H1、H2发送的IGMP成员报告消息的接口加入该组播转发表项的出接口列表。
交换机S2通过路由器接口列表中指明的路由器接口向交换机S1转发上述IGMP成员报告消息,交换机S1收到这些消息之后,也在其本地建立与组播组G对应的组播转发表项,将收到交换机S1转发的IGMP成员报告消息的接口加入该组播组的出接口列表中,然后通过路由器接口转发IGMP成员报告消息至路由器R1。路由器R1收到上述消息之后,将组播组G对应的组播数据报文转发至交换机S1,交换机S1则向组播转发表项中组播组G对应的出接口列表中的接口转发组播数据报文。同样,交换机S2根据本地的组播组G对应的出接口列表中的接口转发组播数据报文。
但上述现有技术的缺点在于,一旦环网的网络拓扑发生改变,组播转发将会出现暂时中断。假若交换机S1与S2之间的链路中断,快速生成树协议(STP)将重新收敛计算出新的生成树,首先将图1中被阻塞的交换机S2与交换机S3之间的链路恢复到转发状态,使得的网络拓扑发生改变,如图2所示。而路由器的IGMP查询器的查询周期没有到期,没有发送IGMP查询消息,主机H1、H2也无法重新发送IGMP成员报告消息,由于组播数据报文的转发仍按需发送若路由器向S1转发组播数据报文前,主机发送的IGMP成员报告消息无法通过新的链路,即交换机S2->交换机S3->交换机S1,发送到路由器R1,则交换机S3的中与组播组对应的出接口列表中没有与交换机S2对应的出接口。交换机S3收到交换机S1转发的路由器的组播数据报文包后将直接丢弃。直到路由器查询周期到期再次发送IGMP查询消息Query,主机H1、H2回应发送IGMP成员报告消息,交换机S3的IGMP Snooping转发表项中组播组出接口列表中记录了与交换机S2对应的出接口后,主机H1、H2才能收到交转发的组播数据报文。

发明内容
本发明的目的在于提供用于环型网络中实现因特网组管理协议监听(IGMPSnooping)的一种因特网组管理协议监听方法及用于因特网组管理协议监听的交换机,以实现环型网络发生拓扑变化后组播数据报文转发的快速恢复。
为实现上述发明目的,本发明提供了一种因特网组管理协议监听方法,包括,交换机配置因特网组管理协议监听表中路由器接口,其中,还包括以下步骤交换机配置组播转发表项及对应的出接口列表;交换机配置出接口列表中的相邻交换机接口;交换机将接收到因特网组管理协议离开消息的非相邻交换机接口从出接口列表中删除。
组播转发表项与因特网组管理协议成员报告消息请求加入的组播组对应。
交换机根据组播转发表项转发组播数据报文。
交换机配置组播转发表项及对应的出接口列表是指,交换机根据监听的因特网组管理协议成员报告消息动态建立组播转发表项;将收到因特网组管理协议成员报告消息的接口加入组播转发表项的出接口列表。
交换机收到因特网组管理协议成员报告消息的接口包括交换机收到主机发送的因特网组管理协议成员报告消息的接口及/或交换机收到由交换机转发的因特网组管理协议成员报告消息的接口。
交换机配置出接口列表中的相邻交换机接口是指,通过交换机的人机界面静态配置相邻交换机接口于出接口列表中。
交换机配置出接口列表中的相邻交换机接口是指,交换机查询连接相邻交换机的接口并判断相邻交换机接口是否已添加于出接口列表中;若相邻交换机接口已添加于出接口列表中,则交换机不再将查询到的相邻交换机接口添加于出接口列表中;若相邻交换机接口未添加于出接口列表中,则交换机将查询到的相邻交换机添加于出接口列表中。
交换机收到因特网组管理协议离开消息的接口如果连接了其他交换机,交换机对该因特网组管理协议离开消息不做处理。
交换机配置路由器接口是指,通过交换机的人机界面在因特网组管理协议监听表中静态配置路由器接口。
交换机配置路由器接口是指,交换机通过接收因特网组管理协议查询消息在因特网组管理协议监听表中动态设置的路由器接口;其中,路由器接口包括交换机收到路由器下发的因特网组管理协议查询消息的接口及/或收到交换机转发的因特网组管理协议查询消息的接口。
本发明还提供了一种交换机,包括,中央处理单元及储存单元,接口查询单元,其中,储存单元,用于存储含有出接口列表的组播转发表项,及因特网组管理协议监听表;接口查询单元,用于查询连接相邻交换机的接口;中央处理单元,根据接收的因特网组管理协议成员报告消息建立组播转发表项及相应的出接口列表;以及中央处理单元根据因特网组管理协议查询消息在因特网组管理协议监听表中添加路由器接口;转发处理单元,根据组播转发表项将接收的组播数据报文从相应的出接口列表中列出的接口转发出去。
出接口列表用于存储收到因特网组管理协议成员报告消息的接口及相邻交换机接口。
中央处理单元根据因特网组管理协议离开消息将接收到该离开消息的并且不连接其他交换机的接口从出接口列表中删除。
本发明的有益效果在于,在实现环型网络组播数据报文转发的同时,当环型网络的拓扑发生改变,能够快速恢复组播数据报文报文的转发。


图1所示为二层环型以太网一实施例的网络结构示意图;图2所示为图1中网络拓扑结构变化后的网络结构示意图;图3为本发明交换机实施例的结构示意图。
具体实施例方式
以下将根据图1、图2所示的二层环型以太网网络以及图3,对本发明实施例的因特网管理协议监听方法的实施过程及用于该实施例的交换机进行描述图1中,二层以太环型网络运行生成树协议(STPSpanning Tree Protocol),交换机S1,S2和S3上启动IGMP Snooping。交换机S1连接路由器R1。交换机S2连接主机H1、H2,生成树协议将交换机S2与交换机S3之间的链路阻塞。
路由器R1周期性发送IGMP查询消息,查询环网中的各交换机下哪些组播组存在成员,交换机S1、S2、S3的IGMP Snooping模块收到路由器R1的IGMP查询消息后,将收到该IGMP查询消息的接口加入到各自的本地IGMP Snooping表的路由器(router)接口列表中,交换机S2,S3继续将该IGMP查询消息进行洪泛。
主机H1、H2收到上述的IGMP查询消息后,发送IGMP成员报告消息至交换机S2表明加入某个组播组(比如组播组G),交换机S2收到该消息后,交换机S2的中央处理单元建立组播转发表项并存储在交换机S2的存储单元,并在组播转发表项中建立与组播组G对应出接口列表,以记录收到该IGMP成员报告消息的接口,交换机S2的转发处理单元根据本地IGMP Snooping表中的路由器接口向交换机S1转发IGMP成员报告消息,交换机S1收到交换机S2转发的IGMP成员报告消息后,交换机S1的中央处理单元建立组播转发表项并储存在交换机S1的储存单元中,并在组播转发表项中建立与组播组G对应的出接口列表,以记录接收该IGMP成员报告消息的接口,交换机S1转发处理单元根据本地IGMP Snooping表中路由器接口向路由器R1转发IGMP成员报告消息。
交换机S1、S2、S3的接口查询单元通过STP(Spanning Tree Protocol生成树协议)模块,可以查询到交换机连接相邻交换机的接口。交换机S1的中央处理单元判断接口查询单元查询的相邻交换机的接口是否已加入至本地组播转发表项的组播组G对应的出接口列表中,若已经添加,则交换机S1中央处理单元不再将相邻交换机接口添加至本地的组播组G的出接口列表中,因而交换机S1仅将连接交换机S3的接口添加至本地的组播组G的出接口列表中。同理,交换机S2仅将连接交换机S3的接口添加至本地的组播组G的出接口列表中。
由于交换机S3未收到主机H1、H2加入组播组G的IGMP成员报告消息,则交换机S3的中央处理单元没有建立相关的组播转发表项。
路由器R1将主机H1、H2请求的组播组G的组播数据报文转发至交换机S1,交换机S1的转发处理单元向本地组播转发表项中组播组G对应出接口列表中的接口转发组播数据报文。由于交换机S2与S3间链路阻塞,则交换机S3转发单元丢弃收到的组播数据报文;交换机S2的转发处理单元根据本地组播转发表项中组播组G出接口列表中的接口转发组播数据报文至主机H1、H2。
当交换机S1和S2间的链路中断时,生成树协议将交换机S2与交换机S3之间被阻塞的链路恢复到转发状态,如图2所示。交换机S1的转发处理单元向本地组播转发表项中组播组G对应的出接口列表中的接口转发组播数据报文,由于交换机S1与S2间链路中断,则交换机S2无法收到组播数据报文;而交换机S3转发处理单元收到的组播数据报文之后,由于没有相匹配的组播转发表项,交换机S3进行洪泛,即向交换机S3的所有接口转发组播数据报文,这样交换机S2通过与交换机S3连接的接口接收到上述组播数据报文。交换机S2根据本地组播转发表项中对应的组播转发表项的出接口列表信息将组播数据报文转发至主机H1、H2。使得组播数据报文通过新链路,即交换机S1->交换机S3->交换机S2,发送到主机H1、H2。
本发明实施例中,当图2中路由器R1发送IGMP查询报文的周期到期,路由器R1再次发送IGMP查询消息,主机H1、H2回应发送加入某组播组的IGMP成员报告消息,交换机S2、S3的中央处理单元判断收到IGMP成员报告消息的接口是否已加入到本地组播转发表项中的该组播组的出接口列表。交换机S2的本地组播转发表项中已建立该组播组的出接口列表,则交换机S2中央处理单元不再添加该接口,而交换机S3的中央处理单元根据IGMP成员报告消息建立新的组播转发表项并在其出接口列表添加该接口。
当某个主机离开组播组发出IGMP离开消息时,交换机监听到该IGMP离开消息时,例如,交换机与主机通过集线器(hub)共同连接至一主机时(图1、图2中未示)将收到该消息的接口从本地出接口列表中删除,但是若该接口连接其他交换机,中央处理单元将不删除收到IGMP离开消息的接口。由于接口删除的过程与现有技术相同,因而不再重复叙述。
需要说明的是,本发明的上述实施例中虽然以运行STP协议的二层环网为例进行了详细说明,然而本发明的应用范围并不仅限于运行STP协议的二层环网,本发明还可应用于运行快速环保协议(RRPPRapid Ring ProtectionProtocol)、快速生成树协议(Rapid Spanning Tree Protocol)等其它二层环形网络。
本发明的上述实施例采用了一种动态方式,在各交换机的本地出接口列表中添加连接相邻交换机的接口,但是根据本发明上述实施例的启示,本领域技术人员可以通过静态配置的方式,通过交换机的人机界面(图中未示)配置各交换机储存单元本地存储的路由器接口及组播转发表项及出接口列表。
本发明的有益效果在于,当二层环形网络的网络拓扑发生改变后,快速恢复环形网络中的组播数据报文转发。
以上实施例仅用于说明本发明的实施过程,并非用于限定本发明的保护范围。
权利要求
1.一种因特网组管理协议监听方法,包括,交换机配置因特网组管理协议监听表中路由器接口,其特征在于,还包括以下步骤交换机配置组播转发表项及对应的出接口列表;交换机配置出接口列表中的相邻交换机接口;交换机将接收到因特网组管理协议离开消息的非相邻交换机接口从出接口列表中删除。
2.根据权利要求1所述的方法,其特征在于,组播转发表项与因特网组管理协议成员报告消息请求加入的组播组对应。
3.根据权利要求1所述的方法,其特征在于,交换机根据组播转发表项转发组播数据报文。
4.根据权利要求1所述的方法,其特征在于,交换机配置组播转发表项及对应的出接口列表是指,交换机根据监听的因特网组管理协议成员报告消息动态建立组播转发表项;将收到因特网组管理协议成员报告消息的接口加入组播转发表项的出接口列表。
5.根据权利要求1所述的方法,其特征在于,交换机收到因特网组管理协议成员报告消息的接口包括交换机收到主机发送的因特网组管理协议成员报告消息的接口及/或交换机收到由交换机转发的因特网组管理协议成员报告消息的接口。
6.根据权利要求1所述的方法,其特征在于,交换机配置出接口列表中的相邻交换机接口是指,通过交换机的人机界面静态配置相邻交换机接口于出接口列表中。
7.根据权利要求1所述的方法,其特征在于,交换机配置出接口列表中的相邻交换机接口是指,交换机查询连接相邻交换机的接口并判断相邻交换机接口是否已添加于出接口列表中;若相邻交换机接口已添加于出接口列表中,则交换机不再将查询到的相邻交换机接口添加于出接口列表中;若相邻交换机接口未添加于出接口列表中,则交换机将查询到的相邻交换机添加于出接口列表中。
8.根据权利要求1所述的方法,其特征在于,若交换机收到因特网组管理协议离开消息的接口连接其他交换机,则交换机对该因特网组管理协议离开消息不做处理。
9.根据权利要求1所述的方法,其特征在于,交换机配置路由器接口是指,通过交换机的人机界面在因特网组管理协议监听表中静态配置路由器接口。
10.根据权利要求1所述的方法,其特征在于,交换机配置路由器接口是指,交换机通过接收因特网组管理协议查询消息在因特网组管理协议监听表中动态设置路由器接口;其中,路由器接口包括交换机收到路由器下发的因特网组管理协议查询消息的接口及/或收到交换机转发的因特网组管理协议查询消息的接口。
11.一种交换机,包括,中央处理单元及储存单元,其特征在于,还包括,接口查询单元;其中,储存单元,用于存储含有出接口列表的组播转发表项,及因特网组管理协议监听表;接口查询单元,用于查询连接相邻交换机的接口;中央处理单元,根据接收的因特网组管理协议成员报告消息建立组播转发表项及相应的出接口列表以及根据因特网组管理协议查询消息在因特网组管理协议监听表中添加路由器接口;转发处理单元,根据组播转发表项将接收的组播数据报文从相应的出接口列表中的接口转发出去。
12.根据权利要求11所述的交换机,其特征在于,出接口列表用于存储收到因特网组管理协议成员报告消息的接口及相邻交换机接口。
13.根据权利要求11所述的交换机,其特征在于,中央处理单元根据因特网组管理协议离开消息将接收到该离开消息的并且不连接其他交换机的接口从出接口列表中删除。
全文摘要
一种因特网组管理协议监听方法及交换机。其中,因特网组管理协议监听方法包括交换机配置因特网组管理协议监听表中路由器接口;交换机配置组播转发表项及对应的出接口列表;交换机配置出接口列表中的相邻交换机接口;交换机将接收到因特网组管理协议离开消息的非相邻交换机接口从出接口列表中删除。本发明的有益效果在于,当二层环形网络的网络拓扑发生改变后,快速恢复环形网络中的组播数据报文转发。
文档编号H04L12/56GK1968160SQ20061014440
公开日2007年5月23日 申请日期2006年11月7日 优先权日2006年11月7日
发明者徐小虎 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1