IP Library Granted Patent US 9,160,612
Granted Patent B2
US 9,160,612 · App. 13/470,560 · Granted Oct 13, 2015

Management of distributed virtual switch and distributed virtual ports

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 9,160,612
App. No.
13/470,560
Granted
Oct 13, 2015
Kind
B2
Abstract

A method creates a distributed virtual switch (DVswitch) and distributed virtual ports (DVports) for the DVswitch. The DVswitch binds virtual switches in a collection of hosts together in a software abstraction. Also, the DVports are available for connection by virtual network interface cards (VNICs) of virtual machines in the collection of hosts. A request is received for a connection of a virtual network interface card (VNIC) of a virtual machine for a host in the collection of hosts to a DVport. If the requested DVport is available, the method provides connection information for the requested DVport to the host to allow the host to connect the requested DVport to the VNIC. The DVport stores a runtime state for a virtual port associated with a virtual switch for the host and the virtual switch forwards network frames between the VNIC and a physical network interface card (NIC).

Claims (56)

1. A method comprising:

creating a distributed virtual switch (DVswitch) and distributed virtual ports (DVports) for the DVswitch, wherein the DVswitch binds virtual switches in a collection of hosts together in a software abstraction, and wherein the DVports are available for connection by virtual network interface cards (VNICs) of virtual machines in the collection of hosts;

receiving a request for a connection of a virtual network interface card (VNIC) of a virtual machine for a host in the collection of hosts to a DVport;

checking if the requested DVport is available for the connection to the VNIC; and

if the requested DVport is available, providing connection information for the requested DVport to the host to allow the host to connect the requested DVport to the VNIC, wherein the DVport stores a runtime state for a virtual port associated with a virtual switch for the host, the virtual switch forwarding network frames between the VNIC and a physical network interface card (NIC).

2. The method of claim 1 , wherein the DVport is initialized to a first state and the DVport is changed to a second state if the connection to the VNIC is allowed.

3. The method of claim 2 , wherein:

the first state is a state that indicates the DVport is not connected to any VNICs of virtual machines in the collection of hosts; and

the second state indicates the VNIC is connected to the DVport.

4. The method of claim 1 , further comprising:

generating a connection identifier (ID) for the connection information; and

storing the connection ID with the requested DVport, the storing of the connection ID indicating that the requested DVport is connected to the VNIC.

5. The method of claim 1 , further comprising:

determining when the VNIC should be disconnected from the DVport; and

sending connection information for the DVport to the host to allow the host to disconnect the DVport from the VNIC.

6. The method of claim 5 , further comprising:

receiving the runtime state from the host; and

storing the runtime state in association with the DVport and the DVswitch.

7. The method of claim 1 , wherein when the DVport is migrated from the host to another host, the method comprising:

initiating a transfer of the runtime state of the DVport from the host to another host;

clearing the runtime state of the DVport on the host; and

causing the runtime state of the DVport to be applied to a virtual port of the another host.

8. The method of claim 1 , wherein when the host is powered down, the runtime state is stored locally at the host, the method comprising:

upon determining the host is powered up, sending a stored state of the DVswitch and the DVport to the host to synchronize the runtime state stored locally on the host before being powered down.

9. The method of claim 1 , if the requested DVport is not available due to the DVport being connected to another VNIC, denying the request.

10. The method of claim 1 , wherein upon linking up of the virtual port with the VNIC to which the DVport is connected, the VNIC and the virtual switch can exchange the network frames.

11. A non-transitory computer-readable storage medium containing instructions for controlling a computer system to be configured for:

creating a distributed virtual switch (DVswitch) and distributed virtual ports (DVports) for the DVswitch, wherein the DVswitch binds virtual switches in a collection of hosts together in a software abstraction, and wherein the DVports are available for connection by virtual network interface cards (VNICs) of virtual machines in the collection of hosts;

receiving a request for a connection of a virtual network interface card (VNIC) of a virtual machine for a host in the collection of hosts to a DVport;

checking if the requested DVport is available for the connection to the VNIC; and

if the requested DVport is available, providing connection information for the requested DVport to the host to allow the host to connect the requested DVport to the VNIC, wherein the DVport stores a runtime state for a virtual port associated with a virtual switch for the host, the virtual switch forwarding network frames between the VNIC and a physical network interface card (NIC).

12. The non-transitory computer-readable storage medium of claim 11 , wherein the DVport is initialized to a first state and the DVport is changed to a second state if the connection to the VNIC is allowed.

13. The non-transitory computer-readable storage medium of claim 12 , wherein:

the first state is a state that indicates the DVport is not connected to any VNICs of virtual machines in the collection of hosts; and

the second state indicates the VNIC is connected to the DVport.

14. The non-transitory computer-readable storage medium of claim 11 , further operable for:

generating a connection identifier (ID) for the connection information; and

storing the connection ID with the requested DVport, the storing of the connection ID indicating that the requested DVport is connected to the VNIC.

15. The non-transitory computer-readable storage medium of claim 11 , further operable for:

determining when the VNIC should be disconnected from the DVport; and

sending connection information for the DVport to the host to allow the host to disconnect the DVport from the VNIC.

16. The non-transitory computer-readable storage medium of claim 11 , wherein when the DVport is migrated from the host to another host, further operable for:

initiating a transfer of the runtime state of the DVport from the host to another host;

clearing the runtime state of the DVport on the host; and

causing the runtime state of the DVport to be applied a virtual port of the another host.

17. The non-transitory computer-readable storage medium of claim 11 , wherein when the host is powered down, the runtime state is stored locally at the host, further operable for:

upon determining the host is powered up, sending a stored state of the DVswitch and the DVport to the host to synchronize the runtime state stored locally on the host before being powered down.

18. The non-transitory computer-readable storage medium of claim 11 , if the requested DVport is not available due to the DVport being connected to another VNIC, denying the request.

19. The non-transitory computer-readable storage medium of claim 11 , wherein upon linking up of the virtual port with the VNIC to which the DVport is connected, the VNIC and the virtual switch can exchange the network frames.

20. An apparatus comprising:

one or more computer processors; and

a computer-readable storage medium comprising instructions for controlling the one or more computer processors to be operable for:

creating a distributed virtual switch (DVswitch) and distributed virtual ports (DVports) for the DVswitch, wherein the DVswitch binds virtual switches in a collection of hosts together in a software abstraction, and wherein the DVports are available for connection by virtual network interface cards (VNICs) of virtual machines in the collection of hosts;

receiving a request for a connection of a virtual network interface card (VNIC) of a virtual machine for a host in the collection of hosts to a DVport;

checking if the requested DVport is available for the connection to the VNIC; and

if the requested DVport is available, providing connection information for the requested DVport to the host to allow the host to connect the requested DVport to the VNIC, wherein the DVport stores a runtime state for a virtual port associated with a virtual switch for the host, the virtual switch forwarding network frames between the VNIC and a physical network interface card (NIC).

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →