IP Library Granted Patent US 10,567,308
Granted Patent B1
US 10,567,308 · App. 16/259,292 · Granted Feb 18, 2020

Virtual machine virtual fabric login system

Inventors: Ramesh Kumar Subbiah (Tamil Nadu, IN); Vibin Varghese (Tamil Nadu, IN)
Assignee: Dell Products L.P.
H04L49/357G06F9/45558H04L49/253H04L49/354H04L67/1097H04B10/00H04B10/12H04B10/14H04B10/142H04B10/152H04B10/225H04B10/25H04B10/2503H04B10/40H04B10/43H04B10/50H04B10/60
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,567,308
App. No.
16/259,292
Granted
Feb 18, 2020
Kind
B1
Abstract

A virtual fabric login system includes a FC networking device that provides access to a plurality of virtual fabrics, a server device that provides a plurality of virtual machines, and a FCF device that is coupled to a physical server device port included on the server device and coupled to the FC networking device. The FCF device receives, via the physical server device port, first traffic from a first virtual machine and includes a first virtual machine identifier that identifies the first virtual machine. The FCF device determines, using a virtual-machine-to-virtual-fabric mapping, that the first virtual machine identifier is associated with a first virtual fabric identifier that identifies a first virtual fabric included in the plurality of virtual fabrics and tags the first traffic with the first virtual fabric identifier. The FCF device then transmits the tagged first traffic to the FC networking device.

Claims (89)

1. A virtual fabric login system, comprising:

a Fibre Channel (FC) networking device that is configured to provide access to a plurality of virtual fabrics:

a server device that includes a hypervisor that is configured to provide a plurality of virtual machines; and

a Fibre Channel Forwarder (FCF) device that is coupled to a physical server device port included on the server device via a first FCF device port, and coupled to an FC networking device port included on the FC networking device through a second FCF device port, wherein the FCF device is configured to:

receive, via the physical server device port and the first FCF device port, first traffic from a first virtual machine that is included in the plurality of virtual machines, wherein the first traffic includes a first virtual machine identifier that identifies the first virtual machine;

determine, using the first virtual machine identifier and a virtual-machine-to-virtual-fabric mapping, that the first virtual machine identifier is associated with a first virtual fabric identifier that identifies a first virtual fabric included in the plurality of virtual fabrics;

tag the first traffic with the first virtual fabric identifier to provide tagged first traffic; and

transmit, via the FC networking device port and the second FCF device port, the tagged first traffic to the FC networking device.

2. The system of claim 1 , wherein the FC networking device is configured to:

determine, using first virtual fabric identifier included in the tagged first traffic, that the first virtual fabric identifier identifies the first virtual fabric; and

provide the first traffic to the first virtual fabric.

3. The system of claim 1 , wherein the providing the tagged first traffic to the FC networking device via the FC networking device port and the second FCF device port is performed using a default virtual fabric that is included in the plurality of virtual fabrics and to which the FCF device is logged in.

4. They system of claim 1 , wherein the FCF device is configured to:

receive, from the FC networking device via the second FCF device port, second traffic originating from the first virtual fabric;

determine that the second traffic includes the first virtual machine identifier; and

provide the second traffic to the first virtual machine.

5. The system of claim 1 , wherein the FCF device is configured to:

receive a first fabric discovery (FDISC) message from the server device;

determine that the first FDISC message is a FDISC from the first virtual machine and, in response, transmit a second FDISC message with a virtual fabric bit unset to a default virtual fabric included in the plurality of virtual fabrics;

receive a first FDISC accept message (ACC) from the first virtual fabric through the default virtual fabric, wherein the FDISC accept message is tagged with the first virtual fabric identifier; and

generate the virtual-machine-to-virtual-fabric mapping that includes the first virtual machine identifier that identifies the first virtual machine and that is associated with the first virtual fabric identifier.

6. The system of claim 5 , wherein the FCF device is configured to:

log in the physical server device port included on the server device to the default virtual fabric prior to the receiving the first FDISC by:

receiving a first FLOGI from the server device;

determining that the first FLOGI is a FLOGI from the physical server device port and, in response, transmitting a third FDISC message with the virtual fabric bit set to the default virtual fabric;

receiving a second FDISC ACC from the default virtual fabric; and

providing a first FLOGI ACC to the server device that indicates that the physical server device port is logged in to the default virtual fabric.

7. The system of claim 6 , wherein the FCF device is configured to:

log in to the default virtual fabric prior to logging in the physical server device port included on the server device to the default virtual fabric by:

receiving a plurality of virtual fabric identifiers that each identify a virtual fabric included in the plurality of virtual fabrics;

transmitting a second fabric login (FLOGI) through the default virtual fabric to the FC networking device; and

receiving a second FLOGI ACC indicating that the FCF device is logged in to the default virtual fabric.

8. The system of claim 7 , wherein the receiving the plurality of virtual fabric identifiers that each identify a virtual fabric included in the plurality of virtual fabrics is performed using an Exchange Virtual Fabrics Protocol (EVFP).

9. The system of claim 1 , wherein the FCF device is configured to:

receive, via the physical server device port and the first FCF device port, second traffic from a second virtual machine that is included in the plurality of virtual machines, wherein the second traffic includes a second virtual machine identifier that identifies the second virtual machine;

determine, using the second virtual machine identifier and the virtual-machine-to-virtual-fabric mapping, that the second virtual machine identifier is associated with a second virtual fabric identifier that identifies a second virtual fabric included in the plurality of virtual fabrics;

tag the second traffic with the second virtual fabric identifier to provide tagged second traffic; and

transmit, via the FC networking device port and the second FCF device port, the tagged second traffic to the FC networking device.

10. An Information Handling System (IHS), comprising:

a plurality of ports;

a processing system that is coupled to the plurality of ports; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide an N_Port ID Virtualization (NPIV) Proxy Gateway (NPG) engine that is configured to:

receive, from a physical server device port on a server device that includes a hypervisor that is configured to provide a plurality of virtual machines and via a first port of the plurality of ports, first traffic from a first virtual machine that is included in the plurality of virtual machines, wherein the first traffic includes a first virtual machine identifier that identifies the first virtual machine;

determine, using the first virtual machine identifier and a virtual-machine-to-virtual-fabric mapping, that the first virtual machine identifier is associated with a first virtual fabric identifier that identifies a first virtual fabric of a plurality of virtual fabrics accessible through a Fibre Channel (FC) networking device;

tag the first traffic with the first virtual fabric identifier to provide tagged first traffic; and

transmit, via a second port of the plurality of ports to an FC networking device port of the FC networking device, the tagged first traffic.

11. The IHS of claim 10 , wherein the NPG engine is configured to:

receive, from the physical server device port and via the first port of the plurality of ports, second traffic from a second virtual machine that is included in the plurality of virtual machines, wherein the second traffic includes a second virtual machine identifier that identifies the second virtual machine;

determine, using the second virtual machine identifier and the virtual-machine-to-virtual-fabric mapping, that the second virtual machine identifier is associated with a second virtual fabric identifier that identifies a second virtual fabric of the plurality of virtual fabrics;

tag the second traffic with the second virtual fabric identifier to provide tagged second traffic; and

transmit, via the second port of the plurality of ports to the FC networking device port, the tagged second traffic.

12. The IHS of claim 10 , wherein the tagged first traffic is configured to cause the FC networking device to:

determine, using first virtual fabric identifier included in the tagged first traffic, that the first virtual fabric identifier identifies the first virtual fabric; and

provide the first traffic to the first virtual fabric.

13. The IHS of claim 10 , wherein the providing the tagged first traffic to the FC networking device via the FC networking device port and the second port is performed using a default virtual fabric that is included in the plurality of virtual fabrics and to which the NPG engine is logged in.

14. The IHS of claim 10 , wherein the NPG engine is configured to:

receive a first fabric discovery (FDISC) message from the server device;

determine that the first FDISC message is a FDISC from the first virtual machine and, in response, transmit a second FDISC message with a virtual fabric bit unset to a default virtual fabric included in the plurality of virtual fabrics;

receive a first FDISC accept message (ACC) from the first virtual fabric through the default virtual fabric, wherein the FDISC accept message is tagged with the first virtual fabric identifier; and

generate the virtual-machine-to-virtual-fabric mapping that includes the first virtual machine identifier that identifies the first virtual machine and that is associated with the first virtual fabric identifier.

15. The IHS of claim 14 , wherein the NPG engine is configured to:

log in the physical server device port included on the server device to the default virtual fabric prior to the receiving the first FLOGI by:

receiving a first FLOGI from the server device;

determining that the first FLOGI is a FLOGI from the physical server device port and, in response, transmitting a second FDISC message with the virtual fabric bit set to the default virtual fabric;

receiving a third FDISC ACC from the default virtual fabric; and

providing a first FLOGI ACC to the server device that indicates that the physical server device port is logged in to the default virtual fabric.

16. The IHS of claim 15 , wherein the NPG engine is configured to:

log in to the default virtual fabric prior to logging in the physical server device port included on the server device to the default virtual fabric by:

receiving a plurality of virtual fabric identifiers that each identify a virtual fabric included in the plurality of virtual fabrics;

transmitting a second fabric login (FLOGI) through the default virtual fabric to the FC networking device; and

receiving a second FLOGI ACC indicating that the NPG engine is logged in to the default virtual fabric.

17. A method of traffic handling between virtual machines and virtual fabrics, comprising:

receiving, by an Fibre Channel Forwarder (FCF) device via a first FCF device port from a physical server device port on a server device that includes a hypervisor that is configured to provide a plurality of virtual machines, first traffic from a first virtual machine that is included in the plurality of virtual machines, wherein the first traffic includes a first virtual machine identifier that identifies the first virtual machine;

determining, by the FCF device and using the first virtual machine identifier and a virtual-machine-to-virtual-fabric mapping, that the first virtual machine identifier is associated with a first virtual fabric identifier that identifies a first virtual fabric of a plurality of virtual fabrics accessible through a Fibre Channel (FC) networking device;

tagging, by the FCF device, the first traffic with the first virtual fabric identifier to provide tagged first traffic; and

transmitting, by the FCF device via a second FCF device port to an FC networking device port of the FC networking device, the tagged first traffic.

18. The method of claim 17 , further comprising:

receiving, by the FCF device via the first FCF port and from the physical server device port, second traffic from a second virtual machine that is included in the plurality of virtual machines, wherein the second traffic includes a second virtual machine identifier that identifies the second virtual machine;

determining, by the FCF device using the second virtual machine identifier and the virtual-machine-to-virtual-fabric mapping, that the second virtual machine identifier is associated with a second virtual fabric identifier that identifies a second virtual fabric of the plurality of virtual fabrics;

tagging, by the FCF device, the second traffic with the second virtual fabric identifier to provide tagged second traffic; and

transmitting, by the FCF device via the second FCF device port to the FC networking device port, the tagged second traffic.

19. The method of claim 17 , further comprising:

determining, by the FC networking device, using first virtual fabric identifier included in the tagged first traffic, that the first virtual fabric identifier identifies the first virtual fabric; and

providing, by the FC networking device, the first traffic to the first virtual fabric.

20. The method of claim 17 , further comprising:

receiving, by the FCF device a first fabric discovery (FDISC) message from the server device;

determining, by the FCF device, that the first FDISC message is a FDISC from the first virtual machine and, in response, transmit a second FDISC message with a virtual fabric bit unset to a default virtual fabric included in the plurality of virtual fabrics;

receiving, by the FCF device, a first FDISC accept message (ACC) from the first virtual fabric through the default virtual fabric, wherein the FDISC accept message is tagged with the first virtual fabric identifier; and

generating, by the FCF device, the virtual-machine-to-virtual-fabric mapping that includes the first virtual machine identifier that identifies the first virtual machine and that is associated with the first virtual fabric identifier.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2019
From: SUBBIAH, RAMESH KUMAR; VARGHESE, VIBIN
To: DELL PRODUCTS L.P.
Reel/Frame 048157/0672 →
Cited By (12)
US 12,192,116 US 12,229,578 US 12,250,221 US 12,314,611 US 12,335,066 US 12,355,728 US 12,373,237 US 12,405,895 US 12,445,380 US 12,481,444 US 12,699,671 US 12,705,085