IP Library › Granted Patent US 11,316,823
Granted Patent B2
US 11,316,823 · App. 17/395,120 · Granted Apr 26, 2022

Methods and systems for efficient virtualization of inline transparent computer networking devices

Inventors: Richard Goodwin (York, ME); Paul Sprague (North Berwick, ME); Peter Geremia (Portsmouth, NJ); Sean Moore (Hollis, NH)
Assignee: Centripetal Networks, Inc.
H04L61/2528H04L45/68H04L61/2514H04L61/6022H04L61/6068
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,316,823
App. No.
17/395,120
Granted
Apr 26, 2022
Kind
B2
Abstract

Network devices that are inserted inline into network links and process in-transit packets may significantly improve their packet-throughput performance by not assigning L3 IP addresses and L2 MAC addresses to their network interfaces and thereby process packets through a logical fast path that bypasses the slow path through the operating system kernel. When virtualizing such Bump-In-The-Wire (BITW) devices for deployment into clouds, the network interfaces must have L3 IP and L2 MAC addresses assigned to them. Thus, packets are processed through the slow path of a virtual BITW device, significantly reducing the performance. By adding new logic to the virtual BITW device and/or configuring proxies, addresses, subnets, and/or routing tables, a virtual BITW device can process packets through the fast path and potentially improve performance accordingly. For example, the virtual BITW device may be configured to enforce a virtual path (comprising the fast path) through the virtual BITW device.

Claims (99)

1. A method comprising:

provisioning a device into a virtual path;

configuring network address mapper (NAM) logic with:

a plurality of addresses of virtual path terminals connected via the virtual path;

a plurality of addresses of network interfaces corresponding to subnets of the virtual path terminals; and

proxy information,

wherein the configuring the NAM logic comprises configuring the NAM logic such that each of the virtual path terminals is exclusively mapped to one of the network interfaces, and wherein the network interfaces comprise:

a first network interface of the device corresponding to a first subnet that is configured to interface with a network interface of a network address translation (NAT) gateway; and

a second network interface of the device corresponding to a second subnet that is configured to interface with a network interface of a target, wherein the first subnet and the second subnet are non-overlapping;

configuring the NAT gateway to translate at least one public Internet Protocol (IP) address to a private IP address associated with the device; and

providing at least one cloud routing table configured to enforce virtual path routing through the device and the NAT gateway.

2. The method of claim 1 , wherein the device comprises a virtual bump-in-the-wire (BITW) device.

3. The method of claim 1 , wherein the plurality of addresses of the virtual path terminals comprises:

a plurality of Internet Protocol (IP) addresses of the virtual path terminals; and

a plurality of media access control (MAC) addresses of the virtual path terminals.

4. The method of claim 1 , wherein the plurality of addresses of the network interfaces comprises:

a plurality of Internet Protocol (IP) addresses of the network interfaces; and

a plurality of media access control (MAC) addresses of the network interfaces.

5. The method of claim 1 , wherein the virtual path comprises a fast path through the device, and wherein the device is configured to send at least one packet received from the NAT gateway via the fast path.

6. The method of claim 1 , wherein the cloud routing table is configured to enforce outbound virtual path routing through the device and the NAT gateway.

7. A method comprising:

receiving, by a network address translation (NAT) gateway, a packet addressed to a public Internet Protocol (IP) address;

translating, by the NAT gateway, the public IP address to a private IP address of a device that is provisioned into a virtual path, wherein the device comprises network address mapper (NAM) logic configured with:

a plurality of addresses of virtual path terminals connected via the virtual path;

a plurality of addresses of network interfaces corresponding to subnets of the virtual path terminals; and

proxy information,

wherein each of the virtual path terminals is exclusively mapped to one of the network interfaces, and wherein the network interfaces comprise:

a first network interface of the device corresponding to a first subnet that is configured to interface with a network interface of the NAT gateway; and

a second network interface of the device corresponding to a second subnet that is configured to interface with a network interface of a target, wherein the first subnet and the second subnet are non-overlapping; and

sending by the NAT gateway, the packet towards the private IP address.

8. The method of claim 7 , further comprising routing, using at least one cloud routing table, the packet through the virtual path via the NAT gateway and the device.

9. The method of claim 7 , wherein the device comprises a virtual bump-in-the-wire (BITW) device.

10. The method of claim 7 , wherein the plurality of addresses of the virtual path terminals comprises:

a plurality of Internet Protocol (IP) addresses of the virtual path terminals; and

a plurality of media access control (MAC) addresses of the virtual path terminals.

11. The method of claim 7 , wherein the plurality of addresses of the network interfaces comprises:

a plurality of Internet Protocol (IP) addresses of the network interfaces; and

a plurality of media access control (MAC) addresses of the network interfaces.

12. The method of claim 7 , wherein the virtual path comprises a fast path through the device.

13. A network address translation (NAT) gateway comprising:

one or more processors; and

one or more computer-readable media storing instructions that, when executed by the one or more processors, cause the NAT gateway to:

receive a packet addressed to a public Internet Protocol (IP) address;

translate the public IP address to a private IP address of a device that is provisioned into a virtual path, wherein the device comprises network address mapper (NAM) logic configured with:

a plurality of addresses of virtual path terminals connected via the virtual path;

a plurality of addresses of network interfaces corresponding to subnets of the virtual path terminals; and

proxy information,

wherein each of the virtual path terminals is exclusively mapped to one of the network interfaces, and wherein the network interfaces comprise:

a first network interface of the device corresponding to a first subnet that is configured to interface with a network interface of the NAT gateway; and

a second network interface of the device corresponding to a second subnet that is configured to interface with a network interface of a target, wherein the first subnet and the second subnet are non-overlapping; and

send the packet towards the private IP address.

14. The NAT gateway of claim 13 , wherein the instructions, when executed by the one or more processors, further cause the NAT gateway to enforce routing, using at least one cloud routing table, of the packet through the virtual path via the NAT gateway and the device.

15. The NAT gateway of claim 13 , wherein the plurality of addresses of the virtual path terminals comprises:

a plurality of Internet Protocol (IP) addresses of the virtual path terminals; and

a plurality of media access control (MAC) addresses of the virtual path terminals.

16. The NAT gateway of claim 13 , wherein the plurality of addresses of the network interfaces comprises:

a plurality of Internet Protocol (IP) addresses of the network interfaces; and

a plurality of media access control (MAC) addresses of the network interfaces.

17. A system comprising:

a network address translation (NAT) gateway comprising:

one or more processors; and

one or more computer-readable media storing instructions; and

a device that is provisioned into a virtual path and that has a private Internet Protocol (IP) address, the device comprising network address mapper (NAM) logic configured with:

a plurality of addresses of virtual path terminals connected via the virtual path;

a plurality of addresses of network interfaces corresponding to subnets of the virtual path terminals; and

proxy information,

wherein each of the virtual path terminals is exclusively mapped to one of the network interfaces, and wherein the network interfaces comprise:

a first network interface of the device corresponding to a first subnet that is configured to interface with a network interface of the NAT gateway; and

a second network interface of the device corresponding to a second subnet that is configured to interface with a network interface of a target, wherein the first subnet and the second subnet are non-overlapping, and

wherein the instructions, when executed by the one or more processors, cause the NAT gateway to:

receive a packet addressed to a public Internet Protocol (IP) address;

translate the public IP address to the private IP address of the device; and

send the packet towards the private IP address of the device.

18. The system of claim 17 , wherein the instructions, when executed by the one or more processors, further cause the NAT gateway to enforce routing, using at least one cloud routing table, of the packet through the virtual path via the NAT gateway and the device.

19. The system of claim 17 , wherein the device comprises a virtual bump-in-the-wire (BITW) device.

20. The system of claim 17 , wherein the plurality of addresses of the virtual path terminals comprises:

a plurality of Internet Protocol (IP) addresses of the virtual path terminals; and

a plurality of media access control (MAC) addresses of the virtual path terminals.

21. The system of claim 17 , wherein the plurality of addresses of the network interfaces comprises:

a plurality of Internet Protocol (IP) addresses of the network interfaces; and

a plurality of media access control (MAC) addresses of the network interfaces.

22. The system of claim 17 , wherein the virtual path comprises a fast path through the device.

23. A non-transitory computer-readable medium storing instructions that, when executed, cause a network address translation (NAT) gateway to:

receive a packet addressed to a public Internet Protocol (IP) address;

translate the public IP address to a private IP address of a device that is provisioned into a virtual path, wherein the device comprises network address mapper (NAM) logic configured with:

a plurality of addresses of virtual path terminals connected via the virtual path;

a plurality of addresses of network interfaces corresponding to subnets of the virtual path terminals; and

proxy information,

wherein each of the virtual path terminals is exclusively mapped to one of the network interfaces, and wherein the network interfaces comprise:

a first network interface of the device corresponding to a first subnet that is configured to interface with a network interface of the NAT gateway; and

a second network interface of the device corresponding to a second subnet that is configured to interface with a network interface of a target, wherein the first subnet and the second subnet are non-overlapping; and

send the packet towards the private IP address.

24. The non-transitory computer-readable medium of claim 23 , wherein the instructions, when executed, further cause the NAT gateway to enforce routing, using at least one cloud routing table, of the packet through the virtual path via the NAT gateway and the device.

25. The non-transitory computer-readable medium of claim 23 , wherein the plurality of addresses of the virtual path terminals comprises:

a plurality of Internet Protocol (IP) addresses of the virtual path terminals; and

a plurality of media access control (MAC) addresses of the virtual path terminals.

26. The non-transitory computer-readable medium of claim 23 , wherein the plurality of addresses of the network interfaces comprises:

a plurality of Internet Protocol (IP) addresses of the network interfaces; and

a plurality of media access control (MAC) addresses of the network interfaces.

Assignments (2)
CHANGE OF NAME Recorded Jan 24, 2023
From: CENTRIPETAL NETWORKS, INC.
To: CENTRIPETAL NETWORKS, LLC
Reel/Frame 062480/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: GOODWIN, RICHARD; SPRAGUE, PAUL; GEREMIA, PETER; MOORE, SEAN
To: CENTRIPETAL NETWORKS, INC.
Reel/Frame 058403/0431 →
Continuity (2)
Provisional Application 63071174 · Aug 27, 2020
Related Publication 20220070140A1 · Mar 3, 2022
Cited By (1)
US 12,526,223