CN112751755B - 一种设备虚拟化方法、装置、系统、设备及存储介质 - Google Patents
一种设备虚拟化方法、装置、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN112751755B CN112751755B CN201911047856.3A CN201911047856A CN112751755B CN 112751755 B CN112751755 B CN 112751755B CN 201911047856 A CN201911047856 A CN 201911047856A CN 112751755 B CN112751755 B CN 112751755B
- Authority
- CN
- China
- Prior art keywords
- port
- protocol message
- local
- message
- terminal equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/76—Routing in software-defined topologies, e.g. routing between virtual machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/41—Flow control; Congestion control by acting on aggregated flows or links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供一种设备虚拟化方法、装置、系统、设备及存储介质。该方法根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议报文生成;根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
Description
技术领域
本申请涉及局域网,例如涉及一种设备虚拟化方法、装置、系统、设备及存储介质。
背景技术
跨设备链路聚合(Multichassis Link Aggregation Group,MC-LAG)技术通过使多个设备以同一个状态与被接入的设备进行链路聚合协商,增强了链路和设备的可靠性,对于被接入的设备,就如同和一台设备建立了链路聚合关系。在局域网中,利用生成树技术可以提高网络的可靠性、避免冗余链路造成的环路问题。在MC-LAG的场景下同样需要避免环路问题,但由于生成树技术是分布式技术,各设备独立计算,这与MC-LAG技术将两台设备在逻辑上虚拟成一台设备的原理不一致,生成树的计算结果可能会阻塞链路或MC-LAG的某些成员口,造成MC-LAG功能失效,系统稳定性差。
发明内容
本申请提供一种设备虚拟化方法、装置、系统、设备及存储介质,以实现在MC-LAG的情况下避免环路,提高系统的稳定性。
本申请实施例提供一种设备虚拟化方法,包括:
根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;
与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议(Spanning Tree Protocol,STP)报文生成;
根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
本申请实施例还提供了一种设备虚拟化装置,包括:
虚拟化模块,设置为根据本端设备的设备信息和跨设备链路聚合MC-LAG的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;
报文交换模块,设置为与所述对端设备交换扩展协议报文;
端口计算模块,设置为根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
本申请实施例还提供了一种设备虚拟化系统,包括:跨设备链路聚合的第一设备以及与所述第一设备通信的第二设备,所述第一设备至少为两个;
所述第一设备中集成如权利要求10所述的设备虚拟化装置;
所述第二设备用于向所述第一设备发送生成树协议报文。
本申请实施例还提供了一种设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的设备虚拟化方法。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的设备虚拟化方法。
附图说明
图1为一实施例提供的跨设备链路聚合的示意图;
图2为一实施例提供的生成树协议组网的示意图;
图3为一实施例提供的一种设备虚拟化方法的流程图;
图4为一实施例提供的另一种设备虚拟化方法的流程图;
图5为一实施例提供的一种设备虚拟化装置的结构示意图;
图6为一实施例提供的一种设备虚拟化系统的结构示意;
图7为一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请进行说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
MC-LAG是一种跨设备的链路聚合技术,主要应用于是双归接入场景。MC-LAG的基本思想是,让两台接入设备以同一个状态和被接入的设备进行链路聚合协商,对于被接入的设备,就如同和一台设备建立了链路聚合关系。图1为一实施例提供的跨设备链路聚合的示意图。如图1所示,MC-LAG可理解为一种横向虚拟化技术,将MC-LAG的两台设备(A和B)在逻辑上虚拟成一台设备,形成一个统一的二层逻辑节点,可同时与C通信。
生成树技术是一种分布式算法技术,基本思想就是从任意物理拓扑结构的局域网中选出一个简单无环、完全连通的活动拓扑,即为一颗生成树。生成树技术可以解决局域网中冗余链路造成环路风险的问题。图2为一实施例提供的生成树协议组网的示意图。如图2所示,这颗生成树有一个唯一的根,叫作根网桥,其它网桥都有一个唯一的根端口,根端口是到达根网桥代价最小的端口。每个网桥都可能有若干个指定端口,指定端口负责转发与它们相连的局域网的数据帧。一个局域网只能有一个指定端口与之相连,一个网桥也只有一个根端口(除了根网桥)连到另一个局域网上,网桥上非根端口和指定端口的其他端口都将阻塞。这颗生成树将所有的局域网连接起来,由于它是一个树状结构,所以它也是无环的,从而解决网络中的环路问题。
在MC-LAG的情况下,如果使用常规的生成树技术防范环路风险,将存在一些问题:由于生成树技术是分布式技术,各设备独立计算,MC-LAG设备间的peer-link链路和MC-LAG成员口分别加入计算,与MC-LAG技术将两台设备在逻辑上虚拟成一台设备的设定不一致,生成树计算结果可能会阻塞peer-link口或MC-LAG的某些成员口,造成MC-LAG功能失效,系统稳定性差。
在本申请实施例中,提供一种设备虚拟化方法,针对MC-LAG无法有效结合生成树技术以解决环路风险、系统稳定性差的问题,通过将两台第一设备虚拟为同一状态,并交换扩展协议报文,结合生成树机制进一步确定各端口的角色和状态,避免了环路问题,并保证MC-LAG功能的有效性,提升系统的健壮性和容错能力。
图3为一实施例提供的一种设备虚拟化方法的流程图,如图3所示,本实施例提供的方法包括步骤110-130。
在步骤110中,根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识。
本实施例中,第一设备为跨设备链路聚合的设备,例如,跨设备链路聚合的设备有两个,分别为A和B,A和B同时执行本实施例的设备虚拟化方法,以实现将A和B虚拟化为具有相同状态的虚拟设备;第二设备为被接入设备,可与虚拟设备(即同时与A和B)进行通信。需要说明的是,第二设备可以为一个或多个,并且第二设备也可以为至少两个设备经过跨设备链路聚合后构成的虚拟设备(第一设备和第二设备之间的通信可以为两组跨设备链路聚合的虚拟设备之间的通信)。以下实施例中,均以A为例进行说明,A即为本端设备,B即为对端设备。
在步骤110中,本端设备与对端设备互相同步各自对应的网桥标识(bridge ID)和端口标识(port ID),协商得到虚拟网桥标识用于生成树协议处理,并使同一MC-LAG的端口使用相同的port ID,即目标端口标识。例如,可以根据预设规则在本端设备与对端设备中确定主设备和从设备,将主设备对应的bridge ID和port ID分别作为虚拟网桥标识和目标端口标识,从而解决两端设备的port ID冲突,例如,可以将本端设备和对端设备中bridgeID较小的设备确定为主设备;或者可以直接选取本端设备和对端设备中较小的bridge ID作为虚拟网桥标识、bridge ID较小的一端设备对应的MC-LAG的port ID作为目标端口标识等。
在步骤120中,与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议报文生成。
本实施例中,本端设备与对端设备交换扩展协议报文。扩展协议报文基于第二设备发送的生成树协议报文生成,是在生成树协议报文上附加了接收所述生成树协议报文的收报端口信息等生成。例如,对于本端设备A,接收到C的生成树协议报文后,在本地进行协议处理,附加收报端口信息后发送至对端设备B,并且也接收B发送过来的扩展协议报文,其中包含了B接收生成树协议报文的收报端口信息。
在步骤130中,根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
本实施例中,本端设备将对端设备的扩展协议报文转换为本地端口接收到的报文进行处理,在此过程中,本地端口是与对端设备的扩展协议报文中的收报端口信息相对应的端口;如果本地不存在相对应的端口,还要进一步根据扩展协议报文的类型或收报端口是否为根端口等,对扩展协议报文进行转换或处理,由协议状态机结合本端接收到的协议报文计算出本地各端口的角色和状态,其中,角色包括根端口、指定端口和非指定端口(替换端口和备份端口),状态包括关闭(disable)、阻塞(blocking)、监听(listening)、学习(learning)和转发(forwarding)。
本实施例中,跨设备链路聚合的本端设备和对端设备通过同步bridge ID和portID、交换基于生成树协议报文生成的扩展协议报文、将扩展协议报文转换为本地端口接收的报文进行协议处理,确定端口的角色和状态,实现了将两端设备虚拟化成一台设备并进行生成树计算,对于这两端设备MC-LAG端口计算结果相同、发出的报文相同,第一设备可向连接同一MC-LAG的第二设备发送相同的生成树报文,实现链路聚合并避免了环路风险,提高系统的稳定性。
图4为一实施例提供的另一种设备虚拟化方法的流程图。如图4所示,本实施例提供的方法包括步骤201-213。
在步骤201中,根据本端设备的设备信息和所述对端设备的设备信息确定主设备和从设备。
例如,本端设备和对端设备互相同步bridge ID和port ID,通过比较选择一端设备作为主设备,例如选取bridge ID较小的设备为主设备,另一设备为从设备。
在步骤202中,根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息。
在一实施例中,根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,包括:将所述主设备的网桥标识作为所述虚拟网桥标识;在主设备与从设备跨设备链路聚合的端口标识不一致的情况下,将主设备的对应端口的端口标识作为所述目标端口标识。
例如,将主设备的bridge ID作为后续生成树协议运行的虚拟bridge ID。组网中的设备的各端口的port ID是由本设备分配的,在同一MC-LAG端口在主从设备上分配的port ID不一致的情况下,从设备上的MC-LAG端口可以使用主设备上对应MC-LAG端口的port ID,以解决端口冲突。
在一实施例中,根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的目标端口标识,包括:在所述本端设备与所述对端设备中只有一端已分配端口标识的情况下,将已分配端口标识的一端对应端口的端口标识作为目标端口标识。
例如,本端设备还未分配port ID,但MC-LAG的对端设备已分配了port ID,这种情况下,可在本端设备上按照对端设备上对应MC-LAG的port ID进行分配。
在步骤203中,本端设备的收报端口是否为根端口?若是,则执行步骤204,否则执行步骤205。
在步骤204中,向对端设备发送第一类报文。
在步骤205中,向对端设备发送第二类报文。
在一实施例中,扩展协议报文包括第一类报文和第二类报文。
本实施例中,根据本端设备的收报端口是否为根端口,向对端设备发送不同类型的扩展协议报文。首先本端设备接收第二设备发送的生成树协议报文,经过报文处理和协议状态机计算之后,可初步计算出本地各端口的角色,如果收报端口为根端口,则向对端设备发送第一类报文,用于指示本端的收报端口为根端口,否则向对端设备发送第二类报文,用于指示本端的收报端口非根端口,在生成树协议报文的基础上附加收报端口信息生成扩展协议报文。
在一实施例中,收报端口信息包括对应设备的port ID和路径开销。
在步骤206中,接收对端设备的扩展协议报文。
在步骤207中,本端设备中是否存在与对端设备的扩展协议报文中的收报端口标识匹配的对应端口?若是,则执行步骤208,否则执行步骤209。
本实施例中,查找本端设备中是否存在与对端设备的扩展协议报文中的收报端口标识匹配的对应端口,根据查找结果对对端设备的扩展协议报文进行转换或处理。
在步骤208中,将所述对端设备的扩展协议报文转换为本端设备的对应端口收到的报文进行处理。
在步骤209中,对端设备的扩展协议报文是否为第一类报文?若是,则执行步骤211,否则执行步骤210。
在步骤210中,丢弃对端设备的扩展协议报文。
在步骤211中,将对端设备的扩展协议报文按照本端设备的实际收报端口收到的报文进行处理,其中,实际收报端口的路径开销为对端设备的扩展协议报文中的路径开销。
本实施例中,如果本端设备中存在与对端设备的扩展协议报文中的收报port ID匹配的对应端口(该端口标识与收报port ID相同),则将对端设备的扩展协议报文转换为该端口接收的报文进行处理,处理过程中采用的路径开销即为该端口的路径开销;如果不存在匹配的对应端口,且对端设备的扩展协议报文为第一类报文(由根端口发送),则将对端设备的扩展协议报文按照本端设备实际收报端口收到的报文进行处理,处理过程中,用对端设备的扩展协议报文中携带的路径开销替换实际收报端口的路径开销进行计算;如果不存在匹配的对应端口,且对端设备的扩展协议报文为第二类报文(由非根端口发送),则丢弃该扩展协议报文。
在步骤212中,根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
在步骤213中,将本端设备端口的角色和状态通过生成树协议报文发送至与本端设备连接的第二设备。
本实施例中,MC-LAG的两台设备分别通过同步设备信息、交换扩展协议报文、由协议状态机进行生成树计算,能够计算出相同的设备状态,同一MC-LAG端口将计算出相同的端口角色和状态。从而在对外发送报文时,两台设备的同一MC-LAG端口将发送相同的协议报文;在接收第二设备的报文时,又可以对外呈现出一台虚拟设备的状态,从而实现了将两台设备虚拟化为一台虚拟设备的功能,并且避免了环路风险。
本申请实施例还提供一种设备虚拟化装置。图5为一实施例提供的设备虚拟化装置的结构示意图。如图5所示,所述设备虚拟化装置包括:虚拟化模块310、报文交换模块320和端口计算模块330。
虚拟化模块310,设置为根据本端设备的设备信息和跨设备链路聚合MC-LAG的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;
报文交换模块320,设置为与所述对端设备交换扩展协议报文;
端口计算模块330,设置为根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
本实施例的设备虚拟化装置,在MC-LAG的情况下将两台第一设备虚拟为同一状态,并交换扩展协议报文,结合生成树机制进一步确定各端口的角色和状态,避免了环路问题,保证MC-LAG功能的有效性,提高系统的稳定性。
在一实施例中,所述装置还包括:
主从确定模块,设置为根据本端设备的设备信息和所述对端设备的设备信息确定主设备和从设备。
在一实施例中,所述虚拟化模块310具体设置为:
将所述主设备的网桥标识作为所述虚拟网桥标识;
在主设备与从设备跨设备链路聚合的端口标识不一致的情况下,将主设备的对应端口的端口标识作为所述目标端口标识。
在一实施例中,所述虚拟化模块310还设置为:
在所述本端设备与所述对端设备中只有一端已分配端口标识的情况下,将已分配端口标识的一端对应端口的端口标识作为目标端口标识。
在一实施例中,所述扩展协议报文包括第一类报文和第二类报文;
所述报文交换模块320具体设置为:
在本端设备的收报端口为根端口的情况下,向所述对端设备发送第一类报文,否则,向所述对端设备发送第二类报文;以及,
接收对端设备的扩展协议报文。
在一实施例中,所述扩展协议报文包括对应设备的收报端口标识和路径开销。
在一实施例中,所述装置还包括:
查找模块,设置为查找本端设备中是否存在与所述对端设备的扩展协议报文中的收报端口标识匹配的对应端口;
第一转换模块,设置为若是,则将所述对端设备的扩展协议报文转换为本端设备的对应端口收到的报文进行处理;
第二转换模块,设置为若否,则根据所述对端设备的扩展协议报文的类型处理所述扩展协议报文。
在一实施例中,所述第二转换模块具体设置为:
在所述对端设备的扩展协议报文为第一类报文的情况下,将所述扩展协议报文转换为本端设备的实际收报端口进行处理,其中,所述实际收报端口的路径开销为所述对端设备的扩展协议报文中的路径开销;
在所述对端设备的扩展协议报文为第二类报文的情况下,丢弃所述对端设备的扩展协议报文。
在一实施例中,所述装置还包括:
将本端设备端口的角色和状态通过生成树协议报文发送至与本端设备连接的第二设备。
本实施例提出的设备虚拟化装置与上述实施例提出的设备虚拟化方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述任意实施例,并且本实施例具备与执行设备虚拟化方法相同的有益效果。
本申请实施例还提供一种设备虚拟化系统。图6为一实施例提供的设备虚拟化系统的结构示意图。如图6所示,所述设备虚拟化系统包括:跨设备链路聚合的第一设备410以及与第一设备410通信的第二设备420,第一设备410至少为两个;第一设备410中集成如上述任意实施例所述的设备虚拟化装置。第二设备420用于向第一设备410发送生成树协议报文。
本实施例中,至少两个第一设备410在跨设备链路聚合的过程中,分别同步执行上述任意实施例的设备虚拟化方法,通过互相同步bridge ID和port ID、交换扩展协议报文、将接收的扩展协议报文转换为本地端口接收的报文并由协议状态机进行计算和处理,进一步确定各端口的角色和状态,MC-LAG端口计算结果相同、发出的报文相同,对连接的同一MC-LAG的第二设备420发送相同的STP报文。实现了将两台设备虚拟化为一台设备的功能,避免了环路风险,提高系统的稳定性。
本实施例提出的设备虚拟化系统与上述实施例提出的设备虚拟化方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述任意实施例,并且本实施例具备与执行设备虚拟化方法相同的有益效果。
本申请实施例还提供一种设备。所述设备虚拟化方法可以由设备虚拟化装置执行,该设备虚拟化装置可以通过软件和/或硬件的方式实现,并集成在所述设备中。所述设备为生成树结构中的节点,例如交换机。
图7为一实施例提供的一种设备的结构示意图。如图7所示,本实施例提供的一种设备,包括:处理器510和存储装置520。该设备中的处理器可以是一个或多个,图7中以一个处理器510为例,所述设备中的处理器510和存储装置520可以通过总线或其他方式连接,图7中以通过总线连接为例。
所述一个或多个程序被所述一个或多个处理器510执行,使得所述一个或多个处理器实现上述任一实施例所述的设备虚拟化方法。
该设备中的存储装置520作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中设备虚拟化方法对应的程序指令/模块(例如,附图5所示的设备虚拟化装置中的模块,包括:虚拟化模块310、报文交换模块320和端口计算模块330)。处理器510通过运行存储在存储装置520中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述方法实施例中的设备虚拟化方法。
存储装置520主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等(如上述实施例中的设备信息、扩展协议报文等)。此外,存储装置520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
并且,当上述设备中所包括一个或者多个程序被所述一个或者多个处理器510执行时,实现如下操作:根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议报文生成;根据所述虚拟信息以及所述对端设备的扩展协议报文结合本端接收到的协议报文确定本端设备端口的角色和状态。
本实施例提出的设备与上述实施例提出的设备虚拟化方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述任意实施例,并且本实施例具备与执行设备虚拟化方法相同的有益效果。
本申请实施例还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种设备虚拟化方法。
通过以上关于实施方式的描述,所属领域的技术人员可以了解到,本申请可借助软件及通用硬件来实现,也可以通过硬件实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、闪存(FLASH)、硬盘或光盘等,包括多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请任意实施例所述的方法。
以上所述,仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和系统(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本发明的范围。因此,本发明的恰当范围将根据权利要求确定。
Claims (10)
1.一种设备虚拟化方法,其特征在于,包括:
根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;
与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议报文附加上接收所述生成树协议报文的收报端口信息生成;
根据所述虚拟信息将所述对端设备的扩展协议报文转换为本地端口接收到的报文进行处理,并由协议状态机结合本端接收到的协议报文确定本端设备端口的角色和状态;
还包括:
根据本端设备的设备信息和所述对端设备的设备信息确定主设备和从设备;
所述根据本端设备的设备信息和跨设备链路聚合的对端设备的设备信息确定虚拟设备的虚拟信息,包括:
将所述主设备的网桥标识作为所述虚拟网桥标识;
在主设备与从设备跨设备链路聚合的端口标识不一致的情况下,将主设备的对应端口的端口标识作为所述目标端口标识;
在所述本端设备与所述对端设备中只有一端已分配端口标识的情况下,将已分配端口标识的一端对应端口的端口标识作为目标端口标识。
2.根据权利要求1所述的方法,其特征在于,所述扩展协议报文包括第一类报文和第二类报文;
所述与所述对端设备交换扩展协议报文,包括:
在本端设备的收报端口为根端口的情况下,向所述对端设备发送第一类报文,否则,向所述对端设备发送第二类报文;以及,
接收对端设备的扩展协议报文。
3.根据权利要求1所述的方法,其特征在于,所述扩展协议报文包括对应设备的收报端口标识和路径开销。
4.根据权利要求3所述的方法,其特征在于,所述根据所述虚拟信息将所述对端设备的扩展协议报文转换为本地端口接收到的报文进行处理,包括:
查找本端设备中是否存在与所述对端设备的扩展协议报文中的收报端口标识匹配的对应端口;
若是,则将所述对端设备的扩展协议报文转换为本端设备的对应端口收到的报文进行处理;
若否,则根据所述对端设备的扩展协议报文的类型处理所述扩展协议报文。
5.根据权利要求4所述的方法,其特征在于,所述根据所述对端设备的扩展协议报文的类型处理所述扩展协议报文,包括:
在所述对端设备的扩展协议报文为第一类报文的情况下,将所述扩展协议报文转换为本端设备的实际收报端口进行处理,其中,所述实际收报端口的路径开销为所述对端设备的扩展协议报文中的路径开销;
在所述对端设备的扩展协议报文为第二类报文的情况下,丢弃所述对端设备的扩展协议报文。
6.根据权利要求1所述的方法,其特征在于,还包括:
将本端设备端口的角色和状态通过生成树协议报文发送至与本端设备连接的第二设备。
7.一种设备虚拟化装置,其特征在于,包括:
虚拟化模块,设置为根据本端设备的设备信息和跨设备链路聚合MC-LAG的对端设备的设备信息确定虚拟设备的虚拟信息,所述设备信息包括对应设备的网桥标识和端口标识,所述虚拟信息包括虚拟网桥标识和目标端口标识;
报文交换模块,设置为与所述对端设备交换扩展协议报文,所述扩展协议报文基于本端设备接收到的生成树协议报文附加上接收所述生成树协议报文的收报端口信息生成;
端口计算模块,设置为根据所述虚拟信息将所述对端设备的扩展协议报文转换为本地端口接收到的报文进行处理,并由协议状态机结合本端接收到的协议报文确定本端设备端口的角色和状态;
还包括:
主从确定模块,设置为根据本端设备的设备信息和所述对端设备的设备信息确定主设备和从设备;
所述虚拟化模块设置为:
将所述主设备的网桥标识作为所述虚拟网桥标识;
在主设备与从设备跨设备链路聚合的端口标识不一致的情况下,将主设备的对应端口的端口标识作为所述目标端口标识;
在所述本端设备与所述对端设备中只有一端已分配端口标识的情况下,将已分配端口标识的一端对应端口的端口标识作为目标端口标识。
8.一种设备虚拟化系统,其特征在于,包括:跨设备链路聚合的第一设备以及与所述第一设备通信的第二设备,所述第一设备至少为两个;
所述第一设备中集成如权利要求7所述的设备虚拟化装置;
所述第二设备用于向所述第一设备发送生成树协议报文。
9.一种设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一项所述的设备虚拟化方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一项所述的设备虚拟化方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047856.3A CN112751755B (zh) | 2019-10-30 | 2019-10-30 | 一种设备虚拟化方法、装置、系统、设备及存储介质 |
PCT/CN2020/124267 WO2021083172A1 (zh) | 2019-10-30 | 2020-10-28 | 设备虚拟化方法、装置、系统、设备及存储介质 |
US17/622,767 US20220247671A1 (en) | 2019-10-30 | 2020-10-28 | Device virtualization method, apparatus, system, device, and storage medium |
EP20881373.3A EP3979564B1 (en) | 2019-10-30 | 2020-10-28 | Device virtualization method, device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047856.3A CN112751755B (zh) | 2019-10-30 | 2019-10-30 | 一种设备虚拟化方法、装置、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112751755A CN112751755A (zh) | 2021-05-04 |
CN112751755B true CN112751755B (zh) | 2023-09-29 |
Family
ID=75641153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911047856.3A Active CN112751755B (zh) | 2019-10-30 | 2019-10-30 | 一种设备虚拟化方法、装置、系统、设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220247671A1 (zh) |
EP (1) | EP3979564B1 (zh) |
CN (1) | CN112751755B (zh) |
WO (1) | WO2021083172A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338563B (zh) * | 2021-12-23 | 2024-02-23 | 迈普通信技术股份有限公司 | 一种防止端口阻塞的方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105379221A (zh) * | 2014-06-30 | 2016-03-02 | 华为技术有限公司 | 一种链路聚合方法及设备 |
CN105610743A (zh) * | 2015-12-31 | 2016-05-25 | 盛科网络(苏州)有限公司 | Mlag环境下实现stp协议族的方法及装置 |
CN107154864A (zh) * | 2016-03-04 | 2017-09-12 | 北京华为数字技术有限公司 | 生成树协议stp计算方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9225549B2 (en) * | 2012-08-06 | 2015-12-29 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Multi-chassis link aggregation in a distributed virtual bridge |
CN103200071B (zh) * | 2013-04-07 | 2016-05-04 | 杭州华三通信技术有限公司 | 一种mstp多实例计算方法和设备 |
US9306804B2 (en) * | 2013-04-16 | 2016-04-05 | Arista Networks, Inc. | Method and system for multichassis link aggregation in-service software update |
US10200278B2 (en) * | 2016-03-02 | 2019-02-05 | Arista Networks, Inc. | Network management system control service for VXLAN on an MLAG domain |
US10341138B2 (en) * | 2017-05-09 | 2019-07-02 | Dell Products L.P. | Spanning tree protocol enabled N-node link aggregation system |
CN108173757B (zh) * | 2017-12-26 | 2020-08-11 | 新华三技术有限公司 | 端口状态设置方法及装置 |
-
2019
- 2019-10-30 CN CN201911047856.3A patent/CN112751755B/zh active Active
-
2020
- 2020-10-28 EP EP20881373.3A patent/EP3979564B1/en active Active
- 2020-10-28 WO PCT/CN2020/124267 patent/WO2021083172A1/zh unknown
- 2020-10-28 US US17/622,767 patent/US20220247671A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105379221A (zh) * | 2014-06-30 | 2016-03-02 | 华为技术有限公司 | 一种链路聚合方法及设备 |
CN105610743A (zh) * | 2015-12-31 | 2016-05-25 | 盛科网络(苏州)有限公司 | Mlag环境下实现stp协议族的方法及装置 |
CN107154864A (zh) * | 2016-03-04 | 2017-09-12 | 北京华为数字技术有限公司 | 生成树协议stp计算方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3979564B1 (en) | 2024-06-26 |
US20220247671A1 (en) | 2022-08-04 |
CN112751755A (zh) | 2021-05-04 |
WO2021083172A1 (zh) | 2021-05-06 |
EP3979564A4 (en) | 2022-09-07 |
EP3979564A1 (en) | 2022-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10015056B2 (en) | System, method and apparatus for improving the performance of collective operations in high performance computing | |
JP6283361B2 (ja) | ミドルウェアマシン環境における劣化ファットツリーの発見およびルーティングをサポートするためのシステムおよび方法 | |
EP3049931B1 (en) | Ethernet ring protection node | |
CN108512751B (zh) | 一种端口状态处理方法以及网络设备 | |
US11818038B2 (en) | Initiator-based data-plane validation for segment routed, multiprotocol label switched (MPLS) networks | |
US20140185429A1 (en) | Communication system, path switching method and communication device | |
US10333736B2 (en) | Method and apparatus for re-establishing a ring topology following a loss of power | |
EP3316555A1 (en) | Mac address synchronization method, device and system | |
WO2019085975A1 (zh) | 一种网络拓扑显示方法及网络管理设备 | |
EP3213441B1 (en) | Redundancy for port extender chains | |
Winkler et al. | An overview of recent results for consensus in directed dynamic networks | |
EP4029203A1 (en) | Determining connectivity between compute nodes in multi-hop paths | |
CN112751755B (zh) | 一种设备虚拟化方法、装置、系统、设备及存储介质 | |
US11916739B2 (en) | Mitigation of physical network misconfigurations for clustered nodes | |
CN109347734B (zh) | 一种报文发送方法、装置、网络设备和计算机可读介质 | |
CN111064593A (zh) | 网络拓扑冗余通信系统和网络拓扑冗余通信方法 | |
Berns | Avatar: a time-and space-efficient self-stabilizing overlay network | |
US10768992B2 (en) | Provisioning a new network device in a stack | |
US20240297838A1 (en) | Hardware accelerated path tracing analytics | |
WO2024039262A1 (en) | Method for determining backup path and related device | |
CN116158062A (zh) | 一种报文传输方法及装置 | |
CN115225452A (zh) | 转发路径的故障感知方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |