IP Library Granted Patent US 11,646,971
Granted Patent B2
US 11,646,971 · App. 16/921,884 · Granted May 9, 2023

Limiting backpressure with bad actors

Inventors: Richard E. Kessler (Northborough, MA); Nick Jamba (Lancaster, MA); Victor Hart (Southborough, MA)
Assignee: Marvell Asia Pte, Ltd.
H04L47/30H04L41/14H04L47/32
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,646,971
App. No.
16/921,884
Granted
May 9, 2023
Kind
B2
Abstract

In an embodiment, a method includes, in response to detecting available memory of a destination node of a packet flow of nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state. The destination node, in the backpressure state, sends a signal indicating a condition of packet backpressure to the nodes of the packet flow, and initiates a timer for a particular time period. The method further marks, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold. The method, in response to marking the destination node as being in a bad actor state, sends a signal to the nodes causing the nodes to drop packets directed to the destination node.

Claims (35)

1. A method comprising:

in response to detecting available memory of a destination node of a packet flow of one or more nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state and initiating a timer for a particular time period;

marking, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold; and;

in response to marking the destination node as being in a bad actor state, sending a first signal to the one or more nodes of the packet flow causing the one or more nodes to drop packets directed to the destination node.

2. The method of claim 1 , further comprising:

in response to marking the destination node as being in a good actor state, sending a second signal to the one or more nodes of the packet flow causing the one or more nodes to continue sending packets to the destination node.

3. The method of claim 1 , wherein marking the destination node as being in the bad actor state further includes throwing an interrupt to other entities related to the packet flow.

4. The method of claim 1 , wherein the destination node is a virtual function (VF) ring.

5. The method of claim 1 , wherein the threshold is a watermark.

6. The method of claim 1 , further comprising:

at startup, initiating the destination node as being in the bad actor state.

7. The method of claim 1 , wherein sending the signal further includes sending the signal to the one or more nodes of the packet flow indicating the destination node is not accepting new packets.

8. A system comprising:

a processor configured to:

in response to detecting available memory of a destination node of a packet flow of one or more nodes to the destination node being below a particular threshold, mark the destination node as being in a backpressure state and initiating a timer for a particular time period;

mark, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold; and

in response to marking the destination node as being in a bad actor state, send a first signal to the one or more nodes of the packet flow causing the one or more nodes to drop packets directed to the destination node.

9. The system of claim 8 , wherein the processor is further configured to, in response to marking the destination node as being in a good actor state, sending a second signal to the one or more nodes of the packet flow causing the one or more nodes to continue sending packets to the destination node.

10. The system of claim 8 , wherein marking the destination node as being in the bad actor state further includes throwing an interrupt to other entities related to the packet flow.

11. The system of claim 8 , wherein the destination node is a virtual function (VF) ring.

12. The system of claim 8 , wherein the threshold is a watermark.

13. The system of claim 8 , further comprising:

at startup, initiating the destination node as being in the bad actor state.

14. The system of claim 8 , wherein sending the signal includes sending the signal to the one or more nodes of the packet flow indicating the destination node is not accepting new packets.

15. A non-transitory computer-readable medium configured to store instructions thereon, the instructions, when loaded and executed by a processor, cause the processor to:

in response to detecting available memory of a destination node of a packet flow of one or more nodes to the destination node being below a particular threshold, mark the destination node as being in a backpressure state, and initiating a timer for a particular time period;

mark, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold; and

in response to marking the destination node as being in a bad actor state, send a first signal to the one or more nodes of the packet flow causing the one or more nodes to drop packets directed to the destination node.

16. The non-transitory computer readable medium of claim 15 , wherein the instructions are further configured to cause the processor to:

in response to marking the destination node as being in a good actor state, send a second signal to the one or more nodes of the packet flow causing the one or more nodes to continue sending packets to the destination node.

17. The non-transitory computer readable medium of claim 15 , wherein marking the destination node as being in the bad actor state further includes throwing an interrupt to other entities related to the packet flow.

18. The non-transitory computer readable medium of claim 15 , wherein the destination node is a virtual function (VF) ring.

19. The non-transitory computer readable medium of claim 15 , wherein the threshold is a watermark.

20. The non-transitory computer readable medium of claim 15 , wherein the instructions are further configured to cause the processor to:

at startup, initiate the destination node as being in the bad actor state.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA NAME PREVIOUSLY RECORDED ON REEL 063286 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 19, 2023
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 063375/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2023
From: KESSLER, RICHARD E.; JAMBA, NICK; HART, VICTOR
To: CAVIUM, INC.
Reel/Frame 063284/0184 →
CHANGE OF NAME Recorded Apr 11, 2023
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 063285/0639 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2023
From: CAVIUM INTERATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 063286/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2023
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 063286/0444 →
Continuity (2)
Continuation 16029031 · Jul 6, 2018
Related Publication 20200336433A1 · Oct 22, 2020