IP Library › Granted Patent US 11,153,190
Granted Patent B1
US 11,153,190 · App. 17/193,019 · Granted Oct 19, 2021

Metric computation for traceroute probes using cached data to prevent a surge on destination servers

Inventors: Vikas Mahajan (Ludhiana, IN); Srikanth Devarajan (Cupertino, CA); Chenglong Zheng (Fremont, CA); Pankaj Chhabra (Surrey, CA); Sandeep Kamath (San Jose, CA); Chakkaravarthy Periyasamy Balaiah (San Jose, CA); Vladimir Stepanenko (Sunnyvale, CA); Sreedhar Pampati (San Jose, CA)
Assignee: Zscaler, Inc.
H04L43/10H04L12/4633H04L43/0847H04L43/18H04L45/24H04L45/742H04L67/2852
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,153,190
App. No.
17/193,019
Granted
Oct 19, 2021
Kind
B1
Abstract

Techniques for using traceroute with tunnels and cloud-based systems for determining measures of network performance are presented. Systems and methods include receiving a request, from a client, for one or more of a first trace of a tunnel and a second trace to a destination; checking a cache at the node for results from previous traces of the first trace and the second trace; responsive to the results not being in the cache, performing one or more of the first trace and the second trace; and providing the results to the client so that the client aggregates the results with details from one or more additional legs to provide an overall view of a service path between the client and the destination.

Claims (51)

1. A method implemented by a node associated with a cloud-based system comprising:

receiving a request, from a client, for one or more of a first trace of a tunnel and a second trace to a destination;

checking a cache at the node for results from previous traces of the first trace and the second trace;

responsive to the results not being in the cache, performing one or more of the first trace and the second trace; and

providing the results to the client so that the client aggregates the results with details from one or more additional legs to provide an overall view of a service path between the client and the destination.

2. The method of claim 1 , further comprising

subsequent to the performing, storing corresponding results in the cache.

3. The method of claim 1 , further comprising

subsequent to a predetermined time period, removing the results from the cache.

4. The method of claim 1 , further comprising

receiving a trace packet from the client outside of the tunnel; and

providing a response to the trace packet, wherein the client utilizes details in the response in addition to the first trace and the second trace to determine details of the service path.

5. The method of claim 1 , further comprising

receiving a trace packet to the destination from the client with a signature therein; and

terminating the trace packet and responding thereto with the destination's address and with details about the tunnel.

6. The method of claim 1 , wherein the client connects to the destination through at least three legs.

7. The method of claim 1 , wherein the providing includes at least one of the first trace and the second trace from the cache and the other from the performing.

8. A non-transitory computer-readable medium comprising instructions that, when executed, cause one or more processors associated with a node that is associated with a cloud-based system to perform steps of:

receiving a request, from a client, for one or more of a first trace of a tunnel and a second trace to a destination;

checking a cache at the node for results from previous traces of the first trace and the second trace;

responsive to the results not being in the cache, performing one or more of the first trace and the second trace; and

providing the results to the client so that the client aggregates the results with details from one or more additional legs to provide an overall view of a service path between the client and the destination.

9. The non-transitory computer-readable medium of claim 8 , wherein the steps further include

subsequent to the performing, storing corresponding results in the cache.

10. The non-transitory computer-readable medium of claim 8 , wherein the steps further include

subsequent to a predetermined time period, removing the results from the cache.

11. The non-transitory computer-readable medium of claim 8 , wherein the steps further include

receiving a trace packet from the client outside of the tunnel; and

providing a response to the trace packet, wherein the client utilizes details in the response in addition to the first trace and the second trace to determine details of the service path.

12. The non-transitory computer-readable medium of claim 8 , wherein the steps further include

receiving a trace packet to the destination from the client with a signature therein; and

terminating the trace packet and responding thereto with the destination's address and with details about the tunnel.

13. The non-transitory computer-readable medium of claim 8 , wherein the client connects to the destination through at least three legs.

14. The non-transitory computer-readable medium of claim 8 , wherein the providing includes at least one of the first trace and the second trace from the cache and the other from the performing.

15. A node associated with a cloud-based system comprising:

one or more processors and memory comprising instructions that, when executed, cause the one or more processors to

receive a request, from a client, for one or more of a first trace of a tunnel and a second trace to a destination;

check a cache at the node for results from previous traces of the first trace and the second trace;

responsive to the results not being in the cache, perform one or more of the first trace and the second trace; and

provide the results to the client so that the client aggregates the results with details from one or more additional legs to provide an overall view of a service path between the client and the destination.

16. The node of claim 15 , wherein the instructions that, when executed, further cause the one or more processors to

subsequent to the perform, store corresponding results in the cache.

17. The node of claim 15 , wherein the instructions that, when executed, further cause the one or more processors to

subsequent to a predetermined time period, remove the results from the cache.

18. The node of claim 15 , wherein the instructions that, when executed, further cause the one or more processors to

receive a trace packet from the client outside of the tunnel; and

provide a response to the trace packet, wherein the client utilizes details in the response in addition to the first trace and the second trace to determine details of the service path.

19. The node of claim 15 , wherein the instructions that, when executed, further cause the one or more processors to

receive a trace packet to the destination from the client with a signature therein; and

terminate the trace packet and responding thereto with the destination's address and with details about the tunnel.

20. The node of claim 15 , wherein the client connects to the destination through at least three legs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2021
From: MAHAJAN, VIKAS; DEVARAJAN, SRIKANTH; ZHENG, CHENGLONG; CHHABRA, PANKAJ; KAMATH, SANDEEP; BALAIAH, CHAKKARAVARTHY PERIYASAMY; STEPANENKO, VLADIMIR; PAMPATI, SREEDHAR
To: ZSCALER, INC.
Reel/Frame 055503/0867 →
Priority Claims (1)
IN 202111002947 · Jan 21, 2021 · national
Cited By (15)
US 12,231,252 US 12,254,340 US 12,341,680 US 12,348,519 US 12,355,770 US 12,423,418 US 12,432,242 US 12,542,761 US 12,563,097 US 12,580,835 US 12,603,921 US 12,652,249 US 12,670,246 US 12,695,793 US 12,726,402