IP Library Granted Patent US 12,401,585
Granted Patent B2
US 12,401,585 · App. 18/104,070 · Granted Aug 26, 2025

Deploying symmetric routing

Inventors: Jia Chen (Palo Alto, CA); Saurabh Dixit (San Jose, CA); Anil Saini (Milpitas, CA); Shu Lin (Saratoga, CA); Hao Long (Campbell, CA)
Assignee: Palo Alto Networks, Inc.
H04L45/02H04L45/123H04L45/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 12,401,585
App. No.
18/104,070
Granted
Aug 26, 2025
Kind
B2
Abstract

Techniques for deploying symmetric routing are disclosed. A system, process, and/or computer program product for deploying symmetric routing includes routing network traffic from a client over a security access network provider virtual private network (VPN) access to a customer network, and enforcing symmetric routing crossing an autonomous system (AS) based on one or more prepended AS routing numbers in a first routing table for inbound traffic and/or based on one or more weights and one or more local preferences in a second routing table for outbound traffic.

Claims (58)

1. A system, comprising:

a processor configured to:

route network traffic from a client over a security access network provider virtual private network (VPN) access to a customer network; and

enforce symmetric routing crossing an autonomous system (AS) based on one or more prepended AS routing numbers in a first routing table for inbound traffic and based on one or more weights and one or more local preferences in a second routing table for outbound traffic, comprising to:

for the inbound traffic:

determine that a plurality of routes of the first routing table has a shortest AS path length, wherein the plurality of routes includes a first route and a second route; and

in response to a determination that the plurality of routes has the shortest AS path length:

 determine that the first route of the first routing table has a shortest AS path length, wherein the first route is a primary route of the first routing table, and wherein the one or more prepended AS routing numbers are prepended to the second route of the first routing table, the second route being a backup route of the first routing table; and

 in response to a determination that the first route has the shortest AS path length, route the inbound traffic based on the first route; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 , wherein the enforcing of the symmetric routing crossing the AS comprises to:

identify a third route having the highest weight based on the second routing table for outbound traffic;

determine whether the third route having the highest weight is available; and

in response to a determination that the third route having the highest weight is unavailable, select a fourth route having the highest local preference based on the second routing table.

3. The system of claim 2 , wherein the enforcing of the symmetric routing crossing the AS further comprises to:

in response to a determination that the third route having the highest weight is available, select the third route.

4. The system of claim 1 , wherein the enforcing of the symmetric routing crossing the AS comprises to:

determine whether the first route having the shortest AS path is available; and

in response to a determination that the first route having the shortest AS path is unavailable, select the second route having the next shortest AS path based on the first routing table.

5. The system of claim 1 , wherein the AS includes at least one node on the security access network provider VPN and at least one node on the customer network.

6. The system of claim 1 , wherein the security access network provider virtual private network (VPN) access is clientless or client-based.

7. The system of claim 1 , wherein a primary route is assigned the highest weight in the second routing table.

8. The system of claim 1 , wherein a backup route is assigned the highest local preference in the second routing table.

9. The system of claim 1 , wherein:

a primary route is assigned the highest weight in the second routing table; and

a backup route is assigned the highest local preference in the second routing table.

10. A method, comprising:

routing, using a processor, network traffic from a client over a security access network provider virtual private network (VPN) access to a customer network; and

enforcing, using the processor, symmetric routing crossing an autonomous system (AS) based on one or more prepended AS routing numbers in a first routing table for inbound traffic and based on one or more weights and one or more local preferences in a second routing table for outbound traffic, comprising:

for the inbound traffic:

determining that a plurality of routes of the first routing table has a shortest AS path length, wherein the plurality of routes includes a first route and a second route; and

in response to a determination that the plurality of routes has the shortest AS path length:

determining that the first route of the first routing table has a shortest AS path length, wherein the first route is a primary route of the first routing table, and wherein the one or more prepended AS routing numbers are prepended to the second route of the first routing table, the second route being a backup route of the first routing table; and

in response to a determination that the first route of the first routing table has the shortest AS path length, routing the inbound traffic based on the first route of the first routing table.

11. The method of claim 10 , wherein the enforcing of the symmetric routing crossing the AS comprises:

identifying a third route having the highest weight based on the second routing table for outbound traffic;

determining whether the third route having the highest weight is available; and

in response to a determination that the third route having the highest weight is unavailable, selecting a fourth route having the highest local preference based on the second routing table.

12. The method of claim 11 , wherein the enforcing of the symmetric routing crossing the AS further comprises:

in response to a determination that the third route having the highest weight is available, selecting the third route.

13. The method of claim 10 , wherein the enforcing of the symmetric routing crossing the AS comprises:

determining whether the first route having the shortest AS path is available; and

in response to a determination that the first route having the shortest AS path is unavailable, selecting the second route having the next shortest AS path based on the first routing table.

14. The method of claim 10 , wherein the AS includes at least one node on the security access network provider VPN and at least one node on the customer network.

15. The method of claim 10 , wherein the security access network provider virtual private network (VPN) access is clientless or client-based.

16. The method of claim 10 , wherein a primary route is assigned the highest weight in the second routing table.

17. The method of claim 10 , wherein a backup route is assigned the highest local preference in the second routing table.

18. The method of claim 10 , wherein:

a primary route is assigned the highest weight in the second routing table; and

a backup route is assigned the highest local preference in the second routing table.

19. A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

routing network traffic from a client over a security access network provider virtual private network (VPN) access to a customer network; and

enforcing symmetric routing crossing an autonomous system (AS) based on one or more prepended AS routing numbers in a first routing table for inbound traffic and based on one or more weights and one or more local preferences in a second routing table for outbound traffic, comprising:

for the inbound traffic:

determining that a plurality of routes of the first routing table has a shortest AS path length, wherein the plurality of routes includes a first route and a second route; and

in response to a determination that the plurality of routes has the shortest AS path length:

determining that the first route of the first routing table has a shortest AS path length, wherein the first route is a primary route of the first routing table, and wherein the one or more prepended AS routing numbers are prepended to the second route of the first routing table, the second route being a backup route of the first routing table; and

in response to a determination that the first route of the first routing table has the shortest AS path length, routing the inbound traffic based on the first route of the first routing table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2023
From: CHEN, JIA; DIXIT, SAURABH; SAINI, ANIL; LIN, SHU; LONG, HAO
To: PALO ALTO NETWORKS, INC.
Reel/Frame 063584/0537 →
Continuity (1)
Related Publication 20240259290A1 · Aug 1, 2024
References Cited (5)
US 11991211B1 · Gangur · 2024 [cited by examiner]
US 20030120788A1 · Berthaud · 2003 [cited by examiner]
US 20030126268A1 · Berthaud · 2003 [cited by examiner]
US 20090196297A1 · Jabr · 2009 [cited by examiner]
US 20110069714A1 · Le Pennec · 2011 [cited by examiner]