IP Library Granted Patent US 9,608,867
Granted Patent B1
US 9,608,867 · App. 14/987,321 · Granted Mar 28, 2017

Detecting deviation of data center connectivity by conditional sub-graph matching

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,608,867
App. No.
14/987,321
Filed
Jan 4, 2016
Granted
Mar 28, 2017
Kind
B1
Art Unit
2463
USPC
370/254
Abstract

Various systems and methods for detecting a deviation of an existing connectivity of a data center from a pre-determined connectivity are presented. One method involves detecting a deviation of an existing connectivity of a data center from a pre-determined connectivity by defining a start node. The start node is defined based on a condition of a component of the data center. The condition is determined based on an explicit relationship between a node and another node of the data center. The method involves conditionally matching a sub-graph and a portion of a main graph by identifying the deviation. The conditional matching is begun at the start node. A failure to conditionally match a portion of the sub-graph and a portion of the main-graph indicates that the deviation exists.

Claims (91)

1. A method in a computer system comprising:

receiving, at the computer system, a signature, wherein

the signature is represented by a sub-graph;

defining a start node, wherein

the start node is defined based on a condition of a component of a data center,

the condition is determined based on a relationship between the start node and a next node of the data center, and

the relationship between the start node and the next node is defined by an edge; and

determining, using a processor of the computer system, if the data center is over-provisioned or under-provisioned, wherein

the determining comprises matching the sub-graph and a portion of a main graph based on the condition and the signature, and

a failure to match the sub-graph and at least the portion of the main graph indicates that the data center is either over-provisioned or under-provisioned.

2. The method of claim 1 , wherein

the sub-graph represents a pre-determined connectivity of the data center, and

the main graph represents an existing connectivity of the data center.

3. The method of claim 2 , further comprising:

determining whether a node of the data center qualifies as the start node, wherein

the determining is based on the condition,

the signature corresponds to the pre-determined connectivity, and

the signature is represented visually by the sub-graph;

matching the signature and the condition; and

designating the node as the start node.

4. The method of claim 3 , further comprising:

matching the signature to the sub-graph to determine whether the data center is over-provisioned or under-provisioned.

5. The method of claim 3 , wherein

the conditional matching is begun at the start node, and

a first failure to meet the condition stops the conditional matching, wherein the first failure indicates that the data center is not over-provisioned or under-provisioned.

6. The method of claim 5 , further comprising:

determining that the sub-graph and at least the portion of the main graph do not match after one or more adjustments are performed to the component upon the first failure; and

designating another node of the data center as the start node.

7. The method of claim 2 , further comprising:

accessing a Service Level Agreement (SLA) to determine whether the data center is over-provisioned or under-provisioned upon the failure to conditionally match the sub-graph and at least the portion of the main graph.

8. A non-transitory computer readable storage medium comprising program instructions executable to:

receive, at a computer system, a signature, wherein

the signature is represented by a sub-graph;

define a start node, wherein

the start node is defined based on a condition of a component of a data center,

the condition is determined based on a relationship between the start node and a next node of the data center, and

the relationship between the start node and the next node is defined by an edge; and

determine, using a processor of the computer system, if the data center is over-provisioned or under-provisioned, wherein

the determining comprises matching the sub-graph and a portion of a main graph based on the condition and the signature, and

a failure to match the sub-graph and at least the portion of the main graph indicates that the data center is either over-provisioned or under-provisioned.

9. The non-transitory computer readable storage medium of claim 8 , wherein

the sub-graph represents a pre-determined connectivity of the data center, and

the main graph represents an existing connectivity of the data center.

10. The non-transitory computer readable storage medium of claim 9 , further comprising:

determining whether a node of the data center qualifies as the start node, wherein

the determining is based on the condition,

the signature corresponds to the pre-determined connectivity, and

the signature is represented visually by the sub-graph;

matching the signature and the condition;

designating the node as the start node; and

matching the signature to the sub-graph to determine whether the data center is over-provisioned or under-provisioned.

11. The non-transitory computer readable storage medium of claim 10 , wherein

the conditional matching is begun at the start node, and

a first failure to meet the condition stops the conditional matching, wherein the first failure indicates that the data center is not over-provisioned or under-provisioned provisioned.

12. The non-transitory computer readable storage medium of claim 11 , further comprising:

determining that the sub-graph and at least the portion of the main graph do not match after one or more adjustments are performed to the component upon the first failure; and

designating another node of the data center as the start node.

13. The non-transitory computer readable storage medium of claim 8 , further comprising:

accessing a Service Level Agreement (SLA) to determine whether the data center is over-provisioned or under-provisioned upon the failure to conditionally match the sub-graph and at least the portion of the main graph.

14. A system comprising:

one or more processors; and

a memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to:

receive, at a computer system, a signature, wherein

the signature is represented by a sub-graph;

define a start node, wherein

the start node is defined based on a condition of a component of a data center,

the condition is determined based on a relationship between the start node and a next node of the data center, and

the relationship between the start node and the next node is defined by an edge; and

determine, using a processor of the computer system, if the data center is over-provisioned or under-provisioned, wherein

the determining comprises matching the sub-graph and a portion of a main graph based on the condition and the signature, and

a failure to match the sub-graph and at least the portion of the main graph indicates that the data center is either over-provisioned or under-provisioned.

15. The system of claim 14 , wherein

the sub-graph represents a pre-determined connectivity of the data center, and

the main graph represents an existing connectivity of the data center.

16. The system of claim 15 , further comprising:

determining whether a node of the data center qualifies as the start node, wherein

the determining is based on the condition,

the signature corresponds to the pre-determined connectivity, and

the signature is represented visually by the sub-graph;

matching the signature and the condition; and

designating the node as the start node.

17. The system of claim 16 , further comprising:

matching the signature to the sub-graph to determine whether the data center is over-provisioned or under-provisioned.

18. The system of claim 17 , wherein

the conditional matching is begun at the start node, and

a first failure to meet the condition stops the conditional matching, wherein the first failure indicates that the data center is not over-provisioned or under-provisioned.

19. The system of claim 18 , further comprising:

determining that the sub-graph and at least the portion of the main graph do not match after one or more adjustments are performed to the component upon the first failure; and

designating another node of the data center as the start node.

20. The system of claim 14 , further comprising:

accessing a Service Level Agreement (SLA) to determine whether the data center is over-provisioned or under-provisioned upon the failure to conditionally match the sub-graph and at least the portion of the main graph.