IP Library › Granted Patent US 11,537,548
Granted Patent B2
US 11,537,548 · App. 16/393,425 · Granted Dec 27, 2022

Bandwidth allocation in asymmetrical switch topologies

Inventors: Pankaj Makhija (South San Francisco, CA); Nishant Patil (Sunnyvale, CA)
Assignee: Google LLC
G06F13/4226H04L49/253H04L49/70G06F2213/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 11,537,548
App. No.
16/393,425
Granted
Dec 27, 2022
Kind
B2
Abstract

Methods and systems for facilitating an equitable bandwidth distribution across downstream devices in asymmetrical switch topologies, and in particular asymmetrical PCIe switch topologies. The equitable distribution of bandwidth is achieved in asymmetrical topologies using virtual switch partitioning. An upstream switch that is connected to the root complex via an upstream port and that receives bandwidth B from the upstream port, is virtualized into two or more virtual switches. Each virtual switch equally shares the bandwidth. Each virtual switch is allocated to downstream devices that are connected to the upstream switch as well as to one or more downstream switches that are connected to the upstream switch. Each downstream switch may be connected to one or more additional downstream devices.

Claims (32)

1. A system, comprising:

an upstream switch connected to a first root complex through a first upstream port that has a bandwidth B, wherein:

the upstream switch is virtualized into n virtual switches, wherein each of the n virtual switches receives B/n bandwidth from the first upstream port;

for a first virtual switch of the n virtual switches, the first virtual switch is connected to a first plurality of downstream devices through a first plurality of downstream ports in the upstream switch;

for each remaining virtual switch of the n virtual switches, the virtual switch is connected to a respective second upstream port of a respective downstream switch, wherein the respective second upstream port of the respective downstream switch is connected to the upstream switch through a respective downstream port in the upstream switch and wherein the respective downstream switch is not connected to a second root complex different from the first root complex; and

for each respective downstream switch, the downstream switch is connected to a respective second plurality of downstream devices through a respective second plurality of downstream ports in the respective second switch.

2. The system of claim 1 , wherein n=2.

3. The system of claim 2 , wherein the total number of the first plurality of downstream ports is the same as the total number of the second plurality of downstream ports.

4. The system of claim 1 , wherein:

the first plurality of downstream devices comprises m devices; and

the respective second plurality of downstream devices comprises p devices, where m is not equal to p.

5. The system of claim 4 , wherein:

each of the m devices receives B/(n*m) bandwidth; and

each of the p devices receives B/(n*p) bandwidth.

6. The system of claim 1 , wherein each of the first upstream port, the first plurality of downstream ports, and the respective second plurality of downstream ports has the same number of lanes.

7. The system of claim 1 , wherein each switch is a PCIe switch.

8. A method comprising:

connecting an upstream switch to a first root complex through a first upstream port in the upstream switch;

virtualizing the upstream switch into n virtual switches, wherein each of the n virtual switches receives B/n bandwidth from the first upstream port;

for a first virtual switch of the n virtual switches, connecting a first plurality of downstream devices through a first plurality of downstream ports in the upstream switch;

for each remaining virtual switch of the n virtual switches, connecting a second upstream port of a respective downstream switch to the upstream switch through a respective downstream port in the upstream switch, wherein the respective downstream switch is not connected to a second root complex different from the first root complex; and

for each respective downstream switch, connecting a respective second plurality of downstream devices through a respective second plurality of downstream ports in the at least one respective downstream switch.

9. The method of claim 8 , wherein n=2.

10. The method of claim 9 , wherein the total number of the first plurality of downstream ports is the same as the total number of the second plurality of downstream ports.

11. The method of claim 8 , wherein:

the first plurality of downstream devices comprises m devices; and

the respective second plurality of downstream devices comprises p devices, where m is not equal to p.

12. The method of claim 11 , wherein:

each of the m devices receives B/(n*m) bandwidth from the first upstream port; and

each of the p devices receives B/(n*p) bandwidth from the first upstream port.

13. The method of claim 8 , wherein each of the first upstream port, the first plurality of downstream ports, and the respective second plurality of downstream ports has the same number of lanes.

14. The method of claim 13 , wherein each switch is a PCIe switch.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2019
From: MAKHIJA, PANKAJ; PATIL, NISHANT
To: GOOGLE LLC
Reel/Frame 049182/0643 →
Continuity (1)
Related Publication 20200341931A1 · Oct 29, 2020
Cited By (1)
US 12,547,543