IP Library › Granted Patent US 11,595,315
Granted Patent B2
US 11,595,315 · App. 17/144,652 · Granted Feb 28, 2023

Quality of service in virtual service networks

Inventors: Raja Kommula (Cupertino, CA); Jeremy Tidemann (Urbana, IL); Constantine Polychronopoulos (Palo Alto, CA); Marc Andre Bordeleau (Shawinigan, CA); Edward Choh (Richmond, CA); Ojas Gupta (Mountain View, CA); Robert Kidd (Champaign, IL); Georgios Oikonomou (Patras, GR)
Assignee: VMware, Inc.
H04L47/2441H04L47/20H04L47/2433H04L47/2466H04L47/6225H04L47/6245H04L49/25H04L49/30H04L69/22
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,595,315
App. No.
17/144,652
Granted
Feb 28, 2023
Kind
B2
Abstract

A switch in a slice-based network can be used to enforce quality of service (“QoS”). Agents can run in the switches, such as in the core of each switch. The switches can sort ingress packets into slice-specific ingress queues in a slice-based pool. The slices can have different QoS prioritizations. A switch-wide policing algorithm can move the slice-specific packets to egress interfaces. Then, one or more user-defined egress policing algorithms can prioritize which packets are sent out into the network first based on slice classifications.

Claims (40)

1. A method for enforcing Quality of Service (“QoS”) in a Virtual Service Network (“VSN”), comprising:

receiving first and second packets at a physical switch having ingress ports and egress ports, the first and second packets corresponding to different slices in the VSN;

queuing the first and second packets into different ingress queues, the different ingress queues corresponding to different slices in the VSN, wherein the queuing is based on associating the first and second packets with the different slices;

enqueuing the first and second packets, from the ingress queues, to different egress queues, wherein enqueuing from the ingress queues is prioritized based on policies for the different slices;

forwarding the first and second packets from the egress queues; and

utilizing slice prioritization for both (1) enqueueing the first and second packets to the egress queues and (2) forwarding the first and second packets from the egress queues.

2. The method of claim 1 , wherein an agent executing on the physical switch queues the first and second packets into the different ingress queues.

3. The method of claim 1 , wherein a slice-weighted round robin (“SWRR”) is used to enqueue the first and second packets from the ingress queues to the egress queues.

4. The method of claim 3 , wherein the SWRR prioritizes a first ingress queue relative to a second ingress queue based on a first slice being allocated more bandwidth than a second slice.

5. The method of claim 1 , wherein a slice-weighted round robin (“SWRR”) is used for prioritizing forwarding from the egress queues.

6. The method of claim 1 , further comprising:

defining, in a virtual layer, bandwidth values for first and second slices; and

weighting the first slice based on its bandwidth value relative to the bandwidth values of the second slice.

7. A non-transitory, computer-readable medium comprising instructions that, when executed by a processor, perform stages for enforcing Quality of Service (“QoS”) in a Virtual Service Network (“VSN”), the stages comprising:

receiving first and second packets at a physical switch having ingress ports and egress ports, the first and second packets corresponding to different slices in the VSN;

queuing the first and second packets into different ingress queues, the different ingress queues corresponding to different slices in the VSN, wherein the queuing is based on associating the first and second packets with the different slices;

enqueuing the first and second packets, from the ingress queues, to different egress queues, wherein enqueuing from the ingress queues is prioritized based on policies for the different slices;

forwarding the first and second packets from the egress queues; and

utilizing slice prioritization for both (1) enqueueing the first and second packets to the egress queues and (2) forwarding the first and second packets from the egress queues.

8. The non-transitory, computer-readable medium of claim 7 , wherein an agent executing on the physical switch queues the first and second packets into the different ingress queues.

9. The non-transitory, computer-readable medium of claim 7 , wherein a slice-weighted round robin (“SWRR”) is used to enqueue the first and second packets from the ingress queues to the egress queues.

10. The non-transitory, computer-readable medium of claim 9 , wherein the SWRR prioritizes a first ingress queue relative to a second ingress queue based on a first slice being allocated more bandwidth than a second slice.

11. The non-transitory, computer-readable medium of claim 7 , wherein a slice-weighted round robin (“SWRR”) is used for prioritizing forwarding from the egress queues.

12. The non-transitory, computer-readable medium of claim 7 , the stages further comprising:

defining, in a virtual layer, bandwidth values for first and second slices; and

weighting the first slice based on its bandwidth value relative to the bandwidth values of the second slice.

13. A system for enforcing Quality of Service (“QoS”) in a Virtual Service Network (“VSN”), comprising:

a non-transitory, computer-readable medium containing instructions; and

a processor that executes the instructions to perform stages comprising:

receiving first and second packets at a physical switch having ingress ports and egress ports, the first and second packets corresponding to different slices in the VSN;

queuing the first and second packets, into different ingress queues, the different ingress queues corresponding to different slices in the VSN, wherein the queuing is based on associating the first and second packets with the different slices;

enqueuing the first and second packets from the ingress queues, to different egress queues, wherein enqueuing from the ingress queues is prioritized based on policies for the different slices;

forwarding the first and second packets from the egress queues; and

utilizing slice prioritization for both (1) enqueueing the first and second packets to the egress queues and (2) forwarding the first and second packets from the egress queues.

14. The system of claim 13 , wherein an agent executing on the physical switch queues the first and second packets into the different ingress queues.

15. The system of claim 13 , wherein a slice-weighted round robin (“SWRR”) is used to enqueue the first and second packets from the ingress queues to the egress queues.

16. The system of claim 13 , wherein a slice-weighted round robin (“SWRR”) is used for prioritizing forwarding from the egress queues.

17. The system of claim 13 , the stages further comprising:

defining, in a virtual layer, bandwidth values for first and second slices; and

weighting the first slice based on its bandwidth value relative to the bandwidth values of the second slice.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Continuity (2)
Continuation 16411604 · May 14, 2019
Related Publication 20210135998A1 · May 6, 2021