IP Library Granted Patent US 10,171,422
Granted Patent B2
US 10,171,422 · App. 15/098,841 · Granted Jan 1, 2019

Dynamically configurable packet filter

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,171,422
App. No.
15/098,841
Granted
Jan 1, 2019
Kind
B2
Abstract

A configurable packet filtering system includes a packet filter configured to receive packets or groups of packets on an input. The packet filter compares predetermined portions of the received packets with information or criteria stored in a filter configuration file, and, if the information at the predetermined portions of the packets or groups of packets matches the information or criteria stored in the filter configuration file, forwards the packets or groups of packets on an output. The configurable packet filtering system also includes a filter configuration interface which is configured to receive a file on an input, to verify that the received file conforms to a predetermined specification, and, if the received file conforms to the predetermined specification, to replace the filter configuration file with the received file.

Claims (65)

1. A configurable packet filtering system, comprising:

a packet filter configured to receive packets or groups of packets on an input, to compare predetermined portions of the packets or groups of packets with information or criteria stored in a filter configuration file, and, in response to the information at the predetermined portions of the packets or groups of packets matching the information or criteria stored in the filter configuration file, to forward the packets or groups of packets on an output; and

a filter configuration interface configured to receive a file on an input, to verify that the received file conforms to a predetermined specification, and, in response to the received file conforming to the predetermined specification, to automatically replace the filter configuration file with the received file.

2. The configurable packet filtering system of claim 1 , wherein the input of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

3. The configurable packet filtering system of claim 2 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

4. The configurable packet filtering system of claim 1 , wherein the input of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

5. The configurable packet filtering system of claim 1 , wherein the output of the packet filter is coupled to a destination client via a one-way data link.

6. The configurable packet filtering system of claim 1 , wherein the filter configuration file is an Extensible Markup Language (XML) file that includes information specifying an intra-packet location and associated data or criteria, and wherein the packet filter is further configured to compare data in the received packet or groups of packets at the intra-packet location specified in the XML file with the associated data or criteria in the XML file, and to only forward the received packet or groups of packets on the output in response to the data in the received packet or groups of packets at the intra-packet location specified in the XML file matching the associated data or criteria in the XML file.

7. The configurable packet filtering system of claim 1 , wherein the predetermined portions of the packets or groups of packets is determined based on information included within the filter configuration file.

8. The configurable packet filtering system of claim 1 , wherein the output of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

9. The configurable packet filtering system of claim 8 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

10. The configurable packet filtering system of claim 1 , wherein the output of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

11. The configurable packet filtering system of claim 1 , wherein the input of the packet filter is coupled to a source server via a one-way data link.

12. A system for transferring packetized information from a source in a first network domain to a destination in a second network domain, comprising:

a one-way data link having an input and an output;

a first server computer coupled to receive packetized information from a source via a first network in the first network domain, the first server computer comprising:

a packet filter configured to receive packets or groups of packets on an input coupled to the first network, to compare predetermined portions of the packets or groups of packets with information or criteria stored in a filter configuration file, and, in response to the information at the predetermined portions of the packets or groups of packets matching the information or criteria stored in the filter configuration file, to forward the packets or groups of packets on an output;

a filter configuration interface configured to receive a file on an input, to verify that the received file conforms to a predetermined specification, and, in response to the received file conforming to the predetermined specification, to automatically replace the filter configuration file with the received file; and

a send application configured to receive packetized information from the output of the packet filter and to forward the packetized information to the input of the one-way data link; and

a second server computer coupled to the output of the one-way data link and comprising a receive application for receiving the packetized information from the one-way data link and configured to forward the received packetized information to a destination client via a second network in the second network domain.

13. The system filter of claim 12 , wherein the input of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

14. The system of claim 13 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

15. The system of claim 12 , wherein the input of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

16. The system of claim 12 , wherein the filter configuration file is an Extensible Markup Language (XML) file that includes information specifying an intra-packet location and associated data or criteria, and wherein the packet filter is further configured to compare data in the received packet or groups of packets at the intra-packet location specified in the XML file with the associated data or criteria in the XML file, and to only forward the received packet or groups of packets on the output in response to the data in the received packet or groups of packets at the intra-packet location specified in the XML file matching the associate data or criteria in the XML file.

17. The system of claim 12 , wherein the predetermined portions of the packets or groups of packets is determined based on information included within the filter configuration file.

18. A system for selectively transferring packetized information from one of a plurality of sources in a first network domain to a destination in a second network domain, comprising:

a one-way data link having an input and an output;

a first server computer coupled to receive packetized information from a plurality of sources via a first network in the first network domain, the packetized information including a source designation, the first server computer comprising:

a packet filter configured to receive packets or groups of packets on an input coupled to the first network, to compare predetermined portions of the packets or groups of packets with information or criteria stored in a stored filter configuration file, and, in response to the information at the predetermined portions of the packets or groups of packets matching the information or criteria stored in the stored filter configuration file, to forward the packets or groups of packets on an output;

a filter configuration interface configured to receive an updated filter configuration file on an input, to verify that the received updated filter configuration file conforms to a predetermined specification, and, in response to the received updated filter configuration file conforming to the predetermined specification, to automatically replace the stored filter configuration file with the received updated filter configuration file; and

a send application configured to receive packetized information from the output of the packet filter and to forward the packetized information to the input of the one-way data link;

a second server computer coupled to the output of the one-way data link and comprising a receive application for receiving the packetized information from the one-way data link and configured to forward the received packetized information to a destination client via a second network in the second network domain; and

a third server computer in the first network domain coupled to the first server computer and configured to provide the updated filter configuration file to the filter configuration interface; and

wherein the updated filter configuration file selectively identifies the source designation of one or more of the plurality of sources and wherein the packet filter only passes packets or groups of packets originating from the sources identified in the updated filter configuration file.

19. The system filter of claim 18 , wherein the input of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

20. The system of claim 19 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

21. The system of claim 18 , wherein the input of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

22. The system of claim 18 , wherein the filter configuration file is an Extensible Markup Language (XML) file that includes information specifying an intra-packet location and associated data or criteria, and wherein the packet filter is further configured to compare data in the received packet or groups of packets at the intra-packet location specified in the XML file with the associated data or criteria in the XML file, and to only forward the received packet or groups of packets on the output in response to the data in the received packet or groups of packets at the intra-packet location specified in the XML file matching the associated data or criteria in the XML file.

23. The system of claim 18 , wherein the predetermined portions of the packets or groups of packets is determined based on information included within the filter configuration file.

24. A system for transferring packetized information from a source in a first network domain to a destination in a second network domain, comprising:

a one-way data link having an input and an output;

a first server computer coupled to receive packetized information from a source via a first network in the first network domain, the first server computer comprising a send application configured to receive packetized information on an input coupled to the first network and to forward the packetized information to the input of the one-way data link;

a second server computer coupled to the output of the one-way data link and comprising:

a receive application for receiving the packetized information from the one-way data link and configured to forward the received packetized information on an output;

a packet filter configured to receive packets or groups of packets on an input coupled to the output of the receive application, to compare predetermined portions of the packets or groups of packets with information or criteria stored in a filter configuration file, and, in response to the information at the predetermined portions of the packets or groups of packets matching the information or criteria stored in the filter configuration file, to forward the packets or groups of packets to a destination client via a second network in the second network domain; and

a filter configuration interface configured to receive a file on an input, to verify that the received file conforms to a predetermined specification, and, in response to the received file conforming to the predetermined specification, to automatically replace the filter configuration file with the received file.

25. The system filter of claim 24 , wherein the output of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

26. The system of claim 25 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

27. The system of claim 24 , wherein the output of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

28. The system of claim 24 , wherein the filter configuration file is an Extensible Markup Language (XML) file that includes information specifying an intra-packet location and associated data or criteria, and wherein the packet filter is further configured to compare data in the received packet or groups of packets at the intra-packet location specified in the XML file with the associated data or criteria in the XML file, and to only forward the received packet or groups of packets in response to the data in the received packet or groups of packets at the intra-packet location specified in the XML file matching the associated data or criteria in the XML file.

29. The system of claim 24 , wherein the predetermined portions of the packets or groups of packets is determined based on information included within the filter configuration file.

30. A system for selectively transferring packetized information from one of a plurality of sources in a first network domain to a destination in a second network domain, comprising:

a one-way data link having an input and an output;

a first server computer coupled to receive packetized information from a plurality of sources via a first network in the first network domain, the packetized information including a source designation, the first server computer comprising a send application configured to receive packetized information from an input coupled to the first network and to forward the packetized information to the input of the one-way data link:

a second server computer coupled to the output of the one-way data link and comprising:

a receive application for receiving the packetized information from the one-way data link and configured to forward the received packetized information on an output;

a packet filter configured to receive packets or groups of packets on an input coupled to the receive application, to compare predetermined portions of the packets or groups of packets with information or criteria stored in a stored filter configuration file, and, in response to the information at the predetermined portions of the packets or groups of packets matching the information or criteria stored in the stored filter configuration file, to forward the packets or groups of packets to a destination client via a second network in the second network domain; and

a filter configuration interface configured to receive an updated filter configuration file on an input, to verify that the received updated filter configuration file conforms to a predetermined specification, and, in response to the received updated filter configuration file conforming to the predetermined specification, to automatically replace the stored filter configuration file with the received updated filter configuration file; and

a third server computer in the second network domain coupled to the second server computer and configured to provide the updated filter configuration file to the filter configuration interface; and

wherein the updated filter configuration file selectively identifies the source designation of one or more of the plurality of sources and wherein the packet filter only passes packets or groups of packets originating from the sources identified in the updated filter configuration file.

31. The system filter of claim 30 , wherein the output of the packet filter comprises a first network interface connection and the input of the filter configuration interface comprises a second network interface.

32. The system of claim 31 , wherein the first network interface is coupled to a first network and the second network interface is coupled to a second network, separate from the first network.

33. The system of claim 30 , wherein the output of the packet filter comprises a first port of a network interface connection that is coupled to a network and the input of the filter configuration interface comprises a second separate port of the network interface.

34. The system of claim 30 , wherein the filter configuration file is an Extensible Markup Language (XML) file that includes information specifying an intra-packet location and associated data or criteria, and wherein the packet filter is further configured to compare data in the received packet or groups of packets at the intra-packet location specified in the XML file with the associated data or criteria in the XML file, and to only forward the received packet or groups of packets in response to the data in the received packet or groups of packets at the intra-packet location specified in the XML file matching the associated data or criteria in the XML file.

35. The system of claim 30 , wherein the predetermined portions of the packets or groups of packets is determined based on information included within the filter configuration file.

Assignments (9)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 049838, FRAME 0202 Recorded Sep 12, 2024
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: OWL CYBER DEFENSE SOLUTIONS, LLC
Reel/Frame 068946/0686 →
SECURITY INTEREST Recorded Sep 11, 2024
From: OWL CYBER DEFENSE SOLUTIONS, LLC
To: RGA REINSURANCE COMPANY
Reel/Frame 068938/0313 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 041136, FRAME 0223 Recorded Sep 11, 2024
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: OWL CYBER DEFENSE SOLUTIONS, LLC
Reel/Frame 068945/0922 →
MERGER AND CHANGE OF NAME Recorded Sep 2, 2022
From: OWL CYBER DEFENSE SOLUTIONS, LLC; TRESYS TECHNOLOGY, LLC
To: OWL CYBER DEFENSE SOLUTIONS, LLC
Reel/Frame 060978/0964 →
SECURITY INTEREST Recorded Jul 23, 2019
From: OWL CYBER DEFENSE SOLUTIONS, LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 049838/0202 →
CHANGE OF NAME Recorded Jun 20, 2017
From: OWL COMPUTING TECHNOLOGIES, LLC
To: OWL CYBER DEFENSE SOLUTIONS, LLC
Reel/Frame 042902/0582 →
CORRECTIVE ASSIGNMENT TO CORRECT TO REMOVE THIS DOCUMENT SERVES AS AN OATH/DECLARATION (37 CFR 1.63) FROM THE COVER SHEET PREVIOUSLY RECORDED AT REEL: 041765 FRAME: 0034. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER EFFECTIVE DATE 02/03/2017. Recorded Apr 21, 2017
From: OWL COMPUTING TECHNOLOGIES, INC.
To: OWL COMPUTING TECHNOLOGIES, LLC
Reel/Frame 042344/0033 →
MERGER Recorded Mar 28, 2017
From: OWL COMPUTING TECHNOLOGIES, INC.
To: OWL COMPUTING TECHNOLOGIES, LLC
Reel/Frame 041765/0034 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2016
From: MRAZ, RONALD; ZUCKER, ROBERT M.
To: OWL COMPUTING TECHNOLOGIES, INC.
Reel/Frame 038284/0172 →