IP Library Granted Patent US 12683908
Granted Patent B2
US 12683908 · App. 18/757,880 · Granted Jul 14, 2026

Packet generation methods and devices for ordered data offloads

Inventors: Yamin Friedman (Jerusalem, IL); Idan Burstein (Carmiel, IL); Ariel Shahar (Jerusalem, IL)
Assignee: Mellanox Technologies, Ltd.
H04L47/6235H04L47/365H04L47/628H04L47/36
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 12683908
App. No.
18/757,880
Granted
Jul 14, 2026
Kind
B2
Abstract

Devices, methods, and systems for packet generation for ordered data offloads are provided. The method includes receiving a first transmission request associated with a first message for transmission via a communication network. The first message includes data entries, a first message size defined by the data entries, and a first order by which at least a portion of the data entries are to be executed. The method also includes determining a maximum transport unit (MTU) for a first transport queue associated with the communication network. The first transport queue is associated with packet spreading operations, and the MTU of the first transport queue defines a maximum packet size for packets transmitted via the first transport queue. The method further includes generating first data packet based on the first message having a size that is less than or equal to the MTU for the first transport queue.

Claims (46)

1 . A computer-implemented method comprising:

receiving a first transmission request associated with a first message for transmission via a communication network, wherein the first message comprises:

one or more data entries;

a first message size defined at least in part by the one or more data entries; and

a first order by which at least a portion of the data entries of the first message are to be executed;

determining a maximum transport unit (MTU) for a first transport queue associated with the communication network, wherein:

the first transport queue is associated with packet spreading operations over the communication network such that at least a portion of data entries forming data packets that are sent via the first transport queue are transmitted to different nodes of the communication network; and

the MTU of the first transport queue defines a maximum packet size for packets transmitted via the first transport queue; and

generating at least a first data packet based on the first message, wherein a size of the generated first data packet is less than or equal to the MTU for the first transport queue.

2 . The computer-implemented method according to claim 1 , further comprising determining, based on the first message size and/or the first order, that a minimum packet size for the first message exceeds the MTU for the first transport queue.

3 . The computer-implemented method according to claim 2 , further comprising generating one or more second data packets based on the first message for transmitting via a second transport queue of the communication network that is independent of the first transport queue.

4 . The computer-implemented method according to claim 3 , wherein packet spreading operations are unavailable to the second transport queue.

5 . The computer-implemented method according to claim 3 , wherein a MTU for the second transport queue is greater than the MTU of the first transport queue.

6 . The computer-implemented method according to claim 1 , further comprising transmitting the first data packet via the first transport queue.

7 . The computer-implemented method according to claim 1 , wherein the portion of the data entries of the first message associated with the first order are associated with one or more data encryption operations.

8 . A computing device comprising:

a non-transitory storage device; and

a processor coupled to the non-transitory storage device, wherein the processor is configured to:

receive a first transmission request associated with a first message for transmission via a communication network, wherein the first message comprises:

one or more data entries;

a first message size defined at least in part by the one or more data entries; and

a first order by which at least a portion of the data entries of the first message are to be executed;

determine a maximum transport unit (MTU) for a first transport queue associated with the communication network, wherein:

the first transport queue is associated with packet spreading operations over the communication network such that at least a portion of data entries forming data packets that are sent via the first transport queue are transmitted to different nodes of the communication network; and

the MTU of the first transport queue defines a maximum packet size for packets transmitted via the first transport queue; and

generate at least a first data packet based on the first message, wherein a size of the generated first data packet is less than or equal to the MTU for the first transport queue.

9 . The computing device according to claim 8 , wherein the processor is further configured to determine, based on the first message size and/or the first order, that a minimum packet size for the first message exceeds the MTU for the first transport queue.

10 . The computing device according to claim 9 , wherein the processor is further configured to generate one or more second data packets based on the first message for transmitting via a second transport queue of the communication network that is independent of the first transport queue.

11 . The computing device according to claim 10 , wherein packet spreading operations are unavailable to the second transport queue.

12 . The computing device according to claim 10 , wherein a MTU for the second transport queue is greater than the MTU of the first transport queue.

13 . The computing device according to claim 8 , wherein the processor is further configured to cause transmission of the first data packet via the first transport queue.

14 . The computing device according to claim 8 , wherein the portion of the data entries of the first message associated with the first order are associated with one or more data encryption operations.

15 . A computer program product comprising at least one non-transitory computer-readable storage medium having computer program code thereon that, in execution with at least one processor, configures the computer program product for:

receiving a first transmission request associated with a first message for transmission via a communication network, wherein the first message comprises:

one or more data entries;

a first message size defined at least in part by the one or more data entries; and

a first order by which at least a portion of the data entries of the first message are to be executed;

determining a maximum transport unit (MTU) for a first transport queue associated with the communication network, wherein:

the first transport queue is associated with packet spreading operations over the communication network such that at least a portion of data entries forming data packets that are sent via the first transport queue are transmitted to different nodes of the communication network; and

the MTU of the first transport queue defines a maximum packet size for packets transmitted via the first transport queue; and

generating at least a first data packet based on the first message, wherein a size of the generated first data packet is less than or equal to the MTU for the first transport queue.

16 . The computer program product according to claim 15 , further configured for determining, based on the first message size and/or the first order, that a minimum packet size for the first message exceeds the MTU for the first transport queue.

17 . The computer program product according to claim 16 , further configured for generating one or more second data packets based on the first message for transmitting via a second transport queue of the communication network that is independent of the first transport queue.

18 . The computer program product according to claim 17 , wherein packet spreading operations are unavailable to the second transport queue.

19 . The computer program product according to claim 17 , wherein a MTU for the second transport queue is greater than the MTU of the first transport queue.

20 . The computer program product according to claim 15 , further configured for transmitting the first data packet via the first transport queue.