IP Library Granted Patent US 12,413,550
Granted Patent B2
US 12,413,550 · App. 18/105,880 · Granted Sep 9, 2025

Media access control (MAC) address assignment for virtual network interface cards (VNICS)

Inventors: Kejia Cui (Beijing, CN); Lele Zhang (Beijing, CN); Qi Wu (Beijing, CN); Donghai Han (Beijing, CN); Honggang Liu (Beijing, CN)
Assignee: VMware LLC
H04L61/50H04L45/66H04L2101/622
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 12,413,550
App. No.
18/105,880
Granted
Sep 9, 2025
Kind
B2
Abstract

Example methods and systems for media access control (MAC) address assignment for virtual network interface cards (VNICs) are described. One example may involve a first computer system may determining a first MAC address portion that is uniquely associated with the first computer system. A first VNIC may be assigned with a first MAC address that includes (a) the first MAC address portion and (b) a third MAC address portion that is uniquely associated with the first VNIC on the first computer system. A second VNIC may be assigned with a second MAC address that includes (a) the first MAC address portion and (b) a fourth MAC address portion that is uniquely associated with the second VNIC on the first computer system. The first computer system may perform traffic handling by processing packets specifying the first MAC address or the second MAC address.

Claims (56)

1. A method for a first computer system to perform media access control (MAC) address assignment, wherein the method comprises:

determining a first MAC address portion that is uniquely associated with the first computer system within a network environment that includes the first computer system, and multiple second computer systems that are uniquely associated with respective multiple second MAC address portions;

assigning a first virtual network interface card (VNIC) with a first MAC address that includes (a) the first MAC address portion, and (b) a third MAC address portion that is uniquely associated with the first VNIC on the first computer system; and

assigning a second VNIC with a second MAC address that includes (a) the first MAC address portion, and (b) a fourth MAC address portion that is uniquely associated with the second VNIC on the first computer system; and

performing traffic handling by forwarding first packets specifying the first MAC address assigned to the first VNIC, or second packets specifying the second MAC address assigned to the second VNIC.

2. The method of claim 1 , wherein determining the first MAC address portion comprises:

generating and sending a proposed value for the first MAC address portion to management entity to cause the management entity to perform a conflict check based on the proposed value and the multiple second MAC address portions.

3. The method of claim 2 , wherein determining the first MAC address portion comprises:

receiving, from the management entity, control information specifying the first MAC address portion in the form of one of the following: (a) the proposed value in case of no conflict with the multiple second MAC address portions, or (b) an alternative prefix value assigned by the management entity in case of a conflict with one of the multiple second MAC address portions.

4. The method of claim 2 , wherein determining the first MAC address portion comprises:

generating the proposed value based on a MAC address associated with a physical network interface card (PNIC) of the first computer system as part of an initialization process prior to joining a data center.

5. The method of claim 1 , wherein assigning the first VNIC with the first MAC address and the second VNIC with the second MAC address comprises:

generating the first MAC address to include (a) an organizationally unique identifier (OUI), (b) a VNIC-related identifier, (c) the first MAC address portion and (d) the third MAC address portion; and

generating the second MAC address to include (a) the OUI, (b) the VNIC-related identifier, (c) the first MAC address portion and (d) the fourth MAC address portion.

6. The method of claim 1 , wherein assigning the first VNIC with the first MAC address comprises:

generating the third MAC address portion for the first VNIC in the form of a virtual machine kernel network interface card (vmkNIC) that is configured to forward packets to and from a first networking layer component on the first computer system.

7. The method of claim 1 , wherein performing traffic handling comprises:

forwarding the first packets to, or from, a first networking layer component via the first VNIC, wherein the first packets are associated with one of the following traffic types: virtual machine migration traffic, data replication, provisioning traffic, Internet Protocol (IP) storage and discovery traffic, fault tolerance traffic, data replication traffic, virtual storage area network (VSAN) traffic, network file copy (NFC) traffic, memory access traffic and management traffic.

8. The computer system of claim 1 , wherein the instructions for determining the first MAC address portion cause the processor to:

generate and send a proposed value to management entity to cause the management entity to perform a conflict check based on the proposed value and the multiple second MAC address portions.

9. The computer system of claim 8 , wherein the instructions for determining the first MAC address portion cause the processor to:

receive, from the management entity, control information specifying the first MAC address portion in the form of one of the following: (a) the proposed value in case of no conflict with the multiple second MAC address portions, or (b) an alternative prefix value assigned by the management entity in case of a conflict with at least one of the multiple second MAC address portions.

10. The computer system of claim 8 , wherein the instructions for determining the first MAC address portion cause the processor to:

generate the proposed value based on a MAC address associated with a physical network interface card (PNIC) of the first computer system as part of an initialization process prior to joining a data center.

11. The computer system of claim 1 , wherein the instructions for assigning the first VNIC with the first MAC address and the second VNIC with the second MAC address cause the processor to:

generate the first MAC address to include (a) an organizationally unique identifier (OUI), (b) a VNIC-related identifier, (c) the first MAC address portion and (d) the third MAC address portion; and

generate the second MAC address to include (a) the OUI, (b) the VNIC-related identifier, (c) the first MAC address portion and (d) the fourth MAC address portion.

12. The computer system of claim 1 , wherein the instructions for assigning the first VNIC with the first MAC address cause the processor to:

generate the third MAC address portion for the first VNIC in the form of a virtual machine kernel network interface card (vmkNIC) that is configured to forward packets to and from a first networking layer component on the first computer system.

13. The computer system of claim 1 , wherein the instructions for performing traffic handling cause the processor to:

forward the first packets to, or from, a first networking layer component via the first VNIC, wherein the first packets are associated with one of the following traffic types: virtual machine migration traffic, data replication, provisioning traffic, Internet Protocol (IP) storage and discovery traffic, fault tolerance traffic, data replication traffic, virtual storage area network (VSAN) traffic, network file copy (NFC) traffic, memory access traffic and management traffic.

14. A non-transitory computer-readable storage medium that includes a set of instructions which, in response to execution by a processor of a first computer system, cause the processor to perform media access control (MAC) address assignment, wherein the method comprises:

determining a first MAC address portion that is uniquely associated with the first computer system within a network environment that includes the first computer system and multiple second computer systems that are uniquely associated with respective multiple second MAC address portions;

assigning a first virtual network interface card (VNIC) with a first MAC address that includes (a) the first MAC address portion and (b) a third MAC address portion that is uniquely associated with the first VNIC on the first computer system; and

assigning a second VNIC with a second MAC address that includes (a) the first MAC address portion and (b) a fourth MAC address portion that is uniquely associated with the second VNIC on the first computer system; and

performing traffic handling by forwarding first packets specifying the first MAC address assigned to the first VNIC, or second packets specifying the second MAC address assigned to the second VNIC.

15. The non-transitory computer-readable storage medium of claim 14 , wherein determining the first MAC address portion comprises:

generating and sending a proposed value to management entity to cause the management entity to perform a conflict check based on the proposed value and the multiple second MAC address portions.

16. The non-transitory computer-readable storage medium of claim 15 , wherein determining the first MAC address portion comprises:

receiving, from the management entity, control information specifying the first MAC address portion in the form of one of the following: (a) the proposed value in case of no conflict with the multiple second MAC address portions, or (b) an alternative prefix value assigned by the management entity in case of a conflict with at least one of the multiple second MAC address portions.

17. The non-transitory computer-readable storage medium of claim 15 , wherein determining the first MAC address portion comprises:

generating the proposed value based on a MAC address associated with a physical network interface card (PNIC) of the first computer system as part of an initialization process prior to joining a data center.

18. The non-transitory computer-readable storage medium of claim 14 , wherein assigning the first VNIC with the first MAC address and the second VNIC with the second MAC address comprises:

generating the first MAC address to include (a) an organizationally unique identifier (OUI), (b) a VNIC-related identifier, (c) the first MAC address portion and (d) the third MAC address portion; and

generating the second MAC address to include (a) the OUI, (b) the VNIC-related identifier, (c) the first MAC address portion and (d) the fourth MAC address portion.

19. The non-transitory computer-readable storage medium of claim 14 , wherein assigning the first VNIC with the first MAC address comprises:

generating the third MAC address portion for the first VNIC in the form of a virtual machine kernel network interface card (vmkNIC) that is configured to forward packets to and from a first networking layer component on the first computer system.

20. The non-transitory computer-readable storage medium of claim 14 , wherein performing traffic handling comprises:

forwarding the first packets to, or from, a first networking layer component via the first VNIC, wherein the first packets are associated with one of the following traffic types: virtual machine migration traffic, data replication, provisioning traffic, Internet Protocol (IP) storage and discovery traffic, fault tolerance traffic, data replication traffic, virtual storage area network (VSAN) traffic, network file copy (NFC) traffic, memory access traffic and management traffic.

21. A computer system, being a first computer system, comprising:

a processor; and

a non-transitory computer-readable medium having stored thereon instructions that, when executed by the processor, cause the processor to perform the following:

determine a first Media Access Control (MAC) address prefix that is uniquely associated with the first computer system within a network environment that includes the first computer system and multiple second computer systems that are uniquely associated with respective multiple second MAC address portions;

assign a first virtual network interface card (VNIC) with a first MAC address that includes (a) the first MAC address portion and (b) a third MAC address portion that is uniquely associated with the first VNIC on the first computer system; and

assign a second VNIC with a second MAC address that includes (a) the first MAC address portion and (b) a fourth MAC address portion that is uniquely associated with the second VNIC on the first computer system; and

perform traffic handling by forwarding first packets specifying the first MAC address assigned to the first VNIC, or second packets specifying the second MAC address assigned to the second VNIC.

Assignments (2)
CHANGE OF NAME Recorded May 8, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067355/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: CUI, KEJIA; ZHANG, LELE; WU, QI; HAN, DONGHAI; LIU, HONGGANG
To: VMWARE, INC.
Reel/Frame 062593/0606 →
Priority Claims (1)
WO PCT/CN2022/139870 · Dec 19, 2022 · international
Continuity (1)
Related Publication 20240205184A1 · Jun 20, 2024
References Cited (3)
US 20040146052A1 · Chang · 2004 [cited by examiner]
US 20120014387A1 · Dunbar · 2012 [cited by examiner]
US 20150186174A1 · Borkmann · 2015 [cited by examiner]