专利名称:一种集群管理中的报文转发方法和交换机的制作方法
技术领域:
本发明涉及通信领域,尤其涉及一种集群管理中的报文转发方法和交换机。
背景技术:
随着以太网技术的迅猛发展,以太网交换机的应用越未越广泛,但是由于以太网 交换机数量比较多(尤其是低端设备),给管理工作带来一定的难度,因此提出了集群管理 的解决方法。作为集群管理协议族的重要组成部分,拓扑收集能够获取整个网络的拓扑情 况,在进行集群管理的过程中起了非常重要的作用。目前在实际使用中,拓扑收集采用如下方式一台拓扑收集使能交换机发起一个 指定VLAN上的拓扑收集,交换机发送一个二层的多播拓扑请求报文到有邻居的接口上。邻 居的支持拓扑收集的交换机在接收到拓扑请求报文后,将本交换机的信息,包括设备类型, 设备的标识,本设备的邻居信息等封装到一个拓扑响应报文中,将此响应报文以单播的方 式发送给发起拓扑请求的交换机。然后,所述邻居的支持拓扑收集的交换机将此拓扑请求 报文发送到除接收接口以外的其他有邻居的接口上。 为了防止拓扑请求报文在网络上无限的转发下去,在拓扑收集协议中定义了收集 的最大跳数信息,每个收到拓扑请求报文的交换机在对报文进行转发时,要检查数据包中 的跳数信息(报文里实际存放的是剩余跳数),如果已经到达了最大跳数,则交换机不再转 发该拓扑收集请求报文,否则,将报文中的剩余跳数减1,然后进行转发。为了避免环路现 象,拓扑请求报文中包含了一个地址列表,请求报文每经过一个交换机转发,就将该转发交 换机的媒体接入控制(MediaAccess Control,简称为MAC)地址填入其中。这样,交换机在 收到请求报文后,通过判断地址列表中是否包含自己的MAC地址,就可以判断此报文是否 已经处理过,如果是,则直接丢掉报文,不作其它处理。但是,对于拓扑响应报文,目前的应用中只有发起拓扑请求的交换机接收到响应 报文后进行合法性判断和进一步的处理,而非发起拓扑请求的交换机对其接收到的拓扑响 应报文只做简单的转发处理,对于那些MAC地址表里不存在的响应报文则会在同一个VLAN 中的不同端口转发出去,当网络中存在环路的时候,交换机就会不停的转发该报文,造成广 播风暴,拓扑收集不成功。举例来说,参见图1,假设设备A为发起拓扑请求的交换机,设备B-D为响应拓扑请 求的交换机。设备A在VLAN 1发起拓扑收请求,设备B接收到此拓扑请求,由于设备B上 没有设备A的MAC地址,并且设备B有三个接口属于VLANl,所以设备B从三个接口发出拓 扑响应报文,设备C接收到设备B发出的拓扑响应报文,由于设备C也没有设备A的MAC地 址,所以把报文转发给设备D,设备D又转发给设备B,设备B又将其自身发出的拓扑响应报 文在VLAN内转发,由此形成了广播风暴。
发明内容
本发明要解决的技术问题是,提出一种集群管理中的报文转发方法和交换机,防止拓扑收集过程中发生广播风暴,保证网络拓扑的有效收集。为了解决上述技术问题,本发明提出了一种报文转发方法,应用于集群管理中的 拓扑收集过程,包括非拓扑请求发起交换机在接收到拓扑响应报文后,对所述拓扑响应报文的来源进 行判断,根据判断结果仅转发其中来自所述非拓扑请求发起交换机下游设备的拓扑响应报文。进一步地,上述方法还可具有以下特点所述非拓扑请求发起交换机是根据所述拓扑响应报文中的MAC地址列表来判断 所述拓扑响应报文的来源。进一步地,上述方法还可具有以下特点
所述非拓扑请求发起交换机是在判断出所述拓扑响应报文中的MAC地址列表中 包含其自身的MAC地址,且在所述MAC地址列表中所述拓扑响应报文所属交换机的MAC地 址位于所述非拓扑请求发起交换机自身的MAC地址之后,才判定所述拓扑响应报文来自所 述非拓扑请求发起交换机下游设备。为了解决上述技术问题,本发明提出了一种交换机,应用于集群管理中的拓扑收 集过程,包括接收模块、判断模块和发送模块,其中所述接收模块,用以接收拓扑响应报文;所述判断模块,用以判断所述接收模块接收到的拓扑响应报文的来源,在判断出 所述拓扑响应报文来自所述交换机的下游设备时,向所述发送模块发送转发指令;所述发送模块,用以接收到转发指令后,将所述接收模块接收到的拓扑响应报文 转发出去。进一步地,上述交换机还可具有以下特点所述判断模块,是根据所述拓扑响应报文中的MAC地址列表来判断所述拓扑响应 报文的来源。进一步地,上述交换机还可具有以下特点所述判断模块,是在判断出所述拓扑响应报文中的MAC地址列表中包含其自身的 MAC地址,且在所述MAC地址列表中所述拓扑响应报文所属交换机的MAC地址位于所述非拓 扑请求发起交换机自身的MAC地址之后,才判定所述拓扑响应报文来自所述非拓扑请求发 起交换机下游设备。本发明提出的一种集群管理中的报文转发方法和交换机,在存在环路的时候防止 了广播风暴的发生,保证了网络中拓扑信息的有效收集;非下游设备的拓扑响应报文不会 转发到下游设备,减少了网络中的数据报文,减轻了下游设备的负担,提高了拓扑收集的效率。
图1为本发明现有技术中一种集群管理应用环境示意图;图2为本发明实施例一种集群管理中的报文转发方法流程图;图3为本发明实施例判断所述拓扑响应报文的来源的方法流程图;图4为本发明的交换机的示意图。
具体实施例方式下面结合附图对本发明技术方案作进一步的详细描述。参见图2,该图示出了本发明实施例一种集群管理中的报文转发方法,包括步骤步骤S201 非拓扑请求发起的交换机接收到拓扑响应报文;步骤S202 所述非拓扑请求发起的交换机对所述拓扑响应报文的来源进行判断, 根据判断结果仅转发其中来自所述非拓扑请求发起交换机下游设备的拓扑响应报文。对于不是来自所述非拓扑请求发起的交换机下游设备的拓扑响应报文则不进行 转发,可以对该报文进行丢弃处理。该方法可以有效减少网络中的报文数,防止广播风暴。所述非拓扑请求发起交换机可以根据所述拓扑响应报文中的MAC地址列表来判 断所述拓扑响应报文的来源,如图3所示,具体包括如下步骤
步骤S301 所述非拓扑请求发起的交换机在接收到拓扑响应报文后,提取所述拓 扑响应报文中的MAC地址列表;步骤S302 所述非拓扑请求发起的交换机判断所述MAC地址列表中是否包含其自 身的MAC地址,如果是,才执行步骤S303 ;步骤S303 所述非拓扑请求发起的交换机判断在所述MAC地址列表中所述拓扑响 应报文所属交换机的MAC地址是否位于所述非拓扑请求发起交换机自身的MAC地址之后, 如果是,才判定所述拓扑响应报文来自所述非拓扑请求发起交换机下游设备。可以采用多种方式获取所述拓扑响应报文所属交换机的MAC地址,本发明在此不 做限制。例如,可以通过解析所述拓扑响应报文头中携带的源MAC获得所述拓扑响应报文 所属交换机的MAC地址;再例如,也可以从所述MAC地址列表中获得所述拓扑响应报文所属 交换机的MAC地址,所述拓扑响应报文所属交换机的MAC地址是所述MAC地址列表中的最 后一个MAC地址。所述非拓扑请求发起的交换机如果判断所述MAC地址列表中不包含其自身的MAC 地址,或者所述拓扑响应报文所属交换机的MAC地址等于所述非拓扑请求发起交换机自身 的MAC地址,即所述拓扑响应报文来自其自身,则不进行转发,从而有效地避免在存在环路 时广播风暴的发生。为了实现上述方法,本发明还提供了一种交换机,应用于集群管理中的拓扑收集 过程,如图4所示,包括接收模块、判断模块和发送模块,其中所述接收模块,用以接收拓扑响应报文;所述判断模块,用以判断所述接收模块接收到的拓扑响应报文的来源,在判断出 所述拓扑响应报文来自所述交换机的下游设备时,向所述发送模块发送转发指令;所述发送模块,用以接收到转发指令后,将所述接收模块接收到的拓扑响应报文 转发出去。进一步地,所述判断模块,是根据所述拓扑响应报文中的MAC地址列表来判断所 述拓扑响应报文的来源。进一步地,所述判断模块,是在判断出所述拓扑响应报文中的MAC地址列表中包 含其自身的MAC地址,且在所述MAC地址列表中所述拓扑响应报文所属交换机的MAC地址 位于所述非拓扑请求发起交换机自身的MAC地址之后,才判定所述拓扑响应报文来自所述非拓扑请求发起交换机下游设备。 当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,本 领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应 属于本发明所附的权利要求的保 护范围。
权利要求
一种报文转发方法,应用于集群管理中的拓扑收集过程,包括非拓扑请求发起交换机在接收到拓扑响应报文后,对所述拓扑响应报文的来源进行判断,根据判断结果仅转发其中来自所述非拓扑请求发起交换机下游设备的拓扑响应报文。
2.如权利要求1所述的方法,其特征在于所述非拓扑请求发起交换机是根据所述拓扑响应报文中的MAC地址列表来判断所述 拓扑响应报文的来源。
3.如权利要求2所述的方法,其特征在于所述非拓扑请求发起交换机是在判断出所述拓扑响应报文中的MAC地址列表中包含 其自身的MAC地址,且在所述MAC地址列表中所述拓扑响应报文所属交换机的MAC地址位 于所述非拓扑请求发起交换机自身的MAC地址之后,才判定所述拓扑响应报文来自所述非 拓扑请求发起交换机下游设备。
4.一种交换机,应用于集群管理中的拓扑收集过程,其特征在于,包括接收模块、判断 模块和发送模块,其中所述接收模块,用以接收拓扑响应报文;所述判断模块,用以判断所述接收模块接收到的拓扑响应报文的来源,在判断出所述 拓扑响应报文来自所述交换机的下游设备时,向所述发送模块发送转发指令;所述发送模块,用以接收到转发指令后,将所述接收模块接收到的拓扑响应报文转发出去。
5.如权利要求4所述的交换机,其特征在于所述判断模块,是根据所述拓扑响应报文中的MAC地址列表来判断所述拓扑响应报文 的来源。
6.如权利要求5所述的交换机,其特征在于所述判断模块,是在判断出所述拓扑响应报文中的MAC地址列表中包含其自身的MAC 地址,且在所述MAC地址列表中所述拓扑响应报文所属交换机的MAC地址位于所述非拓扑 请求发起交换机自身的MAC地址之后,才判定所述拓扑响应报文来自所述非拓扑请求发起 交换机下游设备。
全文摘要
本发明提供了一种集群管理中的报文转发方法和交换机,应用于集群管理中的拓扑收集过程,该方法包括非拓扑请求发起交换机在接收到拓扑响应报文后,对所述拓扑响应报文的来源进行判断,根据判断结果仅转发其中来自所述非拓扑请求发起交换机下游设备的拓扑响应报文。该方法能够有效地防止拓扑收集过程中发生广播风暴,保证网络拓扑的有效收集。
文档编号H04L12/56GK101848169SQ20101020717
公开日2010年9月29日 申请日期2010年6月22日 优先权日2010年6月22日
发明者张卫娥 申请人:中兴通讯股份有限公司