一种堆叠拓扑的学习方法及装置制造方法
【专利摘要】本发明实施例提供了一种堆叠拓扑的学习方法及装置,该方法应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个交换设备通过自身的内联堆叠口进行拓扑收集后形成的,且每个域中的主成员设备执行:如果在通过自身所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文,则将发送拓扑探测响应报文的对端域确定为自身所属域的邻居域;根据从确定出的邻居域获取到的域属性和域属性优先级,确定自身所属域是否为主域,并在确定为是时,将确定出的邻居域配置为自身所属域的从域,并将从域的外联堆叠口作为自身所属域的外联堆叠口,返回确定自身所属域的邻居域的步骤。本发明有效提高了堆叠链路带宽,并增加了堆叠成员数量。
【专利说明】一种堆叠拓扑的学习方法及装置
【技术领域】
[0001 ] 本发明涉及通信【技术领域】,尤其涉及一种堆叠拓扑的学习方法及装置。
【背景技术】
[0002]堆叠(Stacking)是指一台以上的交换设备通过各自的堆叠端口(即堆叠口)连接起来,形成一台“联合设备”,即作为一个逻辑交换实体运行,这样用户通过对这台“联合设备”进行管理,即可实现对“联合设备”中的所有交换设备进行管理。
[0003]在堆叠中,通常将组成“联合设备”的每个交换设备称为成员设备,通过这些成员设备之间的相互备份提高了整个堆叠的可靠性。具体地,成员设备按照功能可分为主成员设备和从成员设备,其中,主成员设备在某一时间段内只能有一个,且负责管理整个堆叠;从成员设备隶属于主成员设备,听从主成员设备的管理。
[0004]目前,在堆叠拓扑网络中,传统的堆叠拓扑架构一般包括线形堆叠和环形堆叠。其中,在线形堆叠中,各成员设备之间的通路只有一条,例如图1A所示的由交换设备I?交换设备8组成的堆叠;在环形堆叠中,各成员设备之间的通路有两条,例如图1B所示的由交换设备I?交换设备8组成的堆叠。
[0005]这样,在采用传统的堆叠拓扑架构进行报文处理时,例如单播报文转发,假设采用如图1A所示的线形堆叠进行处理,在这种情况下,例如交换设备3接收到单播报文,且此报文需要通过交换设备8进行转发,那么,交换设备3需要经过交换设备4?交换设备7这4台设备转发此报文,才能到达交换设备8,由交换设备8将此报文转发至相应的目的地址。
[0006]假设采用如图1B所示的环形堆叠进行处理,仍以交换设备3接收到单播报文,需要通过交换设备8进行转发为例,在这种情况下,交换设备3可以经过交换设备2、交换设备I这2台设备转发此报文,到达交换设备8,由交换设备8将此报文转发至相应的目的地址;也可以经过交换设备4?交换设备7这3台设备转发此报文,然后到达交换设备8,由交换设备8将此报文转发至相应的目的地址。
[0007]从上述处理流程可以看出,不管采用哪种堆叠转发报文,在堆叠内部成员设备之间的转发路径都较长,这就导致报文转发的延迟现象严重,基于此缺陷,上述线环堆叠和环形堆叠中成员设备的数量会受到限制,一般不超过9台,这就导致现有堆叠拓扑架构的扩展性较差,且在采用现有堆叠拓扑架构处理数量较多的报文时,由于需跨多个成员设备转发,容易出现报文丢失,即无法保证报文的正常转发。
【发明内容】
[0008]本发明实施例提供了一种堆叠拓扑的学习方法及装置,用以解决现有堆叠拓扑架构的扩展性差的问题。
[0009]基于上述问题,本发明实施例提供的一种堆叠拓扑的学习方法,应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个交换设备通过自身的内联堆叠口进行拓扑收集后形成的,且每个域中的主成员设备均执行下述步骤:[0010]如果在通过自身所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文,则将发送所述拓扑探测响应报文的对端域确定为自身所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;
[0011]根据从确定出的邻居域获取到的域属性和域属性优先级,确定自身所属域是否为主域,并在确定为是时,将确定出的邻居域配置为自身所属域的从域,并将所述从域的外联堆叠口作为自身所属域的外联堆叠口,返回确定自身所属域的邻居域的步骤。
[0012]从上述方案可以看出,本发明是以主域为核心,不断地向外扩展从域,在扩展到从域之后,再在新扩展的从域上继续进行拓扑堆叠,从而实现主域外的从域可以层层加入主域的管理,即可以将更多的交换设备虚拟成一台交换设备,解决了现有堆叠拓扑架构扩展性差的问题。
[0013]优选地,每个域中的主成员设备通过下述方式确定自身所属域的邻居域:通过自身所属域的外联堆叠口发送携带有自身所属域的域媒体访问控制地址(Media AccessControl Address,MAC)和域属性的拓扑探测报文;判断在发送所述拓扑探测报文后的所述预设时间内是否接收到对应的拓扑探测响应报文;若是,将发送所述拓扑探测响应报文的对端域确定为自身所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存所述域MAC、且自身的域属性与所述域属性均不为从域属性时返回的报文。
[0014]这样,本发明主要是利用事先给各个域指定的域MAC地址和域属性,来进行后续域与域之间的拓扑探测的,从而确定出各个域的邻居域,在本发明中,在两个相互进行拓扑探测的域的域属性均为从域的情况下,不视为是彼此的邻居域。
[0015]优选地,每个域中的主成员设备通过下述方式确定自身所属域是否为主域:获取确定出的邻居域的域属性,并判断获取到的域属性为从域属性还是主域属性;如果判断出获取到的域属性为从域属性,则确定自身所属域为主域;如果判断出获取到的域属性为主域属性,则继续获取确定出的邻居域的域属性优先级,并在获取到的域属性优先级低于自身所属域的域属性优先级时,确定自身所属域为主域。
[0016]这样,每个域中的主成员设备在确定出各自所属域的邻居域之后,主要是利用每个域与之互为邻居的域的域属性和域属性优先级,来实现自身所属域是否是主域的判定的。
[0017]优选地,每个域中的主成员设备还执行下述步骤:在确定出自身所属域为主域,且配置的自身所属域的从域中存在域属性为主域属性的域时,将从所有配置的自身所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。
[0018]这样,主域中的主成员设备可以将其所有的拓仆信息传送给具有主域属性的扩展的从域进行备份,以实现主域脱离后,具有主域属性的从域继续进行管理,进而提高了堆叠的可靠性。
[0019]优选地,每个域中的主成员设备还执行下述步骤:在确定出自身所属域为主域,且将确定出的邻居域配置为自身所属域的从域时,为所述从域配置对应的域标识。
[0020]这样,本发明中的主域之所以为扩展的从域配置唯一的域标识,主要是为了方便后续控制扩展的从域的业务运行,在某一个扩展的从域脱离主域后重新加入时,无需重新配置域标识,只需将之前的域标识重新配置给它即可,简化了主域的处理流程。
[0021]本发明实施例提供的一种堆叠拓扑的学习装置,该装置应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个所述装置通过自身的内联堆叠口进行拓扑收集后形成的,该装置,包括:
[0022]确定模块,用于在通过所述装置所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文时,将发送所述拓扑探测响应报文的对端域确定为所述装置所属域的邻居域;以及根据从确定出的邻居域获取到的域属性和域属性优先级,确定所述装置所属域是否为主域;所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;
[0023]配置模块,用于在所述确定模块确定出所述装置所属域为主域时,将确定出的邻居域配置为所述装置所属域的从域,并将所述从域的外联堆叠口作为所述装置所属域的外联堆叠口,返回所述确定模块执行的步骤。
[0024]这样,在上述装置所属域为主域的情况下,可以实现以自身为核心,不断地向外扩展从装置,进而实现主域外的从域层层加入主域的管理,即可以将更多的交换设备虚拟成一台交换设备,解决了现有堆叠拓扑架构扩展性差的问题。
[0025]优选地,所述确定模块,具体用于通过所述装置所属域的外联堆叠口发送携带有所述装置所属域的域MAC和域属性的拓扑探测报文;判断在发送所述拓扑探测报文后的所述预设时间内是否接收到对应的拓扑探测响应报文;以及在判断为是时,将发送所述拓扑探测响应报文的对端域确定为所述装置所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存所述域MAC、且自身的域属性与所述域属性均不为从域属性时返回的报文。
[0026]这样,确定模块主要是利用事先给各个装置所属域指定域MAC和域属性,来实现所述装置所属域的邻居装置的确定的。
[0027]优选地,所述确定模块,具体用于获取确定出的邻居域的域属性,并判断获取到的域属性为从域属性还是主域属性;在判断出获取到的域属性为从域属性时,确定所述装置所属域为主域;在判断出获取到的域属性为主域属性时,继续获取确定出的邻居域的域属性优先级,并在获取到的域属性优先级低于所述装置所属域的域属性优先级时,确定所述装置所属域为主域。
[0028]这样,确定模块在确定出所述装置所属域是主域之后,主要是利用所述装置所属域与邻居域的域属性和域属性优先级,来实现是否是主域的判定的。
[0029]优选地,所述装置,还包括:发送模块,用于在所述确定模块确定出所述装置所属域为主域,且配置的所述装置所属域的从域中存在域属性为主域属性的域时,将从所有配置的所述装置所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。
[0030]这样,利用发送模块将所述装置所属域的所有拓仆信息传送给具有主域属性的从域进行备份,以实现后续主域脱离后,由具有主域属性的从域管理堆叠,提高了堆叠的可靠性。
[0031]优选地,所述配置模块,具体用于在所述确定模块确定出所述装置所属域为主域,且将确定出的邻居域配置为所述装置所属域的从域时,为所述从域配置对应的域标识。
[0032]这样,利用配置模块给扩展的从域配置唯一的域标识,方便后续装置所属域控制扩展的从域的业务运行,并且在某一个扩展的从域脱离后重新加入时,只需将之前的域标识重新配置给它即可,简化了主域的处理流程。
【专利附图】
【附图说明】
[0033]图1A为现有线形堆叠的结构示意图;
[0034]图1B为现有环形堆叠的结构示意图;
[0035]图2为本发明实施例提供的域内内联堆叠口和域间外联堆叠口的示意图;
[0036]图3为本发明实施例提供的堆叠拓扑的学习方法的流程图;
[0037]图4为本发明实施例提供的每个域中的主成员设备确定自身所属域的邻居域的流程图;
[0038]图5为本发明实施例提供的每个域中的主成员设备确定自身所属域是否为主域的流程图;
[0039]图6A为本发明实施例提供的堆叠示意图之一;
[0040]图6B为本发明实施例提供的堆叠示意图之二 ;
[0041]图7A?图7C为本发明实施例提供的报文转发的路径示意图;
[0042]图8为本发明实施例提供的堆叠拓扑的学习装置的结构示意图。
【具体实施方式】
[0043]下面结合说明书附图,对本发明实施例提供的一种堆叠拓扑的学习方法及装置的【具体实施方式】进行说明。
[0044]在本发明的下述实施例中,所谓的“域”,实际上是由至少一个属于同一系列的交换设备通过各自的堆叠口进行拓扑收集后形成的,即一个域是一个堆叠,例如可以由多台核心交换设备组成一个域,也可以由接入交换设备组成一个域。
[0045]本发明实施例是应用于包括有多个域的堆叠拓扑网络的场景下,每个域都预先配置有域MAC、域属性和域属性优先级,以便于后续域间交互时判定。在这里,每个域的域属性可根据域内成员设备的硬件能力指定,例如指定由核心交换设备组成的域的域属性为主域属性,后续可作为主域进行堆叠扩展;由接入交换设备组成的域的域属性为从域属性,后续作为被扩展的对象。
[0046]需要说明的是,对于包括有多个域的堆叠拓扑网络来说,可以预先指定多个域的域属性均为主域属性,但是,在这种情况下,需要事先指定具有主域属性的域的域属性优先级,便于后续确定哪个域可作为主域。
[0047]另外,每个域可以单独工作,也可以与其他域通过堆叠端口形成二次堆叠,为了便于说明,在下述实施例中,将域内成员设备之间互联的堆叠端口称之为“内联堆叠口”,用于域内成员设备之间的交互;将域间成员设备之间的堆叠端口称之为“外联堆叠口”,用于域间成员设备的交互,且下述实施例中的外联堆叠口通常采用聚合口的方式,即采用外联聚合口进行交互,以增强堆叠的稳定性。
[0048]例如,如图2所示,域I内的成员设备21的堆叠端口 P1、成员设备22的堆叠端口P2、域2内的成员设备23的堆叠端口 P7和成员设备24的堆叠端口 P8为内联堆叠口 ;域I内的成员设备21的堆叠端口 P3、成员设备22的堆叠端口 P4、域2内的成员设备23的堆叠端口 P5和成员设备24的堆叠端口 P6为外联堆叠口。
[0049]本发明实施例提供的一种堆叠拓扑的学习方法,如图3所示,每个域中的主成员设备具体执行以下步骤:
[0050]S301:确定在通过自身所属域的外联堆叠口发送拓扑探测报文后的预设时间内是否接收到对应的拓扑探测响应报文,若是,执行步骤S302,否则,执行步骤S303 ;
[0051]在这里,上述拓扑探测响应报文实际上指的是对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;
[0052]S302:将发送拓扑探测响应报文的对端域确定为自身所属域的邻居域,执行步骤S304 ;
[0053]S303:退出拓扑探测;
[0054]S304:根据从确定出的邻居域获取到的域属性和域属性优先级,确定自身所属域是否为主域,若是,执行步骤S305,否则,执行步骤S303 ;
[0055]S305:将确定出的邻居域配置为自身所属域的从域,并将从域的外联堆叠口作为自身所属域的外联堆叠口,返回步骤S301。
[0056]优选地,在上述步骤S301中,如图4所示,每个域中的主成员设备可通过下述步骤确定自身所属域的邻居域:
[0057]S401:通过自身所属域的外联堆叠口发送携带有自身所属域的域MAC和域属性的拓扑探测报文;
[0058]S402:判断在发送拓扑探测报文后的预设时间内是否接收到对应的拓扑探测响应报文,若是,执行步骤S403 ;否则,执行步骤S404 ;
[0059]S403:将发送拓扑探测响应报文的对端域确定为自身所属域的邻居域;
[0060]在这里,上述拓扑探测响应报文实际上指的是对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存域MAC、且自身的域属性与域属性均不为从域属性时返回的报文;
[0061]S404:退出拓扑探测。
[0062]优选地,在上述步骤S401中,每个域的主成员设备所属域的外联堆叠口可以是自身的外联堆叠口,也可以是域内某一个从成员设备的外联堆叠口。
[0063]优选地,在上述步骤S402中,对于接收到拓扑探测报文的对端域来说,它会根据拓扑探测报文中的域MAC地址,查找自身是否存储有该域MAC地址,以排除之前已是对端域的邻居的情况;进一步地,在查找不到的情况下,并不是直接确定自身就是对端域的邻居,而是要执行一个域属性的判断流程,以确保双方的域属性均不为从域属性,这是因为,在双方的域属性均为从域属性时,双方无法进行后续的堆叠拓扑。
[0064]优选地,在上述步骤S304中,如图5所示,每个域中的主成员设备可通过下述步骤确定自身所属域是否为主域:
[0065]S501:获取确定出的邻居域的域属性;
[0066]S502:判断获取到的域属性是否为从域属性;若是,执行步骤S503 ;否则,执行步骤 S504 ;
[0067]S503:确定自身所属域为主域;
[0068]S504:继续获取确定出的邻居域的域属性优先级;[0069]S505:判断自身所属域的域属性优先级是否高于获取到的确定出的邻居域的域属性优先级;若是,执行步骤S503 ;否则,执行步骤S506 ;
[0070]S506:退出拓扑探测。
[0071]在本发明实施例中,在某个域中的主成员设备确定出自身所属域为主域的情况下,还可以向确定出的邻居域发送确认自身所属域是主域的确认报文,由邻居域给予回应,以更好的保持后续的堆叠通信。
[0072]另外,本发明实施例在返回执行上述步骤S301时,主域中的主成员设备通常是通过从域上与主成员设备所属域的外联堆叠口不相连的外联堆叠口发送拓扑检测报文,这样一来,可以过滤该主域被判定为是该从域的邻居域的情况,简化堆叠检测流程。
[0073]优选地,本发明实施例中的每个域中的主成员设备还可执行下述流程:所属域为主域,且配置的自身所属域的从域中存在域属性为主域属性的域时,将从所有配置的自身所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。这样,在主域脱离堆叠后,具有主域属性且域属性优先级次高的从域可以继续对整个堆叠进行管理,进而提高了堆叠的可靠性。
[0074]优选地,本发明实施例中的每个域中的主成员设备还可执行下述流程:确定出自身所属域为主域,且将确定出的邻居域配置为自身所属域的从域时,为从域配置对应的域标识。例如主域可以使用“端口类型+域标识/设备号/槽位号/端口号”,来标识对应的使用“端口类型+设备号/槽位号/端口号”的端口。
[0075]在这里,对于主域中的主成员设备而言,在将确定出的邻居域配置为自身所属域的从域时,之所以为每个从域配置唯一的域标识,主要是为了方便后续控制扩展的从域的业务运行,在某一个扩展的从域脱离主域后重新加入时,无需重新配置域标识,只需将之前的域标识重新配置给它即可,这就简化了主域的处理流程。
[0076]下面结合实施例一至实施例三对上述堆叠方法进行简要说明:
[0077]实施例一
[0078]假设堆叠拓扑网络中仅包括一个具有主域属性的域,如图6A所示,例如包括域1、域2和域3,其中:
[0079]域I的外联堆叠口 Al与域2的外联堆叠口 A2互联;
[0080]域2的外联堆叠口 B2与域3的外联堆叠口 A3互联;
[0081]域I的域属性为主域属性;域2和域3的域属性均为从域属性。
[0082]在这种情况下,在各个域启机后,假设域I中的主成员设备执行上述堆叠方法,且该主成员设备具备外联堆叠口 Al,那么,在执行完上述步骤S301?S302后,可得出域2是域I的邻居域;在执行上述步骤S304时,即确定域I是否为主域时,是根据域I和域2的域属性确定出来的;然后,执行上述步骤S305,即将域2配置为从域,并在配置完成后,将域2的外联堆叠口作为域I的外联堆叠口,返回上述步骤S301?步骤S305。
[0083]S卩,通过域2的外联堆叠口发送拓扑探测报文,例如通过域2的外联堆叠口 BI发送拓扑探测报文,后续执行流程与上述流程相同,若执行完得出下述结论:域3也是扩展后的域I的邻居域,在这种情况下,将域3也配置为域I的从域,并将域3的外联堆叠口也作为域I的外联堆叠口,此时,当前堆叠拓扑网络中的堆叠即是由主域(域I)、主域的第一外围域(域2)和主域的第二外围域(域3)组成的堆叠。[0084]进一步地,为了更好地扩展本实施例中的堆叠,域I中的主成员设备还可通过域3的外联堆叠口执行上述步骤S301-步骤S305,例如可通过域3上除外联堆叠口 A3之外的其他外联堆叠口(图6A中未示出)执行上述步骤,判断一下是否有后续新加入的域可扩展为域I的从域。
[0085]实施例二
[0086]假设堆叠拓扑网络中包括两个具有主域属性的域,仍如图6A所示,与之不同的是:域I和域2的域属性均为主域属性;域3的域属性为从域属性。在这种情况下,与图6A执行的流程类似,与之不同的是,在执行上述步骤S304时,即确定域I是否为主域时,增加了域I和域2的域属性优先级的判定,不过,最终确定出的当前堆叠拓扑网络中的堆叠仍是由主域(域I)、主域的第一外围域(域2)和主域的第二外围域(域3)组成的堆叠。
[0087]实施例三
[0088]假设堆叠拓扑网络中仍包括两个具有主域属性的域,如图6B所示,例如包括域1、域2、域3、域4和域5,其中:
[0089]域I的外联堆叠口 Al与域2的外联堆叠口 A2互联,
[0090]域I的外联堆叠口 BI与域3的外联堆叠口 A3互联[0091 ] 域2的外联堆叠口 B2与域4的外联堆叠口 A4互联
[0092]域4的外联堆叠口 B4与域5的外联堆叠口 A5互联
[0093]域I和域2的域属性为主域属性,域3?域5均为从域属性。
[0094]在这种情况下,在各个域启机后,仍以域I中的主成员设备执行上述堆叠方法为例,且该主成员设备具备外联堆叠口 Al和BI,那么,在执行完上述步骤S301?S302后,可得出域2和域3是域I的邻居域;在执行完上述步骤S304后,可得出域I是主域,执行上述步骤S305,即将域2和域3配置为域I的从域,并在配置成功后,将域2和域3的外联堆叠口作为域I的外联堆叠口,返回上述步骤S301?步骤S305。
[0095]S卩,通过域2和域3的外联堆叠口发送拓扑探测报文,例如通过域2的外联堆叠口B2和域3上除外联堆叠口 A3外的外联堆叠口(图中未示出)发送拓扑探测报文,后续执行流程与上述流程相同,若执行完得出下述结论:通过域3的相关外联堆叠口未确定出相应的邻居域,通过域2的外联堆叠口 B2确定出域4也是扩展后的域I的邻居域,在这种情况下,再次将域4配置为域I的从域,并将域4的外联堆叠口也作为域I的外联堆叠口,然后再通过域4的外联堆叠口执行上述步骤S301-步骤S305,例如可通过域4的外联堆叠口B4执行上述步骤,若执行完得出下述结论:通过域4的外联堆叠口 B4确定出域5也是扩展后域I的邻居域,在这种情况下,将域5配置为域I的从域,并将域5的外联堆叠口也作为域I的外联堆叠口,此时,当前堆叠拓扑网络中的堆叠即是由主域(域I)、第一外围域(域2和域3)、第二外围域(域4)和第三外围域(域5)组成的堆叠。
[0096]进一步地,为了更好地扩展本实施例中的堆叠,域I中的主成员设备还可通过域5的外联堆叠口执行上述步骤S301-步骤S305,例如可通过域5上除外联堆叠口 A5之外的其他外联堆叠口(图6B中未示出)执行上述步骤,判断一下是否有后续新加入的域可扩展为域I的从域。
[0097]需要说明的是,不管在上述哪一个实施例中,主域I中的主成员设备在通过从域的外联堆叠口发送拓扑探测报文时,均可通过下述几种方式实现:[0098]第一种方式,不管从域中的主成员设备是否具备外联堆叠口,主域I中的主成员设备可直接将拓扑探测报文,发送至从域中具备外联堆叠口的成员设备上,由这些成员设备通过各自的外联堆叠口发送出去。
[0099]第二种方式,在从域中的主成员设备不具备外联堆叠口的情况下,主域I中的主成员设备可先将拓扑探测报文,发送至从域中任一具备外联堆叠口的从成员设备上,由该从成员设备转发至对应所属域的主成员设备上,然后,再由从域中的主成员设备将拓扑探测报文分别通过具备外联堆叠口的从成员设备发送出去。
[0100]第三种方式,在从域中的主成员设备具备外联堆叠口的情况下,主域I中的主成员设备先将拓扑探测报文,发送至从域中的主成员设备上,然后,由从域中的主成员设备分别通过具备外联堆叠口的成员设备将拓扑探测报文发送出去。
[0101]另外,不管在上述哪一个实施例中,在域I中的主成员设备不具备外联堆叠口的情况下,均是由该主成员设备通过具备外联堆叠口的从成员设备来发送拓扑探测报文的,其他执行流程与上述流程相同,在此不再详述。
[0102]当然,本发明实施例并不仅限于上述三种实施例的情形,还可以应用于其他情形,在此不再一一列举。
[0103]进一步地,在本发明实施例中,在采用上述堆叠拓扑的学习方法得到的堆叠进行报文转发处理时,可分为下述几种转发情形:
[0104]第一种情形:域内转发,即堆叠中的某个域的成员设备接收到单播报文,且此报文需要通过此域内的其他成员设备转发至对应的目的地址。
[0105]在这种情形下,接收到报文的成员设备将此报文通过内联堆叠口转发到对应成员设备即可。例如由域I和域2组成的堆叠(如图7A所示)进行报文转发,假设域I内的成员设备71接收到单播报文,需要通过成员设备73转发至相应的目的地址,那么,成员设备71可以将此报文通过自身的内联堆叠口转发至成员设备72,由成员设备72再通过其内联堆叠口转发至成员设备73(如图7A所示的转发路径)。当然,域I内的成员设备71也可以将此报文经过成员设备74转发至成员设备73 (图7A未示出)。
[0106]第二种情形:域间转发,即堆叠中的某个域的成员设备接收到单播报文,该域具备外联堆叠口,且此报文需要通过其他域内的某个成员设备转发至对应的目的地址。
[0107]在这种情况下,如果接收到报文的成员设备与其他域内的某个成员设备互联,那么,接收到的成员设备直接将此报文通过自身的外联堆叠口转发至某个成员设备即可;如果二者不互联,那么,接收到报文的成员设备可以先将此报文通过自身的外联堆叠口转发至其他域内与自身互联的成员设备上,这样,再由其他域内与自身互联的成员设备将此报文转发至对应成员设备;当然,接收到报文的成员设备也可以将此报文通过自身的内联堆叠口转发至具有外联堆叠口且与其他域互联的成员设备上,由这台成员设备通过自身的内联堆叠口转发至某个成员设备。
[0108]例如,由域I和域2组成的堆叠(如图7B所示)进行报文转发,假设域I内的成员设备71接收到单播报文,需要通过域2内的成员设备77转发至相应的目的地址,那么,成员设备71需将此报文通过自身的外联堆叠口转发至域2内的成员设备75,由成员设备75再通过其内联堆叠口转发至成员设备78,后续由成员设备78将此报文通过其内联堆叠口转发至成员设备77 (如图7B所示的转发路径)。当然,域2内的成员设备75也可以将此报文经过成员设备76转发至成员设备77(图7B未示出),在此不再详述。
[0109]第三种情形:域间转发,即堆叠中的某个域的成员设备接收到单播报文,该成员设备上不具备外联堆叠口,且此报文需要通过其他域内的某个成员设备转发至对应的目的地址。
[0110]在这种情况下,接收到报文的成员设备需要先将此报文通过自身的内联堆叠口转发至具有外联堆叠口且与其他域互联的成员设备上,如果这台设备即是某个成员设备,那么由这台设备将此报文转发至相应的目的地址;如果这台设备不是某个成员设备,那么由这台成员设备再通过自身的内联堆叠口转发至某个成员设备。
[0111]例如,由域I和域2组成的堆叠(如图7C所示)进行报文转发,假设域I内的成员设备71接收到单播报文,需要通过域2内的成员设备77转发至相应的目的地址,那么,成员设备71可以先将此报文通过自身的内联堆叠口转发至成员设备74,由成员设备74将此报文通过自身的外联堆叠口转发至域2内的成员设备78,由成员设备78再通过其内联堆叠口转发至成员设备77(如图7C所示的转发路径)。
[0112]当然,域I内的成员设备71也可以将此报文经过域I内的成员设备72、域2内的成员设备76转发至成员设备77 (图7C未示`出);域I内的成员设备71还可以将此报文经过域I内的成员设备72、域2内的成员设备76、成员设备75和成员设备78转发至成员设备77 ;域I内的成员设备71还可以将此报文经过域I内的成员设备72和成员设备73转发至成员设备--等。
[0113]可见,采用本方法得到的堆叠进行业务处理时,例如报文转发处理,跨域间转发报文的路径有多条,这就保证了报文的正常转发,且提高了链路带宽,进而提高了堆叠的稳定性。
[0114]基于同一发明构思,本发明实施例还提供了一种堆叠拓扑的学习装置,由于该装置所解决问题的原理与前述堆叠拓扑的学习方法相似,因此该装置的实施可以参见前述方法的实施,重复之处不再赘述。
[0115]本发明实施例提供的堆叠拓扑的学习装置,应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个装置通过自身的内联堆叠口进行拓扑收集后形成的,如图8所示,该装置,具体包括:
[0116]确定模块801,用于在通过装置所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文时,将发送拓扑探测响应报文的对端域确定为装置所属域的邻居域;以及根据从确定出的邻居域获取到的域属性和域属性优先级,确定装置所属域是否为主域;
[0117]在这里,上述拓扑探测响应报文指的是对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;
[0118]配置模块802,用于在确定模块801确定出装置所属域为主域时,将确定出的邻居域配置为装置所属域的从域,并将从域的外联堆叠口作为装置所属域的外联堆叠口,返回确定模块801执行的步骤。
[0119]优选地,上述确定模块801,具体用于通过装置所属域的外联堆叠口发送携带有装置所属域的域MAC和域属性的拓扑探测报文;判断在发送拓扑探测报文后的预设时间内是否接收到对应的拓扑探测响应报文;以及在判断为是时,将发送拓扑探测响应报文的对端域确定为装置所属域的邻居域。
[0120]在这里,上述拓扑探测响应报文指的是对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存域MAC、且自身的域属性与域属性均不为从域属性时返回的报文。
[0121]优选地,上述确定模块801,具体用于获取确定出的邻居域的域属性,并判断获取到的域属性为从域属性还是主域属性;在判断出获取到的域属性为从域属性时,确定装置所属域为主域;在判断出获取到的域属性为主域属性时,继续获取确定出的邻居域的域属性优先级,并在获取到的域属性优先级低于装置所属域的域属性优先级时,确定装置所属域为主域。
[0122]优选地,上述装置,还包括:
[0123]发送模块803,用于在确定模块801确定出装置所属域为主域,且配置的装置所属域的从域中存在域属性为主域属性的域时,将从所有配置的装置所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。
[0124]优选地,上述配置模块802,具体用于在确定模块801确定出装置所属域为主域,且将确定出的邻居域配置为装置所属域的从域时,为从域配置对应的域标识。
[0125]本发明实施例提供的堆叠拓扑的学习方法及装置,可以以主域为核心,不断地向外扩展从域,在扩展到从域之后,再在新扩展的从域上继续进行拓扑堆叠,从而实现主域外的从域可以层层加入主域的管理,即可以将更多的交换设备虚拟成一台交换设备,解决了现有堆叠拓扑架构扩展性差的问题,同时简化了网络管理。
[0126]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种堆叠拓扑的学习方法,其特征在于,应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个交换设备通过自身的内联堆叠口进行拓扑收集后形成的,且每个域中的主成员设备均执行下述步骤:如果在通过自身所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文,则将发送所述拓扑探测响应报文的对端域确定为自身所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;根据从确定出的邻居域获取到的域属性和域属性优先级,确定自身所属域是否为主域,并在确定为是时,将确定出的邻居域配置为自身所属域的从域,并将所述从域的外联堆叠口作为自身所属域的外联堆叠口,返回确定自身所属域的邻居域的步骤。
2.如权利要求1所述的方法,其特征在于,每个域中的主成员设备通过下述方式确定自身所属域的邻居域:通过自身所属域的外联堆叠口发送携带有自身所属域的域媒体访问控制地址MAC和域属性的拓扑探测报文;判断在发送所述拓 扑探测报文后的所述预设时间内是否接收到对应的拓扑探测响应报文;若是,将发送所述拓扑探测响应报文的对端域确定为自身所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存所述域MAC、且自身的域属性与所述域属性均不为从域属性时返回的报文。
3.如权利要求1所述的方法,其特征在于,每个域中的主成员设备通过下述方式确定自身所属域是否为主域:获取确定出的邻居域的域属性,并判断获取到的域属性为从域属性还是主域属性;如果判断出获取到的域属性为从域属性,则确定自身所属域为主域;如果判断出获取到的域属性为主域属性,则继续获取确定出的邻居域的域属性优先级,并在获取到的域属性优先级低于自身所属域的域属性优先级时,确定自身所属域为主域。
4.如权利要求1至3中任一项所述的方法,其特征在于,每个域中的主成员设备还执行下述步骤:在确定出自身所属域为主域,且配置的自身所属域的从域中存在域属性为主域属性的域时,将从所有配置的自身所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。
5.如权利要求1至3中任一项所述的方法,其特征在于,每个域中的主成员设备还执行下述步骤:在确定出自身所属域为主域,且将确定出的邻居域配置为自身所属域的从域时,为所述从域配置对应的域标识。
6.一种堆叠拓扑的学习装置,其特征在于,该装置应用于包括多个域的堆叠拓扑网络中,每个域是由至少一个所述装置通过自身的内联堆叠口进行拓扑收集后形成的,该装置,包括:确定模块,用于在通过所述装置所属域的外联堆叠口发送拓扑探测报文后的预设时间内接收到对应的拓扑探测响应报文时,将发送所述拓扑探测响应报文的对端域确定为所述装置所属域的邻居域;以及根据从确定出的邻居域获取到的域属性和域属性优先级,确定所述装置所属域是否为主域;所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文确定出自身满足预设条件时返回的报文;配置模块,用于在所述确定模块确定出所述装置所属域为主域时,将确定出的邻居域配置为所述装置所属域的从域,并将所述从域的外联堆叠口作为所述装置所属域的外联堆叠口,返回所述确定模块执行的步骤。
7.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于通过所述装置所属域的外联堆叠口发送携带有所述装置所属域的域媒体访问控制地址MAC和域属性的拓扑探测报文;判断在发送所述拓扑探测报文后的所述预设时间内是否接收到对应的拓扑探测响应报文;以及在判断为是时,将发送所述拓扑探测响应报文的对端域确定为所述装置所属域的邻居域,所述拓扑探测响应报文为所述对端域在根据接收到的拓扑探测报文中的域MAC和域属性,确定出自身未保存所述域MAC、且自身的域属性与所述域属性均不为从域属性时返回的报文。
8.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于获取确定出的邻居域的域属性,并判断获取到的域属性为从域属性还是主域属性;在判断出获取到的域属性为从域属性时,确定所述装置所属域为主域;在判断出获取到的域属性为主域属性时,继续获取确定出的邻居域的域属性优先级,并在获取到的域属性优先级低于所述装置所属域的域属性优先级时,确定所述装置所属域为主域。
9.如权利要求6至8中任一项所述的装置,其特征在于,所述装置,还包括:发送模块,用于在所述确定模块确定出所述装置所属域为主域,且配置的所述装置所属域的从域中存在域属性为主域属性的域时,将从所有配置的所述装置所属域的从域获取到的拓扑信息,发送至域属性为主域属性的域进行备份。
10.如权利要求6至8中.任一项所述的装置,其特征在于,所述配置模块,具体用于在所述确定模块确定出所述装置所属域为主域,且将确定出的邻居域配置为所述装置所属域的从域时,为所述从域配置对应的域标识。
【文档编号】H04L12/751GK103441934SQ201310359299
【公开日】2013年12月11日 申请日期:2013年8月16日 优先权日:2013年8月16日
【发明者】刘熙 申请人:福建星网锐捷网络有限公司