WO2016000186A1 - 一种链路聚合方法及设备 - Google Patents

一种链路聚合方法及设备 Download PDF

Info

Publication number
WO2016000186A1
WO2016000186A1 PCT/CN2014/081297 CN2014081297W WO2016000186A1 WO 2016000186 A1 WO2016000186 A1 WO 2016000186A1 CN 2014081297 W CN2014081297 W CN 2014081297W WO 2016000186 A1 WO2016000186 A1 WO 2016000186A1
Authority
WO
WIPO (PCT)
Prior art keywords
lag
ports
virtual network
peer
local
Prior art date
Application number
PCT/CN2014/081297
Other languages
English (en)
French (fr)
Inventor
郑磊斌
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2014/081297 priority Critical patent/WO2016000186A1/zh
Priority to CN201480035969.0A priority patent/CN105379221B/zh
Publication of WO2016000186A1 publication Critical patent/WO2016000186A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Definitions

  • the peer device can determine, according to the information of the end device carried in the LACP packets and the information of the multiple physical ports, from the multiple physical ports.
  • a physical port that performs link aggregation After the device and the peer device perform the above operations, the end device and the peer device can negotiate the physical ports that can perform link aggregation and complete the chain of these physical ports. Road aggregation.
  • the above-mentioned LACP is based on physical port negotiation, such that one physical port belongs to only one LAG; in a network virtualization scenario, since one physical port is virtualized into multiple logical ports, the same one is adopted when LACP negotiation is adopted. The physical port is bound to multiple LAGs. This is not allowed by the current LACP protocol. Therefore, the LACP negotiation fails on both ends of the device. In the network virtualization scenario, link aggregation cannot be completed. Bandwidth and link reliability.
  • the present invention provides a link aggregation device, including:
  • the processing unit is specifically configured to determine, according to the first virtual network identifier that is received by the receiving unit, the port that is the same as the first virtual network identifier among the M ports, as a virtual network group;
  • the LAG identifier received by the receiving unit determines, in the port of the one virtual network group, the N ports with the same LAG identifier as the one peer L AG.
  • the present invention provides a link aggregation device, including:
  • the processor is configured to receive, by using the M ports of the link aggregation device, a link aggregation control protocol (LACP) packet sent by the peer device, where the LACP packet carries the first port of the LACP packet.
  • LACP link aggregation control protocol
  • the N ports that are all the same are determined as a peer LAG, and the K ports belonging to the preset one local LAG among the N ports of the one LAG are aggregated into one LAG, where M > 2, 1 ⁇ N ⁇ M , 1 KN.
  • the processor is specifically configured to determine, according to the first virtual network identifier, a port in which the first virtual network identifier is the same as the virtual network group, and according to the LAG identifier, In the port of the one virtual network group, the N ports with the same LAG identifier are determined as the one peer LAG.
  • the link aggregation method provided by the present invention increases the port to which the port belongs according to the LACP negotiation.
  • the virtual network identifier of the virtual network so that the local device can aggregate the ports belonging to the same virtual network to the corresponding LAGs in the virtual network according to the virtual network identifier, thereby completing link aggregation, thereby improving link bandwidth and links. reliability.
  • the network virtualization scenario includes servers and switches. There are two VMs running on the server, VM1 and VM2.
  • the server includes three pNICs, pN IC 10, pN IC 20 and NIC30, and NICIO, pNIC20 and NIC30 support virtualization, namely NICIO, PNIC20.
  • pNIC30 are virtualized as three vNICs, each vNIC corresponds to one VF port for VM1 and VM2; the switch also includes three pNICs, pNICll, pNIC21 and pNIC31, pNICll, pNIC21 and pNIC31 do not support virtual Chemical.
  • the S10 device receives the LACP packet sent by the peer device through the M ports of the local device.
  • the LACP packet carries the first virtual network label i of the port that sends the LACP packet and the LAG label of the port. i only, M > 2.
  • the port refers to a physical port, that is, if the port is a network interface card (English: Network Interface Card, abbreviation: NIC, the port refers to a pNIC.
  • NIC Network Interface Card
  • the M ports of the local device are connected to the M ports of the peer device, and the M ports of the local device form M links with the M ports of the peer device.
  • port 1 of the local device and port 2 of the local device are connected to port 1 of the peer device and port 2 of the peer device, respectively, and port 1 of the local device and port 1 of the peer device are formed.
  • One link is link 1, and the port 2 of the local device and the port 2 of the peer device form a link, which is link 2. If link 1 and link 2 are aggregated into one link. You can use the local device to aggregate port 1 of the local device and port 2 of the local device, and the peer device aggregates port 1 of the peer device and port 2 of the peer device.
  • the local device receives the LACP packet sent by the peer device by using the M ports of the local device, and obtains the first virtual network identifier of the port that sends the LACP text.
  • the LAG identifier of the port where M > 2.
  • the first virtual network identifier may be used to distinguish the virtual network to which the port belongs, that is, if the virtual network to which the port belongs is different, the first virtual network identifier carried in the LACP packet is different;
  • the LAG that is, the LAG to which the port belongs is different, the LAG identifier is different.
  • the local device sets M ports according to the first virtual network identifier and the LAG identifier. After the N ports of the first virtual network identifier and the LAG identifier are determined as a peer LAG, the local device belongs to a preset one LAG of the local LAG among the N ports of the opposite LAG. The port is aggregated into a LAG, where, 1 KN, the K port is a preset intersection of a local LAG and a peer LAG, that is, the K ports are all preset ports of a local LAG.
  • the virtual network identifier of the virtual network so that the local device can aggregate the ports belonging to the same virtual network to the corresponding LAGs in the virtual network according to the virtual network identifier, thereby completing link aggregation, thereby improving link bandwidth and links. reliability.
  • the S20 device receives the LACP packet sent by the peer device through the M ports of the local device.
  • the LACP packet carries the first virtual network label i of the port that sends the LACP packet and the LAG label of the port. i only, M > 2.
  • the local device determines, according to the first virtual network identifier, a port that is the same as the first virtual network identifier among the M ports, as a virtual network group.
  • the local device determines, according to the LAG identifier, the N ports of the same LAG identifier in the port of a virtual network group as a peer L AG.
  • the local device After the local device determines the local LAG that is the same as the first virtual network identifier of the peer LAG, the local device can determine the peer LAG and the local end.
  • the port intersection of the LAG, the port intersection includes K ports, of which 1 KN.
  • the local device and the peer device are configured to aggregate the k ports into one LAG. After the link aggregation is complete, the local device receives the data sent by the peer device through the LAG.
  • the packet may carry the second virtual network identifier, where the second virtual network identifier and the first virtual network identifier have a corresponding relationship.
  • the second virtual network identifier can pass through the data packet.
  • the embodiment of the present invention provides a link aggregation method.
  • the local device After the local device receives the LACP packet sent by the peer device, the local device can use the first virtual network of the port that sends the LACP packet carried in the LACP packet.
  • the identifier and the LAG identifier of the port are determined, and the port with the same virtual network identifier and the LAG identifier is determined as a port that can be aggregated into one link, and the ports that can be aggregated into one link are aggregated into one LAG.
  • link aggregation cannot be completed, and thus cannot be mentioned.
  • the receiving unit 10 is further configured to: after the link aggregation device and the peer device complete the aggregation of the k ports into one LAG, receive the peer device by using the one a data packet sent by the LAG, where the data packet carries a second virtual network identifier, where the second virtual network identifier and the first virtual network identifier have a corresponding relationship.
  • the link aggregation device and the peer device may both be servers or network switches.
  • the link aggregation device is a server
  • the peer device is a network switch
  • the link aggregation device is a server

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供一种链路聚合方法及设备,涉及通信领域,解决了现有技术在网络虚拟化场景中,无法完成链路聚合,从而无法提高链路带宽和链路可靠性的问题。该方法包括:本端设备通过本端设备的M个端口分别接收对端设备发送的LACP报文,该LACP报文中携带发送该LACP报文的端口的第一虚拟网络标识和该端口的LAG标识;且本端设备根据该第一虚拟网络标识和该LAG标识,将所述M个端口中,该第一虚拟网络标识和该LAG标识均相同的N个端口确定为一个对端LAG;以及本端设备将所述一个对端LAG的N个端口中,属于预设的一个本端LAG的K个端口聚合为一个LAG,其中,M≥2,1≤N≤M,1≤K≤N。

Description

一种链路聚合方法及设备 技术领域
本发明涉及通信领域, 尤其涉及一种链路聚合方法及设备。 背景技术
随着虚拟化和云计算的发展, 网络虚拟化技术的应用越来越广 泛, 在网络虚拟化场景中, 端口虚拟化尤为重要, 其中, 端口虚拟 化为将一个物理端口虚拟成多个逻辑端口, 这样一个物理端口可以 被多个虚拟机共享。
目前, 在以太网中, 通常可采用链路聚合控制协议(英文: LiNK Aggregat ioN CoNtrol Protocol , 缩写: LACP ) 将多个物理端口绑 定为一个逻辑端口, 以使该多个物理端口形成一个链路聚合组 (英 文: LiNK Aggregat ioN Group, 缩写: LAG ), 从而提高链路带宽和 链路可靠性。 具体的, 一端设备的多个物理端口启用 LACP后, 该端 设备可通过该多个物理端口分别向对端设备发送 LACP报文, 以和对 端设备协商该多个物理端口是否能够进行链路聚合, 当对端设备接 收到这些 LACP报文后, 对端设备可根据这些 LACP报文中携带的该 端设备的信息和该多个物理端口的信息, 从该多个物理端口中确定 出能够进行链路聚合的物理端口, 从而当该端设备和对端设备均执 行上述操作后, 该端设备和对端设备可以对能够进行链路聚合的物 理端口协商一致, 并完成这些物理端口的链路聚合。
然而, 上述 LACP是基于物理端口协商的, 这样一个物理端口只 归属于一个 LAG; 而在网络虚拟化场景中, 由于一个物理端口会被 虚拟成多个逻辑端口, 这样采用 LACP协商时, 同一个物理端口就会 归属于多个 LAG, 这是当前 LACP协议不允许的, 因此, 可能会导致 两端设备 LACP协商失败, 进而在网络虚拟化场景中, 无法完成链路 聚合, 从而无法提高链路带宽和链路可靠性。
发明内容 本发明的实施例提供一种链路聚合方法及设备, 解决了现有技 术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提高链路带 宽和链路可靠性的问题; 能够在网络虚拟化场景中, 完成链路聚合, 从而提高链路带宽和链路可靠性。
为达到上述目的, 本发明采用如下技术方案:
第一方面, 本发明提供一种链路聚合方法, 应用于网络虚拟化 场景中, 包括:
本端设备通过所述本端设备的 M个端口分别接收对端设备发送 的链路聚合控制协议 LACP报文,所述 LACP报文中携带发送所述 LACP 报文的端口的第一虚拟网络标识和所述端口的链路聚合组 LAG 标 识, M > 2;
所述本端设备根据所述第一虚拟网络标识和所述 LAG标识, 将 所述 M个端口中, 所述第一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 其中, 1 N M;
所述本端设备将所述一个对端 LAG的 N个端口中, 属于预设的 一个本端 LAG的 K个端口聚合为一个 LAG, 其中, 1 K N。
在第一方面的第一种可能的实现方式中, 所述本端设备根据所 述第一虚拟网络标识和所述 LAG标识, 将所述 M个端口中, 所述第 一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 包括:
所述本端设备根据所述第一虚拟网络标识,将所述 M个端口中, 所述第一虚拟网络标识相同的端口确定为一个虚拟网络组;
所述本端设备根据所述 LAG标识, 将所述一个虚拟网络组的端 口中, 所述 LAG标识相同的 N个端口确定为所述一个对端 L AG。
结合前述的第一方面或第一方面的第一种可能的实现方式, 在 第二种可能的实现方式中, 所述本端设备将所述一个对端 LAG 的 N 个端口中, 属于预设的一个本端 LAG 的 K 个端口聚合为一个 LAG, 包括:
所述本端设备根据所述第一虚拟网络标识, 从预设的本端 LAG 中, 确定与所述一个对端 LAG 的第一虚拟网络标识相同的所述一个 本端 LAG;
所述本端设备确定所述一个对端 LAG和所述一个本端 LAG的端 口交集, 所述端口交集包括所述 K个端口;
所述本端设备将所述 K个端口聚合为所述一个 LAG。
结合第一方面的第二种可能的实现方式, 在第三种可能的实现 方式中, 所述 LACP报文中还携带所述对端设备的优先级和所述端口 的对端优先级, 所述方法还包括:
所述本端设备根据所述 K个端口的对端优先级, 确定对端负荷 分担策略, 所述对端负荷分担策略包括所述 K 个端口的第一工作模 式,所述 K个端口的第一工作模式为: A个主用端口 负荷分担和( K-A ) 个备用端口, 1 A K;
所述本端设备根据所述 K个端口的本端优先级, 确定本端负荷 分担策略, 所述本端负荷分担策略包括所述 K 个端口的第二工作模 式,所述 K个端口的第二工作模式为: B个主用端口 负荷分担和( K-B ) 个备用端口, 1 B K;
所述本端设备根据所述对端设备的优先级和所述本端设备的优 先级, 确定所述一个 LAG 的负荷分担策略, 所述一个 LAG 的负荷分 担策略为所述对端负荷分担策略, 或为所述本端负荷分担策略。
结合前述的第一方面或第一方面的第一种可能的实现方式至第 三种可能的实现方式中的任一种实现方式, 在第四种可能的实现方 式中,
所述第一虚拟网络标识携带在所述 LACP报文的报头中,或所述 第一虚拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟网 络标签中。
结合前述的第一方面或第一方面的第一种可能的实现方式至第 四种可能的实现方式中的任一种实现方式, 在第五种可能的实现方 式中, 当所述本端设备和所述对端设备均完成将所述 k 个端口聚合 为一个 LAG之后, 所述方法还包括: 所述本端设备接收所述对端设备通过所述一个 LAG发送的数据 报文, 所述数据报文中携带第二虚拟网络标识, 其中, 所述第二虚 拟网络标识与所述第一虚拟网络标识之间存在对应关系。
结合第一方面的第五种可能的实现方式, 在第六种可能的实现 方式中,
所述对应关系包括: 所述第二虚拟网络标识与所述第一虚拟网 络标识相同, 或所述第二虚拟网络标识与所述第一虚拟网络标识之 间存在预设的映射关系
第二方面, 本发明提供一种链路聚合设备, 包括:
接收单元, 用于通过所述链路聚合设备的 M个端口分别接收对 端设备发送的链路聚合控制协议 LACP报文, 所述 LACP报文中携带 发送所述 LACP 报文的端口的第一虚拟网络标识和所述端口的链路 聚合组 LAG标识, M > 2;
处理单元, 用于根据所述接收单元接收的所述第一虚拟网络标 识和所述 LAG标识, 将所述 M个端口中, 所述第一虚拟网络标识和 所述 LAG 标识均相同的 N 个端口确定为一个对端 LAG, 并将所述一 个对端 LAG的 N个端口中, 属于预设的一个本端 LAG的 K个端口聚 合为一个 LAG, 其中, 1 N M, 1 K N。
在第二方面的第一种可能的实现方式中,
所述处理单元, 具体用于根据所述接收单元接收的所述第一虚 拟网络标识, 将所述 M 个端口中, 所述第一虚拟网络标识相同的端 口确定为一个虚拟网络组; 并根据所述接收单元接收的所述 LAG 标 识, 将所述一个虚拟网络组的端口中, 所述 LAG标识相同的 N个端 口确定为所述一个对端 L AG。
结合前述的第二方面或第二方面的第一种可能的实现方式, 在 第二种可能的实现方式中,
所述处理单元, 还用于根据所述接收单元接收的所述第一虚拟 网络标识, 从预设的本端 LAG 中, 确定与所述一个对端 LAG 的第一 虚拟网络标识相同的所述一个本端 LAG; 并确定所述一个对端 LAG 和所述一个本端 LAG的端口交集, 所述端口交集包括所述 K个端口; 以及将所述 K个端口聚合为所述一个 LAG。
结合第二方面的第二种可能的实现方式, 在第三种可能的实现 方式中, 所述接收单元接收的所述 LACP报文中还携带所述对端设备 的优先级和所述端口的对端优先级;
所述处理单元, 还用于根据所述 K个端口的对端优先级, 确定 对端负荷分担策略, 并根据所述 K 个端口的本端优先级, 确定本端 负荷分担策略, 以及根据所述对端设备的优先级和所述链路聚合设 备的优先级, 确定所述一个 LAG 的负荷分担策略, 所述一个 LAG 的 负荷分担策略为所述对端负荷分担策略, 或为所述本端负荷分担策 略, 所述对端负荷分担策略包括所述 K 个端口的第一工作模式, 所 述 K个端口的第一工作模式为: A个主用端口 负荷分担和 ( K-A ) 个 备用端口, 1 A K, 所述本端负荷分担策略包括所述 K个端口的第 二工作模式, 所述 K 个端口的第二工作模式为: B 个主用端口负荷 分担和 ( K-B ) 个备用端口, 1 B K。
结合前述的第二方面或第二方面的第一种可能的实现方式至第 三种可能的实现方式中的任一种实现方式, 在第四种可能的实现方 式中,
所述第一虚拟网络标识携带在所述 LACP报文中,或所述第一虚 拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟网络标签 中。
结合前述的第二方面或第二方面的第一种可能的实现方式至第 四种可能的实现方式中的任一种实现方式, 在第五种可能的实现方 式中,
所述接收单元, 还用于当所述链路聚合设备和所述对端设备均 完成将所述 k个端口聚合为一个 LAG之后, 接收所述对端设备通过 所述一个 LAG 发送的数据报文, 所述数据报文中携带第二虚拟网络 标识, 其中, 所述第二虚拟网络标识与所述第一虚拟网络标识之间 存在对应关系。 结合第二方面的第五种可能的实现方式, 在第六种可能的实现 方式中,
所述对应关系包括: 所述第二虚拟网络标识与所述第一虚拟网 络标识相同, 或所述第二虚拟网络标识与所述第一虚拟网络标识之 间存在预设的映射关系。
第三方面, 本发明提供一种链路聚合设备, 包括:
处理器, 用于通过所述链路聚合设备的 M个端口分别接收对端 设备发送的链路聚合控制协议 LACP报文, 所述 LACP报文中携带发 送所述 LACP 报文的端口的第一虚拟网络标识和所述端口的链路聚 合组 LAG标识, 并根据所述第一虚拟网络标识和所述 LAG标识, 将 所述 M个端口中, 所述第一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 以及将所述一个对端 LAG的 N个端口 中, 属于预设的一个本端 LAG的 K个端口聚合为一个 LAG, 其中, M > 2, 1 < N < M , 1 K N。
在第三方面的第一种可能的实现方式中,
所述处理器, 具体用于根据所述第一虚拟网络标识, 将所述 M 个端口中, 所述第一虚拟网络标识相同的端口确定为一个虚拟网络 组; 并根据所述 LAG 标识, 将所述一个虚拟网络组的端口中, 所述 LAG标识相同的 N个端口确定为所述一个对端 LAG。
结合前述的第三方面或第三方面的第一种可能的实现方式, 在 第二种可能的实现方式中,
所述处理器, 还用于根据所述第一虚拟网络标识, 从预设的本 端 LAG 中, 确定与所述一个对端 LAG 的第一虚拟网络标识相同的所 述一个本端 LAG; 并确定所述一个对端 LAG 和所述一个本端 LAG 的 端口交集, 所述端口交集包括所述 K个端口; 以及将所述 K个端口 聚合为所述一个 LAG。
结合第三方面的第二种可能的实现方式, 在第三种可能的实现 方式中, 所述处理器接收的所述 LACP报文中还携带所述对端设备的 优先级和所述端口的对端优先级; 所述处理器, 还用于根据所述 K个端口的对端优先级, 确定对 端负荷分担策略, 并根据所述 κ个端口的本端优先级, 确定本端负 荷分担策略, 以及根据所述对端设备的优先级和所述链路聚合设备 的优先级, 确定所述一个 LAG 的负荷分担策略, 所述一个 LAG 的负 荷分担策略为所述对端负荷分担策略, 或为所述本端负荷分担策略, 所述对端负荷分担策略包括所述 K 个端口的第一工作模式, 所述 K 个端口的第一工作模式为: A个主用端口 负荷分担和 ( K-A ) 个备用 端口, 1 A K, 所述本端负荷分担策略包括所述 K个端口的第二工 作模式, 所述 K 个端口的第二工作模式为: B 个主用端口负荷分担 和 ( K-B ) 个备用端口, 1 B K。
结合前述的第三方面或第三方面的第一种可能的实现方式至第 三种可能的实现方式中的任一种实现方式, 在第四种可能的实现方 式中,
所述第一虚拟网络标识携带在所述 LACP报文中,或所述第一虚 拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟网络标签 中。
结合前述的第三方面或第三方面的第一种可能的实现方式至第 四种可能的实现方式中的任一种实现方式, 在第五种可能的实现方 式中,
所述处理器, 还用于当所述链路聚合设备和所述对端设备均完 成将所述 k个端口聚合为一个 LAG之后, 接收所述对端设备通过所 述一个 LAG 发送的数据报文, 所述数据报文中携带第二虚拟网络标 识, 其中, 所述第二虚拟网络标识与所述第一虚拟网络标识之间存 在对应关系。
结合第三方面的第五种可能的实现方式, 在第六种可能的实现 方式中,
所述对应关系包括: 所述第二虚拟网络标识与所述第一虚拟网 络标识相同, 或所述第二虚拟网络标识与所述第一虚拟网络标识之 间存在预设的映射关系。 本发明提供一种链路聚合方法及设备, 本端设备接收到对端设 备发送的 LACP报文后, 本端设备可以根据该 LACP报文中携带的发 送该 LACP 文的端口的第一虚拟网络标识和该端口的 LAG标识, 将 第一虚拟网络标识和 L A G 标识均相同的端口确定为能够聚合为一个 链路的端口, 并将能够聚合为一个链路的端口聚合为一个 LAG。 与 现有技术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提高 链路带宽和链路可靠性相比, 本发明提供的链路聚合方法, 由于在 LACP协商时增加了端口所属的虚拟网络的虚拟网络标识, 因此本端 设备可根据该虚拟网络标识, 将属于同一个虚拟网络的端口聚合到 该虚拟网络中相应的 LAG, 从而完成链路聚合, 进而提高链路带宽 和链路可靠性。
附图说明
图 1为本发明实施例提供的一种链路聚合方法的应用场景图; 图 2为本发明实施例提供的一种链路聚合方法的流程图一; 图 3为本发明实施例提供的一种链路聚合方法的流程图二; 图 4 为本发明实施例提供的一种链路聚合设备的结构示意图 图 5 为本发明实施例提供的一种链路聚合设备的结构示意图 具体实施方式
下面结合附图对本发明实施例提供的一种链路聚合方法及设备 进行详细地描述。
在网络虚拟化场景中, 网络设备上的一个物理端口往往会被虚 拟成多个虚拟端口 , 本发明 实施例以物理网络接口卡 ( 英文: physical Network Interface Card, 缩写: NIC ) 为例, 一个 pNIC 可以被虚拟为 多 个虚拟网络接口 卡 ( 英文: virtual Network Interface Card, 缩写: vNIC ), 其中一个 vNIC 包括一个虚拟功能 (英文: Virutal Funct ion,缩写: VF ) 端口和一个 VF 驱动程序, 这多个 vNIC 可以被多个虚拟机 (英文: Virtual Machine, 缩写: VM) 使用, 且 VM使用 vNIC传输数据时需要运行 VF驱动程序, 并通 过 VF端口将数据传输出去。 在该网络虚拟化场景中, 同样需要使用 链路聚合来提高链路带宽和链路可靠性。
如图 1 所示, 为一种网络虚拟化场景的架构示意图。 该网络虚 拟化场景中包括服务器和交换机。 其中, 服务器上运行有两个 VM, 分别为 VM1和 VM2,服务器上包括三个 pNIC,分别为 pN I C 10、 pN I C 20 和 NIC30, 且 NICIO, pNIC20和 NIC30均支持虚拟化, 即 NICIO, PNIC20 和 pNIC30 分别被虚拟为三个 vNIC, 每个 vNIC对应一个 VF 端口, 以供 VM1 和 VM2 使用; 交换机上也包括三个 pNIC, 分别为 pNICll 、 pNIC21和 pNIC31 , pNICll 、 pNIC21和 pNIC31 均不支持 虚拟化。
在如图 1所示的网络虚拟化场景中,每个 VM可能同时使用多个 vNIC, 且该多个 vNIC 可能属于多个 pNIC, 为了提高链路带宽和链 路可靠性, 可将该多个 vNIC进行链路聚合。 一个 VM 中可以包括多 个 LAG, 且该多个 LAG 分别接入不同的虚拟网络(英文: Virtual Network, 缩写: VN) , 例如, 图 1 所示的 VM1 中包括 LAG1和 LAG2 , AG1接入 VN1, AG2接入 VN2, VM2 中包括 AG3, AG3接入 VN3。 下面实施例中将结合图 1 所示的网络虚拟化场景, 对本发明实施例 提供的链路聚合方法进行详细地说明。
实施例一
本发明实施例提供一种链路聚合方法, 如图 2 所示, 该方法可 以包括:
S10 本端设备通过本端设备的 M个端口分别接收对端设备发 送的 LACP报文, 该 LACP报文中携带发送该 LACP报文的端口的第一 虚拟网络标 i只和该端口的 LAG标 i只, M > 2。
本发明实施例提供的链路聚合方法中, 端口均是指物理端口, 即若端口为网络接口卡 (英文: Network Interface Card, 缩写: NIC, 则该端口是指 pNIC。
LACP基于 IEEE802.3ad标准, 为数据交换设备提供一种通过数 据交换设备之间发送 LACP报文进行协商的协商方式。
本端设备的 M个端口与对端设备的 M个端口 对应连接, 且 本端设备的 M个端口与对端设备的 M个端口形成 M条链路, 为了提 高链路带宽和链路可靠性, 需要将 M条链路中的至少 2 条链路进行 聚合。 示例性的, 假设本端设备的端口 1 和本端设备的端口 2 分别 与对端设备的端口 1 和对端设备的端口 2 连接, 且本端设备的端口 1和对端设备的端口 1形成 1条链路, 为链路 1 , 本端设备的端口 2 和对端设备的端口 2 形成 1 条链路, 为链路 2, 若需将链路 1 和链 路 2 聚合为 1 条链路, 则可通过本端设备将本端设备的端口 1 和本 端设备的端口 2 聚合, 以及对端设备将对端设备的端口 1 和对端设 备的端口 2聚合实现。
本发明实施例提供的链路聚合方法中, 本端设备通过本端设备 的 M个端口分别接收对端设备发送的 LACP报文, 并从中获取发送该 LACP 文的端口的第一虚拟网络标识和该端口的 LAG标识, 其中, M > 2。 具体的, 该第一虚拟网络标识可用于区分端口所属的虚拟网 络, 即若端口所属的虚拟网络不同, 则 LACP报文中携带的该第一虚 拟网络标识就不同; LAG标识用于区分端口所属的 LAG, 即端口所属 的 LAG不同, 则 LAG标识就不同。
5102、 本端设备根据该第一虚拟网络标识和该 LAG 标识, 将 M 个端口中, 该第一虚拟网络标识和该 LAG标识均相同的 N个端口确 定为一个对端 LAG, 其中, 1 N M。
本端设备通过本端设备的 M 个端口分别接收对端设备发送的 L A C P报文之后, 本端设备可根据该报文中携带的该第一虚拟网络标 识和该 LAG标识, 将本端设备的 M个端口中, 该第一虚拟网络标识 和该 LAG 标识均相同的 N 个端口确定为一个对端 L AG , 其中, 1 N < M。
5103、 本端设备将一个对端 LAG的 N个端口中, 属于预设的一 个本端 LAG的 K个端口聚合为一个 LAG, 其中, 1 K N。
本端设备根据该第一虚拟网络标识和该 LAG标识, 将 M个端口 中, 该第一虚拟网络标识和该 LAG标识均相同的 N个端口确定为一 个对端 LAG之后, 本端设备将一个对端 LAG 的 N个端口中, 属于预 设的一个本端 LAG的 K个端口聚合为一个 LAG, 其中, 1 K N, 该 K个端口为预设的一个本端 LAG与一个对端 LAG的端口交集, 即该 K 个端口为预设的一个本端 LAG 的所有端口中与一个对端 LAG 的 N个 端口的该第一虚拟网络标识和该 LAG标识均相同的端口。
本发明实施例提供一种链路聚合方法, 本端设备接收到对端设 备发送的 LACP报文后, 本端设备可以根据该 LACP报文中携带的发 送该 LACP 文的端口的第一虚拟网络标识和该端口的 LAG标识, 将 该第一虚拟网络标识和该 LAG 标识均相同的端口确定为能够聚合为 一个链路的端口, 并将能够聚合为一个链路的端口聚合为一个 LAG。 与现有技术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提 高链路带宽和链路可靠性相比, 本发明提供的链路聚合方法, 由于 在 LACP协商时增加了端口所属的虚拟网络的虚拟网络标识, 因此本 端设备可根据该虚拟网络标识, 将属于同一个虚拟网络的端口聚合 到该虚拟网络中相应的 LAG, 从而完成链路聚合, 进而提高链路带 宽和链路可靠性。
实施例二
本发明实施例提供一种链路聚合方法, 如图 3 所示, 该方法可 以包括:
S20 本端设备通过本端设备的 M个端口分别接收对端设备发 送的 LACP报文, 该 LACP报文中携带发送该 LACP报文的端口的第一 虚拟网络标 i只和该端口的 LAG标 i只, M > 2。
具体的, S 201 的描述可以参照上述 S 101 中的相关描述, 此处 不再赘述。
进一步地,对端设备可将该第一虚拟网络标识携带在 LACP报文 中传输。
一种可能的实现方式中,对端设备可在 LACP报文中的链路聚合 控制协议数据单元(英文: Link Aggregat ion Control Protocol Data Unit , 缩写: L ACPDU ) 中增加该第一虚拟网络标识。 示例性的, 如 表 1 所示, 对端设备可在 LACPDU中的任意一个预留字段中增加该第 一虚拟网络标识。
另一种可能的实现方式中,对端设备可在承载 LACPDU的以太网 帧结构中增加虚拟局域网络标签 ( VLAN-Tag ) 或虚拟网络标签 ( VN-Tag ), 以用于表示该第一虚拟网络标识。 示例性的, 如表 2所 示, 对端设备可在承载 LACPDU的以太网帧结构中增加 "VLAN- Tag" , 该 "VLAN-Tag" 可用于表示该第一虚拟网络标识; 如表 3 所示, 在 承载 LACPDU 的以太网帧结构中增加 "VN- Tag" , 该 "VN- Tag" 可用 于表示该第一虚拟网络标识。 其中, 实际使用过程中, 当需表示的 该第一虚拟网络标识的数量超出表 2 所示的 "VLAN-Tag" 字段能够 表示的该第一虚拟网络标识的数量时, 如表 4 所示, 可以在表 2 所 示的 "VLAN-Tag" 字段之后再增加一个相同的字段,以表示更多的该 第一虚拟网络标识, 从而指示不同的虚拟网络。
表 1
Figure imgf000014_0004
Figure imgf000014_0001
Figure imgf000014_0005
Figure imgf000014_0002
Figure imgf000014_0006
Figure imgf000014_0003
LACP报文
DA SA ETYPE VLAN- ETYPE VLAN- ETYPE/L LACP FCS
Tag Tag ENGTH DU
在上述述表 1 至表 4 中, "DA" 是目 的地址; "SA" 是源地址; "ETYPE/LENGTH" 是以太网类型 /长度, 用于表征以太网帧的数据字 段的类型或长度; "FCS" 是帧校验序列。
S202、 本端设备根据该第一虚拟网络标识, 将 M个端口中, 该 第一虚拟网络标识相同的端口确定为一个虚拟网络组。
本端设备从该 LACP报文中获取发送该 LACP报文的端口的第一 虚拟网络标识和该端口的 LAG 标识之后, 本端设备可根据该第一虚 拟网络标识, 将 M 个端口中, 该第一虚拟网络标识相同的端口确定 为一个虚拟网络组。
S203、 本端设备根据该 LAG标识, 将一个虚拟网络组的端口中, 该 LAG标识相同的 N个端口确定为一个对端 L AG。
本端设备将 M个端口中, 该第一虚拟网络标识相同的端口确定 为一个虚拟网络组之后, 本端设备再根据该 LAG 标识, 将一个虚拟 网络组的端口中, LAG标识相同的 N个端口确定为一个对端 LAG , 其 中, 1 N M。
需要说明的是, 本发明实施例提供的链路聚合方法, 为了更好 地理解且描述方便, 以该第一虚拟网络标识和该 LAG 标识均相同的 一个对端 LAG 的协商为例进行示例性的说明, 本端设备与对端设备 对于其他对端 LAG 的协商均与上述一个对端 LAG 的协商类似, 此处 不再赘述。
S204、 本端设备根据该第一虚拟网络标识, 从预设的本端 LAG 中, 确定与该一个对端 LAG 的该第一虚拟网络标识相同的一个本端 LAG。
本端设备根据该 LAG标识,将一个虚拟网络组的端口中,该 LAG 标识相同的 N个端口确定为一个对端 LAG之后, 本端设备可根据该 第一虚拟网络标识, 从预设的本端 LAG 中, 确定与该一个对端 LAG 的该第一虚拟网络标识相同的一个本端 LAG。
S205、 本端设备确定该一个对端 LAG和该一个本端 LAG的端口 交集, 该端口交集包括 K个端口 。
本端设备从预设的本端 LAG 中, 确定与该一个对端 LAG的该第 一虚拟网络标识相同的该一个本端 LAG 之后, 本端设备可确定该一 个对端 LAG和该一个本端 LAG 的端口交集, 该端口交集包括 K个端 口, 其中, 1 K N。
S206、 本端设备将该 K个端口聚合为一个 LAG。
本端设备确定该一个对端 LAG和该一个本端 LAG的端口交集之 后, 本端设备可将该端口交集中的 K个端口聚合为一个 LAG。
需要说明的是, 本发明实施例提供的本端设备和对端设备均是 示例性的说明, 该本端设备和对端设备的概念是相对的, 不是绝对 的。 例如, 本端设备可以为服务器, 那么对端设备则为网络交换机; 或者, 本端设备可以为网络交换机, 那么对端设备则为服务器。
本发明实施例提供的链路聚合方法中, 仅以本端设备为例进行 示例性的说明, 对端设备进行链路聚合的方法与本端设备类似, 此 处不再赘述。
进一步地, 本端设备和对端设备通过执行本发明实施例提供的 链路聚合方法, 可以协商确定能够进行链路聚合的端口, 即上述的 一个本端 LAG和一个对端 LAG 的端口交集, 并将能够进行链路聚合 的端口聚合为一个 LAG, 以提高链路带宽和链路可靠性。
进一步地, 本端设备和对端设备均完成将上述 k个端口聚合为 一个 LAG, 即完成链路聚合后, 本发明实施例提供的链路聚合方法 还可以包括:
S207、本端设备接收对端设备通过该一个 LAG发送的数据报文, 该数据报文中携带第二虚拟网络标识, 其中, 该第二虚拟网络标识 与该第一虚拟网络标识之间存在对应关系。
本端设备和对端设备均完成将 k 个端口聚合为一个 LAG, 即完 成链路聚合后, 本端设备接收对端设备通过该一个 LAG 发送的数据 报文, 该数据报文中可以携带该第二虚拟网络标识, 其中, 该第二 虚拟网络标识与该第一虚拟网络标识之间存在对应关系。
其中, 该对应关系可以包括: 该第二虚拟网络标识与该第一虚 拟网络标识相同; 或者该第二虚拟网络标识与该第一虚拟网络标识 之间存在预设的映射关系。
具体的 , 该第 二虚拟 网 络标识可以通过数据报文 中 的
"VLAN-Tag"或 "VN-Tag"来指示。具体的,数据才艮文中的 "VLAN-Tag" 或 " VN-Tag" 表示该第二虚拟网络标识的形式与 LACP 报文中的
"VLAN-Tag" 或 "VN-Tag" 表示该第一虚拟网络标识的形式类似, 此处不再赘述。
特别的, 该数据报文中还可以携带: 上述一个 LAG 的标识、 上 述一个 LAG 包含的 K个端口的端口号和 K个端口的负荷分担策略。
本发明实施例中, 负荷分担策略可以理解为: 将若干个端口聚 合为一个 LAG 之后, 确定若干个端口中的一部分端口为主用端口, 以用于传输数据。 另一部分端口为备用端口, 以在主用端口发生故 障时, 用于提高链路的可靠性; 具体可以为, 当主用端口发生故障 时, 备用端口可以代替主用端口传输数据。
进一步地, 上述 S201 中, 对端设备发送的该 LACP报文中还可 以携带对端设备的优先级和发送该 LACP报文的端口的对端优先级, 用于在本端设备和对端设备均完成将 k个端口聚合为一个 LAG之后, 确定一个 LAG的负荷分担策略, 具体可以包括以下步骤:
( 1 )本端设备根据 K个端口的对端优先级, 确定对端负荷分担 策略, 对端负荷分担策略包括 K 个端口的第一工作模式, K 个端口 的第一工作模式为: A个主用端口 负荷分担和 ( K-A ) 个备用端口, 1 A K。
( 2 )本端设备根据 Κ个端口的本端优先级, 确定本端负荷分担 策略, 本端负荷分担策略包括 Κ 个端口的第二工作模式, Κ 个端口 的第二工作模式为: Β个主用端口 负荷分担和 ( Κ-Β ) 个备用端口, 1 Β Κ。 ( 3 )本端设备根据对端设备的优先级和本端设备的优先级, 确 定该一个 LAG 的负荷分担策略, 该一个 LAG 的负荷分担策略可以为 对端负荷分担策略, 或者可以为本端负荷分担策略。
进一步地,为了更好地描述本发明实施例提供的链路聚合方法, 下面以图 1 所示的网络虚拟化场景为例进行示例性的说明, 具体可 以包括以下步骤:
( 1 ) 网络交换机通过网络交换机的 M个 pNIC分别接收服务器 发送的 LACP报文, 该 LACP报文中携带发送该 LACP报文的端口的第 一虚拟网络标识和该端口的 LAG标识。
例如, 网络交换机通过 pNICll、 pNIC21 和 pNIC31 分别接收服 务器通过 NICIO, pNIC20 和 NIC30发送的 LACP才艮文, 每个 LACP 才艮文中均携带对应端口的第一虚拟网络标识和该端口的 LAG标识。
需要说明的是, 如图 1 所示的场景中, pNICll 和 pNICIO 为对 应的一对端口,且 pNICll和 pNICIO形成一条链路; pNIC21和 pNIC20 为对应的一对端口, 且 pNIC21和 pNIC20形成一条链路; pNIC31和 PNIC30为对应的一对端口, 且 pNIC31和 pNIC30形成一条链路。 其 中, 网络交换机通过 pNICll、 pNIC21 和 pNIC31 分别接收服务器通 过 pNIC10、 pNIC20和 pNIC30发送的 LACP才艮文, 该三个 LACP才艮文 用于指示服务器期望 pNIC10、 pNIC20和 pNIC30 均聚合为 VN1 中的 AG1。
( 2 ) 网络交换机可以根据该 LACP 报文中携带的发送该 LACP 报文的端口的第一虚拟网络标识和该端口的 LAG 标识, 将该第一虚 拟网络标识和该 LAG标识均相同的 N个端口, 例如可以为图 1 所示 的 pNIC10、 pNIC20和 pNIC30, 确定为一个服务器端 LAG。 其中, 该 服务器端 LAG 中的端口为服务器期望聚合为一个虚拟网络中的一个 LAG的端口。
( 3 ) 网络交换机根据该第一虚拟网络标识, 从网络交换机中预 设的本端 LAG 中确定与一个服务器端 LAG 的该第一虚拟网络标识相 同的一个网络交换机端 LAG, 例如, 该一个网络交换机端 LAG 包括 图 1 所示的 pNICll和 pNIC21。
( 4 )网络交换机确定该一个服务器端 LAG和该一个网络交换机 端 LAG的端口交集。 其中, 该端口交集包括 pNICll和 pNIC21。
( 5 ) 如图 1所示, 网络交换机将 pNICll和 pNIC21聚合为 VN1 中的 LAG1。
需要说明的是, 上述 ( 1 ) _ ( 5 ) 为网络交换机对端口聚合的过 程, 对于服务器对相应端口聚合的过程, 与上述 ( 1 ) _ ( 5 ) 类似, 即服务器可根据网络交换机通过网络交换机的相应端口发送的 LACP 报文, 将服务器的 pNIClQ和 pNIC20聚合为 VN1 中的 LAG1。
至此, 网络交换机和服务器均完成了端口聚合, 即链路聚合, 从而聚合后的端口形成一个 LAG, 进而服务器和网络交换机可通过 该 LAG进行数据传输, 提高了链路带宽和链路可靠性。
进一步地, 如果除 VN1 以外的其他虚拟网络中的 LAG 和上述 LAG1 包含了相同的端口, 则服务器和网络交换机还可在这些端口进 行 LACP协商, 从而完成将这些端口聚合至除 VN1 以外的其他虚拟网 络中的 LAG。 例如, 图 1 所示的 LAG2 和 LAG3 的聚合, 其中, LAG2 和 LAG 3的聚合过程与上述 LAG1 的聚合过程类似, 此处不再赘述。
本发明实施例提供的链路聚合方法中, 可将属于同一个虚拟网 络的端口聚合到该虚拟网络中相应的 LAG, 由于每个 LAG 都属于不 同的虚拟网络, 因此在协商过程中是相互独立的, 以使得对不同的 LAG 可以确定不同的负荷分担策略, 从而在传输数据时, 使得链路 的分配更加灵活; 并且本发明实施例提供的链路聚合方法中, 一端 设备的 pNIC无需支持虚拟化, 从而在设备部署时可以节约成本。
本发明实施例提供一种链路聚合方法, 本端设备接收到对端设 备发送的 LACP报文后, 本端设备可以根据该 LACP报文中携带的发 送该 LACP 文的端口的第一虚拟网络标识和该端口的 LAG标识, 将 该第一虚拟网络标识和该 LAG 标识均相同的端口确定为能够聚合为 一个链路的端口, 并将能够聚合为一个链路的端口聚合为一个 LAG。 与现有技术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提 高链路带宽和链路可靠性相比, 本发明提供的链路聚合方法, 由于 在 LACP协商时增加了端口所属的虚拟网络的虚拟网络标识, 因此本 端设备可根据该虚拟网络标识, 将属于同一个虚拟网络的端口聚合 到该虚拟网络中相应的 LAG, 从而完成链路聚合, 进而提高链路带 宽和链路可靠性。
实施例三
如图 4 所示, 本发明实施例提供一种链路聚合设备 1 , 该链路 聚合设备 1 可以执行上述实施例一中如图 2 或上述实施例二中如图 3所述的方法流程, 该链路聚合设备 1 可以包括:
接收单元 10, 用于通过所述链路聚合设备的 M个端口分别接收 对端设备发送的 LACP报文, 所述 LACP报文中携带发送所述 LACP报 文的端口的第一虚拟网络标识和所述端口的 LAG 标识, M > 2; 处理 单元 11 , 用于根据所述接收单元 10 接收的所述第一虚拟网络标识 和所述 LAG标识, 将所述 M个端口中, 所述第一虚拟网络标识和所 述 LAG 标识均相同的 N 个端口确定为一个对端 LAG, 并将所述一个 对端 LAG的 N个端口中, 属于预设的一个本端 LAG的 K个端口聚合 为一个 LAG, 其中, 1 N M, 1 K N。
可选的, 所述处理单元 11 , 具体用于根据所述接收单元 10 接 收的所述第一虚拟网络标识, 将所述 M 个端口中, 所述第一虚拟网 络标识相同的端口确定为一个虚拟网络组; 并根据所述接收单元 10 接收的所述 LAG 标识, 将所述一个虚拟网络组的端口中, 所述 LAG 标识相同的 N个端口确定为所述一个对端 L AG。
可选的, 所述处理单元 11 , 还用于根据所述接收单元 10 接收 的所述第一虚拟网络标识, 从预设的本端 LAG 中, 确定与所述一个 对端 LAG 的第一虚拟网络标识相同的所述一个本端 LAG; 并确定所 述一个对端 LAG和所述一个本端 LAG 的端口交集, 所述端口交集包 括所述 K个端口; 以及将所述 K个端口聚合为所述一个 LAG。
可选的, 所述接收单元 10接收的所述 LACP报文中还携带所述 对端设备的优先级和所述端口的对端优先级; 所述处理单元 11 , 还用于根据所述 K个端口的对端优先级, 确 定对端负荷分担策略, 并根据所述 Κ 个端口的本端优先级, 确定本 端负荷分担策略, 以及根据所述对端设备的优先级和所述链路聚合 设备的优先级, 确定所述一个 LAG 的负荷分担策略, 所述一个 LAG 的负荷分担策略为所述对端负荷分担策略, 或为所述本端负荷分担 策略, 所述对端负荷分担策略包括所述 K 个端口的第一工作模式, 所述 K个端口的第一工作模式为: A个主用端口 负荷分担和 ( K-A ) 个备用端口, 1 A K, 所述本端负荷分担策略包括所述 K个端口的 第二工作模式, 所述 K 个端口的第二工作模式为: B 个主用端口 负 荷分担和 ( K-B ) 个备用端口, 1 B K。
可选的, 所述第一虚拟网络标识携带在所述 LACP报文中, 或所 述第一虚拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟 网络标签中。
可选的, 所述接收单元 10, 还用于当所述链路聚合设备和所述 对端设备均完成将所述 k个端口聚合为一个 LAG之后, 接收所述对 端设备通过所述一个 LAG 发送的数据报文, 所述数据报文中携带第 二虚拟网络标识, 其中, 所述第二虚拟网络标识与所述第一虚拟网 络标识之间存在对应关系。
可选的, 所述对应关系包括: 所述第二虚拟网络标识与所述第 一虚拟网络标识相同, 或所述第二虚拟网络标识与所述第一虚拟网 络标识之间存在预设的映射关系。
特别的,所述链路聚合设备也可以通过发送 LACP报文给所述对 端设备, 对所述链路聚合设备期望聚合的端口进行协商, 以确定出 能够进行链路聚合的端口, 并将能够进行链路聚合的端口聚合为一 个 LAG。 其中, 所述链路聚合设备发送 LACP报文给对端设备进行协 商的方式与上述对端设备发送 LACP 报文给所述链路聚合设备进行 协商的方式类似, 此处不再赘述。
本发明实施例中, 所述链路聚合设备和所述对端设备均可以为 服务器或网络交换机。 例如, 若所述链路聚合设备为服务器, 那么 所述对端设备则为网络交换机; 或者, 若所述链路聚合设备为网络 交换机, 那么所述对端设备则为服务器。
本发明实施例提供一种链路聚合设备, 该链路聚合设备接收到 对端设备发送的 LACP报文后, 该链路聚合设备可以根据该 LACP报 文中携带的发送该 LACP 报文的端口的第一虚拟网络标识和该端口 的 LAG标识, 将第一虚拟网络标识和 LAG标识均相同的端口确定为 能够聚合为一个链路的端口, 并将能够聚合为一个链路的端口聚合 为一个 LAG。 与现有技术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提高链路带宽和链路可靠性相比, 本发明提供的链路聚合 设备, 由于在 LACP协商时增加了端口所属的虚拟网络的虚拟网络标 识, 因此链路聚合设备可根据该虚拟网络标识, 将属于同一个虚拟 网络的端口聚合到该虚拟网络中相应的 LAG, 从而完成链路聚合, 进而提高链路带宽和链路可靠性。
实施例四
如图 5 所示, 本发明实施例提供一种链路聚合设备, 该链路聚 合设备可以为服务器或网络交换机, 该链路聚合设备可以包括处理 器 13、 存储器 14、 系统总线 15。 处理器 13 和存储器 14之间通过 系统总线 15连接并完成相互间的通信。
处理器 13可以为中央处理器(英文: central processing unit, 缩写: CPU)。
存储器 14, 用于存储程序代码, 处理器 13, 用于根据存储器 14 存储的程序代码执行下述指令。 存储器 14 可以包括易失性存储 器 ( 英文: volatile memory ), 例如随机存取存储器 ( 英文: random-access memory, 缩写: RAM); 存储器 14也可以包括非易失 性存储器 (英文: non-volatile memory ), 例如只读存储器 (英文: read-only memory, 缩写: ROM ), 快闪存储器(英文: flash memory ), 硬盘 (英文: hard disk drive, 缩写: HDD ) 或固态硬盘 (英文: solid-state drive, 缩写: SSD ); 存储器 14 还可以包括上述种类 的存储器的组合。 当链路聚合设备运行时,处理器 13运行链路聚合设备的执行指 令, 可以执行上述实施例一中如图 2或上述实施例二中如图 3 所述 的方法流程, 具体包括:
所述处理器 13, 用于通过所述链路聚合设备的 M个端口分别接 收对端设备发送的 LACP报文, 所述 LACP报文中携带发送所述 LACP 才艮文的端口的第一虚拟网络标识和所述端口的 LAG 标识; 并^ ^艮据所 述第一虚拟网络标识和所述 LAG标识, 将所述 M个端口中, 所述第 一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 以及将所述一个对端 LAG的 N个端口中, 属于预设的一个本端 LAG的 K个端口聚合为一个 LAG, 其中, M > 2, 1 < N < M, 1 < K < N; 所述存储器 14, 用于存储所述 LACP 报文的代码和控制所述处理器 13 完成上述过程的软件程序, 从而所述处理器 13 可以通过执行所 述存储器 14 中存储的软件程序, 并调用所述存储器 14 中存储的软 件代码以完成上述过程。
可选的, 所述处理器 13,具体用于根据所述第一虚拟网络标识, 将所述 M 个端口中, 所述第一虚拟网络标识相同的端口确定为一个 虚拟网络组; 并根据所述 LAG 标识, 将所述一个虚拟网络组的端口 中, 所述 LAG标识相同的 N个端口确定为所述一个对端 LAG。
可选的, 所述处理器 13, 还用于根据所述第一虚拟网络标识, 从预设的本端 LAG 中, 确定与所述一个对端 LAG 的第一虚拟网络标 识相同的所述一个本端 LAG; 并确定所述一个对端 LAG 和所述一个 本端 LAG 的端口交集, 所述端口交集包括所述 K个端口; 以及将所 述 K个端口聚合为所述一个 LAG。
可选的, 所述处理器 13接收的所述 LACP报文中还携带所述对 端设备的优先级和所述端口的对端优先级;
所述处理器 13, 还用于根据所述 K个端口的对端优先级, 确定 对端负荷分担策略, 并根据所述 K 个端口的本端优先级, 确定本端 负荷分担策略, 以及根据所述对端设备的优先级和所述链路聚合设 备的优先级, 确定所述一个 LAG 的负荷分担策略, 所述一个 LAG 的 负荷分担策略为所述对端负荷分担策略, 或为所述本端负荷分担策 略, 所述对端负荷分担策略包括所述 K 个端口的第一工作模式, 所 述 K个端口的第一工作模式为: A个主用端口 负荷分担和 ( K-A ) 个 备用端口, 1 A K, 所述本端负荷分担策略包括所述 K个端口的第 二工作模式, 所述 K 个端口的第二工作模式为: B 个主用端口负荷 分担和 ( K-B ) 个备用端口, 1 B K。
可选的, 所述第一虚拟网络标识携带在所述 LACP报文中, 或所 述第一虚拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟 网络标签中。
可选的, 所述处理器 13, 还用于当所述链路聚合设备和所述对 端设备均完成将所述 k个端口聚合为一个 LAG之后, 接收所述对端 设备通过所述一个 LAG 发送的数据报文, 所述数据报文中携带第二 虚拟网络标识, 其中, 所述第二虚拟网络标识与所述第一虚拟网络 标识之间存在对应关系。
可选的, 所述对应关系包括: 所述第二虚拟网络标识与所述第 一虚拟网络标识相同, 或所述第二虚拟网络标识与所述第一虚拟网 络标识之间存在预设的映射关系。
特别的, 所述处理器 13, 还用于通过发送 LACP 报文给所述对 端设备, 对所述链路聚合设备期望聚合的端口进行协商, 以确定出 能够进行链路聚合的端口, 并将能够进行链路聚合的端口聚合为一 个 LAG。 其中, 所述链路聚合设备发送 LACP报文给对端设备进行协 商的方式与上述对端设备发送 LACP 报文给所述链路聚合设备进行 协商的方式类似, 此处不再赘述。
本发明实施例中, 所述链路聚合设备和所述对端设备均可以为 服务器或网络交换机。 例如, 若所述链路聚合设备为服务器, 那么 所述对端设备则为网络交换机; 或者, 若所述链路聚合设备为网络 交换机, 那么所述对端设备则为服务器。
本发明实施例提供一种链路聚合设备, 该链路聚合设备接收到 对端设备发送的 LACP报文后, 该链路聚合设备可以根据该 LACP报 文中携带的发送该 L AC P 报文的端口的第一虚拟网络标识和该端口 的 L AG标识, 将第一虚拟网络标识和 L A G标识均相同的端口确定为 能够聚合为一个链路的端口, 并将能够聚合为一个链路的端口聚合 为一个 L A G。 与现有技术在网络虚拟化场景中, 无法完成链路聚合, 从而无法提高链路带宽和链路可靠性相比, 本发明提供的链路聚合 设备, 由于在 L A C P协商时增加了端口所属的虚拟网络的虚拟网络标 识, 因此链路聚合设备可根据该虚拟网络标识, 将属于同一个虚拟 网络的端口聚合到该虚拟网络中相应的 L A G , 从而完成链路聚合, 进而提高链路带宽和链路可靠性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁, 仅以上述各功能模块的划分进行举例说明, 实际应用中, 可以根据 需要而将上述功能分配由不同的功能模块完成, 即将设备的内部结 构划分成不同的功能模块, 以完成以上描述的全部或者部分功能。 上述描述的系统, 设备和单元的具体工作过程, 可以参考前述方法 实施例中的对应过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统, 设备和方法, 可以通过其它的方式实现。 例如, 以上所描述的设备 实施例仅仅是示意性的, 例如, 所述模块或单元的划分, 仅仅为一 种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单 元或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽 略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或直接耦 合或通信连接可以是通过一些接口, 设备或单元的间接耦合或通信 连接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分 开的, 作为单元显示的部件可以是或者也可以不是物理单元, 即可 以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实 际的需要选择其中的部分或者全部单元来实现本实施例方案的 目 的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处 理单元中, 也可以是各个单元单独物理存在, 也可以两个或两个以 上单元集成在一个单元中。 上述集成的单元既可以采用硬件的形式 实现, 也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的 产品销售或使用时, 可以存储在一个计算机可读取存储介质中。 基 于这样的理解, 本发明的技术方案本质上或者说对现有技术做出贡 献的部分或者该技术方案的全部或部分可以以软件产品的形式体现 出来, 该计算机软件产品存储在一个存储介质中, 包括若干指令用 以使得一台计算机设备 (可以是个人计算机, 服务器, 或者网络设 备等)或处理器执行本发明各个实施例所述方法的全部或部分步骤。 而前述的存储介质包括: u 盘、 移动硬盘、 只读存储器、 随机存取 存储器、 磁碟或者光盘等各种可以存储程序代码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围 并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技 术范围内, 可轻易想到变化或替换, 都应涵盖在本发明的保护范围 之内。 因此, 本发明的保护范围应所述以权利要求的保护范围为准。

Claims

权 利 要 求 书
1、 一种链路聚合方法, 应用于网络虚拟化场景中, 其特征在于, 包括:
本端设备通过所述本端设备的 M 个端口分别接收对端设备发送 的链路聚合控制协议 LACP报文,所述 LACP报文中携带发送所述 LACP 报文的端口的第一虚拟网络标识和所述端口的链路聚合组 LAG标识, M > 2;
所述本端设备根据所述第一虚拟网络标识和所述 LAG标识,将所 述 M个端口中, 所述第一虚拟网络标识和所述 LAG标识均相同的 N个 端口确定为一个对端 LAG, 其中, 1 N M;
所述本端设备将所述一个对端 LAG的 N个端口中,属于预设的一 个本端 LAG的 K个端口聚合为一个 LAG, 其中, 1 K N。
2、 根据权利要求 1 所述的方法, 其特征在于, 所述本端设备根 据所述第一虚拟网络标识和所述 LAG标识, 将所述 M个端口中, 所述 第一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 包括:
所述本端设备根据所述第一虚拟网络标识, 将所述 M个端口中, 所述第一虚拟网络标识相同的端口确定为一个虚拟网络组;
所述本端设备根据所述 LAG标识,将所述一个虚拟网络组的端口 中, 所述 LAG标识相同的 N个端口确定为所述一个对端 LAG。
3、 根据权利要求 1或 2所述的方法, 其特征在于, 所述本端设 备将所述一个对端 LAG的 N个端口中, 属于预设的一个本端 LAG的 K 个端口聚合为一个 LAG, 包括:
所述本端设备根据所述第一虚拟网络标识, 从预设的本端 LAG 中, 确定与所述一个对端 LAG的第一虚拟网络标识相同的所述一个本 端 LAG;
所述本端设备确定所述一个对端 LAG和所述一个本端 LAG的端口 交集, 所述端口交集包括所述 K个端口;
所述本端设备将所述 K个端口聚合为所述一个 LAG。
4、 根据权利要求 3所述的方法, 其特征在于, 所述 LAC P报文中 还携带所述对端设备的优先级和所述端口的对端优先级, 所述方法还 包括:
所述本端设备根据所述 K个端口的对端优先级,确定对端负荷分 担策略, 所述对端负荷分担策略包括所述 K个端口的第一工作模式, 所述 K 个端口的第一工作模式为: A 个主用端口负荷分担和 ( K-A ) 个备用端口, 1 A K ;
所述本端设备根据所述 K个端口的本端优先级,确定本端负荷分 担策略, 所述本端负荷分担策略包括所述 K个端口的第二工作模式, 所述 K 个端口的第二工作模式为: B 个主用端口负荷分担和 ( K-B ) 个备用端口, 1 B K ;
所述本端设备根据所述对端设备的优先级和所述本端设备的优 先级, 确定所述一个 LAG的负荷分担策略, 所述一个 L AG的负荷分担 策略为所述对端负荷分担策略, 或为所述本端负荷分担策略。
5、 根据权利要求 1 - 4任一项所述的方法, 其特征在于, 所述第一虚拟网络标识携带在所述 L AC P报文中, 或所述第一虚 拟网络标识携带在承载所述 L AC P 报文的以太网帧的虚拟网络标签 中。
6、 根据权利要求 1 - 5任一项所述的方法, 其特征在于, 当所述 本端设备和所述对端设备均完成将所述 k 个端口聚合为一个 LAG 之 后, 所述方法还包括:
所述本端设备接收所述对端设备通过所述一个 L AG 发送的数据 报文, 所述数据报文中携带第二虚拟网络标识, 其中, 所述第二虚拟 网络标识与所述第一虚拟网络标识之间存在对应关系。
7、 根据权利要求 6所述的方法, 其特征在于,
所述对应关系包括:所述第二虚拟网络标识与所述第一虚拟网络 标识相同, 或所述第二虚拟网络标识与所述第一虚拟网络标识之间存 在预设的映射关系。
8、 一种链路聚合设备, 其特征在于, 包括: 接收单元,用于通过所述链路聚合设备的 M个端口分别接收对端 设备发送的链路聚合控制协议 LACP报文, 所述 LACP报文中携带发送 所述 LACP 报文的端口的第一虚拟网络标识和所述端口的链路聚合组 LAG标识, M > 2;
处理单元,用于根据所述接收单元接收的所述第一虚拟网络标识 和所述 LAG标识, 将所述 M个端口中, 所述第一虚拟网络标识和所述 LAG标识均相同的 N个端口确定为一个对端 LAG, 并将所述一个对端 LAG的 N个端口中, 属于预设的一个本端 LAG的 K个端口聚合为一个 LAG, 其中, 1 N M, 1 K N。
9、 根据权利要求 8所述的链路聚合设备, 其特征在于, 所述处理单元,具体用于根据所述接收单元接收的所述第一虚拟 网络标识, 将所述 M个端口中, 所述第一虚拟网络标识相同的端口确 定为一个虚拟网络组; 并根据所述接收单元接收的所述 LAG标识, 将 所述一个虚拟网络组的端口中, 所述 LAG标识相同的 N个端口确定为 所述一个对端 LAG。
10、 根据权利要求 8或 9所述的链路聚合设备, 其特征在于, 所述处理单元,还用于根据所述接收单元接收的所述第一虚拟网 络标识, 从预设的本端 LAG 中, 确定与所述一个对端 LAG的第一虚拟 网络标识相同的所述一个本端 LAG; 并确定所述一个对端 LAG和所述 一个本端 LAG的端口交集, 所述端口交集包括所述 K个端口; 以及将 所述 K个端口聚合为所述一个 LAG。
11、 根据权利要求 10所述的链路聚合设备, 其特征在于, 所述 接收单元接收的所述 LACP 报文中还携带所述对端设备的优先级和所 述端口的对端优先级;
所述处理单元, 还用于根据所述 K个端口的对端优先级, 确定对 端负荷分担策略, 并根据所述 K个端口的本端优先级, 确定本端负荷 分担策略, 以及根据所述对端设备的优先级和所述链路聚合设备的优 先级, 确定所述一个 LAG的负荷分担策略, 所述一个 LAG的负荷分担 策略为所述对端负荷分担策略, 或为所述本端负荷分担策略, 所述对 端负荷分担策略包括所述 K个端口的第一工作模式, 所述 K个端口的 第一工作模式为: A个主用端口负荷分担和 ( K-A ) 个备用端口, 1 A < K, 所述本端负荷分担策略包括所述 K个端口的第二工作模式, 所 述 K 个端口的第二工作模式为: B 个主用端口负荷分担和 ( K-B ) 个 备用端口, 1 B K。
12、 根据权利要求 8-11任一项所述的链路聚合设备, 其特征在 于,
所述第一虚拟网络标识携带在所述 LACP报文中, 或所述第一虚 拟网络标识携带在承载所述 LACP 报文的以太网帧的虚拟网络标签 中。
13、 根据权利要求 8-12任一项所述的链路聚合设备, 其特征在 于,
所述接收单元,还用于当所述链路聚合设备和所述对端设备均完 成将所述 k个端口聚合为一个 LAG之后, 接收所述对端设备通过所述 一个 LAG发送的数据报文, 所述数据报文中携带第二虚拟网络标识, 其中, 所述第二虚拟网络标识与所述第一虚拟网络标识之间存在对应 关系。
14、 根据权利要求 13所述的链路聚合设备, 其特征在于, 所述对应关系包括:所述第二虚拟网络标识与所述第一虚拟网络 标识相同, 或所述第二虚拟网络标识与所述第一虚拟网络标识之间存 在预设的映射关系。
PCT/CN2014/081297 2014-06-30 2014-06-30 一种链路聚合方法及设备 WO2016000186A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2014/081297 WO2016000186A1 (zh) 2014-06-30 2014-06-30 一种链路聚合方法及设备
CN201480035969.0A CN105379221B (zh) 2014-06-30 2014-06-30 一种链路聚合方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/081297 WO2016000186A1 (zh) 2014-06-30 2014-06-30 一种链路聚合方法及设备

Publications (1)

Publication Number Publication Date
WO2016000186A1 true WO2016000186A1 (zh) 2016-01-07

Family

ID=55018271

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/081297 WO2016000186A1 (zh) 2014-06-30 2014-06-30 一种链路聚合方法及设备

Country Status (2)

Country Link
CN (1) CN105379221B (zh)
WO (1) WO2016000186A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865626A (zh) * 2019-04-24 2020-10-30 厦门网宿有限公司 一种基于聚合端口的数据收发方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411599A (zh) * 2016-10-31 2017-02-15 杭州华三通信技术有限公司 一种聚合链路恢复方法及装置
CN112751755B (zh) * 2019-10-30 2023-09-29 中兴通讯股份有限公司 一种设备虚拟化方法、装置、系统、设备及存储介质
CN110971519A (zh) * 2019-12-12 2020-04-07 迈普通信技术股份有限公司 一种端口互联的管理方法及装置
CN112187637A (zh) * 2020-09-17 2021-01-05 苏州浪潮智能科技有限公司 以太链路聚合组的配置方法、装置及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996925A (zh) * 2006-12-25 2007-07-11 华为技术有限公司 链路聚合方法、装置、mac帧收发方法和系统
US20120201253A1 (en) * 2010-10-20 2012-08-09 International Business Machines Corporation Multi-Adapter Link Aggregation for Adapters with Hardware Based Virtual Bridges
CN103336708A (zh) * 2013-05-31 2013-10-02 华为技术有限公司 聚合网卡资源的方法和相关设备及计算机系统
CN103780500A (zh) * 2012-10-19 2014-05-07 中兴通讯股份有限公司 聚合组中流量双向同路的方法、装置以及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996925A (zh) * 2006-12-25 2007-07-11 华为技术有限公司 链路聚合方法、装置、mac帧收发方法和系统
US20120201253A1 (en) * 2010-10-20 2012-08-09 International Business Machines Corporation Multi-Adapter Link Aggregation for Adapters with Hardware Based Virtual Bridges
CN103780500A (zh) * 2012-10-19 2014-05-07 中兴通讯股份有限公司 聚合组中流量双向同路的方法、装置以及系统
CN103336708A (zh) * 2013-05-31 2013-10-02 华为技术有限公司 聚合网卡资源的方法和相关设备及计算机系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865626A (zh) * 2019-04-24 2020-10-30 厦门网宿有限公司 一种基于聚合端口的数据收发方法和装置
CN111865626B (zh) * 2019-04-24 2023-05-23 厦门网宿有限公司 一种基于聚合端口的数据收发方法和装置

Also Published As

Publication number Publication date
CN105379221B (zh) 2018-12-28
CN105379221A (zh) 2016-03-02

Similar Documents

Publication Publication Date Title
US9942148B1 (en) Tunneled packet aggregation for virtual networks
US8964600B2 (en) Methods of forming virtual network overlays
US20190222481A1 (en) Data center network topology discovery
US7996569B2 (en) Method and system for zero copy in a virtualized network environment
US8677023B2 (en) High availability and I/O aggregation for server environments
CN103905426B (zh) 用于使PCIe构造上的主机到主机消息收发安全和分离的方法和装置
US10057175B2 (en) Method and device for transmitting network packet
EP3629162B1 (en) Technologies for control plane separation at a network interface controller
WO2022225639A1 (en) Service mesh offload to network devices
US20120042095A1 (en) System and Method to Create Virtual Links for End-to-End Virtualization
CN106557444B (zh) 实现sr-iov网卡的方法和装置、实现动态迁移的方法和装置
EP3860057A1 (en) Data transmission method and device
WO2016000186A1 (zh) 一种链路聚合方法及设备
WO2015058699A1 (en) Data forwarding
US11048535B2 (en) Method and apparatus for transmitting data packet based on virtual machine
WO2014201623A1 (zh) 用于数据传输的方法、装置和系统以及物理网卡
WO2014023110A1 (zh) 网络接口适配器注册方法及驱动设备、服务器
WO2014134919A1 (zh) 同一租户内服务器间的通信控制方法及网络设备
CN117157963A (zh) 卸载到网络设备的可靠传输
CN117651936A (zh) 网络层7卸载到服务网格的基础设施处理单元
EP3038296A1 (en) Pool element status information synchronization method, pool register and pool element
CN111371694A (zh) 一种分流方法、装置和系统、处理设备和存储介质
US9491098B1 (en) Transparent network multipath utilization through encapsulation
WO2015081534A1 (zh) 一种数据报文的传输系统、传输方法和设备
CN112422444B (zh) 一种报文跨卡转发的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14896837

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14896837

Country of ref document: EP

Kind code of ref document: A1