Discovery is a process of collecting the configuration data from the network elements in any protocol like SNMP, REST, NetConf, SOAP, SSH etc. and processing the data to compute the logical network topology. And the topology is stored in the database in a normalized fashion. The discovery and topology computation is typically a multi-step process where the data collected from one step could decide what need to be collected. Once discovery of one node is completed the logical topology is persisted. As network continuously evolve or change due to changes to the nodes' configuration, automatic re-discovery and recomputation of the logical topology becomes necessary to maintain accurate logical topology of the network. Thus it is fair to assert that the discovery/rediscovery is a continuous process leading to eventual consistency of the logical topology. Similarly for the discovered node, state of various aspects of the node need to be continuously monitored in real or near real time. In cases during the re-discovery when configuration data is collected from the devices, detecting what has changed between previous discovery to now is a challenge. Typically the process goes on to compute new topology and compare the old topology with the new topology and if there is a difference apply the difference and persist. If there is no difference between the topology nothing needs to be persisted. This means the entire topology compute process has to be done whether there is a change in the topology or not. There is no early indications whether something is changed or not. This disclosure suggests usage of hash meta data derived from the raw data collected to compare and detect the changes ahead so that costly computation of logical topology could be avoided if there are no change. Typically very less percentage of nodes in a network change in a daily basis and even within the node only less percentage of configuration change per day or across two discovery cycles. So, early detection of changes and avoiding computation if there is no change could help in a big way to scale the discovery of network. Similarly state polling happens at near real time, even here across two polling cycles very less percentage of states would change. Detecting early whether a change has happened or not can help in handling state change at scale. The scheme proposed in this invention can help address the polling needs to scale high as well.

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.