生成树协议STP计算方法及装置与流程

文档序号:11236614阅读:1281来源:国知局
生成树协议STP计算方法及装置与流程

本发明涉及通信技术领域,特别涉及一种生成树协议(英文:spanningtreeprotocol;缩写:stp)计算方法及装置。



背景技术:

跨设备链路聚合组(英文:multi-chassislinkaggregationgroup;缩写:m-lag)是一种实现跨设备链路聚合的机制,能够实现多台设备间的链路聚合,从而把链路可靠性从单板级提高到了设备级,组成双活系统。

m-lag主要应用于普通以太网络、多链接透明互联(英文:transparentinterconnectionoflotsoflinks;缩写:trill)网络、虚拟可扩展局域网(英文:virtualextensiblelocalareanetwork;缩写:vxlan)和ip(internetprotocol,网络协议)网络等网络的双规接入。一方面可以起到负载分担流量的作用,另一方面可以起到备份保护的作用。为了提高可靠性,用户经常采用双规接入的方式将服务器接入到网络中。如图1所示,其示出了一种双规接入的组网示意图。服务器11采用双规接入的方式接入到网络中。在接入侧,采用m-lag保证了设备级可靠性和链路级可靠性。在设备12和设备13之间部署m-lag,设备12和设备13之间通过peer-link链路建立连接。设备12与服务器11之间的链路以及设备13与服务器11之间的链路形成链路聚合组(英文:linkaggregationgroup;缩写:lag)。每个lag唯一对应着一个逻辑接口,这个逻辑接口称为聚合接口或eth-trunk接口。

多级m-lag互联(也称为m-lag级联或者m-lag对接)是对普通m-lag进行扩展对接的场景,能更好地做到更大带宽的负载均衡和备份保护的作用。如图2所示,其示出了一种多级m-lag互联的组网示意图。设备a和设备b之间部署m-lag,设备c和设备d之间也部署m-lag,且两个m-lag进行级联,这样不仅可以简化组网,而且在保证可靠性的同时扩展了接入服务器的数量。

在上述基于m-lag的组网中,为了进行链路备份以提高网络可靠性,使用冗余链路。但是,使用冗余链路会在交换网络上产生环路,引发广播风暴以及介质访问控制(英文:mediaaccesscontrol;缩写:mac)地址表不稳定等故障现象,从而导致用户通信质量较差,甚至通信中断。为解决交换网络中的环路问题,提出了stp。stp是一个用于局域网中消除环路的协议。运行该协议的设备通过彼此交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。在交换网络中部署stp之后,如果网络中出现了环路,stp通过拓扑计算,一方面通过阻塞冗余链路消除网络中可能存在的网络通信环路,达到消除环路的目的,另一方面通过在当前活动的路径发生故障时,激活冗余备份链路,恢复网络连通性,达到链路备份的目的。由于局域网规模的不断增长,stp已经成为了当前最重要的局域网协议之一。

然而,针对上述采用m-lag进行组网的场景,如果采用现有的stp算法对网络中的环路进行破坏,会存在如下问题:采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效。



技术实现要素:

为了解决现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题,本发明实施例提供了一种stp计算方法及装置。所述技术方案如下:

第一方面,提供了一种stp计算方法,该方法包括:第一设备向第二设备发送第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息;第一设备根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同;第一设备从第二设备接收第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,第二设备的内部端口的扩展优先级向量由第二设备根据第一设备的stp配置信息计算得到;第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

通过上述方式,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证两台设备属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

在第一方面的第一种可能的实施方式中,第一设备根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量,包括:第一设备根据第一设备的stp配置信息,计算第一设备除内部端口以外的其它端口的优先级向量;第一设备从其它端口中选取优先级最高的优先级向量,作为第一设备的根优先级向量;第一设备将第一设备的根优先级向量与第一设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第一设备的内部端口的扩展优先级向量。

结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,扩展优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段、指定端口id字段、逻辑端口id字段、接收端口id字段和系统mac地址字段。根桥id字段指示根桥的桥id。累计根路径开销字段指示端口累计到根桥的路径开销。指定桥id字段指示发送根优先级向量的设备的桥id。指定端口id字段指示发送根优先级向量的端口的端口id。逻辑端口id字段指示本设备接收根优先级向量的端口对应的逻辑端口的端口id。接收端口id字段指示本设备接收根优先级向量的端口的端口id。系统mac地址字段指示本设备的mac地址。

通过上述方式,对stp标准协议所规定的端口优先级向量进行了扩展,以保证第一设备和第二设备加入同一m-lag组的eth-trunk端口的角色计算结果相同。

结合第一方面或者第一方面的任意一种可能的实施方式,在第一方面的第三种可能的实施方式中,第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量,计算第一设备的各个端口的角色,包括:第一设备将第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第一设备最终的根优先级向量;第一设备根据第一设备最终的根优先级向量,计算第一设备的各个端口的角色。

结合第一方面或者第一方面的任意一种可能的实施方式,在第一方面的第四种可能的实施方式中,第一设备根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量之后,还包括:第一设备向第二设备发送第一设备的内部端口的扩展优先级向量,以使得第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

结合第一方面或者第一方面的任意一种可能的实施方式,在第一方面的第五种可能的实施方式中,第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量,计算第一设备的各个端口的角色之后,还包括:第一设备设置第一设备的内部端口由阻塞状态变为转发状态。

通过上述方式,保证第一设备和第二设备的内部端口在完成stp拓扑计算之后,能够转发用户流量。

结合第一方面或者第一方面的任意一种可能的实施方式,在第一方面的第六种可能的实施方式中,第一设备和第二设备属于同一逻辑端口的成员端口发出的报文所携带的指定端口id相同。

通过上述方式,保证其它设备从同一m-lag端口的不同成员端口接收到的bpdu报文中的指定端口id字段相同,避免引起下游设备震荡,提高网络稳定性。

第二方面,提供了一种stp计算方法,该方法包括:第二设备从第一设备接收第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息;第二设备根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,扩展优先级向量用于使得第二设备和第一设备属于同一逻辑端口的成员端口的角色计算结果相同;第二设备从第一设备接收第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,第一设备的内部端口的扩展优先级向量由第一设备根据第一设备的stp配置信息计算得到;第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

在第二方面的第一种可能的实施方式中,第二设备根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量,包括:第二设备根据第一设备的stp配置信息,计算第二设备除内部端口以外的其它端口的优先级向量;第二设备从其它端口中选取优先级最高的优先级向量,作为第二设备的根优先级向量;第二设备将第二设备的根优先级向量与第二设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第二设备的内部端口的扩展优先级向量。

结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,扩展优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段、指定端口id字段、逻辑端口id字段、接收端口id字段和系统mac地址字段。根桥id字段指示根桥的桥id。累计根路径开销字段指示端口累计到根桥的路径开销。指定桥id字段指示发送根优先级向量的设备的桥id。指定端口id字段指示发送根优先级向量的端口的端口id。逻辑端口id字段指示本设备接收根优先级向量的端口对应的逻辑端口的端口id。接收端口id字段指示本设备接收根优先级向量的端口的端口id。系统mac地址字段指示本设备的mac地址。

结合第二方面或者第二方面的任意一种可能的实施方式,在第二方面的第三种可能的实施方式中,第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量,计算第二设备的各个端口的角色,包括:第二设备将第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第二设备最终的根优先级向量;第二设备根据第二设备最终的根优先级向量,计算第二设备的各个端口的角色。

结合第二方面或者第二方面的任意一种可能的实施方式,在第二方面的第四种可能的实施方式中,第二设备根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量之后,还包括:第二设备向第一设备发送第二设备的内部端口的扩展优先级向量,以使得第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

结合第二方面或者第二方面的任意一种可能的实施方式,在第二方面的第五种可能的实施方式中,第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量,计算第二设备的各个端口的角色之后,还包括:第二设备设置第二设备的内部端口由阻塞状态变为转发状态。

结合第二方面或者第二方面的任意一种可能的实施方式,在第二方面的第六种可能的实施方式中,第二设备和第一设备属于同一逻辑端口的成员端口发出的报文所携带的指定端口id相同。

第三方面,提供了一种stp计算装置,该装置包括至少一个单元,该至少一个单元用于实现上述第一方面或者第一方面中任意一种可能的实施方式所提供的stp计算方法。

第四方面,提供了一种stp计算装置,该装置包括至少一个单元,该至少一个单元用于实现上述第二方面或者第二方面中任意一种可能的实施方式所提供的stp计算方法。

第五方面,提供了一种网络设备,该网络设备包括:处理器、存储器和收发器,存储器用于存储一个或者一个以上的指令,该指令被配置成由处理器执行,该指令用于实现上述第一方面、或者第一方面中任意一种可能的实施方式、或者第二方面、或者第二方面中任意一种可能的实施方式所提供的stp计算方法。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是一种双规接入的组网示意图;

图2是一种多级m-lag互联的组网示意图;

图3是一种现有的stp算法计算前后的网络拓扑图;

图4是本发明一个实施例提供的网络设备的框图;

图5是本发明一个实施例提供的stp计算方法的流程图;

图6是本发明另一实施例提供的stp计算方法的流程图;

图7是本发明再一实施例提供的stp计算方法的流程图;

图8a是本发明一个实施例提供的stp计算装置的框图;

图8b是本发明另一实施例提供的stp计算装置的框图;

图9a是本发明另一实施例提供的stp计算装置的框图;

图9b是本发明另一实施例提供的stp计算装置的框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

在本文中提及的“模块”是指存储在存储器中的能够实现某些功能的程序或指令;在本文中提及的“单元”是指按照逻辑划分的功能性结构,该“单元”可以由纯硬件实现,或者由软硬件的结合实现。

在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

在本文中提及的“接口”和“端口”为同一概念。

在对本发明实施例进行介绍和说明之前,首先对现有的stp算法进行介绍。

树形网络拓扑结构必须有树根,于是stp引入了根桥(英文:rootbridge;缩写:rb)的概念。对于一个stp网络,根桥在整个网络中只有一个,它是整个网络的逻辑中心,但不一定是物理中心。根桥会根据网络拓扑的变化而动态变化。

stp算法的两大基本度量依据是id(英文:identity)和路径开销(英文:pathcost)。id分为桥id(英文:bridgeid;缩写:bid)和端口id(英文:portid;缩写:pid)。bid由桥优先级(英文:bridgepriority)和桥mac地址构成。在stp网络中,bid最小的设备会被选举为根桥。pid由端口优先级(英文:portpriority)和端口号构成。pid只在某些情况下对选择指定端口有作用。路径开销是一个端口变量,是stp用于选择链路的参考值。stp通过计算路径开销,选择较为“强壮”的链路,阻塞多余的链路,将网络修剪成无环路的树形网络拓扑结构。在一个stp网络中,某端口到根桥的路径开销就是由所经过的各个桥上的各端口的路径开销累加而成,这个值叫做根路径开销(英文:rootpathcost)。

stp算法将环形网络拓扑结构变为树形网络拓扑结构,总体来说考虑如下三个要素:根桥、根端口(英文:rootport;缩写:rp)和指定端口(英文:designatedport;缩写:dp)。

根桥是指网络中bid最小的设备。通过交互网桥协议数据单元(英文:bridgeprotocoldataunit;缩写:bpdu)报文,从网络中选出最小的bid。

根端口是指去往根桥路径开销最小的端口。根端口负责向根桥方向转发数据,根端口的选择标准是依据根路径开销判定的。在一台设备上所有使能stp的端口中,根路径开销最小的端口即为根端口。很显然,在一个运行stp的设备上,根端口有且只有一个,且根桥上没有根端口。

对于一台设备而言,指定桥(英文:designatedbridge;缩写:db)是指与本机直接相连并且负责向本机转发配置消息的设备,指定端口即为指定桥向本机转发配置消息的端口。对于一个局域网而言,指定桥是指负责向本网段转发配置消息的设备,指定端口即为指定桥向本网段转发配置消息的端口。

一旦根桥、根端口、指定端口选举成功,则整个树形网络拓扑结构建立完毕。在拓扑稳定后,只有根端口和指定端口转发用户流量,其它的非根端口和非指定端口处于阻塞(英文:blocking)状态,处于阻塞状态的端口只接收stp报文而不转发用户流量。

此外,网络中各设备通过交互bpdu报文,选举确定根桥、根端口和指定端口。bpdu报文中携带有端口的配置消息(也即优先级向量)。其中,优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段和指定端口id字段。根桥id字段(即rootbridgeid字段)指示根桥的桥id。累计根路径开销字段(即rootpathcost字段)指示端口累计到根桥的路径开销。指定桥id字段(即designatedbridgeid字段)指示发送bpdu报文的设备的桥id,指定桥id字段也称为发送设备的桥id字段。指定端口id字段(designatedportid字段)指示发送bpdu报文的端口的端口id,指定端口id字段也称为发送端口的端口id字段。此外,设备接收到bpdu报文之后,会在上述优先级向量中添加接收端口id字段。接收端口id字段(即bridgeportid字段)指示本设备用于接收bpdu报文的端口的端口id。bpdu报文会按照规定的时间间隔进行发送。上述bpdu报文通常为配置bpdu报文。

下面,对stp算法的流程进行介绍和说明。stp算法的流程主要包括如下三个阶段:

第一,初始状态

在初始状态下,网络中的每台设备都认为自己是根桥,所以在每个端口所发出的bpdu报文中,根桥id字段是设备自己的bid,累计根路径开销字段是累计到根桥的路径开销,指定桥id字段是设备自己的bid,指定端口id字段是发送该bpdu报文的端口的pid。

第二,选择根桥

网络中的设备通过交换bpdu报文,比较根桥id,选择网络中根桥id最小的设备为根桥。

第三,选择根端口和指定端口

1、非根桥设备将接收到最优配置消息的端口确定为根端口。

其中,最优配置消息是指优先级最高的配置消息。最优配置消息的选择过程包括如下步骤:

a)对于每一个端口,将收到的配置消息与自己的配置消息进行比较;如果收到的配置消息的优先级较低,则将收到的配置消息直接丢弃,对自己的配置消息不进行任何处理;如果收到的配置消息的优先级较高,则用收到的配置消息的内容将自己的配置消息的内容替换掉;

b)非根桥设备将所有端口的配置消息进行比较,选出最优配置消息。

2、非根桥设备根据根端口的配置消息和根端口的路径开销,为每一个端口分别计算一个指定端口的配置消息。

指定端口的配置消息(也即优先级向量)同样包括:根桥id字段、累计根路径开销字段、指定桥id字段和指定端口id字段。

指定端口的配置消息的计算过程包括如下步骤:

a)根桥id替换为根端口的配置消息的根桥id;

b)根路径开销替换为根端口的配置消息的根路径开销加上根端口对应的路径开销;

c)发送端设备的bid替换为自身设备的bid;

d)发送端口的pid替换为自身端口的pid。

3、非根桥设备将计算出的指定端口配置消息与角色待定端口自己的配置消息进行比较,并根据比较结果确定指定端口。

a)对于每一个端口,如果计算出的指定端口配置消息的优先级较高,则确定该端口为指定端口,其配置消息也被计算出的指定端口配置消息替换,并周期性地向外发送;

b)对于每一个端口,如果该端口自己的配置消息的优先级较高,则不更新该端口的配置消息并将该端口阻塞。该端口将不再转发数据,且只接收不发送配置消息。

一旦根桥、根端口和指定端口选举成功,整个树形网络拓扑结构就建立完毕了。

下面,结合一个例子说明stp算法的流程。结合参考图3,其示出了stp算法计算前后的网络拓扑图。左侧图示为计算前的环形网络拓扑结构,右侧图示为计算后的树形网络拓扑结构。假设设备a、设备b和设备c的优先级分别为0、1和2,设备a与设备b之间、设备a与设备c之间以及设备b与设备c之间链路的路径开销分别为5、10和4。

各设备的初始状态如下表-1所示:

表-1

各设备的比较过程及结果如下表-2所示:

表-2

拓扑稳定后,根桥仍然按照规定的时间间隔发送bpdu报文;非根桥设备从根端口接收bpdu报文,通过指定端口转发该bpdu报文。如果接收到优先级比自己高的bpdu报文,则非根桥设备会根据接收到的bpdu报文中携带的配置信息更新自己相应端口的配置信息。

本发明实施例提供的技术方案,可应用于m-lag组网的应用场景中,也可应用于普通两台设备虚拟成一台设备进行stp计算的应用场景中。其中,m-lag组网可以是如图1所示的普通m-lag组网,也可以是如图2所示的多级m-lag互联的组网。具体来讲,m-lag组网包括至少一组m-lag设备,每一组m-lag设备包括第一设备和第二设备(如图1所示的普通m-lag组网中的设备12和设备13,或者如图2所示的多级m-lag互联的组网中的设备a和设备b,或者如图2所示的多级m-lag互联的组网中的设备c和设备d)。第一设备和第二设备之间采用peer-link链路建立连接。第一设备的eth-trunk端口和第二设备的eth-trunk端口加入同一m-lag组,属于同一m-lag端口的成员端口。

第一设备和第二设备通常是交换机。在一种可能的实施方式中,第一设备和第二设备分别包括:m-lag功能实体和stp功能实体。m-lag功能实体主要用于实现跨设备链路聚合的功能,包括协商m-lag主备设备。stp功能实体主要用于实现stp的功能,以消除网络中的环路。

本发明实施例提供的技术方案,通过将m-lag两端设备虚拟为一台设备,m-lag端口相当于该虚拟出的设备的eth-trunk端口。本发明实施例提供的技术方案,在m-lag两端设备完成主备协商之后,通过在m-lag主备设备上运行虚拟生成树协议(英文:virtualspanningtreeprotocol;缩写:v-stp),以支持跨设备的xstp计算,使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

下面,对本文中涉及的一些名词进行解释:

链路聚合是将若干条物理链路捆绑在一起形成一条逻辑链路,也即将若干个物理接口捆绑在一起形成一个逻辑接口。通过配置链路聚合,可以实现增加带宽、提高可靠性以及负载分担的目的。链路聚合技术在以太网中得到了广泛应用,以太网链路聚合通过将若干条以太网物理链路捆绑在一起形成一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过互相间的动态备份,可以有效地提高链路的可靠性。以太网链路聚合称为eth-trunk。

lag是指将若干条物理链路捆绑在一起所形成的逻辑链路。每个lag唯一对应着一个逻辑接口,这个逻辑接口称为聚合接口或eth-trunk接口。

peer-link链路是指部署m-lag的两台设备之间所建立的直连链路。peer-link链路是一条保护链路,用于交互主备协商报文及传输部分流量。

下面,通过几个实施例对本发明提供的技术方案进行介绍和说明。

请参考图4,其示出了本发明一个实施例提供的网络设备的框图。该网络设备可以是上文介绍的第一设备或者第二设备。该网络设备400可以包括:处理器410、存储器420、收发器430以及总线440。存储器420和收发器430通过总线440与处理器410相连。

处理器410包括一个或者一个以上处理核心。处理器410通过运行软件程序以及模块,从而执行各种功能应用以及数据处理。处理器410包括运算逻辑部件、寄存器部件以及控制部件等,其可以是独立的中央处理器,或者也可以是嵌入式处理器,比如微处理器(英文:microprocessorunit;缩写:mpu)、微控制器(英文:microcontrollerunit;缩写:mcu)或者数字信号处理器(英文:embeddeddigitalsignalprocessor;缩写:edsp)等。

存储器420可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(英文:staticrandomaccessmemory;缩写:sram),电可擦除可编程只读存储器(英文:electricallyerasableprogrammableread-onlymemory;缩写:eeprom),可擦除可编程只读存储器(英文:erasableprogrammablereadonlymemory;缩写:eprom),可编程只读存储器(英文:programmableread-onlymemory;缩写:prom),只读存储器(英文:readonlymemory;缩写:rom),磁存储器,快闪存储器,磁盘或光盘。存储器420可用于存储软件程序以及模块等可执行的指令。

处理器410被配置为执行存储器420中存储的指令。当该网络设备400实现成为第一设备时,处理器410通过执行该指令来实现下述方法:控制收发器430向第二设备发送第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息;根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同;控制收发器430从第二设备接收第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,第二设备的内部端口的扩展优先级向量由第二设备根据第一设备的stp配置信息计算得到;根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。当该网络设备400实现成为第二设备时,处理器410通过执行该指令来实现下述方法:控制收发器430从第一设备接收第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息;根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,扩展优先级向量用于使得第二设备和第一设备属于同一逻辑端口的成员端口的角色计算结果相同;控制收发器430从第一设备接收第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,第一设备的内部端口的扩展优先级向量由第一设备根据第一设备的stp配置信息计算得到;根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

收发器430用于对外通信,其可以包括多种类型接口。

可选地,存储器420可存储操作系统422以及至少一个功能所需的应用程序模块424。操作系统422可以是实时操作系统(英文:realtimeexecutive;缩写:rtx)、linux、unix、windows或osx之类的操作系统。如图4所示,以该网络设备400实现成为第一设备为例,应用程序模块424可以包括:第一发送模块424a、第一计算模块424b、第一接收模块424c和第二计算模块424d。

第一发送模块424a用于向第二设备发送第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。第一计算模块424b用于根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同。第一接收模块424c用于从第二设备接收第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,第二设备的内部端口的扩展优先级向量由第二设备根据第一设备的stp配置信息计算得到。第二计算模块424d,用于根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

可选地,当该网络设备400实现成为第二设备时,应用程序模块424可以包括:第二接收模块、第三计算模块和第四计算模块(图中未示出)。第二接收模块用于从第一设备接收第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。第三计算模块用于根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量;其中,第二设备的内部端口是指第二设备与第一设备连接的端口,扩展优先级向量用于使得第二设备和第一设备属于同一逻辑端口的成员端口的角色计算结果相同。第二接收模块还用于从第一设备接收第一设备的内部端口的扩展优先级向量;其中,第一设备的内部端口是指第一设备与第二设备连接的端口,第一设备的内部端口的扩展优先级向量由第一设备根据第一设备的stp配置信息计算得到。第四计算模块用于根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

请参考图5,其示出了本发明一个实施例提供的stp计算方法的流程图。该方法可以包括如下几个步骤:

步骤502,第一设备向第二设备发送第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。

步骤504,第一设备根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量。

第一设备的内部端口是指第一设备与第二设备连接的端口。扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同。

步骤506,第一设备从第二设备接收第二设备的内部端口的扩展优先级向量。

第二设备的内部端口是指第二设备与第一设备连接的端口。第二设备的内部端口的扩展优先级向量由第二设备根据第一设备的stp配置信息计算得到。

步骤508,第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

综上所述,本实施例提供的方法,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

请参考图6,其示出了本发明另一实施例提供的stp计算方法的流程图。该方法可以包括如下几个步骤:

步骤602,第二设备从第一设备接收第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。

步骤604,第二设备根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量。

第二设备的内部端口是指第二设备与第一设备连接的端口。扩展优先级向量用于使得第二设备和第一设备属于同一逻辑端口的成员端口的角色计算结果相同。

步骤606,第二设备从第一设备接收第一设备的内部端口的扩展优先级向量。

第一设备的内部端口是指第一设备与第二设备连接的端口。第一设备的内部端口的扩展优先级向量由第一设备根据第一设备的stp配置信息计算得到。

步骤608,第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

综上所述,本实施例提供的方法,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

请参考图7,其示出了本发明再一实施例提供的stp计算方法的流程图。在本实施例中,以第一设备和第二设备为m-lag两端设备为例进行介绍说明。该方法可以包括如下几个步骤。

步骤701,第一设备和第二设备在完成初始化配置之后,进行主备协商。

初始化配置包括配置eth-trunk端口、m-lag配置和主备配置。m-lag配置包括配置第一设备的eth-trunk端口和第二设备的eth-trunk端口加入同一m-lag组,属于同一m-lag端口的成员端口。主备配置是指根据第一设备和第二设备的优先级,确定m-lag主设备和m-lag备设备。第一设备和第二设备在完成初始化配置之后,进行主备协商。在本实施例中,假设协商确定第一设备为m-lag主设备,第二设备为m-lag备设备。

此外,第一设备和第二设备在主备协商完成之前,所有端口可按现有的stp算法进行拓扑计算,并且将peer-link端口初始化设置为阻塞状态。通过将peer-link端口初始化设置为阻塞状态,以保证网络在主备协商完成之前即没有环路,确保网络的可用性。

在主备协商完成之后,第一设备和第二设备进入v-stp模式。v-stp模式是指将两台设备虚拟成一台设备进行stp计算。在进入v-stp模式之后,第一设备和第二设备分别将peer-link端口设置为内部端口。内部端口是指在采用v-stp进行拓扑计算的过程中,第一设备和第二设备之间用于传输内部报文的端口。

步骤702,第一设备向第二设备发送第一设备的stp配置信息。

stp配置信息包括桥mac地址和实例优先级信息。实例优先级信息记录有桥优先级。第一设备通过peer-link链路向第二设备发送第一设备的stp配置信息。

相应地,第二设备从第一设备接收第一设备的stp配置信息。

步骤703,第一设备根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量。

第一设备的内部端口是指第一设备与第二设备连接的端口,即peer-link端口。扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同。也即,扩展优先级向量用于使得第一设备和第二设备加入同一m-lag组的eth-trunk端口的角色计算结果相同。eth-trunk端口作为计算单元参与拓扑计算。

可选地,步骤703包括如下几个子步骤:

1、第一设备根据第一设备的stp配置信息,计算第一设备除内部端口以外的其它端口的优先级向量;

2、第一设备从其它端口中选取优先级最高的优先级向量,作为第一设备的根优先级向量;

3、第一设备将第一设备的根优先级向量与第一设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第一设备的内部端口的扩展优先级向量。

在本发明实施例中,对stp标准协议所规定的端口优先级向量进行了扩展,以保证第一设备和第二设备加入同一m-lag组的eth-trunk端口的角色计算结果相同。扩展优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段、指定端口id字段、逻辑端口id字段、接收端口id字段和系统mac地址字段。根桥id字段指示根桥的桥id。累计根路径开销字段指示端口累计到根桥的路径开销。指定桥id字段指示发送根优先级向量的设备的桥id。指定端口id字段指示发送根优先级向量的端口的端口id。逻辑端口id字段指示本设备接收根优先级向量的端口对应的逻辑端口的端口id。接收端口id字段指示本设备接收根优先级向量的端口的端口id。系统mac地址字段指示本设备的mac地址。

stp标准协议所规定的端口优先级向量可以表示为:portpriorityvector={rootbridgeid:rootpathcost:designatedbridgeid:designatedportid:bridgeportid}。在本发明实施例中,v-stp所规定的端口的扩展优先级向量可以表示为:portpriorityvector={rootbridgeid:rootpathcost:designatedbridgeid:designatedportid:mlagportid:bridgeportid:sysmac}。扩展优先级向量的向量比较顺序依次为:rootbridgeid→rootpathcost→designatedbridgeid→designatedportid→mlagportid→bridgeportid→sysmac。

当本设备接收根优先级向量的端口加入m-lag组时,mlagportid字段有效。如果两台设备的mlagportid字段有效且相同,则表示两台设备接收根优先级向量的端口加入同一m-lag组,此时认为两台设备的根优先级向量相同,该算法可以保证两台设备加入同一m-lag组的eth-trunk端口的角色计算结果相同。当本设备接收根优先级向量的端口未加入m-lag组时,mlagportid字段无效。在比较两台设备的内部端口的扩展优先级向量时,如果其中一个或两个内部端口的mlagportid字段无效,则比较bridgeportid字段。此外,在比较两台设备的内部端口的扩展优先级向量时,由于两台设备的bridgeportid是各自独立分配的,两台设备的bridgeportid字段可能相同,如果两台设备的bridgeportid字段相同,则比较sysmac字段。

由于第一设备除内部端口以外的其它端口的优先级向量采用stp标准协议规定,由五元组表示;而第一设备的内部端口的优先级向量采用v-stp规定,由七元组表示。因此,在一种可能的实施方式中,第一设备从其它端口中选取优先级最高的优先级向量(也即确定第一设备的根优先级向量)之后,按照扩展优先级向量的格式,将该第一设备的根优先级向量由五元组转换为七元组,而后与第一设备的内部端口的优先级向量进行比较。如果第一设备的根优先级向量劣于第一设备的内部端口的优先级向量,则保持第一设备的内部端口的优先级向量不变,并使用第一设备的内部端口的优先级向量覆盖第一设备的根优先级向量;如果第一设备的根优先级向量优于或等于第一设备的内部端口的优先级向量,则使用第一设备的根优先级向量覆盖第一设备的内部端口的优先级向量,并保持第一设备的根优先级向量不变。

步骤704,第二设备根据第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量。

与上述步骤703类似,步骤704可以包括如下几个子步骤:

1、第二设备根据第一设备的stp配置信息,计算第二设备除内部端口以外的其它端口的优先级向量;

2、第二设备从其它端口中选取优先级最高的优先级向量,作为第二设备的根优先级向量;

3、第二设备将第二设备的根优先级向量与第二设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第二设备的内部端口的扩展优先级向量。

步骤704与步骤703相类似,具体参见步骤703中的介绍和说明,此处不再赘述。

步骤705,第一设备向第二设备发送第一设备的内部端口的扩展优先级向量。

第一设备通过peer-link链路向第二设备发送内部报文,该内部报文中携带第一设备的内部端口的扩展优先级向量。

相应地,第二设备从第一设备接收第一设备的内部端口的扩展优先级向量。

步骤706,第二设备向第一设备发送第二设备的内部端口的扩展优先级向量。

第二设备通过peer-link链路向第一设备发送内部报文,该内部报文中携带第二设备的内部端口的扩展优先级向量。

相应地,第一设备从第二设备接收第二设备的内部端口的扩展优先级向量。

步骤707,第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

具体来讲,第一设备将第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第一设备最终的根优先级向量;第一设备根据第一设备最终的根优先级向量,计算第一设备的各个端口的角色。如果第一设备的内部端口的扩展优先级向量劣于第二设备的内部端口的扩展优先级向量,则第一设备使用第二设备的内部端口的扩展优先级向量覆盖第一设备的内部端口的扩展优先级向量,也即第一设备选取第二设备的内部端口的扩展优先级向量作为第一设备最终的根优先级向量;如果第一设备的内部端口的扩展优先级向量优于或者等于第二设备的内部端口的扩展优先级向量,则第一设备保持第一设备的内部端口的扩展优先级向量不变,也即第一设备选取第一设备的内部端口的扩展优先级向量作为第一设备最终的根优先级向量。在确定第一设备最终的根优先级向量之后,第一设备从除内部端口以外的其它端口中选取根端口,而后计算指定端口和阻塞端口。其中,确定根端口、指定端口和阻塞端口的方式与现有的stp算法相同,此处不再赘述。

步骤708,第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

与上述步骤707类似,步骤708可以包括如下几个子步骤:

1、第二设备将第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第二设备最终的根优先级向量;

2、第二设备根据第二设备最终的根优先级向量,计算第二设备的各个端口的角色。

步骤708与步骤707相类似,具体参见步骤707中的介绍和说明,此处不再赘述。

此外,第一设备在完成端口角色计算之后,设置第一设备的内部端口由阻塞状态变为转发状态。同样地,第二设备在完成端口角色计算之后,设置第二设备的内部端口由阻塞状态变为转发状态。通过上述方式,保证第一设备和第二设备的内部端口在完成stp拓扑计算之后,能够转发用户流量。

此外,第一设备和第二设备属于同一逻辑端口的成员端口发出的报文所携带的指定端口id相同。通过上述方式,保证其它设备从同一m-lag端口的不同成员端口接收到的bpdu报文中的指定端口id字段相同,避免引起下游设备震荡,提高网络稳定性。

综上所述,本实施例提供的方法,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

需要说明的一点是,在本实施例中,仅以第一设备为m-lag主设备,第二设备为m-lag备设备,且m-lag主设备向m-lag备设备同步stp配置信息为例,在其它可能的实施方式中,也可由m-lag备设备向m-lag主设备同步stp配置信息。

还需要说明的一点是,在本实施例中,仅以该stp计算方法应用于m-lag组网的应用场景中进行了说明和介绍,该stp计算方法同样适用于普通两台设备虚拟成一台设备进行stp计算的应用场景,具有通用性。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

请参考图8a,其示出了本发明一个实施例提供的stp计算装置的框图。该装置可以通过软件、硬件或者两者的结合实现成为第一设备的部分或者全部。该装置可以包括:第一发送单元810、第一计算单元820、第一接收单元830和第二计算单元840。

第一发送单元810,用于向第二设备发送第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。

第一计算单元820,用于根据第一设备的stp配置信息,计算第一设备的内部端口的扩展优先级向量。其中,第一设备的内部端口是指第一设备与第二设备连接的端口。扩展优先级向量用于使得第一设备和第二设备属于同一逻辑端口的成员端口的角色计算结果相同。

第一接收单元830,用于从第二设备接收第二设备的内部端口的扩展优先级向量。其中,第二设备的内部端口是指第二设备与第一设备连接的端口。第二设备的内部端口的扩展优先级向量由第二设备根据第一发送单元810发送的第一设备的stp配置信息计算得到。

第二计算单元840,用于根据第一计算单元820计算得到的第一设备的内部端口的扩展优先级向量和第一接收单元830接收的第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

综上所述,本实施例提供的装置,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

在基于图8a所示实施例提供的一个可选实施例中,第一计算单元820,具体用于:根据第一设备的stp配置信息,计算第一设备除内部端口以外的其它端口的优先级向量;从其它端口中选取优先级最高的优先级向量,作为第一设备的根优先级向量;将第一设备的根优先级向量与第一设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第一设备的内部端口的扩展优先级向量。

可选地,扩展优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段、指定端口id字段、逻辑端口id字段、接收端口id字段和系统mac地址字段。根桥id字段指示根桥的桥id。累计根路径开销字段指示端口累计到根桥的路径开销。指定桥id字段指示发送根优先级向量的设备的桥id。指定端口id字段指示发送根优先级向量的端口的端口id。逻辑端口id字段指示本设备接收根优先级向量的端口对应的逻辑端口的端口id。接收端口id字段指示本设备接收根优先级向量的端口的端口id。系统mac地址字段指示本设备的mac地址。

在基于图8a所示实施例提供的另一可选实施例中,第二计算单元840,具体用于:将第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第一设备最终的根优先级向量;根据第一设备最终的根优先级向量,计算第一设备的各个端口的角色。

在基于图8a所示实施例提供的另一可选实施例中,第一发送单元810,还用于向第二设备发送第一设备的内部端口的扩展优先级向量,以使得第二设备根据第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

在基于图8a所示实施例提供的另一可选实施例中,如图8b所示,该装置还包括:第一设置单元850。第一设置单元850,用于设置第一设备的内部端口由阻塞状态变为转发状态。

在基于图8a所示实施例提供的另一可选实施例中,第一设备和第二设备属于同一逻辑端口的成员端口发出的报文所携带的指定端口id相同。

请参考图9a,其示出了本发明另一实施例提供的stp计算装置的框图。该装置可以通过软件、硬件或者两者的结合实现成为第二设备的部分或者全部。该装置可以包括:第二接收单元910、第三计算单元920和第四计算单元930。

第二接收单元910,用于从第一设备接收第一设备的stp配置信息,stp配置信息包括桥mac地址和实例优先级信息。

第三计算单元920,用于根据第二接收单元910接收的第一设备的stp配置信息,计算第二设备的内部端口的扩展优先级向量。其中,第二设备的内部端口是指第二设备与第一设备连接的端口。扩展优先级向量用于使得第二设备和第一设备属于同一逻辑端口的成员端口的角色计算结果相同。

第二接收单元910,还用于从第一设备接收第一设备的内部端口的扩展优先级向量。其中,第一设备的内部端口是指第一设备与第二设备连接的端口。第一设备的内部端口的扩展优先级向量由第一设备根据第一设备的stp配置信息计算得到。

第四计算单元930,用于根据第三计算单元920计算得到的第二设备的内部端口的扩展优先级向量和第二接收单元910接收到的第一设备的内部端口的扩展优先级向量的比较结果,计算第二设备的各个端口的角色。

综上所述,本实施例提供的装置,解决了现有技术中针对采用m-lag进行组网的场景,采用现有的stp算法有可能将peer-link端口或者m-lag端口的成员端口eth-trunk端口置为阻塞状态,进而导致m-lag的功能随之失效的问题;通过在第一设备和第二设备之间同步stp配置信息和内部端口的扩展优先级向量,从而使得两台设备对外体现为一台设备进行stp计算,保证属于同一m-lag组的成员端口的角色计算结果相同,从而不阻塞peer-link端口和m-lag端口的成员端口eth-trunk端口。

在基于图9a所示实施例提供的一个可选实施例中,第三计算单元920,具体用于:根据第一设备的stp配置信息,计算第二设备除内部端口以外的其它端口的优先级向量;从其它端口中选取优先级最高的优先级向量,作为第二设备的根优先级向量;将第二设备的根优先级向量与第二设备的内部端口的优先级向量进行比较,并根据优先级较高的优先级向量确定第二设备的内部端口的扩展优先级向量。

可选地,扩展优先级向量包括:根桥id字段、累计根路径开销字段、指定桥id字段、指定端口id字段、逻辑端口id字段、接收端口id字段和系统mac地址字段。根桥id字段指示根桥的桥id。累计根路径开销字段指示端口累计到根桥的路径开销。指定桥id字段指示发送根优先级向量的设备的桥id。指定端口id字段指示发送根优先级向量的端口的端口id。逻辑端口id字段指示本设备接收根优先级向量的端口对应的逻辑端口的端口id。接收端口id字段指示本设备接收根优先级向量的端口的端口id。系统mac地址字段指示本设备的mac地址。

在基于图9a所示实施例提供的另一可选实施例中,第四计算单元930,具体用于:将第二设备的内部端口的扩展优先级向量和第一设备的内部端口的扩展优先级向量进行比较,选取优先级较高的优先级向量作为第二设备最终的根优先级向量;根据第二设备最终的根优先级向量,计算第二设备的各个端口的角色。

在基于图9a所示实施例提供的另一可选实施例中,如图9b所示,该装置还包括:第二发送单元940。第二发送单元940,用于向第一设备发送第二设备的内部端口的扩展优先级向量,以使得第一设备根据第一设备的内部端口的扩展优先级向量和第二设备的内部端口的扩展优先级向量的比较结果,计算第一设备的各个端口的角色。

在基于图9a所示实施例提供的另一可选实施例中,如图9b所示,该装置还包括:第二设置单元950。第二设置单元950,用于设置第二设备的内部端口由阻塞状态变为转发状态。

在基于图9a所示实施例提供的另一可选实施例中,第二设备和第一设备属于同一逻辑端口的成员端口发出的报文所携带的指定端口id相同。

需要说明的是:上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1