# US 12,184,497 B2 · Ordering possible device locations on the network by port-of-entry likelihood

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,184,497 B2
- Document ID: US12184497B2
- Status: Granted
- Kind: B2
- Application number: 17/558,815
- Filed: 2021-12-22
- Published: 2022-10-27
- Granted: 2024-12-31
- Earliest claimed: 2021-04-23
- Assignees: Arista Networks, Inc.
- Applicants: Arista Networks, Inc.
- Inventors: Charles Ding; Ryan Sherali Madsen
- Web page: https://patentgrep.com/patent/US12184497B2

## CPC

- H04L 41/12: Discovery or management of network topologies
- H04L 41/046: comprising network management agents or mobile agents therefor
- Y02D 30/00: Reducing energy consumption in communication networks
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

A method of managing a network includes: obtaining a search request for a device of a plurality of devices of the network where the device is specified by a piece of network information associated with the device; searching a searchable data structure using the piece of the network information to obtain a search result where the search result comprises a location list of potential locations within the network where the device may be located; obtaining likelihood rankings of the potential locations; and providing a response to the search request using the search result and the likelihood rankings.

## Claims

### Claim 1

A network, comprising:
a plurality of devices, wherein each device of the plurality of devices is programmed to:
obtain a respective portion of network information regarding the network in which the device resides, and
provide network communication services; and
a network manager programmed to:
obtain a search request for a device of the plurality of devices specified by a piece of the network information associated with the device, wherein a location of the device in the network is unknown;
search a searchable data structure using the piece of the network information to obtain a search result, wherein the search result comprises a location list of potential locations within the network where the device may be located;
generate likelihood rankings of the potential locations; and
provide a response to the search request using the search result and the likelihood rankings.

### Claim 2 (depends on 1)

The network of claim 1, wherein each of the potential locations specify a respective port of one of the plurality of devices.

### Claim 3

A method of managing a network, comprising:
obtaining a search request for a device of a plurality of devices of the network, wherein the device is specified by a piece of network information associated with the device and a location of the device in the network is unknown;
searching a searchable data structure using the piece of the network information to obtain a search result, wherein the search result comprises a location list of potential locations within the network where the device may be located;
obtaining likelihood rankings of the potential locations; and
providing a response to the search request using the search result and the likelihood rankings.

### Claim 4 (depends on 3)

The method of claim 3, wherein each of the potential locations specify a respective port of one of the plurality of devices and the plurality of devices comprises infrastructure devices and endpoint devices.

### Claim 5 (depends on 4)

The method of claim 4, wherein the respective port specifies an identifier of one of the plurality of devices, an interface, and a virtual local area network, wherein each of the potential locations further specifies a mariner in which the respective potential location was learned.

### Claim 6 (depends on 4)

The method of claim 4, wherein each of the potential locations further specifies a time at which the respective potential location was learned.

### Claim 7 (depends on 6)

The method of claim 6, wherein generating the likelihood rankings of the potential locations comprises:
making a determination that at least two of the likelihood rankings are a same ranking;
in response to the determination, using the time at which the respective potential location was learned to differentiate the at least two of the likelihood rankings.

### Claim 8 (depends on 3)

The method of claim 3, wherein the method further comprises:
providing, along with the likelihood rankings, an explanation for the likelihood ranking associated with each of the potential locations.

### Claim 9 (depends on 8)

The method of claim 8, wherein the explanation for the likelihood ranking associated with each of the potential locations is based, at least in part, on a type of a network information management table of a plurality of network information management tables in which each respective potential location was found.

### Claim 10 (depends on 9)

The method of claim 9, wherein the explanation for the likelihood ranking associated with each of the potential locations is further based, at least in part, on a type of the device, wherein the type of the device is one selected from a group consisting of an infrastructure device and an endpoint device.

### Claim 11 (depends on 3)

The method of claim 3, wherein each potential location of the potential locations is associated with a likelihood ranking of the likelihood rankings.

### Claim 12 (depends on 11)

The method of claim 11, wherein each likelihood ranking of the likelihood rankings is based, at least in part, on:
a type of the device; and
a type of connection of the corresponding potential location.

### Claim 13 (depends on 3)

The method of claim 3, wherein the response to the search request comprises a unified list of unique identifiers based on the search result.

### Claim 14 (depends on 13)

The method of claim 13, wherein the unified list comprises hostnames and device types associated with the unique identifiers.

### Claim 15 (depends on 3)

The method of claim 3, wherein the location list of potential locations comprises information usable to, for a device of the plurality of devices, identify where on the network the device has resided over time.

### Claim 16 (depends on 3)

The method of claim 3, further comprising:
prior to obtaining the search request:
obtaining the portions of the network information from the plurality of devices, wherein the portions of the network information comprise a plurality of network information management tables; and
populating the searchable data structure using, at least in part, the portions of the network information and a type of each device of the plurality of devices.

### Claim 17 (depends on 16)

The method of claim 16, wherein the plurality of network information management tables comprises:
a plurality of tables forwarding tables;
a plurality of address resolution protocol tables;
a plurality of neighbor discovery protocol tables;
a plurality of link layer discovery protocol tables; and
a plurality of tables that specify inventories of the devices.

### Claim 18 (depends on 3)

The method of claim 3, wherein generating the likelihood rankings of the potential locations comprises:
searching the searchable data structure for identifiers associated with the potential locations; and
ranking the potential locations using the identifiers and a set of rules that define the likelihood rankings based, in part, on a source from which the identifiers were obtained.

### Claim 19

A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing a network, the method comprising:
obtaining a search request for a device of a plurality of devices of the network, wherein the device is specified by a piece of network information associated with the device and wherein a location of the device in the network is unknown;
searching a searchable data structure using the piece of the network information to obtain a search result, wherein the search result comprises a location list of potential locations within the network where the device may be located;
obtaining likelihood rankings of the potential locations; and
providing a response to the search request using the search result and the likelihood rankings.

### Claim 20 (depends on 19)

The non-transitory computer readable medium of claim 19, wherein each of the potential locations specify a respective port of one of the plurality of devices.
