IP Library Granted Patent US 11,968,170
Granted Patent B2
US 11,968,170 · App. 18/174,948 · Granted Apr 23, 2024

Networking as a service

Inventors: Tolga Asveren (Bordentown, NJ); Vijay Amritraj (Nashua, NH); Souvik Dey (Groton, MA)
Assignee: Ribbon Communications Operating Company, Inc.
H04L61/5007H04L45/72H04L45/745H04L47/20H04L63/08
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 11,968,170
App. No.
18/174,948
Granted
Apr 23, 2024
Kind
B2
Abstract

A method performed by a computing system includes receiving a first request from a first pod being executed on the computing system, responding to the first request with an Internet Protocol (IP) address and a first port range, receiving a second request from a second pod being executed on the computing system, and responding to the second request with the Internet Protocol (IP) address and a second port range that is different than the first port range. The method further includes, with a networking service implemented within the kernel, processing network traffic between external entities and the first and second pods by updating source and destination IP addresses and ports of packets of the network traffic.

Claims (37)

1. A method performed by a computing system, the method comprising:

providing, from a first pod executing on the computing system to a networking service implemented within a kernel on the computing system, a data structure having a mapping for processing network packets, the mapping being based on signaling information for a communication session between external entities;

receiving network traffic of the communication session, wherein the network traffic is received by a network interface card (NIC) of the computing system;

processing data of the network traffic by the first pod according to a service provided by the first pod;

receiving the network traffic at the networking service from the first pod subsequent to processing the data of the network traffic; and

with the networking service, routing the network traffic to one of the external entities via the NIC, including updating address information of the network traffic according to the mapping.

2. The method of claim 1 , wherein the first pod is part of a plurality of pods executed on the computing system, each of the pods of the plurality of pods sharing an IP address but having different port ranges, wherein a first IP address and a first port range are assigned to the first pod for a duration of the first pod.

3. The method of claim 1 , wherein the first pod is part of a plurality of pods executed on the computing system, each of the pods of the plurality of pods sharing an IP address but having different port ranges, wherein a first IP address and a first port range are assigned for a duration of the communication session being processed by the first pod.

4. The method of claim 1 , wherein the networking service is implemented as an extended Berkeley Packet Filter (eBPF).

5. The method of claim 1 , wherein the first pod performs a signaling function for a communication network.

6. The method of claim 1 , wherein the first pod performs a transcoding function for a communication network.

7. The method of claim 6 , wherein the networking service communicates with the first pod through an eXpress Data Path (XDP) socket.

8. The method of claim 1 , wherein the networking service utilizes a signaling policing service to authenticate and/or authorize the network traffic.

9. The method of claim 1 , wherein the NIC comprises a virtual NIC.

10. The method of claim 9 , wherein the NIC is one of a plurality of NICs associated with the networking service.

11. A method comprising:

providing, from a first pod executing on a computing system to a networking service implemented within a kernel on the computing system, a data structure having a mapping for processing network packets, the mapping being based on signaling information for a communication session between external entities;

receiving network traffic of the communication session, wherein the network traffic is received by a network interface card (NIC) of the computing system;

processing data of the network traffic by the first pod according to a service provided by the first pod;

receiving the network traffic at the networking service from the first pod subsequent to processing the data of the network traffic; and

with the networking service, routing the network traffic to one of the external entities via the NIC, including updating address information of the network traffic according to the mapping.

12. The method of claim 11 , wherein the first pod is part of a Session Border Controller (SBC) application.

13. The method of claim 12 , wherein the first pod is configured to perform a signaling function for the SBC.

14. The method of claim 12 , wherein the first pod is configured to perform a transcoding function for the SBC.

15. The method of claim 11 , wherein the computing system comprises a virtual computing system.

16. The method of claim 11 , wherein the updating is performed by the networking service implemented as an extended Berkeley Packet Filter (eBPF).

17. The method of claim 16 , wherein the networking service uses eXpress Data Patch (XDP) sockets to connect to the first pod, and wherein the first pod is configured for transcoding.

18. A system comprising:

a processor; and

a memory comprising machine readable instructions that when executed by the processor cause the system to:

provide, from a first pod executing on the processor to a networking service implemented within a kernel executing on the processor, a data structure having a mapping for processing network packets, the mapping being based on signaling information for a communication session between external entities;

receive network traffic of the communication session, wherein the network traffic is received by a network interface card (NIC) of the system;

process data of the network traffic by the first pod according to a service provided by the first pod;

receive the network traffic at the networking service from the first pod subsequent to processing the data of the network traffic; and

with the networking service, route the network traffic to one of the external entities via the NIC, including updating address information of the network traffic according to the mapping.

19. The system of claim 18 , wherein the first pod is part of a plurality of pods executed on the system, each of the pods of the plurality of pods configured to share an IP address but having different port ranges, wherein a first IP address and a first port range are assigned to the first pod for a duration of the first pod.

20. The system of claim 18 , wherein the first pod is part of a plurality of pods executed on the system, each of the pods of the plurality of pods configured to share an IP address but having different port ranges, wherein a first IP address and a first port range are assigned for a duration of the communication session being processed by the first pod.

Assignments (2)
SHORT-FORM PATENTS SECURITY AGREEMENT Recorded Sep 5, 2024
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 068857/0290 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2023
From: ASVEREN, TOLGA; AMRITRAJ, VIJAY; DEY, SOUVIK
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
Reel/Frame 062813/0141 →