IP Library › Granted Patent US 12,284,100
Granted Patent B2
US 12,284,100 · App. 17/667,609 · Granted Apr 22, 2025

Network delay estimation

Inventor: Yuval Shpigelman (Netanya, IL)
Assignee: Mellanox Technologies, Ltd.
H04L43/0852
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,284,100
App. No.
17/667,609
Granted
Apr 22, 2025
Kind
B2
Abstract

In one embodiment, data communication device includes a network interface to receive first packets over a network from another network device via a switch, which includes a buffer associated with a variable buffer delay, and packet processing circuitry to compute respective measures of delay over the network to the other network device over time responsively to the received first packets, find a minimum measure of delay over the network to the other network device responsively to at least some of the computed respective measures of delay, estimate a current measure of buffer delay of the buffer responsively to the found minimum measure of delay and a current one of the computed respective measures of delay, set a packet processing parameter responsively to the estimated current measure of buffer delay, and process second packets responsively to the set packet processing parameter.

Claims (44)

1. Data communication device, comprising:

a network interface to receive first packets over a network from another network device via a switch, which includes a buffer associated with a variable buffer delay; and

packet processing circuitry to:

compute respective measures of delay over the network to the other network device over time responsively to the received first packets;

find a minimum measure of delay over the network to the other network device as a local minimum measure of delay responsively to; at least some of the computed respective measures of delay; and a function describing the respective measures of delay over the network to the other network device over time;

estimate a current measure of buffer delay of the buffer responsively to the found minimum measure of delay and a current one of the computed respective measures of delay;

set a packet processing parameter responsively to the estimated current measure of buffer delay; and

process second packets responsively to the set packet processing parameter.

2. The device according to claim 1 , wherein, the first packets are indicative of the respective measures of delay over the network to the other network device over time.

3. The device according to claim 2 , wherein the first packets comprise data indicative of the respective measures of delay over the network to the other network device over time.

4. The device according to claim 2 , wherein respective roundtrip times of the first packets are indicative of the respective measures of delay over the network to the other network device over time.

5. The device according to claim 1 , wherein the current measure of buffer delay is a relative buffer delay between a current buffer delay and a minimum buffer delay of the buffer.

6. The device according to claim 1 , wherein:

the packet processing parameter is a transmission parameter; and

the packet processing circuitry is configured to transmit the second packets responsively to the transmission parameter.

7. The device according to claim 6 , wherein:

the transmission parameter is a current transmission rate; and

the packet processing circuitry is configured to transmit the second packets to the other network device responsively to the current transmission rate.

8. The device according to claim 7 , wherein the packet processing circuitry is configured to adjust a previous transmission rate to the current transmission rate responsively to the estimated current measure of buffer delay.

9. The device according to claim 6 , wherein the packet processing circuitry is configured to perform congestion control responsively to the transmission parameter.

10. The device according to claim 1 , wherein the packet processing circuitry is configured to estimate the current measure of the buffer delay of the buffer as a relative delay responsively to the current one of the computed respective measures of delay less the local minimum measure of delay.

11. The device according to claim 1 , wherein the packet processing circuitry is configured to estimate the current measure of the buffer delay of the buffer as a relative delay responsively to the current one of the computed respective measures of delay less the found minimum measure of delay.

12. The device according to claim 1 , further comprising a network interface controller comprising the network interface and the packet processing circuitry.

13. The device according to claim 1 , wherein the packet processing circuitry is configured to compute the respective measures of delay over the network to the other network device over time responsively to respective roundtrip times via the other network device.

14. The device according to claim 1 , wherein the packet processing circuitry is configured to compute the respective measures of delay over the network to the other network device over time responsively to one-way delay to the other network device.

15. A networking method, comprising:

receiving first packets over a network from another network device via a switch, which includes a buffer associated with a variable buffer delay;

computing respective measures of delay over the network to the other network device over time responsively to the received first packets;

finding a minimum measure of delay over the network to the other network device as a local minimum measure of delay responsively to; at least some of the computed respective measures of delay; and a function describing the respective measures of delay over the network to the other network device over time;

estimating a current measure of buffer delay of the buffer responsively to the found minimum measure of delay and a current one of the computed respective measures of delay;

setting a packet processing parameter responsively to the estimated current measure of buffer delay; and

processing second packets responsively to the set packet processing parameter.

16. The method according to claim 15 , wherein the current measure of buffer delay is a relative buffer delay between a current buffer delay and a minimum buffer delay of the buffer.

17. The method according to claim 15 , wherein the packet processing parameter is a transmission parameter, the processing including transmitting the second packets responsively to the transmission parameter.

18. The method according to claim 17 , wherein the transmission parameter is a current transmission rate, the transmitting including transmitting the second packets to the other network device responsively to the current transmission rate.

19. The method according to claim 18 , further comprising adjusting a previous transmission rate to the current transmission rate responsively to the estimated current measure of buffer delay.

20. The method according to claim 17 , further comprising performing congestion control responsively to the transmission parameter.

21. The method according to claim 15 , wherein the estimating includes estimating the current measure of the buffer delay of the buffer as a relative delay responsively to the current one of the computed respective measures of delay less the local minimum measure of delay.

22. A software product, comprising a non-transient computer-readable medium in which program instructions are stored, which instructions, when read by a central processing unit (CPU), cause the CPU to:

compute respective measures of delay over a network to another network device over time responsively to received first packets;

find a minimum measure of delay over the network to the other network device as a local minimum measure of delay responsively to; at least some of the computed respective measures of delay; and a function describing the respective measures of delay over the network to the other network device over time;

estimate a current measure of buffer delay of a buffer of a switch in the network responsively to the found minimum measure of delay and a current one of the computed respective measures of delay;

set a packet processing parameter responsively to the estimated current measure of buffer delay; and

process second packets responsively to the set packet processing parameter.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: SHPIGELMAN, YUVAL
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 058934/0585 →
Continuity (1)
Related Publication 20230254229A1 · Aug 10, 2023
References Cited (30)
US 20110158253A1 · Dukkipati · 2011 [cited by examiner]
US 20110205895A1 · Chen · 2011 [cited by examiner]
US 20130083654A1 · Lee · 2013 [cited by examiner]
US 20140009200A1 · Kay · 2014 [cited by examiner]
US 20140355464A1 · Hwang · 2014 [cited by examiner]
US 20150117250A1 · Hwang · 2015 [cited by examiner]
US 20160315841A1 · Kang · 2016 [cited by examiner]
US 20160330012A1 · Liu · 2016 [cited by examiner]
US 20170195238A1 · Luo · 2017 [cited by examiner]
US 20190036788A1 · Gupta · 2019 [cited by examiner]
US 20190044874A1 · Zhang · 2019 [cited by examiner]
US 20190068512A1 · Papaloukopoulos · 2019 [cited by examiner]
US 20200314035A1 · Gwock · 2020 [cited by examiner]
US 20210297362A1 · Eckert · 2021 [cited by examiner]
US 20210345277A1 · Wigren · 2021 [cited by examiner]
US 20220022088A1 · Gebert · 2022 [cited by examiner]
US 20220150171A1 · Matthews · 2022 [cited by examiner]
US 20230012394A1 · Vaner · 2023 [cited by examiner]
US 20230020399A1 · Singh · 2023 [cited by examiner]
CN 102318328B · 2013 [cited by examiner]
CN 103686220A · 2014 [cited by examiner]
CN 105357138A · 2016 [cited by examiner]
CN 106162188A · 2016 [cited by examiner]
CN 108418235A · 2018 [cited by examiner]
CN 110191060A · 2019 [cited by examiner]
CN 110572333B · 2021 [cited by examiner]
CN 114157377A · 2022 [cited by examiner]
WO WO2006056880A2 · 2006 [cited by examiner]
WO WO2015004131A1 · 2015 [cited by examiner]
Kumar et al., “Swift: Delay is Simple and Effective for Congestion Control in the Datacenter,” Conference Paper, SIGCOMM '20, Virtual Event, USA, pp. 514-528, Aug. 10-14, 2020. [cited by applicant]