IP Library Granted Patent US 11,102,072
Granted Patent B2
US 11,102,072 · App. 16/389,538 · Granted Aug 24, 2021

Synthetic objects in service models

Inventors: Geert De Peuter (Turnhout, BE); Stephen Palla (Jacksonville, FL)
Assignee: BMC Software, Inc.
H04L41/0873H04L41/0853H04L41/12H04L41/5045H04L69/163
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 11,102,072
App. No.
16/389,538
Granted
Aug 24, 2021
Kind
B2
Abstract

A method for determining a misconfiguration of components in an Information Technology (IT) infrastructure includes decomposing one or more components into sub parts, creating one or more synthetic objects, each synthetic object being associated with a sub part of a respective component, and including the components and the synthetic objects in a model of the IT infrastructure. The method further determines a relationship between a first component and a first synthetic object based on attributes of the first component and attributes of the first synthetic object, includes the determined relationship in the model of the IT infrastructure, and loads a graph of the IT infrastructure in a graph database with the first component and the synthetic object as nodes and the determined relationship as an edge in the graph. The method further determines the misconfiguration of components in the IT infrastructure by identifying components having improper relationships in the graph.

Claims (46)

1. A method for determining a misconfiguration of components in an Information Technology (IT) infrastructure, the method comprising:

determining a generic synthetic object that includes a plurality of relationships that connect a corresponding plurality of component classes of the IT infrastructure, including a communications interface;

creating a synthetic object from the generic synthetic object and specific to a first component class of the plurality of component classes;

including, in a model of the IT infrastructure, the synthetic object, a first component of the first component class and a second component of a second component class of the plurality of component classes;

determining a relationship between the second component and the synthetic object based on a matching of one or more attributes of the second component and one or more attributes of the synthetic object, the relationship being included in the plurality of relationships and having a relationship type defined by the second component class;

including the determined relationship in the model of the IT infrastructure;

loading the model of the IT infrastructure in a database as a graph with the second component and the synthetic object as nodes and the determined relationship as an edge in the graph between the nodes; and

identifying a misconfiguration of the components in the IT infrastructure by identifying a correspondence failure between the synthetic object and the first component, the correspondence failure including at least one of a mismatch between the relationship type and the first component class, or an identification of the synthetic object within the graph as being connected to the second component and not connected to the first component.

2. The method of claim 1 , further comprising: displaying the graph on a user interface for visual determination of the misconfiguration of components in the IT infrastructure, independent of which respective component the synthetic object is a sub-part of, and including displaying the determined relationship between the second component and the synthetic object in the graph.

3. The method of claim 1 , wherein the synthetic object is associated with a communication interface of the first component class, the communication interface allowing communication with another component class of the IT infrastructure.

4. The method of claim 3 , wherein the communication interface of the first component class is an application endpoint.

5. The method of claim 4 , wherein the synthetic object is an application specific construct that allows communication involving one of a broadcast address, a queue, or a stream.

6. The method of claim 1 , wherein the synthetic object is a transmission control protocol (TCP) port.

7. The method of claim 1 , wherein each component of the IT infrastructure is represented by a respective class object in the model, wherein each class object includes configuration parameters of the component including one or more of a component type name, a host name, and an IP address, and wherein the synthetic object is derived from the configuration parameters of class objects that have an identity independent of any other class object.

8. A computer system for determining misconfigurations of components in an Information Technology (IT) infrastructure, the computer system comprising:

a processor;

a memory; and

a graph database,

the memory including instructions that when executed by the processor:

determine a generic synthetic object that includes a plurality of relationships that connect a corresponding plurality of component classes of the IT infrastructure, including a communications interface;

create a synthetic object from the generic synthetic object and specific to a first component class of the plurality of component classes;

include, in a model of the IT infrastructure, the synthetic object, a first component of the first component class and a second component of a second component class of the plurality of component classes;

determine a relationship between the second component and the synthetic object based on a matching of one or more attributes of the second component and one or more attributes of the synthetic object, the relationship being included in the plurality of relationships and having a relationship type defined by the second component class;

include the determined relationship in the model of the IT infrastructure;

load the model of the IT infrastructure in a database as a graph with the second component and the synthetic object as nodes and the determined relationship as an edge in the graph between the nodes; and

identify a misconfiguration of the components in the IT infrastructure by identifying a correspondence failure between the synthetic object and the first component, the correspondence failure including at least one of a mismatch between the relationship type and the first component class, or an identification of the synthetic object within the graph as being connected to the second component and not connected to the first component.

9. The computer system of claim 8 , wherein the instructions when executed by the processor, independent of which respective component the synthetic object is a sub-part of, display the graph on a user interface for visual determination of the misconfiguration of components in the IT infrastructure, including displaying the determined relationship between the second component and the synthetic object in the graph.

10. The computer system of claim 8 , wherein the synthetic object is associated with a communication interface of the first component class, the communication interface allowing communication with another component class of the IT infrastructure.

11. The computer system of claim 10 , wherein the communication interface of the first component class is an application endpoint.

12. The computer system of claim 11 , wherein the synthetic object is an application specific construct that allows communication involving one of a broadcast address, a queue, or a stream.

13. The computer system of claim 8 , wherein the synthetic object is a transmission control protocol (TCP) port.

14. The computer system of claim 8 , wherein each component of the IT infrastructure is represented by a respective class object in the model, each class object including configuration parameters of the component including one or more of a component type name, a host name, and an IP address, and wherein the synthetic object is derived from the configuration parameters of class objects that have an identity independent of any other class object.

15. A computer program product including instructions recorded on a non-transitory computer-readable storage medium and configured to cause a processor to determine a misconfiguration of components in an Information Technology (IT) infrastructure, the instructions including instructions that when executed by the processor cause the processor to:

determine a generic synthetic object that includes a plurality of relationships that connect a corresponding plurality of component classes of the IT infrastructure, including a communications interface;

create a synthetic object from the generic synthetic object and specific to a first component class of the plurality of component classes;

include, in a model of the IT infrastructure, the synthetic object, a first component of the first component class and a second component of a second component class of the plurality of component classes;

determine a relationship between the second component and the synthetic object based on a matching of one or more attributes of the second component and one or more attributes of the synthetic object, the relationship being included in the plurality of relationships and having a relationship type defined by the second component class;

include the determined relationship in the model of the IT infrastructure;

load the model of the IT infrastructure in a database as a graph with the second component and the synthetic object as nodes and the determined relationship as an edge in the graph between the nodes; and

identify a misconfiguration of the components in the IT infrastructure by identifying a correspondence failure between the synthetic object and the first component, the correspondence failure including at least one of a mismatch between the relationship type and the first component class, or an identification of the synthetic object within the graph as being connected to the second component and not connected to the first component.

16. The computer program product of claim 15 , wherein the instructions when executed by the processor, independent of which respective component the synthetic object is a sub-part of, display the graph on a user interface for visual determination of the misconfiguration of components in the IT infrastructure, including displaying the determined relationship between the second component and the synthetic object in the graph.

17. The computer program product of claim 15 , wherein the synthetic object is associated with a communication interface of the first component class, the communication interface allowing communication with another component class of the IT infrastructure.

18. The computer program product of claim 17 , wherein the communication interface of the first component class is an application endpoint.

19. The computer program product of claim 18 , wherein the synthetic object is an application specific construct that allows communication involving one of a broadcast address, a queue, or a stream.

20. The computer program product of claim 15 , wherein the synthetic object is a transmission control protocol (TCP) port.

21. The computer program product of claim 15 , wherein each component of the IT infrastructure is represented by a respective class object in the model, wherein each class object including configuration parameters of the component including one or more of a component type name, a host name, and an IP address, and wherein the synthetic object is derived from the configuration parameters of class objects that have an identity independent of any other class object.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Sep 10, 2019
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 050327/0634 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2019
From: PEUTER, GEERT DE; PALLA, STEVE
To: BMC SOFTWARE, INC.
Reel/Frame 048961/0251 →
Continuity (1)
Related Publication 20200336378A1 · Oct 22, 2020