矩阵堆叠系统的拓扑发现方法和设备的制作方法

文档序号:7555356阅读:225来源:国知局
专利名称:矩阵堆叠系统的拓扑发现方法和设备的制作方法
技术领域
本申请涉及网络通信技术,特别涉及矩阵堆叠系统的拓扑发现方法和设备。
背景技术
堆叠,实质是将一台以上的交换设备组合起来共同工作,以便在有限的空间内提供尽可能多的端口。支持堆叠的多台交换设备互连组成一个联合设备,该联合设备称为一个堆叠系统(Stacking),而组成该堆叠系统的每个交换设备称为一个成员设备(Slot)。多个Slot组成堆叠系统后,无论在管理上还是在使用上,就成为了一个整体。参见图1,图1为堆叠系统的结构示意图。在图1中,该堆叠系统由9个Slot组成,分别为Slotl至Slot9。其中,每个Slot配置两个外部堆叠口,分别记为第一堆叠口(Pl)和第二堆叠口(P2),相邻两个Slot之间按照其中一个Slot的Pl连接另一个Slot的P2的方式进行堆叠,比如,图1中的Slotl通过Pl连接Slot9的P2,以及Slot9的Pl连接Slot8的P2,依次类推,图1所示的9个Slot可堆叠成环形堆叠系统或链形堆叠系统,图1仅示出了环形堆叠系统。目前,还未有应用于矩阵堆叠系统的拓扑发现方法,这限制了矩阵堆叠系统的扩展应用。

发明内容
本申请提供了矩阵堆叠系统的拓扑发现方法和设备,以实现在矩阵形的堆叠系统中进行拓扑发现,扩展堆叠系统。本申请提供的技术方案包括:—种矩阵堆叠系统的拓扑发现方法,所述方法包括:各成员设备通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆置口的标识和状态;各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息识别本堆叠组的物理拓扑;各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息选举本堆叠组的堆叠组主设备;各成员设备将收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组;各堆叠组的主设备通过所述组间堆叠聚合组收集其他堆叠组的拓扑信息;各堆叠组的主设备识别所述堆叠系统的物理拓扑为矩阵拓扑;各堆叠组的主设备选举堆叠系统的拓扑信息主堆叠组;所述主堆叠组的堆叠组主设备作为所述堆叠系统的堆叠系统主设备。一种应用于矩阵堆叠系统的拓扑发现的设备,所述设备包括:第一拓扑发现单元, 用于通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态;第一拓扑计算单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息识别本堆叠组的物理拓扑;第一选举单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息选举本堆叠组的堆叠组主设备;堆叠管理单元,用于将所述第一拓扑发现单元收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组;第二拓扑发现单元,用于在所述设备被选举为堆叠组的主设备时通过所述组间堆叠聚合组收集其他堆叠组的拓扑信息;第二拓扑计算单元,用于在所述设备被选举为堆叠组的主设备时识别所述堆叠系统的物理拓扑为矩阵拓扑;第二选举单元,用于在所述设备被选举为堆叠组的主设备时选举堆叠系统的拓扑信息主堆叠组;其中,所述主堆叠组的堆叠组主设备作为所述堆叠系统的堆叠系统主设备。由以上技术方案可以看出,本发明中,先收集堆叠组内的拓扑信息,再从每一堆叠组内选举一个堆叠组主设备以代表其所处的堆叠组收集其他堆叠的拓扑信息,实现了堆叠组内的拓扑信息与堆叠组间的拓扑信息分级进行拓扑信息收集,这能在矩阵堆叠系统中快速、准确实现拓扑信息的收集,实现了在矩阵形的堆叠拓扑结构中进行拓扑发现,扩展堆叠系统。


图1为链形堆叠系统的示意图;图2为本发明实施例1提供的堆叠系统示意图;图3为本发明实施例2提供的堆叠系统示意图;图4为本发明实施例3提供的堆叠系统示意图;图5为本发明实施·例4提供的堆叠系统示意图;图6为本发明实施例5提供的堆叠系统示意图;图7为本发明实施例提供的设备结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本申请中,将两个以上的堆叠组之间进行环形连接或链形连接,以构成具有矩阵拓扑的堆叠系统。堆叠系统中成员设备的总和大于堆叠组的总和。堆叠组可以具有一个堆叠成员设备或两个以上的堆叠成员设备。具有两个以上的堆叠成员设备的堆叠组的堆叠拓扑是环形或链形。每个堆叠组可以看作堆叠系统的矩阵拓扑的一行或一列。本申请提供了应用于上述矩阵堆叠系统中的拓扑发现方法,在该方法中,堆叠组内多个堆叠成员设备之间的连接方式与堆叠系统内的堆叠组之间的连接方式可以相同也可以不同。即,堆叠组内多个堆叠成员设备之间进行环形连接时,堆叠组之间可以进行环形连接也可以进行链形连接;或者,堆叠组内多个堆叠成员设备之间进行链形连接时,堆叠组之间可以进行环形连接也可以进行链形连接。下面通过五个实施例对本发明提供的拓扑发现方法进行描述:实施例1:
以图2所示矩阵堆叠系统为例,在图2所示的堆叠系统中包含以下三个堆叠组:堆叠组I至堆叠组3。堆叠组I至堆叠组3各个堆叠组内的Slot采用环状连接,且都设置了第一组内堆叠口(通过R-Pl标识)和第二组内堆叠口(通过R-P2标识)。同一堆叠组内相邻两个Slot的R-Pl和R-P2通过堆叠链路互连,以形成堆叠组内Slot之间的环形连接。以图2所示的堆叠组I为例,在堆叠组I中,Slotl和Slot2相邻,Slot2和Slot3相邻,Slot3和Slotl相邻,按照同一堆叠组内相邻两个Slot的R-Pl和R-P2通过堆叠链路连接,则Slotl的R-P2通过堆叠链路连接Slot2的R-Pl、Slot2的R-P2通过堆叠链路连接Slot3的R-Pl、Slot3的R-P2通过堆叠链路连接Slotl的R-Pl,这样堆叠组I的Slotl至Slot3之间就形成环形连接。同样,在堆叠组I中,Slotl至Slot3之间的环形连接的方式还有=Slotl的R-Pl通过堆叠链路连接Slot2的R-P2、Slot2的R-Pl通过堆叠链路连接Slot3的R-P2、Slot3的R-Pl通过堆叠链路连接Slotl的R-P2,这样堆叠组I的Slotl至Slot3之间形成了环形连接,这种连接方式未在图2示出。图2中堆叠组2的Slot4至Slot6以及堆叠组3的Slot7至Slot9以环形连接的方式类似相同,不再赘述。在图2中,堆叠组I至堆叠组3的三个堆叠组之间进行环状连接、且该三个堆叠组的每个Slot都设有第一组间堆叠口(通过A-Pl标识)和第二组间堆叠口(通过A-P2标识),相邻堆叠组内的Slot之间按照一个Slot的A-Pl通过堆叠链路连接另一个Slot的A-P2的方式互连。如图2所示,堆叠组I和堆叠组3是相邻的堆叠组、堆叠组I和堆叠组2是相邻的堆叠组、堆叠组2和堆叠组3是相邻的堆叠组,则堆叠组I的Slotl - Slot3的A-Pl (每个slot上均设有三个A-Pl)分别通过堆叠链路与堆叠组3的Slot7-Slot9的A-P2互连,堆叠组I的Slotl - Slot3的A-P2 (每个slot上均设有三个A-P2)分别通过堆叠链路与堆叠组2的Slot4 - Slot6的A-Pl互连、堆叠组2的Slot4 — Slot6的A-P2通过堆叠链路与堆叠组3的Slot7-Slot9的A-Pl互连,如此三个堆叠组之间形成环形连接。
本实施例1中,堆叠组I至堆叠组3各个堆叠组内的Slot采用环形堆叠拓扑发现方式收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态。其中,Slot上组间堆叠口的状态具体为:在Slot初始加入堆叠组时,该Slot上设有的组间堆叠口的状态为关闭状态,而在其他时候,当组间堆叠口正常工作(UP)时,则其状态为打开状态,反之,当组间堆叠口故障(DOWN)或无效时,则其状态为关闭状态。下面描述堆叠组I至堆叠组3各个堆叠组内的Slot如何采用环形堆叠拓扑发现方式收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态:Slotl通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slotl发送的本设备的组间堆叠口的标识和状态包括=Slotl上A-Pl的标识和状态、A-P2的标识和状态。Slot2通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slot2发送的本设备的组间堆叠口的标识和状态包括:Slot2上A-Pl的标识和状态、A-P2的标识和状态。Slot3通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slot3发送的本设备的组间堆叠口的标识和状态包括:Slot3上A-Pl的标识和状态、A-P2的标识和状态。Slotl通过本设备的R-Pl接收邻居Slot3发送的拓扑信息和组间堆叠口的标识和状态,其中包括:Slot3的拓扑信息、Slot3的A-Pl的标识和状态以及Slot3的A-P2的标识和状态。Slotl将本设备的拓扑信息和组间堆叠口的标识和状态添加在通过本设备R-Pl收到的拓扑信息以及组间堆叠口的标识和状态之前,通过本设备的R-P2发送给邻居Slot2。其中,堆叠组拓扑信息的排列顺序依次为:Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl通过本设备的R-P2接收邻居Slot2发送的拓扑信息和组间堆叠口的标识,其中包括:Slot2的拓扑信息、Slot2的A-Pl的标识和状态、Slot2的A-P2的标识和状态。Slotl将本设备的拓扑信息和组间堆叠口的标识和状态添加在通过本设备R-Pl收到的拓扑信息和组间堆叠口的标识和状态之前,通过本设备的R-Pl发送给邻居Slot3。其中,堆叠组拓扑信息的排列顺序依次为:Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、Slotl的拓扑信息以及S lotl的组间堆叠口的标识和状态。Slotl比较通过本设备的R-Pl接收的拓扑信息与通过本设备的R-P2接收的拓扑信息,发现通过本设备的R-Pl和R-P2接收的两组拓扑信息中起始设备拓扑信息分别是Slot3的拓扑信息和Slot2的拓扑信息,则确定堆叠组I未拓扑收敛。Slot2和Slot3通过各自的组内堆叠口收到拓扑信息和组间堆叠口的标识之后的处理方式与Slotl相同,Slot2和Slot3确定堆叠组I未收敛的方式与Slotl相同。之后,Slotl通过本设备的R-Pl接收Slot3发送的拓扑信息和组间堆叠口的标识,其中包括:Slot2的拓扑信息以及组间堆叠口的标识和状态、Slot3的拓扑信息以及组间堆叠口的标识和状态。Slotl将本设备的拓扑信息和组间堆叠口的标识和状态添加在通过本设备的R-Pl收到的拓扑信息以及组间堆叠口的标识和状态之前,通过本设备的R-P2发送给邻居Slot2。其中,堆叠组拓扑信息的排列顺序依次为:Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl继续通过本设备的R-P2接收Slot2发送的拓扑信息和组间堆叠口的标识,其中包括:Slot3的拓扑信息以及组间堆叠口的标识和状态、Slot2的拓扑信息以及组间堆叠口的标识和状态。Slotl将本设备的拓扑信息和组间堆叠口的标识和状态添加在通过本设备的R-P2收到的拓扑信息以及组间堆叠口的标识和状态之前,通过本设备的R-Pl发送给邻居Slot3。其中,堆叠组拓扑信息的排列顺序依次为:Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl比较本设备的R-Pl与R-P2接收的两组拓扑信息,发现通过本设备的R-Pl和R-P2接收的两组拓扑信息中起始设备拓扑信息分别是Slot2的拓扑信息和Slot3的拓扑信息,则确定堆叠组I未拓扑收敛。Slot2和Slot3通过各自的组内堆叠口收到拓扑信息和组间堆叠口的标识之后的处理方式与Slotl相同,Slot2和Slot3确定堆叠组I未收敛的方式与Slotl相同。Slotl继续通过本设备的R-Pl接收Slot3发送的拓扑信息和组间堆叠口的标识,其中包括=Slotl的拓扑信息以及组间堆叠口的标识和状态、Slot2的拓扑信息以及组间堆叠口的标识和状态、Slot3的拓扑信息以及组间堆叠口的标识和状态I。Slotl确定本设备R-Pl收到的拓扑信息中起始设备拓扑信息是本设备的拓扑信息,则删除起始设备的拓扑信息,然后将本设备的拓扑信息和组间堆叠口的标识和状态添加Slot2和Slot3的拓扑信息以及组间堆叠口的标识和状态之前,通过本设备的R-P2发送给Slot2。其中,堆叠组拓扑信息的排列顺序依次为:Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、Slotl的拓扑信息以及Slotl的组间堆置口的标识和状态。Slotl继续通过本设备的R-P2接收Slot2发送的拓扑信息和组间堆叠口的标识,其中包括=Slotl的拓扑信息以及组间堆叠口的标识和状态、Slot3的拓扑信息以及组间堆叠口的标识和状态、Slot2的拓扑信息以及组间堆叠口的标识和状态。Slotl确定本设备R-Pl收到的拓扑信息中起始设备拓扑信息是本设备的拓扑信息,则删除起始设备的拓扑信息,然后Slotl将本设备的拓扑信息和组间堆叠口的标识和状态添加在通过本设备R-P2收到的拓扑信息以及组间堆叠口的标识和状态之前,通过本设备的R-Pl发送给Slot2。其中,堆叠组拓扑信息的排列顺序依次为:Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl比较本设备的R-Pl接和R-P2接收的两组拓扑信息,发现两组拓扑信息中的起始设备拓扑信息是本设备的拓扑信息,且两组拓扑信息包含相同设备的拓扑信息但排列顺序相反、以及两组拓扑信息中每个设备的拓扑信息均有两个组内堆叠口 R-Pl和R-P2,则确定堆叠组I拓扑收敛。Slotl根据收敛的拓扑确定堆叠组I的物理拓扑是环形拓扑。Slot2、Slot3识别堆叠组I的物理拓扑是环形拓扑的方式与Slotl相同。SlotU Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口 A-Pl和堆叠组I内其他Slot的处于工作状态的A-Pl分别绑定为一个链路聚合组,称为第一组间堆叠聚合组。Slotl、Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口 A-P2和堆叠组I内其他Slot的处于工作状态的A-P2绑定为一个链路聚合组,称为第二组间堆叠聚合组。Slotl - S lot3选举出其中一个Slot作为堆叠组I的堆叠组主设备。堆叠组2以及堆叠组3中各Slot以相同的方式收集本堆叠组内所有Slot的拓扑信息、识别本堆叠组的物理拓扑、将本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组、以及选举本堆叠组的堆叠组主设备。假如Slotl被选举为堆叠组I的主设备、Slot4被选举为堆叠组2的主设备、Slot7被选举为堆叠组3的主设备,则各个堆叠组的主设备采用环形堆叠拓扑发现方式收集其他堆叠组的拓扑信息,具体为:Slotl按照本地优先原则从本设备所处堆叠组I的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slotl通过选择的属于本设备的A-Pl发送堆叠组I的拓扑信息给邻居堆叠组3,通过选择的属于本设备的A-P2发送堆叠组I的拓扑信息给邻居堆叠组2。Slot4按照本地优先原则从本设备所处堆叠组2的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slot4通过选择的属于本设备的A-Pl发送堆叠组2的拓扑信息给邻居堆叠组1,通过选择的属于本设备的A-P2发送堆叠组2的拓扑信息给邻居堆叠组3。
Slot7按照本地优先原则从本设备所处堆叠组3的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slot7通过选择的属于本设备的A-Pl发送堆叠组2的拓扑信息给邻居堆叠组2,通过选择的属于本设备的A-P2发送堆叠组2的拓扑信息给邻居堆叠组I。Slotl、Slot4、Slot7将各自所在堆叠组的拓扑信息添加在各自通过第一组间堆叠聚合组收到的拓扑信息之前,按照本地优先原则从本设备所处堆叠组的第二组间堆叠聚合组中选择属于本设备的A-P2发送到邻居堆叠组;以及将各自所在堆叠组的拓扑信息添加在各自通过第二组间堆叠聚合组收到的拓扑信息之前,按照本地优先原则从本设备所处堆叠组的第一组间堆叠聚合组中选择属于本设备的A-Pl发送到邻居堆叠组。以Slotl为例,Slotl通过本堆叠组的第一组间堆叠聚合组收到堆叠组3的拓扑信息,将堆叠组I拓扑信息添加在堆叠组3的拓扑信息之前,通过本堆叠组的第二组间堆叠聚合组邻居堆叠组2。其 中,堆叠组拓扑信息的排列顺序依次为:堆叠组3的拓扑信息、堆叠组I的拓扑信息。Slotl通过本堆叠组的第二组间堆叠聚合组收到堆叠组2的拓扑信息,将堆叠组I拓扑信息添加在堆叠组2的拓扑信息之前,通过本堆叠组的第一组间堆叠聚合组邻居堆叠组2。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组2的拓扑信息、堆叠组I的拓扑信然后,Slotl通过本堆叠组的第一组间堆叠聚合组收到堆叠组2和堆叠组3的拓扑信息,将堆叠组I拓扑信息添加在堆叠组2和堆叠组3的拓扑信息之前,通过本堆叠组的第二组间堆叠聚合组邻居堆叠组2。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组2的拓扑信息、堆叠组3的拓扑信息、堆叠组I的拓扑信息。Slotl通过本堆叠组的第二组间堆叠聚合组收到堆叠组3和堆叠组2的拓扑信息,将堆叠组I拓扑信息添加在堆叠组3和堆叠组2的拓扑信息之前,通过本堆叠组的第二组间堆叠聚合组邻居堆叠组3。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组3的拓扑信息、堆叠组2的拓扑信息、堆叠组3的拓扑信息。然后,Slotl通过本堆叠组的第一组间堆叠聚合组收到堆叠组I 一堆叠组3的拓扑信息,删除起始堆叠组拓扑信息,将堆叠组I拓扑信息添加在堆叠组2和堆叠组3的拓扑信息之前,通过本堆叠组的第二组间堆叠聚合组邻居堆叠组2。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组2的拓扑信息、堆叠组3的拓扑信息、堆叠组I的拓扑信息。Slotl通过本堆叠组的第二组间堆叠聚合组收到堆叠组3和堆叠组2的拓扑信息,删除起始堆叠组拓扑信息,将堆叠组I拓扑信息添加在堆叠组3和堆叠组2的拓扑信息之前,通过本堆叠组的第二组间堆叠聚合组邻居堆叠组3。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组3的拓扑信息、堆叠组2的拓扑信息、堆叠组I的拓扑信息。Slotl比较通过第一组间堆叠聚合组接收的拓扑信息和通过第二组间堆叠聚合组接收的拓扑信息,发现通过第一组间堆叠聚合组接收的拓扑信息按照从前往后的顺序依次为堆叠组3的拓扑信息、堆叠组2的拓扑信息、堆叠组I的拓扑信息,即排在最后的堆叠组拓扑信息为本设备所处堆叠组的拓扑信息、且堆叠组I的拓扑信息、堆叠组2的拓扑信息、堆叠组I的拓扑信息中均有两个组间堆叠聚合组,而通过第二组间堆叠聚合组接收的拓扑信息按照从前往后的顺序依次为堆叠组2的拓扑信息、堆叠组3的拓扑信息、堆叠组I的拓扑信息,即排在最后的拓扑信息为本设备所处堆叠组的拓扑信息、且堆叠组2的拓扑信息、堆叠组3的拓扑信息、堆叠组I的拓扑信息中均有两个组间堆叠聚合组,则确定整个堆叠系统拓扑收敛。即Slotl确定通过第一组间堆叠聚合组和通过第二组间堆叠聚合组接收的两组拓扑信息中初始的堆叠组拓扑信息为本堆叠组的拓扑信息、两组拓扑信息包含相同堆叠组的拓扑信息但排列顺序相反、以及两组拓扑信息中每个堆叠组的拓扑信息均有两个组间堆叠聚合组,确定整个堆叠系统拓扑收敛。Slotl根据收集的堆叠系统内所有堆叠组的拓扑信息进行拓扑计算,识别堆叠系统内的成员设备形成矩阵连接,堆叠系统的物理拓扑是矩阵拓扑。Slot4、Slot7以同样的方式收集堆叠系统内的所有堆叠组的拓扑信息,识别堆叠系统的物理拓扑是矩阵拓扑。之后,Slotl、Slot4、Slot7选举堆叠系统的拓扑信息主堆叠组,而该选举的主堆叠组的堆叠组主设备就作为整个堆叠系统的堆叠系统主设备,来管理整个堆叠系统。比如,在图2中,选举堆叠组2为堆叠系统的拓扑信息主堆叠组,则堆叠组2的堆叠组主设备比如Slot4也就相应是整个堆叠系统的堆叠系统主设备,其管理整个堆叠系统。需要说明的是,在上面描述中,Slotl、Slot4、Slot7在按照本地优先原则从本设备所处堆叠组的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的A-Pl和A-P2时,如果选择的A-Pl和/或A-P2故障,或者,本地不存在A-Pl和/或A-P2,则按照最近原则从同一堆叠组的其他成员设备上选择对应的A-Pl和/或A-P2。下面以Slotl为例描述:假如Slotl在初始发送堆叠组I的拓扑信息时,按照本地优先原则从本设备所处堆叠组I的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口A-Pl和A-P2,结果发现选择的A-Pl故障,或者不存在A-Pl,则Slotl仅通过本设备的A-P2发送堆叠组I的拓扑信息给邻居堆叠组2,同时,Slotl按照最近原则从第一组间堆叠聚合组中选择属于相邻成员设备(以 Slot2为例)的A-P1,将堆叠组I的拓扑信息发送给相邻成员设备Slot2。由Slot2将堆叠组I的拓扑信息通过本设备上的A-Pl发送给邻居堆叠组3。假如Slotl选择的A-P2与Slot4的其中一个A-P1通过堆叠链路相连,则Slot4会通过本堆叠组的第一组间堆叠聚合组中属于本设备的A-Pl接收到堆叠组I的拓扑信息,Slot4将堆叠组2的拓扑信息添加在通过本堆叠组的第一组间聚合堆叠组收到的拓扑信息之前,在第二组间堆叠聚合组中选择属于本设备的成员端口 A-P2发送到邻居堆叠组3。而如果Slot2选择的属于本堆叠组的第一组间堆叠聚合组的本地A-Pl通过堆叠链路与Slot8的A-P2相连,则Slot8会通过本设备的A-P2接收到Slot2发送的堆叠组I的拓扑信息,此时SlotS会将该接收的堆叠组I的拓扑信息转发给同一堆叠组的主设备即Slot7。同时,SlotS可以将收到堆叠组I的拓扑信息的成员端口的标识或成员端口所属的第二组间堆叠聚合组的标识一起发送给同一堆叠组的主设备Slot7。此时,Slot7接收到来自Slot8转发的拓扑信息,根据成员端口的标识或第二组间堆叠聚合组的标识,确定SlotS转发的拓扑信息接收自第二组间堆叠聚合组。之后,Slot7将所处堆叠组3的拓扑信息添加在SlotS转发的拓扑信息之前,按照本地优先原则从本设备所处堆叠组3的第一组间堆叠聚合组中选择属于本设备的成员端口 A-Pl发送到邻居堆叠组2。同样,Slotl在将所在堆叠组的拓扑信息添加在通过第一组间堆叠聚合组收到的拓扑信息之前,按照本地优先原则从本设备所处堆叠组的第二组间堆叠聚合组中选择属于本设备的A-P2发送到邻居堆叠组时,如果选择的A-P2故障,或者,本地不存在A-P2,则按照最近原则从第二组间堆叠聚合组中选择属于相邻成员设备(以Slot2为例)的A-P2,将以下拓扑信息=Slotl所在堆叠组的拓扑信息添加在通过第一组间堆叠聚合组收到的拓扑信息之前形成的拓扑信息发送给相邻成员设备Slot2。由Slot2将接收的拓扑信息通过本设备上的A-P2发送给邻居堆叠组2。假如Slot2选择的属于本堆叠组的第二组间堆叠聚合组的本地A-P2通过堆叠链路与Slot5的A-Pl相连,则Slot5会通过本设备的A-Pl接收到Slot2发送的拓扑信息,此时Slot5会将该接收的拓扑信息转发给同一堆叠组的主设备即Slot4。同时,Slot5可以将收到拓扑信息的成员端口的标识或成员端口所属的第一组间堆叠聚合组的标识一起发送给同一堆叠组的主设备Slot4。此时,Slot4接收到来自Slot5转发的拓扑信息,根据成员端口的标识或第一组间堆叠聚合组的标识,确定Slot5转发的拓扑信息接收自第一组间堆叠聚合组。之后,Slot4将所处堆叠组2的拓扑信息添加在Slot5转发的拓扑信息之前,按照本地优先原则从本设备所处堆叠组2的第二组间堆叠聚合组中选择属于本设备的成员端口 A-P2发送到邻居堆叠组3。同理,Slotl将所在堆叠组的拓扑信息添加在通过第二组间堆叠聚合组收到的拓扑信息之前,按照本地优先原则从本设备所处堆叠组的第一组间堆叠聚合组中选择属于本设备的A-Pl发送到邻居堆叠组类似。Slot4、Slot7以同样的方式发送所在堆叠组的拓扑信息。至此,完成实施例1的描述。实施例2:以图3所示堆 叠系统为例,在图3所示的堆叠系统中包含以下三个堆叠组:堆叠组I至堆叠组3。堆叠组I至堆叠组3各个堆叠组内的Slot进行链形连接,且都设有第一组内堆叠口(通过R-Pl标识)和第二组内堆叠口(通过R-P2标识),其中,堆叠组I至堆叠组3各个堆叠组内两端的Slot只设置一个组内堆叠口有效,另一组内堆叠口无效,且各个堆叠组内两端Slot的有效组内堆叠口标识不同,而堆叠组内两端的Slot之间的Slot的R-Pl和R-P2均有效。以图3所示的堆叠组I为例,在堆叠组I中,Slotl至Slot3均设置R-Pl和R-P2,Slotl的有效组内堆叠口为R-P2,R-Pl无效,Slot3的有效组内堆叠口为R_P1,R-P2无效,Slot2的两个有效组内堆叠口为R-P1、R-P2。在堆叠组I中,Slotl的R-P2通过堆叠链路连接Slot2的R-Pl、Slot2的R-P2通过堆叠链路连接Slot3的R-Pl,Slotl — Slot3形成链形连接。同理,图3中堆叠组2的Slot4至Slot6以及堆叠组3的Slot7至Slot9以链形连接的方式相同,不再赘述。在图3中,堆叠组I至堆叠组3的三个堆叠组之间进行环状连接、且该三个堆叠组的每个Slot都设有第一组间堆叠口(通过A-Pl标识)和第二组间堆叠口(通过A-P2标识),相邻堆叠组内的Slot之间按照一个Slot的A-Pl通过堆叠链路连接另一个Slot的A-P2的方式。在图3中,堆叠组I和堆叠组3为相邻的堆叠组、堆叠组I和堆叠组2是相邻的堆叠组、堆叠组2和堆叠组3是相邻的堆叠组,则堆叠组I的Slotl - Slot3的A-Pl通过堆叠链路与堆叠组3的Slot7-Slot9的A-P2互连,堆叠组I的Slotl — Slot3的A_P2(每个Slot上均设有三个A-P2)分别通过堆叠链路与堆叠组2的Slot4 — Slot6的A-Pl互连、堆叠组2的Slot4 - Slot6的A-P2通过堆叠链路与堆叠组3的Slot7_Slot9的A-Pl互连,三个堆叠组之间形成环形连接。
本实施例2中,堆叠组I至堆叠组3各个堆叠组内的Slot采用链形堆叠拓扑发现方式收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态。下面进行具体描述:堆叠组I 一端的Slotl通过有效的组内堆叠口 R-P2发送本设备的拓扑信息、以及本设备上组间堆叠口的标识和状态。这里,Slotl发送的本设备的组间堆叠口的标识和状态包括:Slotl上A-Pl的标识和状态、A-P2的标识和状态。处于堆叠组I两端之间的Slot2通过有效的R-Pl和R-P2发送本设备的拓扑信息、以及本设备上组间堆叠口的标识和状态。这里,Slot2发送的本设备的组间堆叠口的标识和状态包括:Slot2上A-Pl的标识和状态、A-P2的标识和状态。堆叠组I另一端的Slot3通过有效的组内堆叠口 R-Pl发送本设备的拓扑信息、以及本设备上组间堆叠口的标识和状态。这里,Slot2发送的本设备的组间堆叠口的标识和状态包括:Slot2上A-Pl的标识和状态、A-P2的标识和状态。Slotl通过有效的组内堆叠口 R-P2收到邻居Slot2发送的拓扑信息,则不再转发该接收的拓扑信息。堆叠组I另一端的Slot3通过有效的组内堆叠口 R-Pl收到邻居Slot2发送的拓扑信息,则不再转发该接收的拓扑信息。Slot2通过本设备的R-Pl收到邻居Slotl发送的拓扑信息,将本设备的拓扑信息和组间堆叠口的标识和状态与接收的拓扑信息和组间堆叠口的标识和状态组织在一起通过本设备的R-P2发送给邻居Slot3。Slot2通过本设备的R-P2收到邻居Slot3发送的拓扑信息,将本设备的拓扑信息和组间堆叠口的标识和状态与接收的拓扑信息和组间堆叠口的标识和状态组织在一起通过本设备的R-Pl发送给邻居Slotl。Slo tl确定本设备的R-P2收到的拓扑信息中包含Slot3的拓扑信息,Slotl确定设定的拓扑收集时间超时,则确定堆叠组I拓扑收敛;若设定的拓扑收集未达到预定时间,则确定堆叠组I未拓扑收敛。Slotl根据收敛的拓扑确定堆叠组I的物理拓扑是链形拓扑。假设,设定的拓扑收集时间超时,Slotl只收到了 Slot2发来的拓扑信息,则认为本堆叠组有两个成员设备,识别堆叠组的物理拓扑是两个成员设备构成的链形拓扑。如果设定的拓扑收集时间超时,Slotl收到了 Slot2发来Slot2和Slot3的拓扑信息,则认为本堆叠组有两个成员设备,识别堆叠组的物理拓扑是两个成员设备构成的链形拓扑。当设定的拓扑收集时间超时,Slot2确定堆叠组I拓扑收敛,反之,确定堆叠组I未拓扑收敛。Slot2根据收敛的堆叠组I的拓扑确定堆叠组I的物理拓扑是链形拓扑。当设定的拓扑收集时间超时,Slot3确定堆叠组I拓扑收敛,反之,确定堆叠组I未拓扑收敛。Slot3根据收敛的堆叠组I的拓扑确定堆叠组I的物理拓扑是链形拓扑。堆叠组I中的Slotl、Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口 A-Pl和堆叠组I内其他Slot的处于工作状态的A-Pl分别绑定为一个链路聚合组,称为第一组间堆叠聚合组。Slotl、Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口A-P2和堆叠组I内其他Slot的处于工作状态的A-P2绑定为一个链路聚合组,称为第二组间堆叠聚合组。堆叠组I的Slotl - Slot3选举出其中一个Slot作为堆叠组I的堆叠组主设备。堆叠组2以及堆叠组3中各Slot以相同的方式收集本堆叠组内所有Slot的拓扑信息、识别本堆叠组的物理拓扑、将本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组、以及选举本堆叠组的堆叠组主设备。假如Slotl被选举为堆叠组I的主设备、Slot4被选举为堆叠组2的主设备、Slot7被选举为堆叠组3的主设备,则各个堆叠组的主设备采用环形堆叠拓扑发现方式收集其他堆叠组的拓扑信息。堆叠组1至堆叠组3的堆叠组主设备可采用实施例1所述的方式收集其他堆叠组的拓扑信息,这里不再赘述。堆叠组1至堆叠组3的堆叠组主设备也可采用下述方式收集其他堆叠组的拓扑信息:堆叠组I的Slotl按照本地优先原则从所处堆叠组I的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slotl通过选择的属于本设备的A-Pl发送堆叠组1的拓扑信息给邻居堆叠组3,通过选择的属于本设备的A-P2发送堆叠组I的拓扑信息给邻居堆叠组2。此时Slotl发送的堆叠组I的拓扑信息是不与堆叠组跳数绑定的。Slot4按照本地优先原则从本设备所处堆叠组2的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slot4通过选择的属于本设备的A-Pl发送堆叠组2的拓扑信息给邻居堆叠组1,通过选择的属于本设备的A-P2发送堆叠组2的拓扑信息给邻居堆叠组3。此时Slot4发送的堆叠组2的拓扑信息不与堆叠组跳数绑定。Slot7按照本地优先原则从本设备所处堆叠组3的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2。Slot7通过选择的属于本设备的A-Pl发送堆叠组3的拓扑信息给邻居堆叠组2,通过选择的属于本设备的A-P2发送堆叠组3的拓扑信息给邻居堆叠组I。此时Slot7发送的堆叠组3的拓扑信息是不与堆叠组跳数绑定的。Slotl通过本堆叠组I的第一组间堆叠聚合组接收到拓扑信息,其中包括:没有绑定堆叠组跳数的堆叠组3的拓扑信息。Slotl将堆叠组3拓扑信息的堆叠组跳数加I (即堆叠组3的堆叠组跳数被修改为1跳),在堆叠组3拓扑信息之前添加堆叠组I的拓扑信息,通过按照本地优先原则从堆叠组I的第二组间堆叠聚合组选择的属于本设备的成员端口 A-P2发送。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是I跳的堆叠组3的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。Slotl通过本堆叠组1的第二组间堆叠聚合组接收到拓扑信息,其中包括:没有绑定堆叠组跳数的堆叠组2的拓扑信息。Slotl将堆叠组2的拓扑信息的堆叠组跳数加1,在堆叠组2的拓扑信息之前添加堆叠组1的拓扑信息,按照本地优先原则从堆叠组I的第一组间堆叠聚合组选择的属于本设备的成员端口 A-Pl发送。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是I跳的堆叠组2的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。Slotl比较通过堆叠组I的两个堆叠聚合组接收的两组拓扑信息,发现该两组拓扑信息中起始堆叠组拓扑信息均不是堆叠组1的拓扑信息,则确定整个堆叠系统未拓扑收敛。Slot4和Slot7通过各自所在堆叠组的组间堆叠聚合组收到拓扑信息之后的处理方式与Slotl相同,Slot4和Slot7确定堆叠系统未收敛的方式与Slotl相同。
Slotl通过本堆叠组I的第一组间堆叠聚合组接收到拓扑信息,其中包括:堆叠组跳数是I跳的堆叠组2的拓扑信息、没有绑定堆叠组跳数的堆叠组3的拓扑信息。Slotl分别将各堆叠组的拓扑信息的堆叠组跳数加1,(即,堆叠组2的堆叠组跳数被修改为I跳,堆叠组3的堆叠组跳数被修改为2跳),Slotl在堆叠组2的拓扑信息以及堆叠组3的拓扑信息之前添加堆叠组I的拓扑信息,通过按照本地优先原则从堆叠组I的第二组间堆叠聚合组选择的属于本设备的成员端口 A-P2发送。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是2跳的堆叠组2的拓扑信息、堆叠组跳数是I跳的堆叠组3的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。Slotl通过本堆叠组I的第二组间堆叠聚合组接收到拓扑信息,其中包括:堆叠组跳数是I跳的堆叠组3、没有绑定堆叠组跳数的堆叠组2的拓扑信息。Slotl分别将各堆叠组的拓扑信息的绑定跳数加1,Slotl在修改了堆叠组跳数的两个堆叠组的拓扑信息之前添加堆叠组I的拓扑信息,通过按照本地优先原则从堆叠组I的第一组间堆叠聚合组选择的属于本设备的成员端口 A-Pl发送。其中,堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是2跳的堆叠组3的拓扑信息、堆叠组跳数是I跳的堆叠组2的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。Slotl比较通过堆叠组I的两个组间堆叠聚合组接收的两组拓扑信息,发现该两组拓扑信息中起始堆叠组的拓扑信息分别是堆叠组2拓扑信息以及堆叠组3拓扑信息,则确定整个堆叠系统未拓扑收敛。Slot4和Slot7通过各自所在堆叠组的组间堆叠聚合组收到拓扑信息之后的处理方式与Slotl相同,Slot4和Slot7确定堆叠系统未收敛的方式与Slotl相同。Slotl继续通过本堆叠组I的第一组间堆叠聚合组接收到拓扑信息,其中包括:堆叠组跳数是2跳的堆叠组I的拓扑 信息、堆叠组跳数是I跳的堆叠组2的拓扑信息、未绑定堆叠组跳数的堆叠组3的拓扑信息。Slotl删除堆叠组I拓扑信息,将堆叠组2拓扑信息和堆叠组3拓扑信息的绑定跳数分别加1,Slotl在修改了堆叠组跳数的两个堆叠组拓扑信息之前添加堆叠组I的拓扑信息,Slotl通过按照本地优先原则堆叠组I的第一组间堆叠聚合组选择的属于本设备的成员端口 A-Pl发送。其中堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是2跳的堆叠组2的拓扑信息、堆叠组跳数是I跳的堆叠组3的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。Slotl继续通过堆叠组I的第二组间堆叠聚合组接收到拓扑信息,其中包括:绑定跳数为2跳的堆叠组I的拓扑信息、绑定跳数为I跳的堆叠组3的拓扑信息、未绑定跳数的堆叠组2的拓扑信。Slotl删除堆叠组I拓扑信息,将堆叠组3拓扑信息和堆叠组2拓扑信息的绑定跳数分别加I。Slotl修改了堆叠组跳数的两个堆叠组拓扑信息之前添加堆叠组I拓扑信息,Slotl通过按照本地优先原则堆叠组I的第一组间堆叠聚合组选择的属于本设备的成员端口 A-Pl发送,其中堆叠组拓扑信息的排列顺序依次为:堆叠组跳数是2跳的堆叠组3的拓扑信息、堆叠组跳数是I跳的堆叠组2的拓扑信息、没有绑定堆叠组跳数的堆叠组I的拓扑信息。然后,Slotl将两个组间堆叠聚合组接收到拓扑信息进行比较。Slotl发现排列后的两组拓扑信息中的起始堆叠组拓扑信息均为堆叠组I拓扑信息、且两组拓扑信息中包含相同的堆叠组拓扑信息但排列顺序相反、以及两组拓扑信息中的每个堆叠组拓扑信息均有第一组间堆叠聚合组和第二组间堆叠聚合组,则确定整个堆叠系统拓扑收敛。Slotl根据收集的堆叠组的拓扑信息确定堆叠系统的物理拓扑是环形拓扑。堆叠组2的Slot4、堆叠组3的Slot7识别堆叠系统的物理拓扑是环形拓扑的方式与Slotl相同。之后,Slotl、Slot4、Slot7选举堆叠系统的拓扑信息主堆叠组,而该选举的主堆叠组的堆叠组主设备就作为整个堆叠系统的堆叠系统主设备,来管理整个堆叠系统。需要说明的是,在上面描述中,Slotl、Slot4、Slot7在按照本地优先原则从本设备所处堆叠组的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的A-Pl和A-P2时,如果选择的A-Pl和/或A-P2故障,或者,本地不存在A-Pl和/或A-P2,则按照实施例I所述的方式进行处理,这里不再赘述。至此,完成实施例2的描述。实施例3:以图4所示矩阵堆叠系统为例,在图4所示的堆叠系统中包含以下三个堆叠组:堆叠组I至堆叠组3。堆叠组I至堆叠组3各个堆叠组内的Slot进行链状连接,该各个堆叠组内两端的Slot仅设置一个组内堆叠口,而该各个堆叠组内两端Slot之间的Slot设置两个组内堆叠口。以图4所示的堆叠组I为例,在堆叠组I中,Slotl作为堆叠组I 一端的Slot,设置一个组内堆叠口(通过R-P2标识),Slot3作为堆叠组I另一端的Slot,设置一个组内堆叠口(通过R-Pl标识),Slot2作为堆叠组I内两端Slot之间的Slot,设置两个组内堆叠口,分别通过R-PUR-P2标识。在堆叠组I中,Slotl的R-P2通过堆叠链路连接Slot2的R-Pl、Slot2的R-P2通过堆叠链路连接Slot3的R-Pl,Slotl 一 Slot3进行链形连接。同理,图2中堆叠组2的Slot4至Slot6以及堆叠组3的Slot7至Slot9以链形连接的方式相同,不再赘述。在图4中,堆叠组I至堆叠组3的三个堆叠组之间进行链形连接。堆叠组I和堆叠组3分别是堆叠系统两端的堆叠组。堆叠组I的Slotl-Slot3设置第二组间堆叠口 A-P2,堆叠组3的Slot4-Sl ot6设置第一组间堆叠口 A-Pl。堆叠组2为堆叠系统两端的两个堆叠组之间的堆叠组,其中的Slot7-Slot9设置有第一组间堆叠口 A-Pl和第二组间堆叠口A-P2。堆叠组I和堆叠组2为相邻的堆叠组、堆叠组2和堆叠组3是相邻的堆叠组,则堆叠组I内的Slotl - Slot3的第二组间堆叠口 A-P2与堆叠组内的Slot4 — Slot6的第一组间堆叠口 A-Pl互连、堆叠组2内的Slot4 - Slot6的第二组间堆叠口 A-P2与堆叠组3内的Slot7-Slot9的第一组间堆叠口 A-Pl互连,三个堆叠组形成链形连接。实施例3,堆叠组I至堆叠组3各个堆叠组内的Slot采用链形堆叠拓扑发现方式与实施例2中堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态,具体为:以图4所示的堆叠组I为例,Slotl通过R-P2发送本设备的拓扑信息、组间堆叠口的标识和状态;Slot2通过R-Pl和R-P2发送本设备的拓扑信息、组间堆叠口的标识和状态;Slot3通过R-Pl发送本设备的拓扑信息、组间堆叠口的标识和状态;Slotl通过R-P2收到Slot2发送的拓扑信息,Slot3通过R-Pl接收到Slot2发送的拓扑信息,则不再转发该接收的数据;Slot2通过R-P2收到Slot3发送的拓扑信息、组间堆叠口的标识和状态;将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过R-P2接收的拓扑信息、组间堆叠口的标识和状态之前,一起通过R-Pl发送给Slotl ;Slot2通过R-Pl收到Slotl发送的拓扑信息、组间堆叠口标识和状态,将本设备的拓扑信息、组间堆叠口的标识和状态放在通过R-Pl接收的拓扑信息、组间堆叠口的标识和状态之前,一起通过R-P2发送给Slot3。堆叠组2、堆叠组3中各个Slot收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态的原理类似。Slotl通过R-P2收到Slot2发送的拓扑信息和组间堆叠口的标识和状态,该收到的拓扑信息中Slot2的拓扑信息和Slot3的拓扑信息、且Slot3的拓扑信息中仅包含一个组内连接堆叠口,则Slot3确定本堆叠组I内拓扑收敛,Slotl根据收集的堆叠组I内所有成员设备的拓扑信息识别本堆叠组的物理拓扑是链形拓扑。Slot3识别堆叠组I物理拓扑的方式相同。Slot3通过R-Pl收到Slot2发送的拓扑信息和组间堆叠口的标识和状态,该收到的拓扑信息中Slotl的拓扑信息和Slot2的拓扑信息且Slotl的拓扑信息中仅包含一个组内连接堆叠口,则Slot3确定本堆叠组I内拓扑收敛,Slot2比较该通过本设备的R-P2接收的拓扑信息和通过本设备的R-Pl接收的拓扑信息,如果通过R-P2接收的拓扑信息中包括Slot3的拓扑信息、且Slot3的拓扑信息仅存在一个组内堆叠口,通过R-Pl接收的拓扑信息中存在Slotl的拓扑信息、且Slotl的拓扑信息仅存在一个组内堆叠口,则确定本堆叠组I拓扑收敛,Slot2根据收集的堆叠组I内所有Slot的拓扑信息识别本堆叠组的物理拓扑是链形拓扑。Slotl、Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口 A-P2和堆叠组I内其他Slot的处于工作状态的A-P3分别绑定为一个链路聚合组,称为第二组间堆叠
聚合组。Slotl - Slot·3选举出其中一个Slot作为堆叠组I的堆叠组主设备。堆叠组2以及堆叠组3中各Slot以相同的方式收集本堆叠组内所有Slot的拓扑信息、识别本堆叠组的物理拓扑、将本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组、以及选举本堆叠组的堆叠组主设备。假如Slotl被选举为堆叠组I的主设备、Slot4被选举为堆叠组2的主设备、Slot7被选举为堆叠组3的主设备,则各个堆叠组的主设备采用链形堆叠拓扑发现方式收集其他堆叠组的拓扑信息,具体为:堆叠组I的主设备Slotl按照本地优先原则从所处堆叠组I的第二组间堆叠聚合组中选择属于本设备的成员端口 A-P2发送堆叠组I的拓扑信息给邻居堆叠组2。堆叠组3的主设备Slot7按照本地优先原则从所处堆叠组3的第一组间堆叠聚合组中选择属于本设备的成员端口 A-Pl发送堆叠组3的拓扑信息给邻居堆叠组2。堆叠组2的主设备Slot4按照本地优先原则从所处堆叠组2的第一组间堆叠聚合组和第二组间堆叠聚合组中选择属于本设备的成员端口 A-Pl和A-P2发送堆叠组2的拓扑信息给邻居堆叠组I和邻居堆叠组2。堆叠组I的主设备Slotl通过第二组间堆叠聚合组收到堆叠组2的主设备Slot4发送的拓扑信息,该收到的拓扑信息中包含堆叠组2的拓扑信息以及堆叠组3的拓扑信息、且堆叠组3的拓扑信息中仅包含一个组间堆叠聚合组,则确定堆叠系统的拓扑收敛;堆叠组I的主设备Slotl根据收集的堆叠系统所有堆叠组的拓扑信息识别堆叠系统的物理拓扑是矩阵拓扑。堆叠组3中的主设备Slot7通过第一组间堆叠聚合组收到堆叠组2的堆叠组主设备Slot2发送的拓扑信息,该收到的拓扑信息中包含堆叠组2的拓扑信息、堆叠组I的拓扑信息、且堆叠组I的拓扑信息中仅包含一个组间堆叠聚合组,则确定堆叠系统的拓扑收敛,堆叠组3的主设备Slot7根据收集的堆叠系统所有堆叠组的拓扑信息识别堆叠系统的物理拓扑是矩阵拓扑。堆叠组2的主设备Slot4通过第一组间堆叠聚合组和第二组间堆叠聚合组分别收到堆叠组I的主设备Slotl发送的堆叠组I的拓扑信息,以及堆叠组3的主设备Slot7发送的堆叠组3的拓扑信息,Slotl比较该通过第一组间堆叠聚合组接收的拓扑信息和通过第二组间堆叠聚合组接收的拓扑信息,如果通过第一组间堆叠聚合组接收的拓扑信息中存在堆叠组I的拓扑信息、且堆叠组I的拓扑信息仅存在一个组间堆叠聚合组,通过第二组间堆叠聚合组接收的拓扑信息中存在堆叠组3的拓扑信息且堆叠组3的拓扑信息仅存在一个组间堆叠聚合组,则确定堆叠系统的拓扑收敛,堆叠组2的主设备Slot4根据收集的堆叠系统所有堆叠组的拓扑信息识别堆叠系统的物理拓扑是矩阵拓扑。本实施例中,堆叠组的成员设也可采用超时的方式判断堆叠系统拓扑收敛。即设定的拓扑收集时间超时 ,堆叠组的主设备确定堆叠系统拓扑收敛。以Slotl为例,当设定的拓扑收集时间超时,Slotl收到了堆叠组2发来的拓扑信息,则认为本堆叠系统有两个堆叠组,识别堆叠系统的物理拓扑是两个堆叠组的成员设备构成的矩阵拓扑。如果设定的拓扑收集时间超时,slotl收到了堆叠组2和堆叠组3的拓扑信息,认为本堆叠系统有三个堆叠组,识别堆叠系统的物理拓扑是三个堆叠组的成员设备构成的矩阵拓扑。实施例4:以图5所示堆叠系统为例,在图5所示的堆叠系统中包含以下三个堆叠组:堆叠组I至堆叠组3。堆叠组I至堆叠组3各个堆叠组内的Slot进行环状连接,都设置了第一组内堆叠口(通过R-Pl标识)和第二组内堆叠口(通过R-P2标识)。同一堆叠组内相邻两个Slot的R-Pl和R-P2连接,以形成堆叠组内Slot之间的环形连接。在图5中,堆叠组I至堆叠组3的三个堆叠组之间进行链形连接。堆叠组I和堆叠组3分别是堆叠系统两端的堆叠组。Slotl-Slot3设置第二组间堆叠口 A-P2,Slot4_Slot6设置第一组间堆叠口 A-Pl。Slot7-Slot9设置有第一组间堆叠口 A-Pl和第二组间堆叠口A-P2。堆叠组I和堆叠组2为相邻的堆叠组、堆叠组2和堆叠组3是相邻的堆叠组,则堆叠组I内的Slotl - Slot3的第二组间堆叠口 A-P2与堆叠组内的Slot4 — Slot6的第一组间堆叠口 A-Pl通过堆叠链路互连、堆叠组2内的Slot4 - Slot6的第二组间堆叠口 A_P2与堆叠组3内的Slot7-Slot9的第一组间堆叠口 A-Pl通过堆叠链路互连,三个堆叠组之间以链形连接。本实施例4中,作为一种优选方式,堆叠组I至堆叠组3各个堆叠组内的Slot采用类似实施例1的方式收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态,这里不再赘述。作为另一种优选方式,堆叠组I至堆叠组3各个堆叠组内的Slot采用如下方式收集本堆叠组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态:堆叠组I的Slotl通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slotl发送的本设备的拓扑信息不绑定设备跳数。堆叠组I的Slot2通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slot2发送的本设备的拓扑信息不绑定设备跳数。堆叠组I的Slot3通过本设备的R-Pl和R-P2发送本设备的拓扑信息、以及本设备的组间堆叠口的标识和状态。这里,Slot3发送的本设备的拓扑信息不绑定设备跳数。Slotl通过本设备的R-Pl接收到来自Slot3转发的拓扑信息和组间堆叠口的标识和状态,其中包括:没有绑定设备跳数的Slot3的拓扑信息、Slot3的组间堆叠口的标识和状态。Slotl将Slot3的设备跳数加I (即Slot3的设备跳数被修改为I跳),将Slotl的拓扑信息、Slotl的组间堆叠口的标识和状态添加在Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态之前,通过本设备的R-P2发送给邻居Slot2。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是I跳的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl通过本设备的R-P2接收到来自Slot2转发的拓扑信息和组间堆叠口的标识和状态,其中包括:没有绑定设备跳数的Slot2的拓扑信息以及Slot2上的组间堆叠口的标识和状态。Slotl将Slot2的设备跳数加1,将Slotl的拓扑信息、Slotl的组间堆叠口的标识和状态添加在Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态之前,,通过本设备的R-Pl发送给邻居Slot3。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是I跳的Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl比较本设备的R-Pl与的R-P2接收的拓扑信息,发现接收的两组拓扑信息中起始设备分别是Slot3和Slot2,则确定堆叠组I未拓扑收敛。Slot2和Slot3通过各自的组内堆叠口收到拓扑信息和组间堆叠口的标识之后的处理方式与Slotl相同,Slot2和Slot3确定堆叠组I未收敛的方式与Slotl相同。Slotl继续通过本设备 的R-Pl接收Slot3发送的拓扑信息和组间堆叠口的标识,其中包括:设备跳数是I跳的Slot2作为设备的拓扑信息、Slot2的组间堆叠口的标识和状态、没有绑定设备跳数的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态。Slotl分别将两个成员设备拓扑信息的设备跳数加1(即,Slot3的设备跳数被修改为2跳,Slot2的设备数被修改为I跳),将Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态添加在修改了设备跳数的Slot2和slot3拓扑信息之前,通过本设备的R-Pl接收的拓扑信息组织在一起,通过本设备的R-P2发送给邻居Slot2。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是2跳的Slot2的拓扑信息以及Slot3的组间堆叠口的标识和状态、设备跳数是I跳的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl继续通过本设备的R-P2接收Slot2发送的拓扑信息和组间堆叠口的标识,其中包括:设备跳数是I跳Slot3作为设备的拓扑信息以及Slot3组间堆叠口的标识和状态、没有绑定设备跳数的Slot2的拓扑信息以及组间堆叠口的标识和状态。Slotl分别将两个成员设备拓扑信息的设备跳数加I JfSlotl的拓扑信息以及Slotl的组间堆叠口的标识和状态添加在修改了设备跳数的Slot2和slot3拓扑信息之前,,通过本设备的R-Pl发送给邻居Slot3。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是2跳的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、设备跳数是I跳的Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl将本设备的R-Pl以及R-P2接收的两组拓扑信息进行比较,发现两组拓扑信息中起始设备分别是Slot2和Slot3,则确定堆叠组I未拓扑收敛。Slot2和Slot3通过各自的组内堆叠口收到拓扑信息和组间堆叠口的标识之后的处理方式与Slotl相同,Slot2和Slot3确定堆叠组I未收敛的方式与Slotl相同。Slotl继续通过本设备的R-Pl接收Slot3转发的拓扑信息,其中包括:设备跳数是2跳的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态、设备跳数是I跳的Slot2的拓扑信息以及Slot2组间堆叠口的标识和状态,没有绑定设备跳数的Slot3的拓扑信息以及Slot3组间堆叠口的标识和状态,Slotl将Slotl的拓扑信息删除,将其他两个成员设备拓扑信息的设备跳数加I (即,Slot2的设备跳数被修改为2跳,Slot3的设备数被修改为I跳)JfSlotl的拓扑信息以及Slotl的组间堆叠口的标识和状态添加在修改了设备跳数的Slot2和slot3拓扑信息之前,通过本设备的R-P2发送Slot2。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是2跳的Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、设备跳数是I跳的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl继续通过本设备的R-P2接收Slot2转发的拓扑信息,其中包括:设备跳数是2跳的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态、设备跳数是I跳的Slot3的拓扑信息以及Slot3组间堆叠口的标识和状态,没有绑定设备跳数的Slot2的拓扑信息以及Slot2组间堆叠口的标识和状态,Slotl将Slotl的拓扑信息删除,将其他两个成员设备拓扑信息的设备跳数加1(即,Slot3的设备跳数被修改为2跳,Slot2的设备数被修改为I跳)JfSlotl的拓扑信息以及Slotl的组间堆叠口的标识和状态添加在修改了设备跳数的Slot3和slot2 拓扑信息之前,通过本设备的R-Pl发送Slot3。其中,成员设备拓扑信息的排列顺序依次为:设备跳数是2跳的Slot3的拓扑信息以及Slot3的组间堆叠口的标识和状态、设备跳数是I跳的Slot2的拓扑信息以及Slot2的组间堆叠口的标识和状态、没有绑定设备跳数的Slotl的拓扑信息以及Slotl的组间堆叠口的标识和状态。Slotl将本设备R-Pl和R-P2两组拓扑信息进行比较,发现两组拓扑信息中起始设备拓扑信息均为本设备的拓扑信息、且两组拓扑信息包含相同设备的拓扑信息但排列顺序相反、以及两组拓扑信息中每个设备的拓扑信息均有两个组内堆叠口 R-Pl和R-P2,则确定堆叠组I拓扑收敛。Slotl根据收敛的堆叠组I的拓扑确定堆叠组I的物理拓扑是环形拓扑。堆叠组I的Slot2、Slot3识别堆叠组I的物理拓扑是环形拓扑的方式与Slotl相同。Slotl、Slot2以及Slot3各自将本设备处于工作状态的组间堆叠口 A-P2和堆叠组I内其他Slot的处于工作状态的A-P2绑定为一个链路聚合组,称为第二组间堆叠聚合组。堆叠组I的Slotl - Slot3选举出其中一个Slot作为堆叠组I的堆叠组主设备。堆叠组2以及堆叠组3中各Slot以相同的方式收集本堆叠组内所有Slot的拓扑信息、识别本堆叠组的物理拓扑、将本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组、以及选举本堆叠组的堆叠组主设备。假如Slotl被选举为堆叠组I的主设备、Slot4被选举为堆叠组2的主设备、Slot7被选举为堆叠组3的主设备,则各个堆叠组的主设备采用如实施例3所述的方式收集其他堆叠组的拓扑信息。实施例5:以图6所示堆叠系统为例,在图6所示的堆叠系统中包含以下三个堆叠组:堆叠组I至堆叠组3。堆叠组I仅包含一个堆叠成员设备即Slotl,堆叠组2包含两个堆叠成员设备即Slot2和Slot3,且该两个堆叠成员设备即Slot2和Slot3进行链状连接,其中,Slot2设有第一组内堆叠口 R-Pl、Slot3设有第二组内堆叠口 R-P2。在图6中,堆叠组1、堆叠组2进行环状连接,其中,堆叠组I内的Slotl设有两个组间堆叠口,分别为A-Pl、A-P2,堆叠组2内的Slot2、Slot3也设有两个组间堆叠口,分别为 A-P1、A-P2。在堆叠组I中,仅包含Slotl,如果Slotl设有组内堆叠口比如R-Pl或R-P2,当设定的拓扑收集时间超时,Slotl确定本堆叠组内的拓扑收敛;而如果没有设有组内堆叠口比如R-Pl或R-P2,则默认不再执行本堆叠组内拓扑信息的收集,并默认本堆叠组内的拓扑收敛。 在堆叠组I中的Slotl确认本堆叠组内的拓扑收敛时,选举本Slotl为本堆叠组内的堆叠组主设备,将本设备的组间堆叠口 A-Pl默认为第一组间堆叠聚合组,将本设备的组间堆叠聚合口 A-P2默认为第二组间堆叠聚合组;堆叠组2中的Slot2、Slot3采用如实施例3方式收集本组内其他所有Slot的拓扑信息和组间堆叠口的标识和状态。堆叠组2内的Slot2从本设备的组间堆叠口和已收集的本堆叠组2内Slot6的组间堆叠口中选择处于工作状态的所有组间堆叠口 A-P1,将该选择的所有A-Pl绑定为第一组间堆叠聚合组;以及选择处于工作状态的所有组间堆叠口 A-P2,将该选择的所有A-P2绑定为第二组间堆叠聚合组。堆叠组2内的Slot3原理类似。堆叠组2的Slot2、Slot3 一起选举出一个Slot比如Slot2作为本堆叠组2内的堆叠组主设备。堆叠组I的堆叠组主设备Slotl、堆叠组2的堆叠组主设备Slot2如实施例1或实施例2的方式收集其他堆叠组的拓扑信息。当堆叠组I的堆叠组主设备Slotl、堆叠组2的堆叠组主设备Slot4确定堆叠系统拓扑收敛时,该堆叠组I的堆叠组主设备Slotl、堆叠组2的堆叠组主设备Slot4根据收集的堆叠系统内所有堆叠组的拓扑信息进行拓扑计算,识别堆叠系统内的成员设备形成矩阵连接,堆叠系统的物理拓扑是矩阵拓扑。之后,堆叠组I的堆叠组主设备Slotl、堆叠组2的堆叠组主设备Slot4选举出一个堆叠组作为堆叠系统的拓扑信息主堆叠组,而该选举的主堆叠组的堆叠组主设备就作为整个堆叠系统的堆叠系统主设备,来管理整个堆叠系统。比如,在图6中,选举堆叠组2为堆叠系统的拓扑信息主堆叠组,则堆叠组2的堆叠组主设备比如Slot2也就相应是整个堆叠系统的堆叠系统主设备,其管理整个堆叠系统。在上面五个实施例描述中,堆叠组内的堆叠成员设备在进行堆叠组内拓扑收集时发送的本设备的拓扑信息中用于选举堆叠组的主设备的信息至少包括:本设备的优先级、运行时间、CPU的MAC地址、在堆叠组内担任的角色。初始状态,堆叠组内的所有堆叠成员设备在堆叠组内担任的角色都是初始状态,或者为WaitMaster,默认不在堆叠组内担任任何角色。
堆叠成员设备根据收集的同一堆叠组内所有堆叠成员设备的信息以及预设的选举规则,选举出堆叠组的主设备。譬如,当所有堆叠成员设备都是初始状态或Wait Master状态,各堆叠成员设备选举出优先级数值最高/最低的堆叠成员设备作为堆叠组的主设备、选举具有最长/最短系统运行时间的堆叠成员设备作为堆叠组的主设备;或者选举出具有最小/最大MAC地址的堆叠成员设备作为堆叠组的主设备。每一堆叠组内只能选举一个堆叠成员设备作为本堆叠组内的堆叠组主设备。如果初始状态下,当堆叠组内的堆叠成员设备在堆叠组内担任的角色已经具有预先设定,则堆叠组内的堆叠成员选举预设的主设备为堆叠组的主设备当堆叠组的拓扑发生变化时,该堆叠组内堆叠成员设备在堆叠组内担任的角色就依赖于该最近一次的选举确定的堆叠组主设备或者从设备。在上面五个实施例描述中,堆叠组的主设备在收集其他堆叠组的拓扑信息时发送的本设备所处堆叠组的拓扑信息中用于堆叠系统的拓扑信息主堆叠组选举,包括:堆叠组主设备的优先级、运行时间、CPU的MAC地址。堆叠组的主设备根据收集的其他所有堆叠组的信息以及预设的选举规则,选举出堆叠系统的拓扑信息主堆叠组。譬如,堆叠组的主设备选举出优先级数值最高/最低的堆叠组主设备所在的堆叠组作为堆叠系统的主堆叠组、选举具有最长/最短系统运行时间的堆叠组主设备所在的堆叠组作为堆叠系统的主堆叠组;或者选举出具有最小/最大MAC地址的堆叠组主设备所在的堆叠组作为堆叠系统的主堆叠组。整个堆叠系统只能选举一个堆叠组作为整个堆叠系统的拓扑信息主堆叠组。初始状态下,当堆叠系统内的堆叠组在堆叠系统内担任拓扑信息主堆叠组的角色已经具有预先设定,则堆叠系统内的堆叠组主设备选举预设的堆叠组为整个堆叠系统的拓扑信息主堆叠组。当堆叠系统的拓扑发生变化时,该堆叠系统内拓扑信息主堆叠组在堆叠系统内担任的角色就依赖于该最近一次的选举确定的拓扑信息主堆叠组或者拓扑信息备堆叠组。需要说明的是,本发明中,在整个矩阵堆叠系统的拓扑收敛时,堆叠组内拓扑信息、以及堆叠组间拓扑信息还可进行更新,其中,该更新是相互独立的。以上对本发明提供的方法进行了描述。下面对本发明提供的设备进行描述:参见图7,图7为本发明提供的设备结构图。其中,所述设备为堆叠系统中任一堆叠组的堆叠成员设备,所述堆叠系统中堆叠组的数目小于堆叠成员设备的数目。如图7所示,所述设备包括:第一拓扑发现单元,用于通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态;第一拓扑计算单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息识别本堆叠组的物理拓扑;第一选举单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息选举本堆叠组的堆叠组主设备; 堆叠管理单元,用于将所述第一拓扑发现单元收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组;
第二拓扑发现单元,用于在所述设备被选举为堆叠组的主设备时通过本堆叠组内的组间堆叠聚合组收集其他堆叠组的拓扑信息;第二拓扑计算单元,用于在所述设备被选举为堆叠组的主设备时识别所述堆叠系统的物理拓扑为矩阵拓扑;第二选举单元,用于在所述设备被选举为堆叠组的主设备时选举堆叠系统的拓扑信息主堆叠组;其中,所述主堆叠组的堆叠组主设备作为所述堆叠系统的堆叠系统主设备。作为本发明的一个实施例,所述第一拓扑发现单元,通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态,通过本设备的所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态;将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过所述第一组内堆叠口接收的拓扑信息和组间堆叠口的标识和状态之前,通过本设备所述的第二组内堆叠口发送给一个堆叠组内邻居成员设备;将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过所述第二组内堆叠口接收的拓扑信息之前,通过本设备的所述第一组内堆叠口发送给另一个堆叠组内邻居成员设备。作为本发明的另一个实施例,所述第一拓扑发现单元,通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息组间堆叠口的标识和状态;分别通过本设备所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态;将本设备的第一组内堆叠口接收的拓扑信息中的各设备拓扑信息的设备跳数加1,在修改了设备跳数的成员设备拓扑信息之前添加本设备的拓扑信息以及本设备的组间堆叠口的标识和状态绑定,从本设备的第二堆叠口发送到一个堆叠组内邻居成员设备;将本设备的第二组内堆叠口接收的拓扑信息中的各设备拓扑信息的设备跳数加1,在修改了绑定跳数的成员设备拓扑信息之前添加本设备的拓扑信息以及本设备的组间堆叠口的标识和状态,从本设备的第一组内堆叠口发送。如上所述第一拓扑发现单元的描述,则所述第一拓扑计算单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息确定堆叠组的成员设备以环形连接,识别本堆叠组的物理拓扑是环形拓扑。本发明中,一种方式为:所述第一拓扑发现单元,通过本设备的第一组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态;通过本设备的第一组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态。另一种方式为:所述第一拓扑发现单元,通过本设备的第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态;通过本设备的所述第二组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态。如上所述第一拓扑发现单元的描述,则所述第一拓扑计算单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息确定堆叠组的成员设备以链形连接,识别本堆叠组的物理拓扑是链形拓扑。本发明中,所述第一选举单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息选举预设的堆叠组主设备为本堆叠组的主设备。本发明中,所述第一选举单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息以及预设选 举规则选举具有最高优先级的成员设备为本堆叠组的主设备。本发明中,所述堆叠管理单元将所述第一拓扑发现单元收集的本堆叠组内具处于工作状态的第一组间堆叠口绑定为第一组间堆叠聚合组;将第一拓扑发现单元收集的本堆叠组内具有相同标识且处于工作状态的第二组间堆叠口绑定为本堆叠组的第二组间堆叠聚合组。本发明中,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组和和第二组间堆叠聚合组发送本堆叠组的拓扑信息;通过本堆叠组的所述第一组间堆叠聚合组和所述第二组间堆叠聚合组接收邻居堆叠组发送的拓扑信息;将本堆叠组的拓扑信息添加在本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第二组间堆叠聚合组发送给一个邻居堆叠组;将本堆叠组的拓扑信息添加在本堆叠组的所述第二组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第一组间堆叠聚合组发送给另一个邻居堆叠组。本发明中,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组和和第二组间堆叠聚合组发送本堆叠组作拓扑信息;将本堆叠组的第一组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组拓扑信息,从本堆叠组的第二组间堆叠聚合组发送;将本堆叠组的第二组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组拓扑信息,通过从本堆叠组的所述第一组间堆叠聚合组发送。本发明中,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组发送本堆叠组作为堆叠组的拓扑信息;通过本堆叠组的第一组间堆叠聚合组接收邻居堆叠组发送的拓扑息;
本发明中,所述第二拓扑发现单元,通过本堆叠组的第二组间堆叠聚合组发送本堆叠组作为堆叠组的拓扑信息;通过本堆叠组的第二组间堆叠聚合组接收邻居堆叠组发送的拓扑息.
本发明中,所述第二拓扑计算单元,根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息,确定堆叠系统内的成员设备以矩阵方式连接,识别本堆叠系统的物理拓扑是矩阵拓扑。本发明中,所述第二选举单元根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息,选举预设主用堆叠组为所述堆叠系统的拓扑信息主堆叠组。本发明中,所述第二选举单元根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息以及预设选举规则选举具有最高优先级的堆叠组为所述堆叠系统的拓扑信息主堆叠组。需要说明的是,图7所示的各个单元、以及接口均可通过互联机构相连,具体已在图7示出。至此,完成图7所示的设备结构描述。由以上技术方案可以看出,本发明中,先通过收集堆叠组内的拓扑信息,再从每一堆叠组内选举一个堆叠组主设备,代表其所处的堆叠组收集堆叠组间的拓扑信息,即通过堆叠组内与堆叠组间分级进行拓扑信息收集,这能在矩阵堆叠系统中快速、准确实现拓扑信息的收据,实现了在矩阵形的堆叠拓扑结构中进行拓扑发现,扩展堆叠系统。进一步地,本发明中,堆叠组内拓扑更新和堆叠组间拓扑更新两者相互独立,不会出现由于堆叠组内拓扑更新影响整个矩阵堆叠系统的拓扑,降低堆叠拓扑变化对整个矩阵堆叠系统的影响。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任 何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种矩阵堆叠系统的拓扑发现方法,其特征在于,所述方法包括: 各成员设备通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态; 各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息识别本堆叠组的物理拓扑; 各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息选举本堆叠组的堆叠组主设备; 各成员设备将收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组; 各堆叠组的主设备通过所述组间堆叠聚合组收集其他堆叠组的拓扑信息; 各堆叠组的主设备识别所述堆叠系统的物理拓扑为矩阵拓扑; 各堆叠组的主设备选举堆叠系统的拓扑信息主堆叠组;所述主堆叠组的堆叠组主设备作为所述堆叠系统的 堆叠系统主设备。
2.根据权利要求1所述的方法,其特征在于, 各成员设备通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态包括: 各成员设备分别通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态; 各成员设备分别通过本设备的所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态; 各成员设备将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过所述第一组内堆叠口接收的拓扑信息和组间堆叠口的标识和状态之前,通过本设备的所述第二组内堆叠口发送给一个堆叠组内邻居成员设备; 各成员设备将本设备的拓扑信息、组间堆叠口的标识和状态添加在本设备通过所述第二组内堆叠口接收的拓扑信息和组间堆叠口的标识和状态之前,通过本设备的所述第一组内堆叠口发送给另一个堆叠组内邻居成员设备。
3.根据权利要求1所述的方法,其特征在于, 各成员设备通过所述组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆置口的标识和状态包括: 各成员设备分别通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态; 各成员设备分别通过本设备所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态; 各成员设备将本设备所述第一组内堆叠口收到的拓扑信息中各成员设备拓扑信息的设备跳数加1,在修改了设备跳数的成员设备拓扑信息之前添加本设备的拓扑信息、组间堆叠口的标识和状态,从本设备的所述第二组内堆叠口发送到一个堆叠组内邻居成员设备;各成员设备将本设备所述第二组内堆叠口收到的拓扑信息中各成员设备拓扑信息的设备跳数加1,在修改了设备跳数的成员设备拓扑信息之前添加本设备的拓扑信息、组间堆叠口的标识和状态,从本设备的所述第一组内堆叠口发送到另一个堆叠组内邻居成员设备。
4.根据权利要求2或3所述的方法,其特征在于,各成员设备识别本堆叠组的物理拓扑是环形拓扑。
5.根据权利要求1所述的方法,其特征在于, 各成员设备通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态包括: 堆叠组一端的一个成员设备通过本设备的第一组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态,通过本设备的第一组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态; 堆叠组另一端的一个成员设备通过本设备的第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态,通过本设备的所述第二组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态; 堆叠组两端的两个成员设备之间的各成员设备通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态; 堆叠组两端的两个成员设备之间的各成员设备通过本设备的第一组内堆叠口和第二组内堆叠口收到本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态,将本设备的拓扑信息、组间堆叠口的标识和状态与本设备通过所述第一组内堆叠接收的拓扑信息和组间堆叠口的标识和状态一起通过本设备的所述第二组内堆叠口发送给一个堆叠组内邻居成员设备;将本设备的拓扑信息、组间堆叠口的标识和状态与本设备通过所述第二组内堆叠口接收的拓扑信息、组间堆叠口的标识和状态一起通过本设备的所述第一组内堆叠口发送给另一个堆叠组内邻居成员设备。
6.根据权利要求5所述的方法,其特征在于,各成员设备识别本堆叠组的物理拓扑是链形拓扑。
7.根据权利要求1所述的方法,其特征在于,各成员设备选举本堆叠组的主设备包括:各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息选举预设的成员设备为本堆叠组的主设备。
8.根据权利要求1所述的方法,其特征在于,各成员设备选举本堆叠组的主设备包括:各成员设备根据收集的本堆叠组内所有成员设备的拓扑信息以及预设选举规则选举具有最高优先级的成员设备为本堆叠组的主设备。
9.根据权利要求1所述的方法,其特征在于, 各成员设备将收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组包括: 各堆叠组的成员设备将收集的本堆叠组内具处于工作状态的第一组间堆叠口绑定为第一组间堆叠聚合组; 各堆叠组的成员设备将收集的本堆叠组内具有相同标识且处于工作状态的第二组间堆叠口绑定为本堆叠组的第二组间堆叠聚合组。
10.根据权利要求9所述的方法,其特征在于,各堆叠组主设备通过组间堆叠聚合组收集其他堆叠组的拓扑信息包括: 各堆叠组主设备通过所处堆叠组的第一组间堆叠聚合组和第二组间堆叠聚合组发送本堆叠组的拓扑信息; 各堆叠组主设备通过本堆叠组的所述第一组间堆叠聚合组和所述第二组间堆叠聚合组接收邻居堆叠组的主设备发送的拓扑信息;各堆叠组主设备将本堆叠组的拓扑信息添加在本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第二组间堆叠聚合组发送给一个邻居堆叠组;各堆叠组主设备将本堆叠组的拓扑信息添加在本堆叠组的所述第二组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第一组间堆叠聚合组发送给另一个邻居堆叠组。
11.根据权利要求9所述的方法,其特征在于,各堆叠组主设备通过组间堆叠聚合组收集其他堆叠组的拓扑信息包括: 各堆叠组主设备通过本堆叠组的第一组间堆叠聚合组和第二组间堆叠聚合组发送本堆叠组的拓扑信息; 各堆叠组主设备通过本堆叠组的所述第一组间堆叠聚合组和所述第二组间堆叠聚合组接收邻居堆叠组的主设备发送的拓扑信息; 各堆叠组主设备将本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组的拓扑信息,从本堆叠组的所述第二组间堆叠聚合组发送到一个邻居堆叠组; 各堆叠组主设备将本堆叠组的所述第二组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组的拓扑信息,从本堆叠组的所述第一组间堆叠聚合组发送到另一个邻居堆叠组。
12.根据权利要求9所述的方法,其特征在于,各堆叠组主设备通过组间堆叠聚合组收集其他堆叠组的拓扑信息包括: 堆叠系统一端的堆叠组的主设备通过本堆叠组的第一组间堆叠聚合组发送本堆叠组的拓扑信息;通过本堆叠组的第一组间堆叠聚合组接收邻居堆叠组发送的拓扑信息;堆叠系统另一端的堆叠组的主设备通过本堆叠组的第二组间堆叠聚合组发发送本堆叠组的拓扑信息;通过本堆叠组的第二组间堆叠聚合组接收邻居堆叠组发送的拓扑信息;堆叠系统两端的两个堆叠组之间的各堆叠组的主设备通过本堆叠组的第一组间堆叠聚合组和第二组间堆叠聚合组发送本堆叠组的拓扑信息;通过本堆叠组的所述第一组间堆叠聚合组和所述组间堆叠聚合组接收邻居堆叠组发送的拓扑信息,将本堆叠组的拓扑信息与本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息一起通过本堆叠组的所述第二组间堆叠聚合组发送给一个邻居堆叠组;将本堆叠组的拓扑信息与本堆叠组所述第二组间堆叠聚合组接收的拓扑信息一起通过本堆叠组的所述第一组间堆叠聚合组发送给另一个邻居堆叠组。
13.根据权利要求1所述的方法,其特征在于,各堆叠组的主设备选举堆叠系统的主堆叠组包括:各堆叠组的主设备根据收集的堆叠系统内所有堆叠组的拓扑信息选举预设主堆叠组为所述堆叠系统的拓扑信息主堆叠组。
14.根据权利要求1所述的方法,其特征在于,各堆叠组的主设备选举堆叠系统的主堆叠组包括:各堆叠组的主设备根据收集的堆叠系统内所有堆叠组的拓扑信息和预设的选举规则,选举最高优先级的堆叠组为所述堆叠系统的拓扑信息主堆叠组。
15.一种应用于矩阵堆叠系统的拓扑发现的设备,其特征在于,所述设备包括: 第一拓扑发现单元,用于通过组内堆叠口收集本堆叠组内所有成员设备的拓扑信息和组间堆叠口的标识和状态; 第一拓扑计算单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息识别本堆叠组的物理拓扑; 第一选举单元,用于根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息选举本堆叠组的堆叠组主设备; 堆叠管理单元,用于将所述第一拓扑发现单元收集的本堆叠组内具有相同标识且处于工作状态的组间堆叠口绑定为组间堆叠聚合组; 第二拓扑发现单元,用于在所述设备被选举为堆叠组的主设备时通过所述组间堆叠聚合组收集其他堆叠组的拓扑信息; 第二拓扑计算单元,用于在所述设备被选举为堆叠组的主设备时识别所述堆叠系统的物理拓扑为矩阵拓扑; 第二选举单元,用于在所述设备被选举为堆叠组的主设备时选举堆叠系统的拓扑信息主堆叠组;其中,所述主堆叠组的堆叠组主设备作为所述堆叠系统的堆叠系统主设备。
16.根据权利要求15所述的设备,其特征在于, 所述第一拓扑发现单元,通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态,通过本设备的所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态;将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过所述第一组内堆叠口接收的拓扑信息和组间堆叠口的标识 和状态之前,通过本设备所述的第二组内堆叠口发送给一个堆叠组内邻居成员设备;将本设备的拓扑信息和组间堆叠口的标识和状态添加在本设备通过所述第二组内堆叠口接收的拓扑信息之前,通过本设备的所述第一组内堆叠口发送给另一个堆叠组内邻居成员设备。
17.根据权利要求15所述的设备,其特征在于, 所述第一拓扑发现单元,通过本设备的第一组内堆叠口和第二组内堆叠口发送本设备的拓扑信息组间堆叠口的标识和状态;分别通过本设备所述第一组内堆叠口和所述第二组内堆叠口接收堆叠组内邻居成员设备发送的拓扑信息和组间堆叠口的标识和状态;将本设备的所述第一组内堆叠口接收的拓扑信息中的各设备拓扑信息的设备跳数加1,在修改了设备跳数的成员设备拓扑信息之前添加本设备的拓扑信息以及本设备的组间堆叠口的标识和状态绑定,从本设备的所述第二组内堆叠口发送到一个堆叠组内邻居成员设备;将本设备的所述第二组内堆叠口接收的拓扑信息中的各设备拓扑信息的设备跳数加1,在修改了绑定跳数的成员设备拓扑信息之前添加本设备的拓扑信息以及本设备的组间堆叠口的标识和状态,从本设备的所述第一组内堆叠口发送。
18.根据权利要求15所述的设备,其特征在于,所述第一拓扑发现单元,通过本设备的第一组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态;通过本设备的第一组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态。
19.根据权利要求15所述的设备,其特征在于,所述第一拓扑发现单元,通过本设备的第二组内堆叠口发送本设备的拓扑信息、组间堆叠口的标识和状态;通过本设备的所述第二组内堆叠口接收本堆叠组内邻居成员设备发送的拓扑信息、组间堆叠口的标识和状态。
20.根据权利要求16或17所述的设备,其特征在于,所述第一拓扑计算单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息确定堆叠组的成员设备以环形连接,识别本堆叠组的物理拓扑是环形拓扑。
21.根据权利要求18或19所述的设备,其特征在于,所述第一拓扑计算单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息确定堆叠组的成员设备以链形连接,识别本堆叠组的物理拓扑是链形拓扑。
22.根据权利要求15所述的设备,其特征在于,所述第一选举单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息选举预设的堆叠组主设备为本堆叠组的主设备。
23.根据权利要求15所述的设备,其特征在于,所述第一选举单元根据所述第一拓扑发现单元收集的本堆叠组内所有成员设备的拓扑信息以及预设选举规则选举具有最高优先级的成员设备为本堆叠组的主设备。
24.根据权利要求15所述的设备,其特征在于,所述堆叠管理单元将所述第一拓扑发现单元收集的本堆叠组内具处于工作状态的第一组间堆叠口绑定为第一组间堆叠聚合组;将第一拓扑发现单元收集的本堆叠组内具有相同标识且处于工作状态的第二组间堆叠口绑定为本堆叠组的第二组间堆叠聚合组。
25.根据权利要求15所述的设备,其特征在于,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组和和第二组间堆叠聚合组发送本堆叠组的拓扑信息;通过本堆叠组的所述第一组间堆叠聚合组和所述第二组间堆叠聚合组接收邻居堆叠组发送的拓扑信息;将本堆叠组的拓扑信息添加在 本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第二组间堆叠聚合组发送给一个邻居堆叠组;将本堆叠组的拓扑信息添加在本堆叠组的所述第二组间堆叠聚合组接收的拓扑信息之前,通过本堆叠组的所述第一组间堆叠聚合组发送给另一个邻居堆叠组。
26.根据权利要求15所述的设备,其特征在于,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组和和第二组间堆叠聚合组发送本堆叠组作拓扑信息;将本堆叠组的所述第一组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组拓扑信息,从本堆叠组的所述第二组间堆叠聚合组发送;将本堆叠组的所述第二组间堆叠聚合组接收的拓扑信息中各堆叠组拓扑信息的堆叠组跳数加1,在修改了堆叠组跳数的堆叠组拓扑信息之前添加本堆叠组拓扑信息,通过从本堆叠组的所述第一组间堆叠聚合组发送。
27.根据权利要求15所述的设备,其特征在于,所述第二拓扑发现单元,通过本堆叠组的第一组间堆叠聚合组发送本堆叠组作为堆叠组的拓扑信息;通过本堆叠组的第一组间堆叠聚合组接收邻居堆叠组发送的拓扑信息。
28.根据权利要求15所述的设备,其特征在于,所述第二拓扑发现单元,通过本堆叠组的第二组间堆叠聚合组发送本堆叠组作为堆叠组的拓扑信息;通过本堆叠组的第二组间堆叠聚合组接收邻居堆叠组发送的拓扑信息。
29.根据权利要求25- 28任一所述的设备,其特征在于,所述第二拓扑计算单元,根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息,确定堆叠系统内的成员设备以矩阵方式连接,识别本堆叠系统的物理拓扑是矩阵拓扑。
30.根据权利要求15所述的设备,其特征在于,所述第二选举单元根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息,选举预设主用堆叠组为所述堆叠系统的拓扑信息主堆叠组。
31.根据权利要求15所述的设备,其特征在于,所述第二选举单元根据所述第二拓扑发现单元收集的堆叠系统内所有堆叠组的拓扑信息以及预设选举规则选举具有最高优先级的堆叠组 为所述堆叠系统的拓扑信息主堆叠组。
全文摘要
本申请提供了矩阵堆叠系统的拓扑发现方法和设备。本发明中,先收集堆叠组内的拓扑信息,再从每一堆叠组内选举一个堆叠组主设备以代表其所处的堆叠组收集其他堆叠的拓扑信息,实现了堆叠组内的拓扑信息与堆叠组间的拓扑信息分级进行拓扑信息收集,这能在矩阵堆叠系统中快速、准确实现拓扑信息的收集,实现了在矩阵形的堆叠拓扑结构中进行拓扑发现。
文档编号H04L12/931GK103220234SQ20131013818
公开日2013年7月24日 申请日期2013年4月19日 优先权日2013年4月19日
发明者梁学伟 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1