IP Library Granted Patent US 11,012,259
Granted Patent B1
US 11,012,259 · App. 16/130,977 · Granted May 18, 2021

Systems and methods for preserving system contextual information in an encapsulated packet

Inventors: Mark McConnaughay (Ontario, CA); Gary Tomic (Ontario, CA); Ron Frederick (Mountain View, CA)
Assignee: CA, Inc.
H04L12/4633H04L12/4641H04L61/251H04L67/1002H04L69/167H04L69/22
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,012,259
App. No.
16/130,977
Granted
May 18, 2021
Kind
B1
Abstract

The disclosed computer-implemented method for preserving system contextual information in an encapsulated packet may include (1) receiving, at a computing device, a network packet from the network via a network adapter port, (2) encapsulating the received network packet with a tunnel header, where a network identifier field in the tunnel header comprises information identifying the network adapter port, (3) determine an outer Internet protocol (IP) address for the encapsulated network packet, where the destination IP address corresponds to a destination on the network, (4) addressing an outer header of the encapsulated network packet with the IP address, and (5) sending the encapsulated network packet toward the destination identified by the destination IP address. Various other methods, systems, and computer-readable media are also disclosed.

Claims (69)

1. A computer-implemented method for preserving system contextual information in an encapsulated packet, at least a portion of the method being performed by a computing device comprising at least one processor, the computing device being connected to a network, the method comprising:

receiving, at the computing device, a network packet from the network via a network adapter port;

encapsulating the received network packet with a tunnel header, wherein a network identifier field in the tunnel header comprises information identifying the network adapter port via which the network packet was received;

determining an outer Internet protocol (IP) address for the encapsulated network packet;

sending the encapsulated packet to a load balancer;

receiving the encapsulated packet from the load balancer, wherein the received encapsulated packet has a destination IP address, assigned by the load balancer, that updates the outer IP address; and

sending the encapsulated network packet toward the destination identified by the destination IP address.

2. The computer-implemented method of claim 1 , wherein the network identifier field further comprises information describing at least one of:

network adapter port information; and

a function to be performed on the received network packet.

3. The computer-implemented method of claim 1 , further comprising:

identifying a function to be performed on the received network packet; and

assigning a network identifier to the network identifier field based on the function to be performed.

4. The computer-implemented method of claim 3 , wherein the function to be performed is to be performed by another computing device.

5. The computer-implemented method of claim 3 , wherein the function is a security action.

6. The computer-implemented method of claim 1 , further comprising assigning a network identifier to a specific function.

7. The computer-implemented method of claim 1 , wherein a network identifier identifies a subcomponent of another computing device.

8. The computer-implemented method of claim 1 , wherein encapsulating leaves contents of the received network packet unchanged.

9. The computer-implemented method of claim 1 , wherein addressing the outer IP header further comprises:

querying another computing device to identify a virtual subcomponent of the other computing device; and

using the external IP address of the other computing device as the destination IP address.

10. The computer-implemented method of claim 1 , wherein sending the encapsulated packet toward the destination further comprises:

determining the destination of the encapsulated network packet is within the computing device;

decapsulating the encapsulated packet; and

forwarding the decapsulated network packet to the destination in the computing device.

11. The computer-implemented method of claim 10 , further comprising performing a function on the decapsulated packet, wherein the function uses the information identifying the network adapter port.

12. The computer-implemented method of claim 1 , wherein sending the encapsulated packet toward the destination further comprises:

determining the destination of the encapsulated network packet is in another computing device;

updating the outer IP header with a respective address of the other computing device; and

forwarding the encapsulated network packet to the other computing device.

13. The computer-implemented method of claim 1 , further comprising:

querying another computing device to identify a specific function of the other computing device; and

mapping a network identifier associated with the specific function of the other computing device to an external IP address of the other computing device.

14. The computer-implemented method of claim 13 , further comprising translating the network identifier of the specific function of the other computing device to the external IP address of the other computing device, wherein addressing the outer IP header further comprises using the external IP address of the other computing device as the destination IP address.

15. The computer-implemented method of claim 1 , wherein:

the received network packet is IPv4 compatible and the encapsulated network packet is IPv6 compatible;

the received network packet is IPv6 compatible and the encapsulated network packet is IPv4 compatible;

the received network packet is IPv4 compatible and the encapsulated network packet is IPv4 compatible; or

the received network packet is IPv6 compatible and the encapsulated network packet is IPv6 compatible.

16. The computer-implemented method of claim 1 , wherein determining the outer IP address for the encapsulated network packet further comprises using the information identifying the network adapter port to determine the outer IP address.

17. A system for preserving system contextual information in an encapsulated packet, the system comprising:

at least one physical processor connected to a network; and

physical memory comprising computer-executable instructions that, when executed by the physical processor, cause the physical processor to:

receive a network packet from the network via a network adapter port;

encapsulate the received network packet with a tunnel header, wherein a network identifier field in the tunnel header comprises information identifying the network adapter port via which the network packet was received;

determine an outer Internet protocol (IP) address for the encapsulated network;

send the encapsulated packet to a load balancer;

receive the encapsulated packet from the load balancer, wherein the received encapsulated packet has a destination IP address, assigned by the load balancer, that updates the outer IP address; and

send the encapsulated network packet toward the destination identified by the destination IP address.

18. The system of claim 17 , wherein the network identifier field further comprises information describing at least one of:

network adapter port information; and

a function to be performed on the received network packet.

19. A non-transitory computer-readable medium comprising one or more computer-executable instructions that, when executed by at least one processor of a computing device connected to a network, cause the computing device to:

receive, at the computing device, a network packet from the network via a network adapter port;

encapsulate the received network packet with a tunnel header, wherein a network identifier field in the tunnel header comprises information identifying the network adapter port via which the network packet was received;

determine an outer Internet protocol (IP) address for the encapsulated network packet;

send the encapsulated packet to a load balancer;

receive the encapsulated packet from the load balancer, wherein the received encapsulated packet has a destination IP address, assigned by the load balancer, that updates the outer IP address; and

send the encapsulated network packet toward the destination identified by the destination IP address.

20. The non-transitory computer-readable medium of claim 19 , wherein the network identifier field further comprises information describing at least one of:

network adapter port information; and

a function to be performed on the received network packet.

21. The computer-implemented method of claim 1 , wherein the load balancer operations on the encapsulated packet change only the outer IP address.

22. The computer-implemented method of claim 1 , wherein the load balancer is located in the computing device.

23. The computer-implemented method of claim 1 , further comprising:

forwarding the encapsulated packet to a network function in the computing device;

decapsulating, using the network function, the encapsulated packet; and

performing an operation, on the decapsulated packet, that uses the information identifying the network adapter port.

24. The computer-implemented method of claim 1 , wherein the network identifier field in the tunnel header comprises information identifying a load-balanced network function to be performed on the received network packet.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2018
From: MCCONNAUGHAY, MARK; TOMIC, GARY; FREDERICK, RONALD
To: SYMANTEC CORPORATION
Reel/Frame 046873/0024 →