Geo-locating end-user devices on a communication network
First Claim
1. A method for determining the geographical location of a user device coupled to a communication network, comprising:
- obtaining a network path to the user device;
obtaining a first last hop network device in the network path to the user device;
obtaining a first geographical location of the first last hop network device;
obtaining a plurality of pairs of ping times to the user device and corresponding ping times to the first last hop network device;
obtaining a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the first last hop network device;
determining a distance for a last leg path between the first last hop network device and the user device using, at least in part, the smallest time difference obtained; and
determining a first user device geographical location for the user device based on the geographical location of the first last hop network device and the last leg path distance.
1 Assignment
0 Petitions
Accused Products
Abstract
A scheme is provided for determining the geographical location of an active IP device coupled to an IP network. A network path to the user device is obtained to identify a last hop device having a known first geographical location. A last leg distance between the last hop device and the user device is calculated. The last leg bandwidth, propagation time, and propagation speed are also characterized to more accurately determine the last leg distance. By combining the known first geographical location and the distance of the last hop device and user device, a geographical location for the user device is obtained. To improve the accuracy of the geographical location of the user device, multiple last hop devices with known geographical locations are employed to obtain multiple geographical areas for the user device. The intersection or overlap of these geographical areas indicates a refined geographical location of the user device.
38 Citations
29 Claims
-
1. A method for determining the geographical location of a user device coupled to a communication network, comprising:
-
obtaining a network path to the user device; obtaining a first last hop network device in the network path to the user device; obtaining a first geographical location of the first last hop network device; obtaining a plurality of pairs of ping times to the user device and corresponding ping times to the first last hop network device; obtaining a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the first last hop network device; determining a distance for a last leg path between the first last hop network device and the user device using, at least in part, the smallest time difference obtained; and determining a first user device geographical location for the user device based on the geographical location of the first last hop network device and the last leg path distance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 26, 27, 28, 29)
-
-
12. An apparatus comprising:
-
a communication interface to communicatively couple the apparatus to a communication network; a processing circuit coupled to the communication interface and configured to; obtain a network path to a user device; obtain a last hop network device in the network path to the user device; obtain a first geographical location of the last hop network device; obtain a plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; obtain a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; determine the distance for a last leg path between the last hop network device and the user device using, at least in part, the smallest time difference; and determine a first user device geographical location for the user device based on the geographical location of the last hop network device and the distance of the last leg path. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A networked apparatus comprising:
-
means for obtaining a network path to a user device; means for obtaining a last hop network device in the network path to the user device; means for obtaining a first geographical location of the last hop network device; means for obtaining a plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; means for obtaining a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; means for determining the distance for a last leg path between the last hop network device and the user device using, at least in part, the smallest time difference; and means for determining a first user device geographical location for the user device based on the geographical location of the last hop network device and the distance of the last leg path. - View Dependent Claims (18)
-
-
19. A processing device comprising:
-
a communication interface to communicatively couple the processing device to a communication network; a circuit coupled to the communication interface and configured to identify a last hop network device having a known first geographical location in a first network path to a user device; obtain a plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; obtain a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; determine a last leg distance between the last hop network device and the user device based, at least in part, on the smallest time difference; and determine a user device geographical location based on the known first geographical location and the last leg distance. - View Dependent Claims (20, 21, 22)
-
-
23. A non-transitory machine-readable storage medium having one or more instructions for determining a geographic location of a user device communicatively coupled to a communication network, which when executed by a processor causes the processor to:
-
identify a last hop network device having a known first geographical location in a first network path to a user device; obtain a plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; obtain a smallest time difference among the plurality of pairs of ping times to the user device and corresponding ping times to the last hop network device; determine a last leg distance between the last hop network device and the user device based at least in part on the smallest time difference; and determine a user device geographical location based on the first geographical location and the last leg distance. - View Dependent Claims (24, 25)
-
Specification