IP Library Patent Application 18603923
Patent Application
App. No. 18/603,923

EFFICIENT PACKET PROCESSING IN A SHARED MEMORY REGION

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 None
App. No.
18/603,923
Abstract

Described herein are systems, methods, and other techniques for processing data packets at a compute infrastructure. An application running on the compute infrastructure allocates a region of a memory for a network interface controller to write or read inbound or outbound data packets. A data packet is received at the network interface controller. The data packet is directly written to the region of the memory. A section of the region of the memory adjacent to the data packet is reserved as headroom such that a memory address occupied by the data packet is adjacent to a memory address occupied by the headroom. The application processes the data packet at the region of the memory by adding data to the data packet, wherein adding the data to the data packet causes the data packet to use at least a portion of the headroom.

Claims (60)

1 . A method of processing data packets at a compute infrastructure, the method comprising:

allocating, by an application running on the compute infrastructure, a region of a memory for a network interface controller to write or read inbound or outbound data packets;

receiving a data packet at the network interface controller;

directly writing the data packet to the region of the memory;

reserving a section of the region of the memory adjacent to the data packet as headroom such that a memory address occupied by the data packet is adjacent to a memory address occupied by the headroom; and

processing, by the application, the data packet at the region of the memory by adding data to the data packet, wherein adding the data to the data packet causes the data packet to use at least a portion of the headroom.

2 . The method of claim 1 , further comprising:

in response to allocating the region of the memory, instructing, by the application, the network interface controller to read or write the outbound or inbound data packets from/to the region of the memory.

3 . The method of claim 1 , further comprising:

receiving a second data packet at the network interface controller, wherein the data packet is a first data packet;

directly writing the second data packet to the region of the memory;

reserving a second section of the region of the memory adjacent to the second data packet as second headroom such that a memory address occupied by the second data packet is adjacent to a memory address occupied by the second headroom; and

processing, by the application, the second data packet at the region of the memory by adding second data to the data packet, wherein adding the second data to the second data packet causes the second data packet to use at least a portion of the second headroom;

wherein processing the first data packet and the second data packet includes encapsulating the first data packet and the second data packet within a baseband frame for transmission via a satellite.

4 . The method of claim 1 , further comprising:

in response to writing the data packet to the region of the memory, sending, by the network interface controller, an event to the application indicating that the data packet has been written to the region of the memory.

5 . The method of claim 4 , wherein the event further indicates the memory address occupied by the data packet.

6 . The method of claim 1 , wherein processing the data packet at the region of the memory further includes:

encapsulating the data packet within a baseband frame for transmission via a satellite.

7 . The method of claim 1 , wherein the application includes one or more virtual network functions (VNF) running on the compute infrastructure.

8 . The method of claim 1 , wherein the compute infrastructure is part of a gateway of a satellite communication system.

9 . The method of claim 1 , wherein the compute infrastructure is part of a terminal of a satellite communication system.

10 . The method of claim 1 , wherein the data packet is received over a terrestrial network.

11 . A non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to perform operations for processing data packets at a compute infrastructure, the operations comprising:

allocating, by an application running on the compute infrastructure, a region of a memory for a network interface controller to write or read inbound or outbound data packets;

receiving a data packet at the network interface controller;

directly writing the data packet to the region of the memory;

reserving a section of the region of the memory adjacent to the data packet as headroom such that a memory address occupied by the data packet is adjacent to a memory address occupied by the headroom; and

processing, by the application, the data packet at the region of the memory by adding data to the data packet, wherein adding the data to the data packet causes the data packet to use at least a portion of the headroom.

12 . The non-transitory computer-readable medium of claim 11 , wherein the operations further comprise:

in response to allocating the region of the memory, instructing, by the application, the network interface controller to read or write the outbound or inbound data packets from/to the region of the memory.

13 . The non-transitory computer-readable medium of claim 11 , wherein the operations further comprise:

receiving a second data packet at the network interface controller, wherein the data packet is a first data packet;

directly writing the second data packet to the region of the memory;

reserving a second section of the region of the memory adjacent to the second data packet as second headroom such that a memory address occupied by the second data packet is adjacent to a memory address occupied by the second headroom; and

processing, by the application, the second data packet at the region of the memory by adding second data to the data packet, wherein adding the second data to the second data packet causes the second data packet to use at least a portion of the second headroom;

wherein processing the first data packet and the second data packet includes encapsulating the first data packet and the second data packet within a baseband frame for transmission via a satellite.

14 . The non-transitory computer-readable medium of claim 11 , wherein the operations further comprise:

in response to writing the data packet to the region of the memory, sending, by the network interface controller, an event to the application indicating that the data packet has been written to the region of the memory.

15 . The non-transitory computer-readable medium of claim 14 , wherein the event further indicates the memory address occupied by the data packet.

16 . The non-transitory computer-readable medium of claim 11 , wherein processing the data packet at the region of the memory further includes:

encapsulating the data packet within a baseband frame for transmission via a satellite.

17 . A system comprising:

one or more processors; and

a non-transitory computer-readable medium comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations for processing data packets at a compute infrastructure, the operations comprising:

allocating, by an application running on the compute infrastructure, a region of a memory for a network interface controller to write or read inbound or outbound data packets;

receiving a data packet at the network interface controller;

directly writing the data packet to the region of the memory;

reserving a section of the region of the memory adjacent to the data packet as headroom such that a memory address occupied by the data packet is adjacent to a memory address occupied by the headroom; and

processing, by the application, the data packet at the region of the memory by adding data to the data packet, wherein adding the data to the data packet causes the data packet to use at least a portion of the headroom.

18 . The system of claim 17 , wherein the operations further comprise:

in response to allocating the region of the memory, instructing, by the application, the network interface controller to read or write the outbound or inbound data packets from/to the region of the memory.

19 . The system of claim 17 , wherein the operations further comprise:

receiving a second data packet at the network interface controller, wherein the data packet is a first data packet;

directly writing the second data packet to the region of the memory;

reserving a second section of the region of the memory adjacent to the second data packet as second headroom such that a memory address occupied by the second data packet is adjacent to a memory address occupied by the second headroom; and

processing, by the application, the second data packet at the region of the memory by adding second data to the data packet, wherein adding the second data to the second data packet causes the second data packet to use at least a portion of the second headroom;

wherein processing the first data packet and the second data packet includes encapsulating the first data packet and the second data packet within a baseband frame for transmission via a satellite.

20 . The system of claim 17 , wherein the operations further comprise:

in response to writing the data packet to the region of the memory, sending, by the network interface controller, an event to the application indicating that the data packet has been written to the region of the memory.

Assignments (2)
SECURITY INTEREST Recorded Mar 17, 2026
From: FLORIDA TURBINE TECHNOLOGIES INC.; KRATOS ANTENNA SOLUTIONS CORPORATION; KRATOS INTEGRAL HOLDINGS, LLC; KRATOS SRE, INC.; KRATOS TECHNOLOGY & TRAINING SOLUTIONS, INC.; KRATOS UNMANNED AERIAL SYSTEMS, INC.; MICRO SYSTEMS, INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 075103/0203 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2024
From: KUSCHEL, SEBASTIAN
To: KRATOS INTEGRAL HOLDINGS LLC.
Reel/Frame 067496/0691 →