具体实施方式
如背景技术所述,现有的堆叠系统的处理策略中,在出现堆叠分裂时,会关闭处于Recovery状态的设备的所有业务接口,这样,所有被关闭的业务接口将无法访问,即使设置了保留接口,也会因为分裂后的各设备拥有相同的地址信息配置,而导致无法正常访问相应的保留接口,因此,对于堆叠分裂后的各设备,现有技术中缺少相应的接口访问方案。
本发明正是基于此问题提出了一种堆叠系统的堆叠冲突的处理方法,当堆叠系统发生分裂且通过分裂检测机制检测到网络中存在多个Active冲突时,用户依然能够正常访问各设备中的保留接口,包括Telnet接口,以及需要继续使用的VLAN接口等,以便后续的各种操作和维护。最终解决堆叠系统分裂后各设备拥有相同的MAC及IP地址信息配置,而导致的地址冲突问题。
如图4所示,为本发明提出的一种堆叠冲突的处理方法的流程示意图,该方法具体包括以下步骤:
步骤S401、主设备接收其他主设备发送的MAD报文。
本步骤中的MAD检测报文,主要为了检测堆叠系统的分裂,判断当前网络中是否存在多Active冲突,包括链路聚合控制协议(Link Aggregation ControlProtocol,LACP)、双向转发检测(Bidirectional Forwarding Detection,BFD)或者免费地址解析协议(Gratuitous Address Resolution Protocol,免费ARP)等多种方式,具体的检测规则的变化并不会影响本发明的保护范围。
如果按照相应的检测规则,和接收到的MAD报文确定本设备所属的堆叠系统应切换为Recovery状态,则执行步骤S402。
步骤S402、所述主设备关闭本设备和本设备所属的堆叠系统的其他设备中的所有非保留接口,并激活本设备的各保留接口所对应的虚地址。
其中,所述保留接口所对应的虚地址,具体包括以下两种形式:
(1)不与当前网络中的其他IP地址相冲突的IP地址。
在具体的应用场景中,可以通过冲突地址表项来记录当前网络中已应用或者已配置的IP地址,那么,在进行相应的虚地址配置时,可以查询该冲突地址表项,保证所述主设备的各保留端口所对应的虚地址不与记录当前网络中已应用或已配置的IP地址的冲突地址表项中所记录的任一IP地址的内容相同即可。
当然,配置完成后,本设备的各保留端口所对应的虚地址信息也需要记录到该冲突地址表项中,以避免以后所配置的其他设备的保留接口的虚地址与本设备相冲突。
具体的,一种确定作为虚地址的IP地址的方式是作为所述主设备的网络设备根据当前网络分配给其所归属的堆叠系统中相应接口的IP地址,按照预设的算法所确定的,相应的算法可以根据实际需要设定。
(2)不与当前网络中的其他地址信息相冲突的IP地址和MAC地址的组合。
在具体的应用场景中,可以通过冲突地址表项来记录当前网络中已应用或者已配置的IP地址和MAC地址组合所形成的地址信息,那么,在进行相应的虚地址配置时,可以查询该冲突地址表项,保证所述主设备的各保留端口所对应的虚地址不与记录当前网络中已应用或已配置的IP地址和MAC地址的组合的冲突地址表项中所记录的任一IP地址和MAC地址的组合的内容相同即可。
当然,配置完成后,本设备的各保留端口所对应的虚地址信息也需要记录到该冲突地址表项中,以避免以后所配置的其他设备的保留接口的虚地址与本设备相冲突。
具体的,一种确定作为虚地址的IP地址和MAC地址组合的方式具体可以为:按照(1)中的方式,确定IP地址,并根据当前网络分配给其所归属的堆叠系统中相应接口的MAC地址,或自身所配置的相应接口的MAC地址确定相应的MAC地址,并将IP地址和MAC地址进行绑定,作为相应的保留接口的虚地址。
其中,根据当前网络分配给其所归属的堆叠系统中相应接口的MAC地址确定相应的MAC地址,具体为直接将本设备所归属的堆叠系统中的各相应接口的MAC地址作为自身相对应的各保留接口的MAC地址,这样的处理策略可以在相应的接口访问机制对MAC地址要求不高(只靠IP地址即可实现接口区分,而之前说明的IP地址确定方式已经保证了各接口的IP地址彼此不同)的情况下应用。
而另一方面,根据自身所配置的相应接口的MAC地址确定相应的MAC地址,具体为将本设备自身各保留接口所对应的原始MAC地址(即出厂配置时所设置的原始MAC地址)确定为自身各保留接口的MAC地址,这样的处理后,当前网络中的各网络设备之间相应的保留接口的MAC地址设置彼此不同,这样的处理策略可以在相应的接口访问机制要求MAC地址信息(只靠IP地址不足以实现接口区分,或者直接通过MAC地址进行接口访问)的情况下应用。
在具体的应用场景中,前述步骤所提及的接口具体为网管接口和业务接口,在实际的操作中,同种类型的接口可以采用相同的MAC地址。
在堆叠系统分裂时,各网络设备的实际地址配置信息是一样的,具有相同的IP地址和MAC地址,从而会产生冲突,因此,除了其中的一个分裂后的设备会继续正常工作外,其他的分裂后的设备都将变为Recovery状态,即表示该设备处于禁用状态。
但是,由于之前在步骤中各网络设备已经配置了自身各保留接口配置了相应的虚地址,因此,在堆叠系统分裂后,需要切换为Recovery状态的堆叠系统的主设备激活自身各保留接口的虚地址,使各保留接口具有不与其他地址相冲突的新的地址,可以通过这样的被激活的虚地址对不同的保留接口进行直接访问。
需要指出的是,要实现这样的接口访问,需要提前将存在访问需要的接口配置为保留接口,这样配置后,在堆叠系统分裂后将不会关闭这些接口,可以通过相对应的虚地址对这样的接口进行直接访问。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,为各堆叠成员设备中的各保留接口配置处于备用状态的虚地址,并在堆叠系统分裂后激活相应的虚地址,通过虚地址实现相应的接口的访问,从而,当堆叠系统分裂后,可以使用激活的虚地址访问保留接口,以便进行后续的各种操作和维护,解决堆叠系统分裂后多成员设备因为相同的地址信息配置导致冲突,无法进行接口访问的问题,提高了系统控制的灵活性。
为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。
为了描述方便,本发明实施例中具体以IRF设备作为堆叠系统的一种具体示例,对本发明所提出的技术方案进行说明,在实际应用中,具体堆叠系统类型的变化并不会影响本发明的保护范围。
按照本发明前述的处理策略,需要进行设备地址配置时,按照某种特定规则算法,依赖为该设备初始配置的接口地址(包含网管接口、VLAN接口等),分别为该设备中的各保留接口预分配一个类似设备MAC地址的,可以在当前网络中中唯一标识该接口的虚地址,该具体值可以是一个处于备用状态的IP地址,也可以是一个处于备用状态的MAC地址和IP地址的组合。
接下来,以MAC地址和IP地址的组合作为虚地址的情况为例进行说明。
在IRF设备的IRF成员设备2中,保留接口包括网管接口、VLAN100接口和VLAN200接口等,则(MAC-1+IP-1)为VLAN100接口所对应的虚地址,(MAC-1+IP-2)为VLAN200接口所对应的虚地址,参照前述的说明,两者都是VLAN接口,属于同一类型的接口,所以,采用了相同的MAC地址,但其所采用的IP地址是不同的,当然,如果具体的场景需要,也可以为这两个接口配置不同的MAC地址。
(MAC-2+IP-3)为网管接口所对应的虚地址,余下的地址依次类推,不再一一列举额。
上述虚地址仅在IRF设备分裂时才会被激活使用,其中,MAC地址可以是各设备自身的各接口的原始MAC地址,也可以是一律采用各设备所归属的IRF设备的相应的接口的MAC地址,而IP地址则是根据初始配置给IRF设备的各接口的IP地址,按照预设的算法推算得到的IP地址。
在实际的应用中,对于一个IRF设备,其所包含的各IRF成员设备的保留接口所配置的虚地址可能包含相同的MAC地址(即IRF设备相对应接口的MAC地址),而且,同一个IRF成员设备中,同种类型的保留接口(VLAN100接口和VLAN200接口)所配置的虚地址也可能包含相同的MAC地址,但是,不管是在同一个IRF成员设备内部,还是在IRF设备的各IRF成员设备之间,各保留接口所配置的虚地址中所包含的IP地址均不相同。
基于这样的规则限定,这种MAC地址和IP地址的绑定关系在本网络内具有唯一性和灵活性,即上述的地址分配可以依赖于IRF设备的各类型接口的原始地址配置,但又区别于网络中所应用的其他地址信息。
这种实现方式更方便用户的灵活使用,具体的,实现以网管接口的访问为例,对相应的技术方案进行说明如下:
假设IRF设备中共有四个IRF成员设备(IRF1~4),且各IRF成员设备中的保留接口只有网管接口,其中,IRF1为主设备(Master)。
初始时,为该IRF设备的网管接口配置了可登录的IP地址:192.168.213.108/24,该IP地址可以直接作为IRF设备中的主设备(IRF1)的网管接口的IP地址。
之后,根据该IP地址,按照预设的算法,为除Master外的其他三个从设备(Slave)(IRF2~IRF4)的网管接口分配一个不低于24位掩码的子网地址,且分配的地址不与网络中所应用的其他地址相冲突,例如:
采用末位加一的算法,且保证为IRF2~4的网管接口所分配的IP地址所处的网段与IRF1的网管接口的IP地址所处的网段相同,根据这样的算法,为IRF2的网管接口所分配的IP地址为192.168.213.109/24,为IRF3的网管接口所分配的IP地址为192.168.213.110/24,为IRF4的网管接口所分配的IP地址为192.168.213.111/24。
与此同时,保持主设备(IRF1)仍然拥有IRF设备初始配置的网管接口的MAC地址和IP地址,(0000-0000-0001 192.168.213.108/24),作为主设备的网管接口的虚地址,并将上述计算得到的各IP地址和各从设备的唯一标识自己的网管接口的MAC地址进行绑定,相应的,各设备的网管接口的虚地址分别为:
IRF1的虚地址:(0000-0000-0001 192.168.213.108/24);
IRF2的虚地址:(0000-0000-0002 192.168.213.109/24);
IRF3的虚地址:(0000-0000-0003 192.168.213.110/24);
IRF4的虚地址:(0000-0000-0004 192.168.213.111/24)。
通过上述的处理,IRF设备中的各成员设备便都拥有各自的网管接口的虚地址,记录在IRF系统信息中。这些信息在IRF设备形成之初就可以通过命令行查询,可以被用户获取。
IRF设备正常运行时,网管接口的各虚地址不生效,处于备用状态。一旦IRF设备出现故障,网络中出现多Active时,分裂后的各IRF设备中的主设备的备用状态的虚地址便会转换为激活状态。
例如,本实施例中的IRF设备分裂成了IRF1所组成的IRF设备,和IRF2、IRF3和IRF3所组成的IRF设备,其中,IRF1和IRF2分别为两个IRF设备中的主设备,那么,转换为激活状态的虚地址将是IRF1和IRF2的虚地址,而IRF3和IRF4中的虚地址仍为备用状态。
由于在前述的地址分配过程中已经考虑了避免虚地址分配上的冲突的问题,所以,当IRF设备分裂时,可以保证各接口的处于激活状态的虚地址之间,以及网络中的其他地址不会出现地址冲突,保证用户仍然可以顺利通过网管接口(Telnet)访问各个设备。
在具体的应用场景中,避免地址冲突的方法可以通过配置冲突地址表项来实现:该冲突地址表项可以由用户直接进行配置编辑,也可以是在网络中自动收集相应的地址信息,该冲突地址表项中的内容供前述的为各IRF成员设备进行地址分配处理时参考使用,当然,在进行了新的虚地址的配置后,相应的信息也需要更新到该冲突地址表项中。
上述实现方案适用于IRF设备中配置的任意一种MAD检测方案。但有个前提,必需事先将网管接口配置为保留接口,也就是上述的虚地址都是配置给保留接口的,否则,由于检测协议的存在,当出现多Active时,网管接口是会被关闭的,前述的技术方案也就失去了意义。
当然,上述的说明过程中是以只设置网管接口为保留接口的情况为例进行说明的,在实际应用中,还可以设置多个保留接口,例如将VLAN100和VLAN200同样设置为保留接口,那么,相应的处理方式以此类推,不再一一说明。
通过上述的说明,需要指出的是,从应用上考虑,上述的处理过程中所分配的虚地址所使用到的算法需要满足以下条件:
(1)MAC+IP的虚地址集信息可被查询,可修改,相应的算法依据主要为初始配置给IRF设备的业务接口IP地址及设备自身的MAC地址,即前述的在IRF设备形成之初就可以通过命令行查询相应的虚地址信息。
(2)虚地址集根据保留接口的信息需要区分应用类型,即MAC+IP的绑定需要表明清楚应用的对象,具体到某接口,例如前述的网管接口,VLAN100接口和VLAN200接口。
(3)各虚地址中的IP地址所处的网段应小于或等于主地址中的IP地址所处的网段。
在上述的示例中,给出的处于同一个网段的IP地址算法,小于主地址的IP地址所处的网段的情况可以依此类推,不再另行说明。
(4)各虚地址之间以及与主地址都不能出现冲突。
(5)能够配置冲突地址表项,主要用来记录网络中已经使用的地址及网段,此类地址不能用于虚地址分配,以防止和网络中的其他设备地址发生冲突。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,为各堆叠成员设备中的各保留接口配置处于备用状态的虚地址,并在堆叠系统分裂后激活相应的虚地址,通过虚地址实现相应的接口的访问,从而,当堆叠系统分裂后,可以使用激活的虚地址访问保留接口,以便进行后续的各种操作和维护,解决堆叠系统分裂后多成员设备因为相同的地址信息配置导致冲突,无法进行接口访问的问题,提高了系统控制的灵活性。
为了实现本发明的技术方案,基于前述的说明,本发明还提出了一种网络设备,该网络设备包括至少一个保留接口,可用于与其他一台以上的堆叠成员设备通过堆叠口连接组成堆叠系统,其结构示意图如图5所示,具体说明如下:
接收模块51,用于接收其他主设备发送的MAD报文;
处理模块52,用于当根据预设的MAD检测规则确定本设备所属的堆叠系统应切换为Recovery状态时,关闭本设备和本设备所属的堆叠系统的其他设备中的所有非保留接口,并激活本设备的各保留接口所对应的虚地址。
其中,上述的保留接口所对应的虚地址,具体包括:
不与当前网络中的其他IP地址相冲突的IP地址;或,
不与当前网络中的其他地址信息相冲突的IP地址和MAC地址的组合。
在具体的实施场景中,上述的接口,具体包括网管接口和/或业务接口。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,为各堆叠成员设备中的各保留接口配置处于备用状态的虚地址,并在堆叠系统分裂后激活相应的虚地址,通过虚地址实现相应的接口的访问,从而,当堆叠系统分裂后,可以使用激活的虚地址访问保留接口,以便进行后续的各种操作和维护,解决堆叠系统分裂后多成员设备因为相同的地址信息配置导致冲突,无法进行接口访问的问题,提高了系统控制的灵活性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。