IP Library Granted Patent US 11,416,557
Granted Patent B2
US 11,416,557 · App. 17/002,865 · Granted Aug 16, 2022

System and method to identifying network appliances by data endpoints

Inventor: Richard Stokes (Glenview, IL)
Assignee: ACTION STREAMER, LLC
G06F16/90335G06F16/164H04L45/745
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,416,557
App. No.
17/002,865
Granted
Aug 16, 2022
Kind
B2
Abstract

A method, system, and computer program product for identifying network appliances on a network which includes a processor configured to intercept network communications from one or more devices on a first network in communication with a second network. The processor may store information about each communication in a database, the information including a Client Id and a destination address. The processor may query the database for a list of all destination addresses which were attempted to be contacted for each Client Id and generate metadata for each Client Id. The processor may analyze each Client Id, the associated metadata for each Client Id, and the destination addresses associated with each Client Id using one or more rules in a device identification tree and assign a device label to each Client Id of the one or more devices.

Claims (42)

1. A method for identifying network appliances on a network, the method comprising:

intercepting network communications from one or more devices on a first network in communication with a second network;

storing information about each communication in a database, the information including a Client Id and a destination address;

querying the database for a list of all destination addresses which were attempted to be contacted for each Client Id;

generating metadata for each Client Id;

analyzing each Client Id, the associated metadata for each Client Id, and the destination addresses associated with each Client Id using a device identification tree, the device identification tree having one or more rules, the one or more rules defining a set of conditions to identify the one or more devices; and

assigning a device label to the Client Id of the one or more devices on the first network based on the one or more Client Ids matching all conditions of one or more of the rules in the device identification tree.

2. The method as claimed in claim 1 , comprising:

storing the assigned device label for each of the one or more devices on the database.

3. The method as claimed in claim 1 , wherein the network communications from the one or more devices on the first network in communication with the second network are intercepted using arp spoofing.

4. The method as claimed in claim 1 , wherein the destination address is determined using packet inspection.

5. The method as claimed in claim 1 , wherein the destination address is determined using reverse DNS lookup of the destination IP address.

6. The method as claimed in claim 1 , wherein each of the one or more rules has one or more rule parts, each rule part having a series of semantic language directives.

7. The method as claimed in claim 6 , wherein the one or more rules are sorted in order of descending complexity, the complexity of the rule being based on the number of rule parts.

8. The method as claimed in claim 7 , wherein the device label assigned to each of the one or more devices is based on the most complex rule each device satisfies the set of conditions of.

9. A system for identifying network appliances on a network, the system comprising:

one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, the instructions comprising:

instructions to intercept network communications from one or more devices on a first network in communication with a second network;

instructions to store information about each communication in a database, the information including a Client Id and a destination address;

instructions to query the database for a list of all destination addresses which were attempted to be contacted for each Client Id;

instructions to generate metadata for each Client Id;

instructions to analyze each Client Id, the associated metadata for each Client Id, and the destination addresses associated with each Client Id using a device identification tree, the device identification tree having one or more rules, the one or more rules defining a set of conditions to identify the one or more devices; and

instructions to assign a device label to the Client Id of the one or more devices on the first network based on the one or more Client Ids matching all conditions of one or more of the rules in the device identification tree.

10. The system as claimed in claim 9 , comprising:

instructions to store the assigned device label for each of the one or more devices on the database.

11. The system as claimed in claim 9 , wherein the network communications from the one or more devices on the first network in communication with the second network are intercepted using arp spoofing.

12. The system as claimed in claim 9 , wherein the destination address is determined using packet inspection.

13. The system as claimed in claim 9 , wherein the destination address is determined using reverse DNS lookup of the destination IP address.

14. The system as claimed in claim 9 , wherein each of the one or more rules has one or more rule parts, each rule part having a series of semantic language directives.

15. The system as claimed in claim 14 , wherein the one or more rules are sorted in order of descending complexity, the complexity of the rule being based on the number of rule parts.

16. The system as claimed in claim 15 , wherein the device label assigned to each of the one or more devices is based on the most complex rule each device satisfies the set of conditions of.

17. A computer program product for identifying network appliances on a network, the computer program product comprising:

a non-transitory computer-readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to perform a method, comprising:

intercepting network communications from one or more devices between on a first network in communication on a second network;

storing information about each communication in a database, the information including a Client Id and a destination address;

querying the database for a list of all destination addresses which were attempted to be contacted for each Client Id;

generating metadata for each Client Id;

analyzing each Client Id, the associated metadata for each Client Id, and the destination addresses associated with each Client Id using a device identification tree, the device identification tree having one or more rules, the one or more rules defining a set of conditions to identify the one or more devices; and

assigning a device label to the Client Id of the one or more devices on the first network based on the one or more Client Ids matching all conditions of one or more of the rules in the device identification tree.

18. The computer program product as claimed in claim 17 , wherein each of the one or more rules has one or more rule parts, each rule part having a series of semantic language directives.

19. The computer program product as claimed in claim 18 , wherein the one or more rules are sorted in order of descending complexity, the complexity of the rule being based on the number of rule parts.

20. The computer program product as claimed in claim 19 , wherein the device label assigned to each of the one or more devices is based on the most complex rule each device satisfies the set of conditions of.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2022
From: WINSTON PRIVACY, LLC
To: ACTION STREAMER, LLC
Reel/Frame 060483/0730 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2020
From: STOKES, RICHARD
To: WINSTON PRIVACY
Reel/Frame 053598/0420 →
Continuity (1)
Related Publication 20220067103A1 · Mar 3, 2022