In one embodiment, a nodal device receives information from each of its neighboring nodes in a network. The information identifies a link quality between the nodal device and each of its neighboring nodes. The link quality information is stored in one or more bloom filters in the nodal device such that a table having a compressed format is provided in the bloom filter. The table includes probabilistic identifiers to identify link quality between the nodal device and each of its neighboring nodes.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method comprising: receiving information at a nodal device from a plurality of neighboring nodes of the nodal device in a computer network, the information including identifiers of each of the plurality of neighboring nodes; maintaining a list of 1-hop neighbor nodes at the nodal device by adding the identifiers for each of the plurality of neighboring nodes to a first bloom filter; storing the bloom filter on the nodal device, the first bloom filter made up of the identifiers for each of the neighboring nodes of the computer network received during a time period; phasing out 1-hop neighbor nodes that are no longer 1-hop neighbor nodes by, upon the time period expiring, adding any identifiers received after the time period expires to a second bloom filter while continuing to store the first bloom filter on the nodal device until a predetermined amount of time has passed; getting a unified view of all neighboring nodes of the plurality of neighboring nodes by performing a function on the first bloom filter and the second bloom filter; transmitting the unified view from the first and second bloom filter to a Network Management System (NMS); and managing a false positive rate of the first or second bloom filter at the nodal device relative to a number of nodes that neighbor the nodal device by adaptively adjusting a bit-vector size of the first or second bloom filter depending on a number of neighboring nodes added to the first or second bloom filter.
A networking device discovers its neighbors by receiving identifiers from them. It stores these neighbor identifiers in a first Bloom filter to maintain a list of directly connected neighbors. The Bloom filter is updated periodically. To phase out old neighbors, new identifiers are added to a second Bloom filter after a time period. The device maintains both Bloom filters for a while. A unified view of all neighbors is created by combining the two Bloom filters, then sent to a Network Management System (NMS). The size of the Bloom filters is dynamically adjusted to manage the false positive rate based on the number of neighbors.
2. A method as recited in claim 1 , wherein: the information received from the plurality of neighboring nodes include link quality information, one or more nodes of the plurality of neighboring nodes having a first link quality are added to the first bloom filter, and one or more nodes of the plurality of nodes having a second link quality are added to a different bloom filter.
The neighbor discovery method described previously is enhanced by including link quality information in the received neighbor identifiers. Neighboring nodes with a specific, first link quality are added to the first Bloom filter. Nodes having a different, second link quality are added to another, separate Bloom filter. This allows for neighbor tracking by link quality in addition to simple neighbor presence.
3. A method as recited in claim 1 , wherein the identifiers of the plurality of neighboring nodes are stored using a different bloom filter according to a predetermined sequence of N bloom filters.
Instead of using just one or two Bloom filters, the neighbor identifiers are stored using a sequence of 'N' Bloom filters, each used in a predetermined order. This provides a rotating storage mechanism for neighbor information.
4. A method as recited in claim 3 wherein the nodal device performs a bitwise OR operation on the N bloom filters to provide the unified view of all neighboring nodes of the plurality of neighboring nodes.
The "unified view" of neighboring nodes is generated by performing a bitwise OR operation on all 'N' Bloom filters to combine the neighbor information from each filter in the sequence. The resulting combined bit vector represents all detected neighbors across all filters.
5. A method as recited in claim 1 , further comprising determining a signal quality of a recent signal transmission to a neighboring 1-hop node by querying the identifier of the nodal device as stored in at least the first and second bloom filters.
The networking device determines the signal quality of a recent transmission to a neighbor by querying the neighbor's identifier as stored in the first and second Bloom filters. This allows inferring signal quality based on the presence and persistence of the neighbor's identifier in the Bloom filters.
6. A method as recited in claim 5 , wherein the unified view of the first and second bloom filter is advertised to one or more of the plurality of neighboring nodes at least one hop away.
The unified view of neighbor information generated from the first and second Bloom filters is advertised to neighboring nodes that are at least one hop away. This enables those nodes to learn about the two-hop neighborhood of the advertising node.
7. A method as recited in claim l, wherein in predetermined time intervals, the nodal device transmits information stored in the first and second bloom filter to the NMS.
The networking device periodically transmits the information stored in the first and second Bloom filters to a Network Management System (NMS) at predetermined time intervals. This allows the NMS to monitor the network topology.
8. A method, comprising: receiving at a Network Management System (NMS) for a network having nodal devices coupled via communication links, a unified view of all neighboring nodes of a plurality of neighboring nodes of at least one nodal device in the network which the NMS manages, the unified view obtained from a first and at least second bloom filter maintained in the at least one nodal device, wherein a false positive rate of the first or the at least second bloom filter at the nodal device is managed relative to a number of nodes that neighbor the at least one nodal device; using the unified view to determine what nodes are likely reachable to each individual node by interpolating at the NMS the received information from the bloom filter to determine a status of the communication links coupling the nodal devices in the network; and querying, by the NMS, a bloom filter of the at least one nodal device in the network to determine the presence of nodes which neighbor the nodal device.
A Network Management System (NMS) manages a network with linked devices. The NMS receives a combined neighbor view for a device from that device’s first and second Bloom filters. The device manages its Bloom filter false positive rate. The NMS interpolates the data from Bloom filters to find communication link statuses and node reachability. The NMS can also query a device's Bloom filter to check what neighbors that device has.
9. An apparatus, comprising: one or more network interfaces to communicate with a computer network; a processor coupled to the network interfaces and adapted to execute one or more processes; and a memory configured to store a process executable by the processor, the process when executed operable to: receive information at the apparatus from a plurality of neighboring nodes of the apparatus, the information including identifiers of each of the plurality of neighboring nodes; maintain a list of 1-hop neighbor nodes at the nodal device by adding the identifiers for each of the plurality of neighboring nodes to a first bloom filter; store the bloom filter on the apparatus, the first bloom filter made up of the identifiers for each of the neighboring nodes of the computer network received during a time period; phasing out 1-hop neighbor nodes that are no longer 1-hop neighbor nodes by, upon the time period expiring, adding any identifiers received after the time period expires to a second bloom filter while continuing to store the first bloom filter on the nodal device until a predetermined amount of time has passed; getting a unified view of all neighboring nodes of the plurality of neighboring nodes by performing a function on the first bloom filter and the second bloom filter; transmitting the unified view from the first and second bloom filter to a Network Management System (NMS); and managing a false positive rate of the first or second bloom filter at the nodal device relative to a number of nodes that neighbor the nodal device by adaptively adjusting a bit-vector size of the first or second bloom filter depending on a number of neighboring nodes added to the first or second bloom filter.
A networking device discovers its neighbors by receiving identifiers from them. It stores these neighbor identifiers in a first Bloom filter to maintain a list of directly connected neighbors. The Bloom filter is updated periodically. To phase out old neighbors, new identifiers are added to a second Bloom filter after a time period. The device maintains both Bloom filters for a while. A unified view of all neighbors is created by combining the two Bloom filters, then sent to a Network Management System (NMS). The size of the Bloom filters is dynamically adjusted to manage the false positive rate based on the number of neighbors.
10. An apparatus as recited in claim 9 wherein the identifiers of the plurality of neighboring nodes are stored using a different bloom filter according to a predetermined sequence of N bloom filters.
In the described networking device, the neighbor identifiers are stored using a sequence of 'N' Bloom filters, each used in a predetermined order. This provides a rotating storage mechanism for neighbor information within the device.
11. An apparatus as recited in claim 9 , wherein the process when executed is further operable to determine a signal quality of a recent signal transmission from apparatus to a neighboring 1-hop node by querying the identifier of the nodal device as stored in at least the first and second bloom filter.
The described networking device determines the signal quality of a recent transmission to a neighbor by querying the neighbor's identifier as stored in the first and second Bloom filters. This allows inferring signal quality based on the presence and persistence of the neighbor's identifier in the Bloom filters.
12. An apparatus as recited in claim 11 wherein a unified view of the first and second bloom filters is advertised to one or more of the plurality of neighboring nodes at least one hop away.
The unified view of neighbor information generated from the first and second Bloom filters within the device is advertised to neighboring nodes that are at least one hop away. This enables those nodes to learn about the two-hop neighborhood of the advertising node.
13. An apparatus as recited in claim 9 , wherein the process when executed is further operable to transmit information stored in the first and second bloom filter to the NMS in predetermined time intervals.
The networking device periodically transmits the information stored in the first and second Bloom filters to a Network Management System (NMS) at predetermined time intervals. This allows the NMS to monitor the network topology.
14. An apparatus, comprising: one or more network interfaces to communicate with a computer network; a processor coupled to the network interfaces and adapted to execute one or more processes; and a memory configured to store a process executable by the processor, the process when executed operable to: receive, at a Network Management System (NMS) for a network having nodal devices coupled via communication links, a unified view of all neighboring nodes of a plurality of neighboring nodes of at least one nodal device in the computer network which the NMS manages, the unified view obtained from a first and at least second bloom filter maintained in the at least one nodal device, wherein a false positive rate of the first or the at least second bloom filter at the nodal device is managed relative to a number of nodes that neighbor the at least one nodal device; using the unified view to determine what nodes are likely reachable to each individual node by interpolating at the NMS the received information from the bloom filter to determine a status of the communication links coupling the nodal devices in the network; and query a bloom filter of the at least one nodal device in the network to determine the presence of nodes which neighbor the nodal device.
A Network Management System (NMS) manages a network with linked devices. The NMS receives a combined neighbor view for a device from that device’s first and second Bloom filters. The device manages its Bloom filter false positive rate. The NMS interpolates the data from Bloom filters to find communication link statuses and node reachability. The NMS can also query a device's Bloom filter to check what neighbors that device has.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
October 16, 2012
July 18, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.