IP Library › Granted Patent US 11,323,361
Granted Patent B2
US 11,323,361 · App. 16/948,661 · Granted May 3, 2022

GRE tunneling with reduced packet encryption at intermediate routers using loose source routing

Inventors: Goutham Kondapavuluru (Bangalore, IN); Ramesh Biradar (Bangalore, IN); Indrakumar M (Bangalore, IN); Sharanagoud B. Devaraddi (Bangalore, IN); Vijay Sai Ram Paruchuri (Bangalore, IN)
Assignee: Juniper Networks, Inc.
H04L45/34H04L47/825H04L63/0435H04L69/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,323,361
App. No.
16/948,661
Granted
May 3, 2022
Kind
B2
Abstract

A network node may receive a packet having an inner internet protocol (IP) header and an outer IP header. The inner IP header may be encrypted. A loose source routing (LSR) field of the outer IP header may identify a recipient address. The network node may determine, based on the recipient address identified in the LSR field, a tunnel endpoint associated with a receiving network node. The network node may update the outer IP header of the packet to obtain an updated packet with an updated outer IP header. A source address of the updated outer IP header may be updated to a tunnel endpoint associated with the network node, and the destination address of the updated outer IP header may be updated to a tunnel endpoint associated with the receiving network node. The network node may route the updated packet according to the updated outer IP header.

Claims (63)

1. A method, comprising:

receiving, by a network node, a packet that includes an outer header,

wherein a source address of the outer header identifies a tunnel endpoint associated with a transmitting network node, and a destination address of the outer header identifies a tunnel endpoint associated with the network node,

wherein a loose source routing (LSR) field of the outer header identifies a recipient address;

updating, by the network node, the outer header of the packet to obtain an updated packet with an updated outer header,

wherein the source address of the updated outer header is updated to the tunnel endpoint associated with the network node, and the destination address of the updated outer header is updated to a tunnel endpoint associated with a receiving network node; and

routing, by the network node, the updated packet according to the updated outer header.

2. The method of claim 1 , further comprising:

determining a next hop network node for the packet to reach a recipient address by referencing a routing table of an intermediate network node based on the recipient address identified by an option field of the outer header; and

wherein updating the outer header of the packet comprises:

updating the outer header of the packet based on determining the next hop network node.

3. The method of claim 1 , wherein the packet includes an an inner header that is an IP address.

4. The method of claim 1 , wherein the packet includes an inner header that is encapsulated by a Generic Routing Encapsulation (GRE) header and the GRE header is encapsulated by an Encapsulating Security Payload (ESP) header that provides encryption.

5. The method of claim 1 , wherein receiving the packet comprises:

receiving the packet from the transmitting network node,

the transmitting network node having encapsulated the packet according to a Generating Routing Encapsulation (GRE) tunneling protocol based on determining that a destination for the packet was reachable via a GRE tunnel.

6. The method of claim 1 , wherein the packet is encrypted, and

wherein the method further comprises:

decrypting the packet to identify a recipient address.

7. A network node, comprising:

one or more memories; and

one or more processors, communicatively coupled to the one or more memories, to:

receive a packet that includes an outer header,

wherein a source address of the outer header identifies a tunnel endpoint associated with a transmitting network node, and a destination address of the outer header identifies a tunnel endpoint associated with the network node, and

wherein a loose source routing (LSR) field of the outer header identifies a recipient address;

update the outer header of the packet to obtain an updated packet with an updated outer header,

wherein the source address of the updated outer header is updated to the tunnel endpoint associated with the network node, and the destination address of the updated outer header is updated to a tunnel endpoint associated with a receiving network node; and

route the updated packet according to the updated outer header.

8. The network node of claim 7 , wherein the one or more processors are further to:

determine a next hop network node for the packet to reach a recipient address by referencing a routing table of an intermediate network node based on the recipient address identified by an option field of the outer header; and

wherein the one or more processors, when updating the outer header of the packet, are to:

update the outer header of the packet based on determining the next hop network node.

9. The network node of claim 7 , wherein the network node, the transmitting network node, and the receiving network node are associated with a virtual private network (VPN).

10. The network node of claim 7 , wherein the outer header is an IP address.

11. The network node of claim 7 , wherein the one or more processors, when receiving the packet, are to:

receive the packet from the transmitting network node,

the transmitting network node having encapsulated the packet according to a Generating Routing Encapsulation (GRE) tunneling protocol based on determining that a destination for the packet was reachable via a GRE tunnel.

12. The network node of claim 7 , wherein the packet is encrypted, and

wherein the one or more processors are further to:

decrypt the packet to identify a recipient address.

13. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions that, when executed by one or more processors, cause the one or more processors to:

receive a packet that includes an outer header,

wherein a source address of the outer header identifies a tunnel endpoint associated with a transmitting network node, and a destination address of the outer header identifies a tunnel endpoint associated with the network node, and

wherein a loose source routing (LSR) field of the outer header identifies a recipient address;

update the outer header of the packet to obtain an updated packet with an updated outer header,

wherein the source address of the updated outer header is updated to the tunnel endpoint associated with the network node, and the destination address of the updated outer header is updated to a tunnel endpoint associated with a receiving network node; and

route the updated packet according to the updated outer header.

14. The non-transitory computer-readable medium of claim 13 , wherein the one or more instructions, that further cause the one or more processors to:

determine a next hop network node for the packet to reach a recipient address by referencing a routing table of an intermediate network node based on the recipient address identified by an option field of the outer header; and

wherein the one or more instructions, that cause the one or more processors to update the outer header of the packet are to:

update the outer header of the packet based on determining the next hop network node.

15. The non-transitory computer-readable medium of claim 13 , wherein the network node, the transmitting network node, and the receiving network node are associated with a virtual private network.

16. The non-transitory computer-readable medium of claim 13 , wherein the packet includes an inner header that is encapsulated by a Generic Routing Encapsulation (GRE) header and the GRE header is encapsulated by an Encapsulating Security Payload (ESP) header that provides encryption.

17. The non-transitory computer-readable medium of claim 13 , wherein the one or more instructions, that further cause the one or more processors to:

receive the packet from the transmitting network node,

the transmitting network node having encapsulated the packet according to a Generating Routing Encapsulation (GRE) tunneling protocol based on determining that a destination for the packet was reachable via a GRE tunnel.

18. The method of claim 1 , wherein the packet includes an inner header and the outer header,

wherein a source address of the inner header identifies a sender address, and a destination address of the inner header identifies a recipient address.

19. The network node of claim 7 , wherein the packet includes an inner header and the outer header,

wherein a source address of the inner header identifies a sender address, and a destination address of the inner header identifies a recipient address.

20. The non-transitory computer-readable medium of claim 13 , wherein the packet that includes an inner header and the outer header,

wherein a source address of the inner header identifies a sender address, and a destination address of the inner header identifies a recipient address.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2022
From: KONDAPAVULURU, GOUTHAM; BIRADAR, RAMESH; M, INDRAKUMAR; DEVARADDI, SHARANAGOUD B.; SAI RAM PARUCHURI, VIJAY
To: JUNIPER NETWORKS, INC.
Reel/Frame 060576/0593 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2020
From: KONDAPAVULURU, GOUTHAM; BIRADAR, RAMESH; M, INDRAKUMAR; DEVARADDI, SHARANAGOUD B.; SAI RAM PARUCHURI, VIJAY
To: JUNIPER NETWORKS, INC.
Reel/Frame 053903/0017 →
Continuity (2)
Continuation 16577538 · Sep 20, 2019
Related Publication 20210092054A1 · Mar 25, 2021