# US 11,310,137 B2 · System and method to propagate information across a connected set of entities irrespective of the specific entity type

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

- Number: US 11,310,137 B2
- Document ID: US11310137B2
- Status: Granted
- Kind: B2
- Application number: 15/857,577
- Filed: 2017-12-28
- Published: 2018-08-09
- Granted: 2022-04-19
- Earliest claimed: 2017-02-05
- Assignees: Veritas Technologies LLC
- Applicants: Veritas Technologies LLC
- Inventors: Tushar Bandopadhyay; Bharat Dighe
- Web page: https://patentgrep.com/patent/US11310137B2

## CPC

- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 43/0817: by checking functioning
- G06F 11/3051: {Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs (verification or detection of system hardware configuration G06F11/2247)}
- G06F 11/3072: {where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting}
- G06F 16/23: Updating
- G06F 16/2358: {Change logging, detection, and notification (replication G06F16/27)}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- H04L 41/0233: Object-oriented techniques, for representation of network management data, e.g. common object request broker architecture [CORBA]
- H04L 41/0816: the condition being an adaptation, e.g. in response to network events
- H04L 41/082: the condition being updates or upgrades of network functionality
- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L 61/5076: Update or notification mechanisms, e.g. DynDNS
- G06F 11/3006: {where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50)}
- G06F 11/3048: {where the topology of the computing system or computing system component explicitly influences the monitoring activity, e.g. serial, hierarchical systems}
- G06F 2201/86: Event-based monitoring
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Various systems and methods are provided for propagating information throughout a data center or other network environment. For instance, in certain embodiments, the functionality disclosed herein includes determines propagation rules, and then either stores and/or propagates those rules throughout the datacenter or other network environment. Propagation rules define various conditions or other variables that govern propagation of information throughout a system, such as those systems described herein. The propagation rules can then be used to perform various other functionality. For instance, the functionality described herein can be used to process updates to entities. The functionality described herein can also be used to process updates to propagation metadata. Additionally, the functionality described herein can be used to process the creation of new relationships. The functionality described herein can also be used to process the deletion of objects and/or relationships. All of the foregoing functionality can be performed automatically.

## Claims

### Claim 1

A method comprising:
monitoring a datacenter for a change to the datacenter, wherein
the monitoring is performed by a management server,
the datacenter comprises a plurality of entities in communication with one another via a network,
the plurality of entities comprise at least a first entity and a second entity,
the change to the datacenter is caused by one or more operations being performed,
each entity of the plurality of entities is at least one of a hardware device, a software component, or group of hardware devices and/or software components, and is represented by a corresponding node of a plurality of nodes of a property graph,
the property graph is a directed graph,
the property graph represents one or more relationships between ones of the plurality of entities as one or more edges of a plurality of edges between the ones of the plurality of nodes,
each of the one or more edges represents a corresponding dependency, of a plurality of dependencies, between the ones of the plurality of entities,
each node of the plurality of nodes is represented by a corresponding object instance of a plurality of object instances,
the first entity is represented by a first node of the plurality of nodes,
the first node is represented by a first object instance of the plurality of object instances,
the second entity is represented by a second node of the plurality of nodes,
the second node is represented by a second object instance of the plurality of object instances, and
a dependency, of the plurality of dependencies, between the first entity and the second entity is represented by an edge, of the plurality of edges, between the first node and the second node;
detecting the change to the datacenter, wherein
the detecting is performed by a property graph analysis module of the management server,
the property graph analysis module detects the change by analyzing property graph data representing the property graph,
the property graph data comprises the plurality of object instances, and
information is associated with the change to the datacenter;
in response to detecting the change to the datacenter,
determining a first propagation rule of the first object instance, wherein the first propagation rule comprises at least a first condition; and
automatically propagating the information from the first object instance to the second object instance, wherein
the automatically propagating the information comprises
evaluating at least a portion of the information with regard to the first condition with respect to propagating the information to the second object instance, and
in response to the at least the portion of the information meeting the first condition, propagating the information to the second object instance.

### Claim 2 (depends on 1)

The method of claim 1, wherein
the one or more operations comprise at least one of
an addition operation that adds another entity to the datacenter,
a removal operation that removes an entity of the plurality of entities from the datacenter, or
a migration operation that migrates the entity of the plurality of entities within the datacenter.

### Claim 3 (depends on 2)

The method of claim 2, wherein
the one or more operations further comprise an update operation that updates propagation metadata of a first object instance representing the first node.

### Claim 4 (depends on 2)

The method of claim 2, wherein
the one or more operations further comprise a creation of a new relationship between the ones of the plurality of entities.

### Claim 5 (depends on 2)

The method of claim 2, wherein
the one or more operations further comprise a deletion of an existing relationship between the ones of the plurality of entities.

### Claim 6 (depends on 2)

The method of claim 2, further comprising:
determining a qualifying sibling node of the plurality of nodes.

### Claim 7 (depends on 2)

The method of claim 2, further comprising:
adding propagation metadata to a first object instance representing the first node.

### Claim 8 (depends on 3)

The method of claim 3, further comprising:
determining a qualifying sibling node of the plurality of nodes; and
updating the propagation metadata of an object instance representing the qualifying sibling node.

### Claim 9 (depends on 5)

The method of claim 5, further comprising:
determining a qualifying sibling node of the plurality of nodes; and
clearing propagation metadata from an object instance representing the qualifying sibling node.

### Claim 10

A computer system comprising:
one or more processors; and
a non-transient computer-readable storage medium, comprising computer instructions executable by the one or more processors, wherein the computer instructions are configured to perform a method comprising
monitoring a datacenter for a change to the datacenter, wherein
the monitoring is performed by a management server,
the datacenter comprises a plurality of entities in communication with one another via a network,
the plurality of entities comprise at least a first entity and a second entity,
the change to the datacenter is caused by one or more operations being performed,
each entity of the plurality of entities is at least one of a hardware device, a software component, or group of hardware devices and/or software components, and is represented by a corresponding node of a plurality of nodes of a property graph,
the property graph is a directed graph,
the property graph represents one or more relationships between ones of the plurality of entities as one or more edges of a plurality of edges between the ones of the plurality of nodes,
each of the one or more edges represents a corresponding dependency, of a plurality of dependencies, between the ones of the plurality of entities,
each node of the plurality of nodes is represented by a corresponding object instance of a plurality of object instances,
the first entity is represented by a first node of the plurality of nodes,
the first node is represented by a first object instance of the plurality of object instances,
the second entity is represented by a second node of the plurality of nodes,
the second node is represented by a second object instance of the plurality of object instances, and
a dependency, of the plurality of dependencies, between the first entity and the second entity is represented by an edge, of the plurality of edges, between the first node and the second node,
detecting the change to the datacenter, wherein
the detecting is performed by a property graph analysis module of the management server,
the property graph analysis module detects the change by analyzing property graph data representing the property graph,
the property graph data comprises the plurality of object instances, and
information is associated with the change to the datacenter,
in response to detecting the change to the datacenter,
determining a first propagation rule of the first object instance, wherein the first propagation rule comprises at least a first condition, and
automatically propagating the information from the first object instance to the second object instance, wherein
the automatically propagating the information comprises evaluating at least a portion of the information with regard to the first
condition with respect to propagating the information to the second object instance, and
in response to the at least the portion of the information meeting the first condition, propagating the information to the second object instance.

### Claim 11 (depends on 10)

The computer system of claim 10, wherein
the one or more operations comprise at least one of
an addition operation that adds another entity to the datacenter,
a removal operation that removes an entity of the plurality of entities from the datacenter, or
a migration operation that migrates the entity of the plurality of entities within the datacenter.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein
the one or more operations further comprise an update operation that updates propagation metadata of a first object instance representing the first node.

### Claim 13 (depends on 11)

The computer system of claim 11, wherein
the one or more operations further comprise a creation of a new relationship between the ones of the plurality of entities.

### Claim 14 (depends on 11)

The computer system of claim 11, wherein
the one or more operations further comprise a deletion of an existing relationship between the ones of the plurality of entities.

### Claim 15 (depends on 11)

The computer system of claim 11, wherein the method further comprises:
adding propagation metadata to a first object instance representing the first node.

### Claim 16 (depends on 15)

The computer system of claim 15, wherein the method further comprises:
determining a qualifying sibling node of the plurality of nodes; and
updating the propagation metadata of an object instance representing the qualifying sibling node.

### Claim 17 (depends on 16)

The computer system of claim 16, wherein the method further comprises:
determining a qualifying sibling node of the plurality of nodes; and
clearing propagation metadata from an object instance representing the qualifying sibling node.

### Claim 18

A computer program product, comprising a plurality of instructions stored on a non-transitory computer-readable storage medium, wherein the instructions are configured to execute a method comprising:
monitoring a datacenter for a change to the datacenter, wherein
the monitoring is performed by a management server,
the datacenter comprises a plurality of entities in communication with one another via a network,
the plurality of entities comprise at least a first entity and a second entity,
the change to the datacenter is caused by one or more operations being performed,
each entity of the plurality of entities is at least one of a hardware device, a software component, or group of hardware devices and/or software components, and is represented by a corresponding node of a plurality of nodes of a property graph,
the property graph is a directed graph,
the property graph represents one or more relationships between ones of the plurality of entities as one or more edges of a plurality of edges between the ones of the plurality of nodes,
each of the one or more edges represents a corresponding dependency, of a plurality of dependencies, between the ones of the plurality of entities,
each node of the plurality of nodes is represented by a corresponding object instance of a plurality of object instances,
the first entity is represented by a first node of the plurality of nodes,
the first node is represented by a first object instance of the plurality of object instances,
the second entity is represented by a second node of the plurality of nodes,
the second node is represented by a second object instance of the plurality of object instances, and
a dependency, of the plurality of dependencies, between the first entity and the second entity is represented by an edge, of the plurality of edges, between the first node and the second node;
detecting the change to the datacenter, wherein
the detecting is performed by a property graph analysis module of the management server,
the property graph analysis module detects the change by analyzing property graph data representing the property graph,
the property graph data comprises the plurality of object instances, and information is associated with the change to the datacenter;
in response to detecting the change to the datacenter,
determining a first propagation rule of the first object instance, wherein the first propagation rule comprises at least a first condition; and
automatically propagating the information from the first object instance to the second object instance, wherein
the automatically propagating the information comprises
evaluating at least a portion of the information with regard to the first condition with respect to propagating the information to the second object instance, and
in response to the at least the portion of the information meeting the first condition, propagating the information to the second object instance.

### Claim 19 (depends on 18)

The computer program product of claim 18, wherein the method further comprises:
determining a qualifying sibling node of the plurality of nodes, wherein
the determining the qualifying sibling node is performed in response to determining that at least one of the one or more operations is a creation operation that creates a new relationship between the ones of the plurality of entities; and
updating propagation metadata of an object instance representing the qualifying sibling node.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein the method further comprises:
determining a qualifying sibling node of the plurality of nodes, wherein
the determining the qualifying sibling node is performed in response to determining that at least one of the one or more operations is a deletion operation that deletes an existing relationship between the ones of the plurality of entities; and
clearing propagation metadata from an object instance representing the qualifying sibling node.
