IP Library › Granted Patent US 10,810,151
Granted Patent B2
US 10,810,151 · App. 15/799,399 · Granted Oct 20, 2020

Switching device, peripheral component interconnect express system, and method for initializing peripheral component interconnect express system

Inventor: Hongcan Fang (Hangzhou, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F13/4022G06F13/385G06F13/4027G06F13/4221H04L12/4633H04L41/0806H04L45/745H04L49/35G06F2213/0026
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,810,151
App. No.
15/799,399
Granted
Oct 20, 2020
Kind
B2
Abstract

A switching device, a Peripheral Component Interconnect Express (PCIe) system, and a switching system, where the switching system includes a first switching device and a second switching device. The first switching device and the second switching device are coupled using a network. The first switching device includes a plurality of PCIe upstream ports configured to connect to at least one host, the second switching device comprises at least one PCIe downstream port configured to connect to at least one input/output (I/O) device, and the second switching device is configured to receive a first data packet from the first switching device using the network, convert the first data packet to a second data packet complying with a PCIe protocol, and transmit the second data packet to a target I/O device of the second data packet.

Claims (50)

1. A switching system comprising:

a first switching device comprising a plurality of Peripheral Component Interconnect Express (PCIe) upstream ports configured to couple to at least one host; and

a second switching device coupled to the first switching device using a network and comprising at least one PCIe downstream port configured to couple to at least one input/output (I/O) device, wherein the second switching device is configured to:

create a mapping between a PCIe domain corresponding to the at least one host and a PCIe domain corresponding to the at least one I/O device;

receive a first data packet from the first switching device using the network;

convert the first data packet to a second data packet complying with a PCIe protocol; and

transmit the second data packet to a target I/O device of the second data packet according to the mapping,

wherein the first switching device is further configured to virtualize a virtual function of a first I/O device in the at least one I/O device, and

wherein a physical function drive of the first I/O device is loaded by a controller in the at least one host.

2. The switching system according to claim 1 , wherein the second switching device further comprises a first internal processing apparatus coupled to the at least one PCIe downstream port using an internal connection line of the second switching device, and wherein when converting the first data packet to the second data packet, the first internal processing apparatus is configured to convert the first data packet to the second data packet complying with the PCIe protocol.

3. The switching system according to claim 2 , wherein the network is Ethernet, and wherein when converting the first data packet to the second data packet, the first internal processing apparatus is configured to convert the first data packet complying with an Ethernet protocol to the second data packet complying with the PCIe protocol.

4. The switching system according to claim 1 , wherein the second switching device further comprises a first internal processing apparatus coupled to the at least one PCIe downstream port using an internal connection line of the second switching device, and wherein the first internal processing apparatus is configured to:

receive a third data packet from any one of the at least one I/O device;

process the third data packet to obtain a fourth data packet complying with a network protocol of the network; and

transmit the fourth data packet to the first switching device using the network.

5. The switching system according to claim 4 , wherein the first switching device further comprises a second internal processing apparatus coupled to the plurality of PCIe upstream ports using an internal connection line of the first switching device, and wherein the second internal processing apparatus is configured to receive a fifth data packet from any one of the at least one host, process the fifth data packet to obtain the first data packet complying with the network protocol of the network, and transmit the first data packet to the second switching device using the network.

6. The switching system according to claim 1 , further comprising a network switching device in the network, wherein the first switching device further comprises at least one first switched interface configured to couple to the network switching device, wherein the second switching device further comprises at least one second switched interface configured to couple to the network switching device, and wherein when receiving the first data packet, the second switching device is further configured to receive, using any one of the at least one second switched interface, the first data packet from the first switching device that is transmitted by the network switching device.

7. The switching system according to claim 1 , wherein none of the at least one PCIe downstream port has any PCIe configuration space, and wherein each of the plurality of PCIe upstream ports has a PCIe configuration space.

8. The switching system according to claim 7 , wherein the first switching device further comprises at least one PCIe configuration space corresponding to each of the at least one PCIe downstream port.

9. The switching system according to claim 1 , wherein the second switching device is further configured to store a first mapping table configured to store a mapping relationship from an identification in the PCIe domain corresponding to the at least one host to an identification in the PCIe domain corresponding to the at least one I/O device.

10. The switching system according to claim 1 , wherein the second switching device is configured to store a third mapping table configured to store a base address register (BAR) address and a BAR size of a virtual function of a second I/O device in the at least one I/O device.

11. The switching system according to claim 1 , wherein the first switching device is further configured to virtualize a physical function of a third I/O device in the at least one I/O device.

12. The switching system according to claim 1 , wherein the first switching device is further configured to virtualize a physical function and a virtual function of a fourth I/O device in the at least one I/O device, wherein a physical function drive of the fourth I/O device is loaded by a management baseboard management controller (BMC) in the at least one host, and wherein a physical function drive of the first switching device is loaded by a processor of a third host in the at least one host.

13. A Peripheral Component Interconnect Express (PCIe) system comprising:

at least one host;

at least one input/output (I/O) device; and

a switching system comprising:

a first switching device comprising a plurality of PCIe upstream ports configured to couple to the at least one host; and

a second switching device coupled to the first switching device using a network and comprising at least one PCIe downstream port configured to couple to the at least one I/O device, and wherein the second switching device is configured to:

create a mapping between a PCIe domain corresponding to the at least one host and a PCIe domain corresponding to the at least one I/O device;

receive a first data packet transmitted by the first switching device using the network;

convert the first data packet to a second data packet complying with a PCIe protocol; and

transmit the second data packet to a target I/O device of the second data packet according to the mapping,

wherein the first switching device is further configured to virtualize a virtual function of a first I/O device in the at least one I/O device, and

wherein a physical function drive of the first I/O device is loaded by a controller in the at least one host.

14. The switching system according to claim 4 , wherein the first switching device further comprises a second internal processing apparatus coupled to the plurality of PCIe upstream ports using an internal connection line of the first switching device, and wherein the second internal processing apparatus is configured to receive, using the network, the fourth data packet from the first switching device, process the fourth data packet to obtain a sixth data packet complying with the PCIe protocol, and transmit the sixth data packet to a target host of the sixth data packet.

15. The switching system according to claim 9 , wherein the second switching device is further configured to store a second mapping table configured to store a mapping relationship from the identification in the PCIe domain corresponding to the at least one I/O device to the identification in the PCIe domain corresponding to the at least one host.

16. The switching system according to claim 10 , wherein the second switching device is configured to store PCIe configuration content of the first I/O device.

17. The switching system according to claim 11 , wherein a physical function drive of a second I/O device in the at least one I/O device is loaded by a processor of a first host in the at least one host.

18. A switching system comprising:

a first switching device comprising a plurality of Peripheral Component Interconnect Express (PCIe) upstream ports configured to couple to at least one host; and

a second switching device coupled to the first switching device using a network and comprising:

at least one PCIe downstream port configured to couple to at least one input/output (I/O) device;

a receiver configured to receive a first data packet from the first switching device using the network;

a processor coupled to the receiver and configured to convert the first data packet to a second data packet complying with a PCIe protocol; and

a transmitter coupled to the processor and configured to transmit the second data packet to a target I/O device of the second data packet,

wherein the first switching device is further configured to virtualize a virtual function of a first I/O device in the at least one I/O device, and

wherein a physical function drive of the first I/O device is loaded by a controller in the at least one host.

19. The switching system of claim 18 , wherein the network is Ethernet, and wherein when converting the first data packet to the second data packet, the processor is configured to convert the first data packet complying with an Ethernet protocol to the second data packet complying with the PCIe protocol.

20. The switching system of claim 18 , wherein the first switching device further comprises at least one PCIe configuration space corresponding to each of the at least one PCIe downstream port.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2017
From: FANG, HONGCAN
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 043995/0806 →
Priority Claims (1)
CN 2016 1 0022697 · Jan 13, 2016 · national
Continuity (2)
Continuation PCTCN2017071081 · Jan 13, 2017
Related Publication 20180052793A1 · Feb 22, 2018
Cited By (1)
US 12,271,331