Reverse Traceroute for Inbound Network Path Discovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional traceroute methods only provide information on the forward network path, failing to reveal the inbound path taken by packets, which may not be symmetrical, making it impractical to obtain complete network topology without coordinating with the receiving node.
Innovation Solution
Implementing a reverse traceroute using a GRE tunnel between nodes, where a set of GRE keepalives with incrementing inner TTL values are sent to discover the inbound path by exploiting the TTL decrement mechanism in routers, allowing the sending node to identify each hop in the reverse direction without requiring the receiving node to perform a traceroute.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If conventional traceroute is performed from node A to node B, then the forward network path is discovered, but the inbound network path from node B to node A remains unknown
Solution Approach 1:
The patent applies inversion by having node A send traceroute packets with source address set to itself but destination address set to node A (reverse direction), allowing node A to discover the inbound path from node B to node A without requiring node B to initiate a traceroute. This reverses the conventional approach where the receiving node would need to perform the traceroute to provide inbound path information.
Solution Approach 2:
Node A performs the traceroute operation itself to discover its own inbound path, eliminating the need for node B to perform and report traceroute results. The sending node independently obtains the inbound network path information by configuring packets that traverse the inbound path and return to the sender.
2Loss of information
If node B performs traceroute and sends results to node A, then inbound path information is obtained, but coordination and communication overhead increase
Solution Approach 1:
Node A independently discovers the inbound path by sending specially configured traceroute packets that traverse the inbound path from node B to node A. The sending node obtains the information itself without requiring node B to perform any traceroute operations or send results back, eliminating coordination requirements.
Solution Approach 2:
The patent uses GRE tunnel packets as intermediaries to carry traceroute information. These packets are sent through the inbound path and return to node A, serving as a mediator that delivers path information without requiring direct coordination or communication between the nodes about the traceroute results.
3Measurement precision
If packets are sent with incrementally increasing TTL values, then each router hop is identified, but only the forward path is traced not the inbound path
Solution Approach 1:
The patent explicitly addresses path asymmetry by performing traceroutes in both directions. It sends packets with incrementally increasing TTL values in the inbound direction (from node B to node A perspective) to discover that the inbound path may differ from the forward path, and both paths are reported to provide complete topology information.
Solution Approach 2:
The patent inverts the traceroute direction by having node A send packets that traverse the inbound path (from node B to node A) and return to node A. This allows precise identification of each router hop in the inbound direction, revealing path asymmetry that would be invisible in conventional forward-only traceroutes.
Data Source
AI summary
Disclosed herein are systems, methods, and apparatus for performing a new kind of traceroute. This traceroute is referred to herein as a “reverse” traceroute, as it enables a given network node to determine the path of packets sent to it from another node. Preferably, an encapsulating tunnel between the two nodes is leveraged. Preferably, a given network node (“first node”) performs the reverse traceroute by sending encapsulated inner packets in the tunnel to another network node (“second node”). The second node reflects the inner packets back to the first node. Preferably, the inner packets are configured such that their IP header TTLs expire at intermediate nodes (such as routers), and such that the resulting error messages are reported to the first node. In this way, the first node obtains information about the topology of the network and the path taken by inbound packets.


