IP Library Granted Patent US 10,586,209
Granted Patent B2
US 10,586,209 · App. 11/416,654 · Granted Mar 10, 2020

Automatically collecting data regarding assets of a business entity

Inventors: John Robert Thorpe (Sunnyvale, CA); Charles Larry Marker, II (Los Altos Hills, CA); Constantin Stelio Delivanis (Los Altos Hills, CA); Alistair D'Lougar Black (Los Gatos, CA)
Assignee: BDNA Corporation
G06Q10/10
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 10,586,209
App. No.
11/416,654
Granted
Mar 10, 2020
Kind
B2
Abstract

A system to automatically gather attribute data about elements such as networks, network interface cards, operating systems, device types, installed software, processes in execution, financial data, etc. in an organization or a designated subset of the organization. Fingerprint files are used, each fingerprint file corresponding to an element of a specific type and each containing a list of attributes that will be found if that element exists in the system. Each fingerprint contains or points to one or more collection instructions which control a data collector process to attempt to gather attribute data. Each fingerprint contains or points to rules that are used to analyze the attribute data gathered to calculate the probability that the element exists. The rules can be fired sequentially, in if-then-else fashion or can be incorporated in a script in loops and with mathematical manipulations, tests and branching for more sophisticated analysis. Fingerprints can be turned on and off by configuration data and can be used in a logical order to do discovery without any prior knowledge of the systems being analyzed. A refresh schedule and collection calendar control how often the fingerprints are used in some embodiments, and collected data is stored with time stamps to enable analysis of changes in the data over time.

Claims (24)

1. A non-transitory computer-readable storage medium having stored thereon computer-readable instructions which, when executed, control a computer to perform a method for gathering attribute data about elements, the method comprising:

generating a plurality of element data structures recognizable by a computer system, the plurality of element data structures corresponding to installed software on the computer system;

generating, based on a plurality of fingerprint files, a plurality of collection instructions associated with each element data structure for retrieving attribute data for the element data structure within the computer system, wherein each collection instruction is referenced in a respective fingerprint file specific to a type associated with the element data structure, the fingerprint file indicating attributes of the element data structure;

collecting attribute data using the collection instructions generated based on the fingerprint files, wherein the collected attribute data is stored in a single common data store after post-processing to conform the collected attribute data to the element data structure;

examining the stored attribute data to determine that an element exists within the computer system, wherein the examination includes matching the stored attribute data with attribute definitions of known elements;

generating entries for each matched element, wherein each matched element comprises collected attribute data that matches with attribute definitions of known elements; and

characterizing features of the computer system based on the matched elements found on the computer system from the generated entries.

2. The computer-readable storage medium of claim 1 , wherein the collected attribute data about the elements collected using the collection instruction includes a timestamp indicating when the attribute data was collected.

3. The computer-readable storage medium of claim 1 , wherein the collecting of attribute data about elements using the collection instructions is performed according to a refresh schedule which indicates when selected ones or all of the attribute data can be collected.

4. The computer-readable storage medium of claim 1 , wherein the collecting of attribute data about elements using the collection instructions is performed according to a refresh schedule, wherein the refresh schedule includes a separate refresh schedule for each individual attribute data.

5. The computer-readable storage medium of claim 4 , wherein the refresh schedule further includes separate refresh schedules for individual classes of attribute data.

6. The computer-readable storage medium of claim 1 , wherein the collecting of attribute data about elements using the collection instructions is performed according to a collection calendar that controls a time, day and date individual items of attribute data is collected.

7. The computer-readable storage medium of claim 6 , wherein the collection calendar further controls a time, day and date individual classes of attribute data are collected.

8. The computer-readable storage medium of claim 1 , wherein the method further comprises:

storing the collected attribute data about elements in a collected data table,

selecting an attribute from the collected data table, wherein the selection is based on a correlation index that specifies what attributes are to be selected, and

storing the selected attributes in particular locations in a correlation table data structured based on the correlation index that specifies how the selected attribute will be displayed with respect to relationships between different attribute data over time.

9. The computer-readable storage medium of claim 8 , wherein the correlation index is provided by a user and is stored with the plurality of element data structures associated with the element.

10. The computer-readable storage medium of claim 1 , wherein the method further defines collection instructions as a program, script or list of instructions, wherein the collection instructions gather attribute data of a specific attribute for a specific element.

11. The computer-readable storage medium of claim 10 , wherein the collection instructions gather attribute data associated with a group of elements.

12. The computer-readable storage medium of claim 10 , wherein the collection instructions gather attribute data of a specific attribute for a specific asset.

13. The computer-readable storage medium of claim 1 , wherein the stored plurality of collection instructions in each element data structure is also directed towards retrieving a pointer to a collection instruction capable of retrieving attribute data of that type.

14. The computer-readable storage medium of claim 1 , wherein the features including one or more of operating system, CPU type, processing speed, or memory.

15. The computer-readable storage medium of claim 1 , wherein each fingerprint file is associated with an order, and wherein attribute data is collected based on the order.

Assignments (12)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS - REEL/FRAME 045441/ 0499 Recorded Aug 25, 2025
From: JEFFERIES FINANCE LLC
To: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
Reel/Frame 072552/0558 →
SECURITY INTEREST Recorded Aug 15, 2025
From: BDNA CORPORATION
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL GENT
Reel/Frame 072034/0171 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Apr 18, 2024
From: JEFFERIES FINANCE LLC
To: BDNA CORPORATION; FLEXERA SOFTWARE LLC; PALAMIDA, INC.; RIGHTSCALE, INC.; RISC NETWORKS, LLC; REVULYTICS, INC.
Reel/Frame 067636/0534 →
SECOND LIEN SECURITY AGREEMENT Recorded Mar 3, 2021
From: BDNA CORPORATION; FLEXERA SOFTWARE LLC; PALAMIDA, INC.; RIGHTSCALE, INC.; RISC NETWORKS, LLC; REVULYTICS, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 055487/0354 →
RELEASE OF SECOND LIEN SECURITY INTEREST Recorded Feb 28, 2020
From: JEFFERIES FINANCE LLC
To: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION; RIGHTSCALE, INC.; RISC NETWORKS, LLC
Reel/Frame 052049/0560 →
SECOND LIEN SECURITY AGREEMENT Recorded Feb 27, 2018
From: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 045451/0499 →
FIRST LIEN SECURITY AGREEMENT Recorded Feb 26, 2018
From: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 045441/0499 →
TERMINATION OF 1ST LIEN SECURITY INTEREST RECORDED AT REEL/FRAME 044889/0031 Recorded Feb 26, 2018
From: JEFFERIES FINANCE LLC
To: BDNA CORPORATION
Reel/Frame 045447/0213 →
TERMINATION OF 2ND LIEN SECURITY INTEREST RECORDED AT REEL/FRAME 044889/0038 Recorded Feb 26, 2018
From: JEFFERIES FINANCE LLC
To: BDNA CORPORATION
Reel/Frame 045447/0944 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Dec 18, 2017
From: BDNA CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 044889/0031 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Dec 18, 2017
From: BDNA CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 044889/0038 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2016
From: THORPE, JOHN ROBERT; MARKER II, CHARLES LARRY; DELIVANIS, CONSTANTIN STELIO; BLACK, ALISTAIR D'LOUGAR
To: BDNA CORPORATION
Reel/Frame 039932/0140 →
Continuity (2)
Division 10125998 · Apr 18, 2002
Related Publication 20060248187A1 · Nov 2, 2006