一种基于交换机的环路检测方法及环路检测装置的制造方法
【专利摘要】本发明公开了一种基于交换机的环路检测方法和环路检测装置,所述环路检测方法通过第一交换机的第一端口发送检测报文,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息;检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口ID信息及MAC地址信息相匹配;若匹配,则检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;若是,则检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;若匹配,则确认与第一交换机通过第一端口连通的相邻交换机存在环路。
【专利说明】
一种基于交换机的环路检测方法及环路检测装置
技术领域
[0001]本发明涉及通信技术领域,尤其涉及一种基于交换机的环路检测方法及环路检测
目.0
【背景技术】
[0002]交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
[0003]在网络环境中,由于交换机具有学习功能,网络内的主机只要发送给广播报,MAC地址都会被学习到存在网络环路的端口中。错误的MAC地址表,会直接造成网络中断,网络中发生过改动或变化的位置最容易发生故障现象,因为频繁改动网络时很容易引发网络环路。环路不可避免的出现在网络环境中,网络环路分为第二层环路和第三层环路,所有环路的形成都是由于目的路径不明确导致混乱而造成的,局域网环路故障原因分析主要是由于网络中有环路存在,造成每一帧都在网络中重复广播,引起了广播风暴。
[0004]当邻居交换机存在环路时,交换机的端口会学习错误地址并产生广播风暴。严重的情况下会导致交换机及整个网络瘫痪。在这种情况下,交换机会认为邻居交换机存在攻击行为,那么交换机应该屏蔽该攻击行为来保护自己,同时也不影响整个网络结构。
[0005]现有技术中解决环路问题的办法一般先观察,出现此种故障的网络基本属于设备较多,网线较乱的现象,首先在核心交换机可以观察端口,端口闪烁过于频繁则为不正常,可以拔掉其网线,观看电脑Ping测效果有无时延过大或丢包,从而判断是否由其网线接入环路信息。但是,该办法对于一些不明显的环路,无法检测到,从而不能够准确地检测到邻居交换机是否存在环路。
【发明内容】
[0006]本发明所要解决的技术问题是提供一种能够准确检测到邻居交换机是否存在环路的基于交换机的环路检测方法及环路检测装置。
[0007]为了解决上述问题,本发明提供了一种基于交换机的环路检测方法,包括以下步骤:
[0008]通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0009]检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0010]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,则检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0011]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0012]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,则确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0013]可选的,所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。
[0014]可选的,在确认与第一交换机通过第一端口连通的相邻交换机存在环路后,关闭第一交换机的第一端口。
[0015]可选的,在确认与第一交换机通过第一端口连通的相邻交换机存在环路后,清空第一端口的动态MAC地址信息。
[0016]可选的,在第一端口关闭的预设的时间段恢复第一端口处于正常状态。
[0017]本发明还提供了一种基于交换机的环路检测装置,所述环路检测装置包括:发送单元、第一检测单元、第二检测单元、第三检测单元以及确认单元;
[0018]发送单元用于通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0019]所述第一检测单元用于检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0020]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,所述第二检测单元检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0021]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,所述第三检测单元检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0022]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0023]可选的,所述发送单元将所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。
[0024]可选的,所述环路检测装置还包括处理单元,在所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路后,所述处理单元关闭第一交换机的第一端口。
[0025]可选的,所述环路检测装置还包括处理单元,在所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路后,所述处理单元清空第一端口的动态MAC地址
?目息O
[0026]可选的,所述环路检测装置还包括恢复单元,在所述处理单元关闭第一端口后,所述恢复单元在预设的时间段恢复第一端口处于正常状态。
[0027]与现有技术相比,本发明的技术方案具有以下优点:
[0028]本发明的检测报文包括的检测信息有VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息。首先,本发明检测第一交换机发送检测报文的端口 ID信息及MAC地址信息是否与第一交换机的第一端口接收到的报文的信息相匹配,来识别接收到的报文是否由第一交换机发出的检测报文,如果不是,那么就说明第一交换机的第一端口交互正常,如果是,那么就说明与第一交换机的第一端口交互的邻居交换机存在环路的可能性,进而对接收到的报文进行进一步的检测。其次,检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,若邻居交换机存在环路,则检测报文会快速的回到的第一交换机,设定预设的时间是为了屏蔽那些在网络转了很久的检测报文,用以限定检测报文的有效期。第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则说明检测报文在有效期的范围内,是有效的。然后,就再进一步的检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配,若相匹配,那么就说明邻居交换机收到报文中携带的端口MAC地址、端口 ID、VLANID、发包时刻信息与收包第一端口相符,则确认邻居交换机存在攻击行为,进而确认邻居交换机存在环路。本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。
[0029]进一步,本发明在确认邻居交换机存在环路时,及时关闭第一交换机的第一端口,以及及时清空第一端口的动态MAC地址信息,从而快速、有效的防止邻居交换机对第一交换机造成影响。另外,本发明通过交换机定期发送检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,然后关闭接收端口屏蔽攻击行为。这样检测效果更佳。
【附图说明】
[0030]图1是本发明一个实施例基于交换机的环路检测方法的流程示意图;
[0031]图2是本发明另一个实施例基于交换机的环路检测方法的流程示意图;
[0032]图3是本发明一个实施例基于交换机的环路检测装置的结构示意图;
[0033]图4是本发明另一个实施例基于交换机的环境检测装置的结构示意图;
[0034]图5是本发明第一交换机与相邻交换机交互的应用场景示意图。
【具体实施方式】
[0035]在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
[0036]其次,本发明利用示意图进行详细描述,在详述本发明实施例时,为便于说明,所述示意图只是实例,其在此不应限制本发明保护的范围。
[0037]交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
[0038]在网络环境中,由于交换机具有学习功能,网络内的主机只要发送给广播报,MAC地址都会被学习到存在网络环路的端口中。错误的MAC地址表,会直接造成网络中断,网络中发生过改动或变化的位置最容易发生故障现象,因为频繁改动网络时很容易引发网络环路。环路不可避免的出现在网络环境中,网络环路分为第二层环路和第三层环路,所有环路的形成都是由于目的路径不明确导致混乱而造成的,局域网环路故障原因分析主要是由于网络中有环路存在,造成每一帧都在网络中重复广播,引起了广播风暴。
[0039]当邻居交换机存在环路时,交换机的端口会学习错误地址并产生广播风暴。严重的情况下会导致交换机及整个网络瘫痪。在这种情况下,交换机会认为邻居交换机存在攻击行为,那么交换机应该屏蔽该攻击行为来保护自己,同时也不影响整个网络结构。
[0040]现有技术中解决环路问题的办法一般先观察,出现此种故障的网络基本属于设备较多,网线较乱的现象,首先在核心交换机可以观察端口,端口闪烁过于频繁则为不正常,可以拔掉其网线,观看电脑Ping测效果有无时延过大或丢包,从而判断是否由其网线接入环路信息。但是,该办法对于一些不明显的环路,无法检测到,从而不能够准备的检测到邻居交换机是否存在环路。
[0041]为了解决【背景技术】中的技术问题,本发明提供了一种基于交换机的环路检测方法及环路检测装置,其用于准确检测邻居交换机是否存在环路。其中,所述环路检测方法包括以下步骤:通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0042]检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0043]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,则检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0044]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0045]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,则确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0046]本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。
[0047]下面结合附图和具体实施例对本发明的技术方案做进一步说明。
[0048]图1为本发明一个实施例基于交换机的环路检测方法的流程示意图。图3为本发明一个实施例基于交换机的环路检测装置的结构示意图。所述环路检测方法包括由图3中的环路检测装置执行的步骤S101、步骤S102、步骤S103、步骤S104和步骤S105。
[0049]本环路检测方法包括以下步骤:
[0050]步骤SlOl:通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0051]步骤S102:检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0052]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,进入步骤S103。
[0053]步骤S103:检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0054]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,进入步骤S104。
[0055]步骤S104:检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0056]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,进入步骤S105。
[0057]步骤S105:确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0058]在环路检测方法过程中,首先,检测第一交换机发送检测报文的端口ID信息及MAC地址信息是否与第一交换机的第一端口接收到的报文的信息相匹配,来识别接收到的报文是否由第一交换机发出的检测报文,如果不是,那么就说明第一交换机的第一端口交互正常,如果是,那么就说明与第一交换机的第一端口交互的邻居交换机存在环路的可能性,进而对接收到的报文进行进一步的检测。其次,检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,若邻居交换机存在环路,则检测报文会快速的回到的第一交换机,设定预设的时间是为了屏蔽那些在网络转了很久的检测报文,用以限定检测报文的有效期。第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则说明检测报文在有效期的范围内,是有效的。然后,就再进一步的检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配,若相匹配,那么就说明邻居交换机收到报文中携带的端口MAC地址、端口 ID、VLANID、发包时刻信息与收包第一端口相符,则确认邻居交换机存在攻击行为,进而确认邻居交换机存在环路。本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。
[0059]本实施例检测报文包括的检测信息有VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息。对于本领域技术人员而言,其仅是本实施例检测信息的一种具体包括的内容,检测报文的检测信息并不限于此。
[0060]其中,所述检测报文的时刻信息可以为字段值。
[0061]其中,所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。本发明通过交换机定期发送检测报文,进一步提高检测效率。
[0062]图2为本发明另一个实施例基于交换机的环路检测方法的流程示意图。图4为本发明另一个实施例基于交换机的环路检测装置的结构示意图,本实施例的环路检测方法主要由图4中的环路检测装置来实现,其中,参照图1所示实施例中对推送装置所做的任何说明,均以引用的方式包含于此。
[0063]根据本实施例的环路检测方法包括步骤S201、步骤S202、步骤S203、步骤S204、步骤S205、步骤S206和步骤S207。
[0064]步骤S201:通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0065]步骤S202:检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0066]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,进入步骤S203。若不匹配则结束。
[0067]步骤S203:检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0068]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,进入步骤S204。若不在预设时间内,则结束。
[0069]步骤S204:检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0070]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,进入步骤S205。若不匹配,则结束。
[0071]步骤S205:确认与第一交换机通过第一端口连通的相邻交换机存在环路。在确认与第一交换机通过第一端口连通的相邻交换机存在环路后,进入步骤S206。
[0072]步骤S206:关闭第一交换机的第一端口,以及清空第一端口的动态MAC地址信息。并在第一端口关闭的预设的时间段进入步骤S207。
[0073]步骤S207:在第一端口关闭的预设的时间段恢复第一端口处于正常状态。
[0074]在本实施例的环路检测方法过程中,首先,检测第一交换机发送检测报文的端口ID信息及MAC地址信息是否与第一交换机的第一端口接收到的报文的信息相匹配,来识别接收到的报文是否由第一交换机发出的检测报文,如果不是,那么就说明第一交换机的第一端口交互正常,表明相邻交换机不存在环路,无需再进行检测或其他工作。如果是,那么就说明与第一交换机的第一端口交互的邻居交换机存在环路的可能性,进而对接收到的报文进行进一步的检测。其次,检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,若邻居交换机存在环路,则检测报文会快速的回到的第一交换机,设定预设的时间是为了屏蔽那些在网络转了很久的检测报文,用以限定检测报文的有效期。第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则说明检测报文在有效期的范围内,是有效的。如果接受到的报文未在有效期的范围内,也就是接受到的报文并不是通过第一端口外发的检测报文,则表明相邻的交换机不存在环路,无需再进行检测或其他操作。如果是有效的,然后,就再进一步的检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配,如果不匹配,则说明不存在环路,结束检测及其他操作。若相匹配,那么就说明邻居交换机收到报文中携带的端口 MAC地址、端口 ID、VLANID、发包时刻信息与收包第一端口相符,则确认邻居交换机存在攻击行为,进而确认邻居交换机存在环路。那么就进一步的关闭第一交换机的第一端口,以及清空第一端口的动态MAC地址信息,防止相邻交换机攻击。本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。
[0075]本实施例检测报文包括的检测信息有VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息。对于本领域技术人员而言,其仅是本实施例检测信息的一种具体包括的内容,检测报文的检测信息并不限于此。
[0076]其中,所述检测报文的时刻信息可以为字段值。
[0077]其中,所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。本发明通过交换机定期发送检测报文,进一步提高检测效率。
[0078]图3为本发明一个实施例基于交换机的环路检测装置的结构示意图。
[0079]所述环路检测装置包括:发送单元301、第一检测单元302、第二检测单元303、第三检测单元304以及确认单元305 ;
[0080]发送单元用于通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0081]所述第一检测单元用于检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0082]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,所述第二检测单元检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0083]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,所述第三检测单元检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0084]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0085]本发明发送装置将检测报文发送出去,第一检测装置检测第一交换机发送检测报文的端口 ID信息及MAC地址信息是否与第一交换机的第一端口接收到的报文的信息相匹配,来识别接收到的报文是否由第一交换机发出的检测报文,如果不是,那么就说明第一交换机的第一端口交互正常,表明相邻交换机不存在环路,无需再进行检测或其他工作。如果是,那么就说明与第一交换机的第一端口交互的邻居交换机存在环路的可能性,进而对接收到的报文进行进一步的检测。第二检测装置检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,若邻居交换机存在环路,则检测报文会快速的回到的第一交换机,设定预设的时间是为了屏蔽那些在网络转了很久的检测报文,用以限定检测报文的有效期。第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则说明检测报文在有效期的范围内,是有效的。如果接受到的报文未在有效期的范围内,也就是接受到的报文并不是通过第一端口外发的检测报文,则表明相邻的交换机不存在环路,无需再进行检测或其他操作。如果是有效的,第三检测装置检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配,如果不匹配,则说明不存在环路,结束检测及其他操作。若相匹配,那么就说明邻居交换机收到报文中携带的端口MAC地址、端口 ID、VLANID、发包时刻信息与收包第一端口相符,则确认装置确认邻居交换机存在攻击行为,进而确认邻居交换机存在环路。以便用户进行其他操作,防止相邻交换机攻击。本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。
[0086]本实施例检测报文包括的检测信息有VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息。对于本领域技术人员而言,其仅是本实施例检测信息的一种具体包括的内容,检测报文的检测信息并不限于此。
[0087]其中,所述检测报文的时刻信息可以为字段值。
[0088]其中,所述发送装置在预设的时间间隔通过第一交换机的第一端口发送检测报文。本发明通过交换机定期发送检测报文,进一步提高检测效率。
[0089]图4为本发明另一个实施例基于交换机的环路检测装置的结构示意图。
[0090]所述环路检测装置包括:第二发送单元401、第四检测单元402、第五检测单元403、第六检测单元404以、第二确认单元405、处理单元406及恢复单元407 ;
[0091 ]第二发送单元用于通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息;
[0092]所述第四检测单元用于检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配;
[0093]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,所述第五检测单元检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;
[0094]若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,所述第六检测单元检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配;
[0095]若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,所述第二确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路。
[0096]在所述第二确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路后,所述处理单元关闭第一交换机的第一端口,以及所述处理单元清空第一端口的动态MAC地址信息。
[0097]在所述处理单元关闭第一端口后,所述恢复单元在预设的时间段恢复第一端口处于正常状态。
[0098]本发明第二发送装置将检测报文发送出去,第四检测装置检测第一交换机发送检测报文的端口 ID信息及MAC地址信息是否与第一交换机的第一端口接收到的报文的信息相匹配,来识别接收到的报文是否由第一交换机发出的检测报文,如果不是,那么就说明第一交换机的第一端口交互正常,表明相邻交换机不存在环路,无需再进行检测或其他工作。如果是,那么就说明与第一交换机的第一端口交互的邻居交换机存在环路的可能性,进而对接收到的报文进行进一步的检测。第五检测装置检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,若邻居交换机存在环路,则检测报文会快速的回到的第一交换机,设定预设的时间是为了屏蔽那些在网络转了很久的检测报文,用以限定检测报文的有效期。第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则说明检测报文在有效期的范围内,是有效的。如果接受到的报文未在有效期的范围内,也就是接受到的报文并不是通过第一端口外发的检测报文,则表明相邻的交换机不存在环路,无需再进行检测或其他操作。如果是有效的,第六检测装置检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配,如果不匹配,则说明不存在环路,结束检测及其他操作。若相匹配,那么就说明邻居交换机收到报文中携带的端口MAC地址、端口 ID、VLANID、发包时刻信息与收包第一端口相符,则第二确认装置确认邻居交换机存在攻击行为,进而确认邻居交换机存在环路。从而处理单元就关闭第一交换机的第一端口,以及处理单元清空第一端口的动态MAC地址信息,防止相邻交换机攻击。本发明通过以上的检测步骤,逐层一一检测,检测准确,而且,若有信息不匹配或不符合,那么就无需继续以下的步骤,从而本发明对环路的检测不仅准确,而且高效。本发明通过交换机发送的检测报文,在有效的时间内收到相同的报文,则说明邻居交换机存在环路具有攻击行为,以便用户采取措施,以防止邻居交换机对第一交换机造成影响。另外,本发明还可以在所述处理单元关闭第一端口后,所述恢复单元在预设的时间段恢复第一端口处于正常状态。
[0099]本实施例检测报文包括的检测信息有VLANID信息、端口ID信息、MAC地址信息以及发送检测报文时的时刻信息。对于本领域技术人员而言,其仅是本实施例检测信息的一种具体包括的内容,检测报文的检测信息并不限于此。
[0100]其中,所述检测报文的时刻信息可以为字段值。
[0101]其中,所述第二发送装置在预设的时间间隔通过第一交换机的第一端口发送检测报文。本发明通过交换机定期发送检测报文,进一步提高检测效率。
[0102]在本发明中,图5是本发明第一交换机A与相邻交换机B交互的应用场景示意图,第一交换机A通过其第一端口向相邻交换机B发送检测报文。其中,检测报文及第一交换机A向相邻交换机B发送检测报文后的部分参见图1至图4。这里不再一一详述。
[0103]需要说明的是,通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明的部分或全部可借助软件并结合必需的通用硬件平台来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可包括其上存储有机器可执行指令的一个或多个机器可读介质,这些指令在由诸如计算机、计算机网络或其他电子设备等一个或多个机器执行时可使得该一个或多个机器根据本发明的实施例来执行操作。机器可读介质可包括,但不限于,软盘、光盘、CD-ROM(紧致盘-只读存储器)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPR0M(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储机器可执行指令的其他类型的介质/机器可读介质。
[0104]本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等。
[0105]本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0106]需要说明的是,本领域技术人员可以理解,上述部分组件可以是可编程逻辑器件,包括:可编程阵列逻辑(ProgrammabIe Array Logic,PAL)、通用阵列逻辑(Generic ArrayLogic,GAL)、现场可编程门阵列(Field—Programmable Gate Array ,FPGA)、复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)中的一种或多种,本发明对此不做具体限制。
[0107]本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
【主权项】
1.一种基于交换机的环路检测方法,其特征在于,包括以下步骤: 通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息; 检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配; 若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,则检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内; 若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,则检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配; 若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,则确认与第一交换机通过第一端口连通的相邻交换机存在环路。2.根据权利要求1所述的基于交换机的环路检测方法,其特征在于,所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。3.根据权利要求1所述的基于交换机的环路检测方法,其特征在于,在确认与第一交换机通过第一端口连通的相邻交换机存在环路后,关闭第一交换机的第一端口。4.根据权利要求1所述的基于交换机的环路检测方法,其特征在于,在确认与第一交换机通过第一端口连通的相邻交换机存在环路后,清空第一端口的动态MAC地址信息。5.根据权利要求3所述的基于交换机的环路检测方法,其特征在于,在第一端口关闭的预设的时间段恢复第一端口处于正常状态。6.一种基于交换机的环路检测装置,其特征在于,所述环路检测装置包括:发送单元、第一检测单元、第二检测单元、第三检测单元以及确认单元; 发送单元用于通过第一交换机的第一端口发送检测报文,其中,所述检测报文包括检测信息,所述检测信息包括VLANID信息、端口 ID信息、MAC地址信息以及发送检测报文时的时刻信息; 所述第一检测单元用于检测第一交换机的第一端口接收到的报文的信息是否与第一交换机发送检测报文的端口 ID信息及MAC地址信息相匹配; 若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的端口 ID信息及MAC地址信息相匹配,所述第二检测单元检测第一交换机的第一端口接收的报文的信息是否与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内;若第一交换机的第一端口接收的报文的信息与第一交换机的第一端口发送检测报文的时刻信息在预设的时间内,所述第三检测单元检测第一交换机的第一端口接收到的报文的信息是否与第一交换机的第一端口发送检测报文的VLANID信息相匹配; 若第一交换机的第一端口接收到的报文的信息与第一交换机的第一端口发送检测报文的VLANID信息相匹配,所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路。7.根据权利要求6所述的基于交换机的环路检测装置,其特征在于,所述发送单元将所述检测报文在预设的时间间隔通过第一交换机的第一端口发送。8.根据权利要求6所述的基于交换机的环路检测装置,其特征在于,所述环路检测装置还包括关闭单元,在所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路后,所述关闭单元关闭第一交换机的第一端口。9.根据权利要求6所述的基于交换机的环路检测装置,其特征在于,所述环路检测装置还包括清空单元,在所述确认单元确认与第一交换机通过第一端口连通的相邻交换机存在环路后,所述清空单元清空第一端口的动态MAC地址信息。10.根据权利要求8所述的基于交换机的环路检测装置,其特征在于,所述环路检测装置还包括恢复单元,在所述关闭单元关闭第一端口后,所述恢复单元在预设的时间段恢复第一端口处于正常状态。
【文档编号】H04L29/06GK105933180SQ201610224218
【公开日】2016年9月7日
【申请日】2016年4月12日
【发明人】聂琴
【申请人】上海斐讯数据通信技术有限公司