IP Library Granted Patent US 12,199,846
Granted Patent B2
US 12,199,846 · App. 18/345,050 · Granted Jan 14, 2025

Network security monitoring and correlation system and method of using

Inventors: Jason Ingalls (Woodworth, LA); Adam Richards (Bossier City, LA); Eugenio Perinelli (Verona, IT); Nicola Piccinelli (Montichiari, IT); Riccardo Arena (Verona, IT)
Assignee: Viewpoint Software, LLC
H04L43/045H04L41/12H04L41/22H04L43/06H04L43/12H04L63/1425
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 12,199,846
App. No.
18/345,050
Granted
Jan 14, 2025
Kind
B2
Abstract

A network security monitoring and correlation system for providing a three-dimensional visualization of network traffic overlaid with security alerts and other relevant discrete data. The system may comprise an application server communicably linked to a client. The server functions to retrieve network traffic metadata and relevant discrete data associated with individual computer hosts and connections in the monitored network, process the network traffic data by building a graph data structure, and then embedding within the graph data structure one or more layers of additional information about the individual computer hosts and connections derived from the discrete data. The client functions to produce a three-dimensional visualization of the network environment by parsing the graph data structure received from the server and then spawning computer hosts and connections in the 3-D environment. The client will then add the overlay information to the appropriate hosts or connections, with the overlay information preferably being represented within the 3-D environment as a particular color, shape, size, position, or a changing dynamic value.

Claims (35)

1. A network monitoring system, comprising:

an application server comprising a non-transitory computer readable medium having stored thereon software instructions for programming the application server to perform server operations including:

retrieving network traffic metadata pertaining to a monitored network, wherein the monitored network comprises a private network, a public network, and an external network, with the private network, the public network, and the external network each comprising a plurality of computer hosts; and

processing the network traffic metadata by normalizing the network traffic metadata and constructing a graph data structure, the graph data structure comprising: one or more vertices representing the plurality of computer hosts existing on each of the private network, the public network, and the external network; and one or more edges representing connections between two computer hosts.

2. The network monitoring system of claim 1 , wherein the process of normalizing the network traffic metadata includes extracting normalized fields metadata elements from the network traffic metadata and populating an intermediary array, wherein the normalized fields metadata elements comprise a destination host identifier, a destination host port, a source host identifier, and a source host port.

3. The network monitoring system of claim 2 , wherein the processing of the network traffic metadata further includes extracting non-normalized fields metadata elements from the network traffic metadata and populating a nested array, wherein the non-normalized fields metadata elements define network traffic additional information pertaining to the one or more vertices or the one or more edges of the graph data structure.

4. The network monitoring system of claim 3 , wherein the processing of the network traffic metadata further includes adding the additional network traffic information to the one or more vertices or the one or more edges of the graph data structure.

5. The network monitoring system of claim 4 , wherein the software instructions for programming the application server to perform server operations further include:

retrieving discrete data pertaining to the monitored network; and

processing the discrete data by adding the discrete data to the one or more edges in the graph data structure.

6. The network monitoring system of claim 5 , wherein the processing of the discrete data further includes

extracting discrete data elements from the discrete data and populating the nested array, wherein the discrete data elements define discrete data additional information pertaining to the one or more vertices or the one or more edges of the graph data structure; and

adding the discrete data additional information to the one or more vertices or the one or more edges of the graph data structure.

7. The network monitoring system of claim 6 , wherein the network visualization system further comprises a client application comprising a non-transitory computer readable medium having stored thereon software instructions for programming the application server to perform client operations including: generating a three-dimensional visualization of the monitored network by parsing the graph data structure received from the application server.

8. The network monitoring system of claim 7 , wherein the process of generating the three-dimensional visualization of the monitored network includes spawning the plurality of computer hosts as a first three-dimensional object in a 3-D environment.

9. The network monitoring system of claim 8 , wherein the process of generating the three-dimensional visualization of the monitored network further includes spawning the connections as a second three-dimensional object in the 3-D environment.

10. The network monitoring system of claim 9 , wherein the process of generating the three-dimensional visualization of the monitored network further includes representing the discrete data additional information as a particular color, a particular shape, a particular size, a particular position, or a particular changing dynamic value in the 3-D environment.

11. The network monitoring system of claim 5 , wherein the process of retrieving network traffic metadata and discrete data pertaining to the monitored network includes querying a system database for network traffic metadata and discrete data collected by one or more data collectors during a snapshot timeframe and pertaining to the plurality of computer hosts existing on each of the private network, the public network, and the external network.

12. A method of monitoring a computer network, the method comprising:

retrieving network traffic metadata pertaining to a monitored network, wherein the monitored network comprises a private network, a public network, and an external network, with the private network, the public network, and the external network each comprising a plurality of computer hosts; and

processing the network traffic metadata by embedding the network traffic metadata into a graph data structure, the graph data structure comprising: a plurality of vertices, with each of the plurality of vertices representing one of the plurality of computer hosts existing on either the private network, the public network, or the external network; and one or more edges representing connections between two computer hosts.

13. The method of claim 12 , wherein processing the network traffic metadata further includes normalizing the network traffic metadata by extracting normalized fields metadata elements from the network traffic metadata and populating an intermediary array, wherein the normalized fields metadata elements comprise a destination host identifier, a destination host port, a source host identifier, and a source host port.

14. The method of claim 13 , wherein the processing of the network traffic metadata further includes extracting non-normalized fields metadata elements from the network traffic metadata and populating a nested array, wherein the non-normalized fields metadata elements define network traffic additional information pertaining to the one or more vertices or the one or more edges of the graph data structure.

15. The method of claim 14 , wherein the processing of the network traffic metadata further includes adding the additional network traffic information to the one or more vertices or the one or more edges of the graph data structure.

16. The method of claim 15 , further comprising:

retrieving discrete data pertaining to the monitored network; and

processing the discrete data by adding the discrete data to the one or more edges in the graph data structure.

17. The method of claim 16 , wherein the process of retrieving network traffic metadata and discrete data pertaining to the monitored network includes querying a system database for network traffic metadata and discrete data collected by one or more data collectors during a snapshot timeframe and pertaining to the plurality of computer hosts existing on each of the private network, the public network, and the external network.

18. The method of claim 16 , wherein the processing of the discrete data further includes:

extracting discrete data elements from the discrete data and populating the nested array, wherein the discrete data elements define discrete data additional information pertaining to the one or more vertices or the one or more edges of the graph data structure; and

adding the discrete data additional information to the one or more vertices or the one or more edges of the graph data structure.

19. The method of claim 12 , further comprising:

generating a three-dimensional visualization of the monitored network by parsing the graph data structure; and

displaying the three-dimensional visualization of the monitored network overlaid with the discrete data.

20. The method of claim 19 , wherein the process of generating the three-dimensional visualization of the monitored network includes: spawning the plurality of computer hosts as a first three-dimensional object in a 3-D environment; spawning the connections as a second three-dimensional object in the 3-D environment; and representing the discrete data additional information as a particular color, a particular shape, a particular size, a particular position, or a particular changing dynamic value in the 3-D environment.

Assignments (2)
CHANGE OF NAME Recorded Jul 12, 2024
From: INGALLS INFORMATION SECURITY IP, L.L.C.
To: VIEWPOINT SOFTWARE, LLC
Reel/Frame 067975/0266 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2023
From: INGALLS, JASON; RICHARDS, ADAM; PERINELLI, EUGENIO; PICCINELLI, NICOLA; ARENA, RICCARDO
To: INGALLS INFORMATION SECURITY IP, L.L.C.
Reel/Frame 064636/0713 →
Continuity (4)
Continuation 17196569 · Mar 9, 2021
Continuation 15750074
Provisional Application 62200510 · Aug 3, 2015
Related Publication 20230344731A1 · Oct 26, 2023
References Cited (29)
US 5796942A · Esbensen · 1998 [cited by applicant]
US 5958012A · Battat et al. · 1999 [cited by applicant]
US 7180516B2 · Kapler et al. · 2007 [cited by applicant]
US 7681131B1 · Quarterman et al. · 2010 [cited by applicant]
US 7877804B2 · Khanolkar et al. · 2011 [cited by applicant]
US 7890869B1 · Mayer et al. · 2011 [cited by applicant]
US 7940271B2 · Wright et al. · 2011 [cited by applicant]
US 8019865B2 · Chang et al. · 2011 [cited by applicant]
US 8245302B2 · Evans et al. · 2012 [cited by applicant]
US 8782265B1 · Bokotey · 2014 [cited by applicant]
US 8803884B2 · Bradshaw et al. · 2014 [cited by applicant]
US 9130981B2 · Yi · 2015 [cited by applicant]
US 20080123586A1 · Manser · 2008 [cited by applicant]
US 20110084967A1 · De Pauw · 2011 [cited by examiner]
US 20110277034A1 · Hanson · 2011 [cited by examiner]
US 20130227714A1 · Gula · 2013 [cited by examiner]
US 20140096036A1 · Mohler · 2014 [cited by applicant]
US 20140336785A1 · Asenjo et al. · 2014 [cited by applicant]
US 20140365647A1 · Haraszti · 2014 [cited by examiner]
US 20150149611A1 · Lissack · 2015 [cited by applicant]
US 20160253710A1 · Publicover et al. · 2016 [cited by applicant]
EP 2876842A1 · 2015 [cited by applicant]
Besnik Camaj, Etienne Petremand, Detecting Networks Anomalies and Attacks Using 3D Visualization, Computer Science and Information Technology 3(2): 54-57, 2015, 4 pages. [cited by applicant]
Doantam Phan, Supporting the Visualization and Forensic Analysis of Network Events, A dissertation submitted to the Department of Computer Science and the Committee on Graduate Studies of Stanford University in partial … [cited by applicant]
John R. Goodall, Introduction to Visualization for Computer Security, Introduction to Visualization for Computer Security, VizSEC 2007, Mathematics and Visualization, Springer, Berlin, Heidelberg, 17 pages. [cited by applicant]
Kulsoom Abdullah, Chris Lee, Gregory Conti, John A. Copeland, John Stasko, IDS RainStorm: Visualizing IDS Alarms, VizSEC, 2005, 10 pages. [cited by applicant]
ISA/US, Search Report, PCT/US2016/045399 dated Oct. 17, 2016, 3 pages. [cited by applicant]
Larry Bunch, Jeffrey M. Bradshaw, Robert R. Hoffman, Matthew Johnson, Principles for Human-Centered Interaction Design, Part 2: Can Humans and Machines Think Together?; IEEE Intelligent Systems; Published by the IEEE Co… [cited by applicant]
EPO, Search Report, Application No. 16833821.8 based on PCT/US2016/045399, dated Feb. 13, 2019; 11 pages. [cited by applicant]