IP Library › Granted Patent US 12,219,037
Granted Patent B2
US 12,219,037 · App. 18/298,789 · Granted Feb 4, 2025

Hardware-accelerated service mesh

Inventors: Rajiv Asati (Morrisville, NC); Edward Albert Warnicke (Austin, TX)
Assignee: Cisco Technology, Inc.
H04L69/22H04L67/02
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,219,037
App. No.
18/298,789
Granted
Feb 4, 2025
Kind
B2
Abstract

A method of managing data streaming processes may include at a processing device, computing hypertext transmission protocol version 3 (HTTP/3) header of a first message received at a first network interface controller (NIC) into a first control message and a second control message, and transmitting the first control message to the first NIC associated with the processing device. The method may further include transmitting the second control message to a second NIC associated with the processing device, and with the first control message and the second control message, transmitting data directly between the first NIC and the second NIC.

Claims (89)

1. A non-transitory computer-readable medium storing instructions that, when executed, causes a processor to perform operations, comprising:

at a processing device, computing a hypertext transmission protocol version 3 (HTTP/3) header of a first message received at a first network interface controller (NIC) of a source computing device within a mesh network into a first control message and a second control message;

transmitting the first control message to the first NIC, wherein the first control message defines a destination computing device to which a payload is to be sent;

transmitting the second control message to a second NIC of a requesting computing device within the mesh network and communicatively coupled to the processing device, wherein the second control message defines instructions to the destination computing device to expect the payload; and

with the first control message and the second control message, transmitting data directly between the first NIC and the second NIC.

2. The non-transitory computer-readable medium of claim 1 , the operations further comprising:

copying the HTTP/3 header of the first message to a cache associated with the processing device;

generating a response header based on the HTTP/3 header;

transmitting the response header to the second NIC;

including the response header in a first data packet based on the second control message; and

transmitting the first data packet to a destination device based on the second control message.

3. The non-transitory computer-readable medium of claim 1 , the operations further comprising:

with the first NIC:

extracting first data from a first data packet received at the first NIC based on the first control message; and

transmitting the first data to the second NIC based on the first control message.

4. The non-transitory computer-readable medium of claim 3 , the operations further comprising:

with the second NIC:

generating a second data packet;

encapsulating the first data in the second data packet based on the second control message; and

transmitting the second data packet from the second NIC to a destination computing device.

5. The non-transitory computer-readable medium of claim 4 , the operations further comprising:

with the second NIC:

extracting second data from a third data packet received at the second NIC based on the second control message; and

transmitting the second data to the first NIC based on the second control message.

6. The non-transitory computer-readable medium of claim 5 , the operations further comprising:

with the first NIC:

generating a fourth data packet;

encapsulating the second data in the fourth data packet based on the first control message; and

transmitting the fourth data packet from the first NIC to a source computing device.

7. A method of managing data streaming processes, comprising:

at a processing device, computing hypertext transmission protocol version 3 (HTTP/3) header of a first message received at a first network interface controller (NIC) of a source computing device within a mesh network into a first control message and a second control message;

transmitting the first control message to the first NIC, wherein the first control message defines a destination computing device to which a payload is to be sent;

transmitting the second control message to a second NIC of a requesting computing device within the mesh network and communicatively coupled to the processing device, wherein the second control message defines instructions to the destination computing device to expect the payload; and

with the first control message and the second control message, transmitting data directly between the first NIC and the second NIC.

8. The method of claim 7 , further comprising:

copying the HTTP/3 header of the first message to a cache associated with the processing device;

generating a response header based on the HTTP/3 header;

transmitting the response header to the second NIC;

including the response header in a first data packet based on the second control message; and

transmitting the first data packet to a destination device based on the second control message.

9. The method of claim 7 , further comprising:

with the first NIC:

extracting first data from a first data packet received at the first NIC based on the first control message; and

transmitting the first data to the second NIC based on the first control message.

10. The method of claim 9 , further comprising:

with the second NIC:

generating a second data packet;

encapsulating the first data in the second data packet based on the second control message; and

transmitting the second data packet from the second NIC to a destination computing device.

11. The method of claim 10 , further comprising:

with the second NIC:

extracting second data from a third data packet received at the second NIC based on the second control message; and

transmitting the second data to the first NIC based on the second control message.

12. The method of claim 11 , further comprising:

with the first NIC:

generating a fourth data packet;

encapsulating the second data in the fourth data packet based on the first control message; and

transmitting the fourth data packet from the first NIC to a source computing device.

13. A system comprising:

a processor; and

a non-transitory computer-readable media storing instructions that, when executed by the processor, causes the processor to perform operations comprising:

at the processor, computing a hypertext transmission protocol version 3 (HTTP/3) header of a first message received at a first network interface controller (NIC) of a source computing device within a mesh network into a first control message and a second control message;

transmitting the first control message to the first NIC, wherein the first control message defines a destination computing device to which a payload is to be sent;

transmitting the second control message to a second NIC of a requesting computing device within the mesh network and communicatively coupled to the processor, wherein the second control message defines instructions to the destination computing device to expect the payload; and

with the first control message and the second control message, transmitting data directly between the first NIC and the second NIC.

14. The system of claim 13 , the operations further comprising:

copying the HTTP/3 header of the first message to a cache associated with the processor;

generating a response header based on the HTTP/3 header;

transmitting the response header to the second NIC;

including the response header in a first data packet based on the second control message; and

transmitting the first data packet to a destination device based on the second control message.

15. The system of claim 13 , the operations further comprising:

with the first NIC:

extracting first data from a first data packet received at the first NIC based on the first control message; and

transmitting the first data to the second NIC based on the first control message.

16. The system of claim 15 , the operations further comprising:

with the second NIC:

generating a second data packet;

encapsulating the first data in the second data packet based on the second control message; and

transmitting the second data packet from the second NIC to a destination computing device.

17. The system of claim 16 , the operations further comprising:

with the second NIC:

extracting second data from a third data packet received at the second NIC based on the second control message; and

transmitting the second data to the first NIC based on the second control message.

18. The system of claim 17 , the operation further comprising:

with the first NIC:

generating a fourth data packet;

encapsulating the second data in the fourth data packet based on the first control message; and

transmitting the fourth data packet from the first NIC to a source computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2023
From: ASATI, RAJIV; WARNICKE, EDWARD ALBERT
To: CISCO TECHNOLOGY, INC.
Reel/Frame 063292/0479 →
Continuity (1)
Related Publication 20240348708A1 · Oct 17, 2024
References Cited (10)
US 20160150055A1 · Choi · 2016 [cited by examiner]
US 20210117242A1 · Van De Groenendaal et al. · 2021 [cited by applicant]
US 20210243247A1 · He et al. · 2021 [cited by applicant]
US 20220014459A1 · Ganguli et al. · 2022 [cited by applicant]
US 20220109693A1 · Mashargah et al. · 2022 [cited by applicant]
US 20220217085A1 · Sankar et al. · 2022 [cited by applicant]
US 20220263913A1 · Zhang · 2022 [cited by examiner]
US 20220311681A1 · Palladino et al. · 2022 [cited by applicant]
US 20230074934A1 · Li · 2023 [cited by examiner]
European Search Report for European Application No. 24168566.8, dated Aug. 13, 2024, 11 Pages. [cited by applicant]