IP Library Granted Patent US 11,012,288
Granted Patent B2
US 11,012,288 · App. 16/411,912 · Granted May 18, 2021

Congestion avoidance in a slice-based network

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.
H04L41/046G06F9/45558H04L41/5009H04L41/5019H04L43/16H04L45/02H04L45/38H04L47/2425H04L47/2483G06F2009/4557G06F2009/45595
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,012,288
App. No.
16/411,912
Granted
May 18, 2021
Kind
B2
Abstract

A system can reduce congestion in slice-based networks, such as a virtual service network (“VSN”). The system can include a monitoring module that communicates with agents on switches, such as routers or servers. The switches report telematics data to the monitoring module, which determines slice-specific performance attributes such as slice latency and slice throughput. These slice-specific performance attributes are compared against software license agreement (“SLA”) requirements. When the SLA is not met, the monitoring module can implement a new slice path for the slice to reduce the congestion.

Claims (37)

1. A method for managing throughput in a slice-based network, comprising:

supplying agents to programmable switches, the switches executing the agents to calculate data-rate information for multiple slices;

receiving, at a monitoring module, data-rate information for a first slice from the switches in a slice path, wherein the data-rate information corresponds to multiple flows that utilize the first slice;

determining an aggregate throughput for the first slice based on the received data-rate information, including preventing duplicate data-rate information for a flow from being used in determining the aggregate throughput, wherein for each switch in the slice path:

when the switch is an ingress point for the flow, including the data-rate information from the switch in determining the aggregate throughput; and

when the switch is not an ingress point for the flow, preventing the data-rate information from being used in determining the aggregate throughput; and

based on comparing the aggregate throughput to a threshold, implementing an alternate slice path for the first slice.

2. The method of claim 1 , further comprising using a network topology to prevent the duplicate data-rate information for the flow from being used in determining the aggregate throughput.

3. The method of claim 1 , wherein the flow is uniquely identified based on packet information including source address, destination address, source port, destination port, and the slice identifier.

4. The method of claim 1 , wherein the threshold is established by a service level agreement (“SLA”).

5. The method of claim 1 , wherein receiving data-rate information from a first switch includes receiving source and destination addresses, a packet rate, and a slice identifier.

6. The method of claim 1 , wherein the switches execute the agents at a core of the respective switch.

7. A non-transitory, computer-readable medium comprising instructions that, when executed by a processor, perform stages for managing throughput in a slice-based network, the stages comprising:

supplying agents to programmable switches, the switches executing the agents to calculate data-rate information for multiple slices;

receiving, at a monitoring module, data-rate information for a first slice from the switches in a slice path, wherein the data-rate information corresponds to multiple flows that utilize the first slice;

determining an aggregate throughput for the first slice based on the received data-rate information, including preventing duplicate data-rate information for a flow from being used in determining the aggregate throughput, wherein for each switch in the slice path:

when the switch is an ingress point for the flow, including the data-rate information from the switch in determining the aggregate throughput; and

when the switch is not an ingress point for the flow, preventing the data-rate information from being used in determining the aggregate throughput; and

based on comparing the aggregate throughput to a threshold, implementing an alternate slice path for the first slice.

8. The non-transitory, computer-readable medium of claim 7 , the stages further comprising using a network topology to prevent the duplicate data-rate information for the flow from being used in determining the aggregate throughput.

9. The non-transitory, computer-readable medium of claim 7 , wherein the flow is uniquely identified based on packet information including source address, destination address, source port, destination port, and the slice identifier.

10. The non-transitory, computer-readable medium of claim 7 , wherein the threshold is established by a service level agreement (“SLA”).

11. The non-transitory, computer-readable medium of claim 7 , wherein receiving data-rate information from a first switch includes receiving source and destination addresses, a packet rate, and a slice identifier.

12. The non-transitory, computer-readable medium of claim 7 , wherein the switches execute the agents at a core of the respective switch.

13. A system for managing throughput in a slice-based network, comprising:

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

a processor that executes the monitoring module to perform stages comprising:

supplying agents to programmable switches, the switches executing the agents to calculate data-rate information for multiple slices;

receiving, at a monitoring module, data-rate information for a first slice from the switches in a slice path, wherein the data-rate information corresponds to multiple flows that utilize the first slice;

determining an aggregate throughput for the first slice based on the received data-rate information, including preventing duplicate data-rate information for a flow from being used in determining the aggregate throughput, wherein for each switch in the slice path:

when the switch is an ingress point for the flow, including the data-rate information from the switch in determining the aggregate throughput; and

when the switch is not an ingress point for the flow, preventing the data-rate information from being used in determining the aggregate throughput; and

based on comparing the aggregate throughput to a threshold, implementing an alternate slice path for the first slice.

14. The system of claim 13 , the stages further comprising using a network topology to prevent the duplicate data-rate information for the flow from being used in determining the aggregate throughput.

15. The system of claim 13 , wherein the flow is uniquely identified based on packet information including source address, destination address, source port, destination port, and the slice identifier.

16. The system of claim 13 , wherein the threshold is established by a service level agreement (“SLA”).

17. The system of claim 13 , wherein receiving data-rate information from a first switch includes receiving source and destination addresses, a packet rate, and a slice identifier.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2019
From: KOMMULA, RAJA; GUPTA, OJAS; BORDELEAU, MARC ANDRE; OIKONOMOU, GEORGIOS; CHOH, EDWARD; TIDEMANN, JEREMY; KIDD, ROBERT; POLYCHRONOPOULOS, CONSTANTINE
To: VMWARE, INC.
Reel/Frame 049175/0934 →
Cited By (5)
US 12,244,466 US 12,413,468 US 12,438,769 US 12,530,214 US 12,581,392