IP Library Granted Patent US 9,406,016
Granted Patent B2
US 9,406,016 · App. 13/658,513 · Granted Aug 2, 2016

Method and apparatus for monitoring network traffic

Inventors: Robinson E. Pino (Potomac, MD); Michael J. Shevenell (Darlington, MD)
Assignee: ICF INTERNATIONAL
G06N3/08G06N3/02G06N3/084
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,406,016
App. No.
13/658,513
Granted
Aug 2, 2016
Kind
B2
Abstract

A system that collects data from monitored network traffic. The system inputs, in parallel, the data through inputs of a neural network. The system compares an output of the neural network, generated in response to the inputted data, to at least one predetermined output. If the output of the neural network corresponds to the at least one predetermined output, the system provides a notification relating to the data.

Claims (48)

1. A computer program embodied on a non-transitory computer readable medium, said computer readable medium having instructions stored thereon that, when executed by a computer, causes the computer to perform:

receiving a keyword that is to be detected by a neural network;

creating a training vector;

replacing a portion of the training vector with a portion of the keyword;

inputting, in parallel, the training vector into the neural network;

comparing an output of the neural network, generated in response to inputting the training vector, with a desired output; and

modifying the neural network so that the output of the neural network corresponds to the desired output, wherein the replacing the portion of the training vector, the inputting, the comparing, and the modifying the neural network are performed a plurality of iterations, and each successive iteration changes the portion of the keyword that replaces the portion of the training vector.

2. The computer program of claim 1 , wherein modifying the neural network comprises configuring synaptic weight elements of the neural network.

3. The computer program of claim 1 , wherein the number of iterations of the plurality of iterations is based upon the length of the training vector and the length of the keyword.

4. A method comprising:

receiving a keyword that is to be detected by a neural network;

creating a training vector;

replacing a portion of the training vector with a portion of the keyword;

inputting, in parallel, the training vector into the neural network;

comparing an output of the neural network, generated in response to inputting the training vector, with a desired output; and

modifying the neural network so that the output of the neural network corresponds to the desired output, wherein the replacing the portion of the training vector, the inputting, the comparing, and the modifying the neural network are performed a plurality of iterations, and each successive iteration changes the portion of the keyword that replaces the portion of the training vector.

5. The method of claim 4 , wherein modifying the neural network comprises configuring synaptic weight elements of the neural network.

6. The method of claim 4 , wherein the number of iterations of the plurality of iterations is based upon the length of the training vector and the length of the keyword.

7. A system comprising:

a receiving unit configured to receive a keyword that is to be detected by a neural network;

a creating unit configured to create a training vector;

a replacing unit configured to replace a portion of the training vector with a portion of the keyword;

an inputting unit configured to input, in parallel, the training vector into the neural network;

a comparing unit configured to compare an output of the neural network, generated in response to inputting the training vector, with a desired output; and

a modifying unit configured to modify the neural network so that the output of the neural network corresponds to the desired output, wherein the replacing the portion of the training vector, the inputting, the comparing, and the modifying the neural network are performed a plurality of iterations, and each successive iteration changes the portion of the keyword that replaces the portion of the training vector.

8. The system of claim 7 , wherein modifying the neural network comprises configuring synaptic weight elements of the neural network.

9. The system of claim 7 , wherein the number of iterations of the plurality of iterations is based upon the length of the training vector and the length of the keyword.

10. A computer program embodied on a non-transitory computer readable medium, said computer readable medium having instructions stored thereon that, when executed by a computer, causes the computer to perform:

collecting data from monitored network traffic;

inputting, in parallel, the data through inputs of a neural network;

comparing an output of the neural network, generated in response to the inputted data, to at least one predetermined output, wherein a training vector comprises a portion of a keyword to be detected, the neural network has been trained by inputting the training vector into the neural network, and the training comprises inputting the training vector a plurality of iterations, and each successive iteration changes the portion of the keyword comprised by the training vector; and

if the output of the neural network corresponds to the at least one predetermined output, providing a notification relating to the data.

11. The computer program of claim 10 , wherein comparing the output of the neural network comprises comparing the output of the neural network to at least one predetermined output associated with unwanted network usage.

12. The computer program of claim 10 , wherein comparing the output of the neural network comprises comparing, in parallel, the output of the neural network to a plurality of predetermined outputs associated with unwanted network usage.

13. A method comprising:

collecting data from monitored network traffic;

inputting, in parallel, the data through inputs of a neural network;

comparing an output of the neural network, generated in response to the inputted data, to at least one predetermined output, wherein a training vector comprises a portion of a keyword to be detected, the neural network has been trained by inputting the training vector into the neural network, and the training comprises inputting the training vector a plurality of iterations, and each successive iteration changes the portion of the keyword comprised by the training vector; and

if the output of the neural network corresponds to the at least one predetermined output, providing a notification relating to the data.

14. The method of claim 13 , wherein comparing the output of the neural network comprises comparing the output of the neural network to at least one predetermined output associated with unwanted network usage.

15. The method of claim 13 , wherein comparing the output of the neural network comprises comparing, in parallel, the output of the neural network to a plurality of predetermined outputs associated with unwanted network usage.

16. A system comprising:

a collecting unit configured to collect data from monitored network traffic;

an inputting unit configured to input, in parallel, the data through inputs of a neural network;

a comparing unit configured to compare an output of the neural network, generated in response to the inputted data, to at least one predetermined output, wherein a training vector comprises a portion of a keyword to be detected, the neural network has been trained by inputting the training vector into the neural network, the training comprises inputting the training vector a plurality of iterations, and each successive iteration changes the portion of the keyword comprised by the training vector; and

a providing unit configured to, if the output of the neural network corresponds to the at least one predetermined output, provide a notification relating to the data.

17. The system of claim 16 , wherein comparing the output of the neural network comprises comparing the output of the neural network to at least one predetermined output associated with unwanted network usage.

18. The system of claim 16 , wherein comparing the output of the neural network comprises comparing, in parallel, the output of the neural network to a plurality of predetermined outputs associated with unwanted network usage.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2026
From: ICF INTERNATIONAL, INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 074341/0598 →
SECURITY INTEREST Recorded May 20, 2022
From: ICF INTERNATIONAL, INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 059976/0979 →
SECURITY INTEREST Recorded Oct 17, 2017
From: ICF INTERNATIONAL, INC.
To: PNC BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 043881/0606 →
SECURITY INTEREST Recorded Aug 8, 2014
From: ICF INTERNATIONAL, INC.; ICF CONSULTING GROUP, INC.
To: CITIZENS BANK OF PENNSYLVANIA, AS ADMINISTRATIVE AGENT
Reel/Frame 033500/0987 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2012
From: PINO, ROBINSON E.; SHEVENELL, MICHAEL J.
To: ICF INTERNATIONAL
Reel/Frame 029180/0620 →
Continuity (1)
Related Publication 20140149327A1 · May 29, 2014