IP Library Granted Patent US 12,609,899
Granted Patent B2
US 12,609,899 · App. 18/545,015 · Granted Apr 21, 2026

Positive and negative notifications for adaptive routing

Inventors: Eran Gil Beracha (Tel Aviv, IL); Liron Mula (Herzliya, IL); Tal Mund (Herzliya, IL); Idan Solomon Seider (Haifa, IL)
Assignee: MELLANOX TECHNOLOGIES, LTD.
H04L47/122H04L45/748H04L47/28
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 12,609,899
App. No.
18/545,015
Granted
Apr 21, 2026
Kind
B2
Abstract

Systems, devices, and methods are provided. In one example, a system is described that includes circuits to receive a packet associated with a destination from a source, determine a congestion associated with the destination, determine the congestion associated with the destination is outside a range, based on determining the congestion associated with the destination is outside the range, generate a notification packet, and send the notification packet to the source.

Claims (32)

1 . A switch comprising one or more circuits to:

in response to receiving a packet, determine one or more of a queue latency and a queue occupancy associated with destination of the packet;

determine the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside a range, wherein determining the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside the range comprises determining a value in a state table entry associated with the destination is outside the range, and wherein the one or more circuits are further to execute a timer and decrease the value in the state table entry over time based on the timer;

based on determining the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside the range, generate a notification packet; and

send the notification packet to a source of the packet.

2 . The switch of claim 1 , wherein the range includes an upper threshold and a lower threshold.

3 . The switch of claim 2 , wherein the one or more of the queue latency and the queue occupancy associated with the destination is higher than the upper threshold and the notification packet comprises a negative indication.

4 . The switch of claim 3 , wherein after sending the notification packet to the source, the switch receives a reduced amount of traffic directed to the destination from the source.

5 . The switch of claim 2 , wherein the one or more of the queue latency and the queue occupancy associated with the destination is lower than the lower threshold and the notification packet comprises a positive indication.

6 . The switch of claim 5 , wherein after sending the notification packet to the source, the switch receives an increased amount of traffic associated with the destination from the source.

7 . The switch of claim 1 , wherein determining the one or more of the queue latency and the queue occupancy associated with the destination is outside a range comprises converting the queue latency and the queue occupancy into a number and comparing the number to one or more thresholds.

8 . The switch of claim 1 , wherein the notification packet comprises one of a positive indication and a negative indication and an indication of the destination.

9 . The switch of claim 1 , wherein generating the notification packet is further based on the timer.

10 . A system comprising one or more circuits to:

receive a notification packet, wherein the notification packet is associated with a first destination of a plurality of destinations;

perform a longest prefix match algorithm to associate the notification packet with an entry of a table associated with the first destination, wherein the table includes a plurality of entries, wherein each entry indicates a bandwidth for a respective destination of the plurality of destinations, and wherein the one or more circuits are further to execute a timer and one of increase and decrease the each entry of the table over time based on the timer; and

one of increase and decrease the bandwidth indicated by the entry of the table associated with the first destination based on data in the notification packet.

11 . The system of claim 10 , wherein associating the notification packet with the entry of the table comprises identifying the first destination associated with the notification packet.

12 . The system of claim 10 , wherein the notification packet comprises at least a portion of a packet sent from the system.

13 . The system of claim 10 , wherein one of increasing and decreasing each entry of the table based on the timer comprises increasing the bandwidth for each of the plurality of destinations.

14 . The system of claim 10 , wherein the notification packet includes one of a positive indication and a negative indication.

15 . The system of claim 10 , wherein each entry of the table is associated with a maximum bandwidth and a minimum bandwidth.

16 . The system of claim 10 , wherein the one or more circuits are further to route one or more packets based on the table.

17 . A device comprising one or more circuits to:

in response to receiving a packet, determine one or more of a queue latency and a queue occupancy associated with a destination of the packet, wherein the destination of the packet is a first destination of a plurality of destinations;

determine the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside a range, wherein determining the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside the range comprises determining a value in a state table entry associated with the destination is outside the range, and wherein the one or more circuits are further to execute a timer and decrease the value in the state table entry over time based on the timer;

based on determining the one or more of the queue latency and the queue occupancy associated with the destination of the packet is outside the range, generate a first notification packet;

send the first notification packet to a source of the packet;

receive a second notification packet, wherein the second notification packet is associated with a second destination of the plurality of destinations;

perform a longest prefix match algorithm to associate the second notification packet with an entry of a table associated with the second destination, wherein the table includes a plurality of entries, wherein each entry is associated with a respective destination of the plurality of destinations and indicates a bandwidth for the respective destination; and

one of increase and decrease the entry of the table associated with the second destination based on data in the second notification packet.

18 . The device of claim 17 , wherein the one or more of the queue latency and the queue occupancy associated with the first destination is compared with two thresholds including an upper threshold and a lower threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2023
From: BERACHA, ERAN GIL; MULA, LIRON; MUND, TAL; SEIDER, IDAN SOLOMON
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 065910/0070 →
Continuity (1)
Related Publication 20250202822A1 · Jun 19, 2025
References Cited (12)
US 6208619B1 · Takeuchi · 2001 [cited by examiner]
US 8225399B1 · Van der Merwe · 2012 [cited by examiner]
US 10122639B2 · Toy · 2018 [cited by examiner]
US 20040196790A1 · Balakrishnan · 2004 [cited by examiner]
US 20040218617A1 · Sagfors · 2004 [cited by examiner]
US 20140269378A1 · Holbrook · 2014 [cited by examiner]
US 20170324641A1 · Ertugay · 2017 [cited by examiner]
US 20220191142A1 · Mermoud · 2022 [cited by examiner]
US 20220217090A1 · Bataineh · 2022 [cited by examiner]
US 20230061885A1 · Dauwe · 2023 [cited by examiner]
US 20230198895A1 · Baniamerian · 2023 [cited by examiner]
US 20240380703A1 · Ranjan · 2024 [cited by examiner]