IP Library Granted Patent US 10,248,447
Granted Patent B2
US 10,248,447 · App. 14/952,586 · Granted Apr 2, 2019

Providing link aggregation and high availability through network virtualization layer

Inventor: Flavio Leitner (Maringa, BR)
Assignee: Red Hat, Inc.
G06F9/45558G06F2009/45583G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,248,447
App. No.
14/952,586
Granted
Apr 2, 2019
Kind
B2
Abstract

A method relates to receiving, by a processing device of a host computer system executing a hypervisor, a network packet from a virtual port associated with a virtual machine managed by the hypervisor, generating a metadata item associated with the network packet, the metadata item comprising an identifier of the virtual port, recording the metadata item in a data structure identifying an address space of the hypervisor, determining, in view of the metadata item, a transmission mode to transmit the network packet, wherein the transmission mode is represented by at least one of a link aggregation mode or a high availability mode, identifying a network interface controller (NIC) of the host machine for processing the network packet according to the transmission mode, transmitting the network packet to the NIC.

Claims (53)

1. A method comprising:

receiving, by a processing device of a host computer system executing a hypervisor, a network packet from a virtual port associated with a virtual machine managed by the hypervisor;

generating a metadata item associated with the network packet, the metadata item comprising an identifier of the virtual port and an identifier of a transmission mode for the network packet;

recording the metadata item in a data structure identifying an address space of the hypervisor;

determining, by the processing device executing the hypervisor, in view of the identifier of the transmission mode of the metadata item, whether the transmission mode is one of a link aggregation (LA) mode, a high availability (HA) mode, or a combined LA and HA mode;

identifying a network interface controller (NIC) of the host machine for processing the network packet according to the determined transmission mode; and

transmitting the network packet to the NIC according to the determined transmission mode.

2. The method of claim 1 , wherein the network packet comprises control information and a payload, and wherein the control information comprises a source network address and a destination network address.

3. The method of claim 1 , wherein the hypervisor employs at least one of a virtual bridge to couple the virtual port to a physical port coupled associated with the NIC or a transmission mode decision module to determine the transmission mode in view of the metadata.

4. The method of claim 3 , further comprising:

updating the metadata item during routing the network packet from the virtual port to the physical port.

5. The method of claim 1 , wherein the metadata further comprises at least one of an identifier of the host machine, an identifier of a physical port coupled to the NIC, an identifier of a transmission capability associated with the physical port, an identifier of the transmission mode, a priority value associated with the virtual port, or a timestamp indicating a time of receiving the network packet from the virtual port.

6. The method of claim 1 , further comprising:

determining that the transmission mode comprises the LA mode;

identifying a second NIC of the host machine to receive a second network packet to be transmitted in the LA mode, wherein the NIC and the second NIC are bonded to a logical network connection associated with a physical network device; and transmitting the second network packet to the second NIC.

7. The method of claim 1 , further comprising:

determining that the transmission mode comprises the HA mode;

identifying a second NIC of the host machine to receive a second network packet to be transmitted in the HA mode, wherein the NIC and the second NIC are bonded to a logical network connection, and wherein the NIC is connected to a first physical network device associated with the logical network connection and the second NIC is connected to a second physical network device associated with the logical network connection; and transmitting the second network packet to the second NIC.

8. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to:

receive, by the processing device of a host computer system executing a hypervisor, a network packet from a virtual port associated with a virtual machine managed by the hypervisor;

generate a metadata item associated with the network packet, the metadata item comprising an identifier of the virtual port and an identifier of a transmission mode for the network packet;

record the metadata item in a data structure identifying an address space of the hypervisor;

determine, by the processing device executing the hypervisor, in view of the identifier of the transmission mode of the metadata item, whether the transmission mode is one of a link aggregation (LA) mode, a high availability (HA) mode, or a combined LA and HA mode;

identify a network interface controller (NIC) of the host machine for processing the network packet according to the determined transmission mode; and

transmit the network packet to the NIC according to the determined transmission mode.

9. The non-transitory machine-readable storage medium of claim 8 , wherein the network packet comprises control information and a payload, and wherein the control information comprises a source network address and a destination network address.

10. The non-transitory machine-readable storage medium of claim 8 , wherein the hypervisor employs at least one of a virtual bridge to couple the virtual port associated with a physical port coupled to the NIC or a transmission mode decision module to determine the transmission mode in view of the metadata.

11. The non-transitory machine-readable storage medium of claim 10 , wherein the processing device is further to update the metadata item during routing the network packet from the virtual port to the physical port.

12. The non-transitory machine-readable storage medium of claim 8 , wherein the metadata further comprises at least one of an identifier of the host machine, an identifier of a physical port coupled to the NIC, an identifier of a transmission capability associated with the physical port, an identifier of the transmission mode, a priority value associated with the virtual port, or a timestamp indicating a time of receiving the network packet from the virtual port.

13. The non-transitory machine-readable storage medium of claim 8 , wherein the processing device is further to:

determine that the transmission mode comprises the LA mode;

identify a second NIC of the host machine to receive a second network packet to be transmitted in the LA mode, wherein the NIC and the second NIC are bonded to a logical network connection associated with a physical network device; and transmit the second network packet to the second NIC.

14. The non-transitory machine-readable storage medium of claim 8 , wherein the processing device is further to:

determine that the transmission mode comprises the HA mode;

identify a second NIC of the host machine to receive a second network packet to be transmitted in the HA mode, wherein the NIC and the second NIC are bonded to a logical network connection, and wherein the NIC is connected to a first physical network device associated with the logical network connection and the second NIC is connected to a second physical network device associated with the logical network connection; and transmit the second network packet to the second NIC.

15. A system comprising:

a memory; and

a processing device, operably coupled to the memory, to:

receive, by a hypervisor running on the processing device, a network packet from a virtual port associated with a virtual machine managed by the hypervisor;

generate a metadata item associated with the network packet, the metadata item comprising an identifier of the virtual port and an identifier of a transmission mode for the network packet;

record the metadata item in a data structure identifying an address space of the hypervisor;

determine, by the hypervisor, in view of the identifier of the transmission mode of the metadata item, whether the transmission mode is one of a link aggregation (LA) mode, a high availability (HA) mode, or a combined LA and HA mode;

identify a network interface controller (NIC) of the host machine for processing the network packet according to the determined transmission mode; and

transmit the network packet to the NIC according to the determined transmission mode.

16. The system of claim 15 , wherein the network packet comprises control information and a payload, and wherein the control information comprises a source network address and a destination network address.

17. The system of claim 15 , wherein the hypervisor employs at least one of a virtual bridge to couple the virtual port associated with a physical port coupled to the NIC or a transmission mode decision module to determine the transmission mode in view of the metadata.

18. The system of claim 15 , wherein the metadata further comprises at least one of an identifier of the host machine, an identifier of a physical port coupled to the NIC, an identifier of a transmission capability associated with the physical port, an identifier of the transmission mode, a priority value associated with the virtual port, or a timestamp indicating a time of receiving the network packet from the virtual port.

19. The system of claim 15 , wherein the processing device is further to:

determine that the transmission mode comprises the LA mode;

identify a second NIC of the host machine to receive a second network packet to be transmitted in the LA mode, wherein the NIC and the second NIC are bonded to a logical network connection associated with a physical network device; and transmit the second network packet to the second NIC.

20. The system of claim 15 , wherein the processing device is further to:

determine that the transmission mode comprises the HA mode;

identify a second NIC of the host machine to receive a second network packet to be transmitted in the HA mode, wherein the NIC and the second NIC are bonded to a logical network connection, and wherein the NIC is connected to a first physical network device associated with the logical network connection and the second NIC is connected to a second physical network device associated with the logical network connection; and transmit the second network packet to the second NIC.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2015
From: LEITNER, FLAVIO
To: RED HAT, INC.
Reel/Frame 037189/0219 →
Continuity (1)
Related Publication 20170149653A1 · May 25, 2017
Cited By (2)
US 12,375,372 US 12,566,714