IP Library Granted Patent US 9,608,959
Granted Patent B2
US 9,608,959 · App. 14/666,180 · Granted Mar 28, 2017

Non RFC-compliant protocol classification based on real use

Inventor: Hugo Vazquez Carames (Barcelona, ES)
Assignee: Quest Software Inc.
H04L63/0236H04L63/0227H04L63/20G06F21/566G06F21/567
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,608,959
App. No.
14/666,180
Granted
Mar 28, 2017
Kind
B2
Abstract

A firewall system determines whether a protocol used by an incoming data packet is a standard protocol compliant with Request For Comment (RFC) standards. In the event the protocol is RFC compliant, the firewall transmits the packet to the recipient according to firewall policies regarding the standard protocol. If the protocol is not that of an RFC standard, the firewall determines whether the protocol matches an RFC-exception protocol in a RFC-exception protocol database. If the protocol does match an RFC-exception, the firewall may transmit the packet to the recipient according to firewall policies regarding the RFC-exception protocol. If it does not match an RFC-exception, the firewall may transmit the packet or protocol to a support system where it may be quarantined until it is approved based on a decision that the protocol is safe and/or widely adopted.

Claims (48)

1. A method for operating a firewall executed by a firewall device, the method comprising:

receiving a first data packet over a communications network communicatively coupled to the firewall device;

identifying, at the firewall device, that a first protocol of the first data packet does not match any of a plurality of standard protocols previously identified as compliant with Request for Comments (RFC) protocol standards based on a standard protocol list that describes the plurality of standard protocols, the standard protocol list maintained in a memory of the firewall device;

retrieving an exception policy list at the firewall device, the exception policy list identifying a plurality of exception protocols and a plurality of exception policies, wherein each exception protocol of the plurality of exception protocols corresponds to an exception policy of the plurality of exception policies, and wherein each exception protocol of the plurality of exception protocols is not compliant with any Request for Comments (RFC) protocol standards and is distinct from every standard protocol of the plurality of standard protocols;

identifying that the first protocol of the first data packet matches a first exception protocol of the plurality of exception protocols, wherein the first exception protocol corresponds to a first exception policy that indicates that transmission of the first exception protocol is allowed based on an adoption value of the first exception protocol reaching or exceeding a previously determined adoption threshold, the adoption value based on a number of times that the first exception protocol has been encountered; and

transmitting the first data packet to a recipient system based on the first exception policy.

2. The method of claim 1 , further comprising:

receiving a second data packet over the communications network;

identifying at the firewall device that a second protocol of the second data packet does not match any of the plurality of standard protocols;

identifying that the second protocol of the second data packet does not match any of the plurality of exception protocols; and

transmitting the second data packet to a support system, the support system adding the second protocol to the plurality of exception protocols as the first exception protocol.

3. The method of claim 2 , wherein the support system adds the first exception protocol to the plurality of exception protocols based on the adoption value of the first exception protocol reaching or exceeding the previously determined adoption threshold, the adoption value based on the number of times that the first exception protocol has been encountered by the support system.

4. The method of claim 2 , wherein the support system generates the first exception protocol of the plurality of exception protocols based on a determination that the second protocol is safe.

5. The method of claim 1 , wherein the plurality of standard protocols includes one or more of Internet Protocol (IP), Internet Control Message Protocol (ICMP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Telnet Protocol (TELNET), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Network News Transfer Protocol (NNTP), Hypertext Transfer Protocol (HTTP), Remote Framebuffer Protocol (RFP), and Internet Key Exchange Protocol (IKE).

6. The method of claim 1 , wherein the plurality of standard protocols includes protocols using one of Transport Layer Security (TLS) or Secure Sockets Layer (SSL).

7. The method of claim 1 , wherein retrieving an exception policy list at the firewall device includes retrieving the exception policy list from the memory of the firewall device.

8. The method of claim 1 , wherein retrieving an exception policy list at the firewall device includes receiving the exception policy list from one or more servers via the communications network.

9. The method of claim 1 , wherein the first exception policy indicates that transmission of the first exception protocol is allowed but only after a successful malware scan indicates that no malware is present in the first data packet.

10. The method of claim 1 , further comprising quarantining the first data packet before transmitting the first data packet to the recipient system.

11. A system for operating a firewall, the system comprising:

a memory; and

a processor, wherein execution of instructions stored in the memory by the processor:

receives a first data packet over a communications network communicatively coupled to the firewall,

identifies that a first protocol of the first data packet does not match any of a plurality of standard protocols previously identified as compliant with Request for Comments (RFC) protocol standards based on a standard protocol list describing the plurality of standard protocols, the standard protocol list maintained in the memory,

retrieves an exception policy list, the exception policy list identifying a plurality of exception protocols and a plurality of exception policies, wherein each exception protocol of the plurality of exception protocols corresponds to an exception policy of the plurality of exception policies, and wherein each exception protocol of the plurality of exception protocols is not compliant with any Request for Comments (RFC) protocol standards and is distinct from every standard protocol of the plurality of standard protocols,

identifies that the first protocol of the first data packet matches a first exception protocol of the plurality of exception protocols, wherein the first exception protocol corresponds to a first exception policy that indicates that transmission of the first exception protocol is allowed based on an adoption value of the first exception protocol reaching or exceeding a previously determined adoption threshold, the adoption value based on a number of times that the first exception protocol has been encountered, and

transmits the first data packet to a recipient system based on the first exception policy.

12. The system of claim 11 , wherein execution of the instructions by the processor further:

receives a second data packet over the communications network,

identifies that a second protocol of the second data packet does not match any of the plurality of standard protocols,

identifies that the second protocol of the second data packet does not match any of the plurality of exception protocols, and transmits the second data packet to a support system, the support system adding the second protocol to the plurality of exception protocols as the first exception protocol.

13. The system of claim 12 , further comprising the support system, wherein the support system:

receives the second data packet,

stores the second data packet in a quarantine data store,

adds the second protocol to the plurality of exception protocols as the first exception protocol, and

generates the first exception policy indicating that transmission of the first exception protocol is allowed based on at least one of a determination that the first exception protocol is safe or a determination that the adoption value of the first exception protocol has reached or exceeded the previously identified adoption threshold, the adoption value based on the number of times that the first exception protocol has been encountered by the support system.

14. The system of claim 11 , wherein the plurality of standard protocols includes one or more of Internet Protocol (IP), Internet Control Message Protocol (ICMP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Telnet Protocol (TELNET), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Network News Transfer Protocol (NNTP), Hypertext Transfer Protocol (HTTP), Remote Framebuffer Protocol (RFP), and Internet Key Exchange Protocol (IKE).

15. The system of claim 11 , wherein the plurality of standard protocols includes protocols using one of Transport Layer Security (TLS) or Secure Sockets Layer (SSL).

16. The system of claim 11 , wherein retrieving the exception policy list includes retrieving the exception policy list from the memory.

17. The system of claim 11 , further comprising one or more servers, wherein retrieving the exception policy list includes retrieving the exception policy list from the one or more servers.

18. The system of claim 11 , wherein execution of the instructions by the processor further successfully scans the second data packet, the successful scan identifying that the second data packet does not include malware prior to transmitting the second data packet to the recipient system.

19. The system of claim 18 , wherein first exception policy required the successful scan prior to allowing transmission of the second data packet.

20. A non-transitory computer-readable storage medium, having embodied thereon a program executable by a processor to perform a method for providing on-demand wireless services, the method comprising:

receiving a first data packet over a communications network;

identifying that a first protocol of the first data packet does not match any of a plurality of standard protocols previously identified as compliant with Request for Comments (RFC) protocol standards based on a standard protocol list describing the plurality of standard protocols, the standard protocol list maintained in a memory of the firewall device;

retrieving an exception policy list at the firewall device, the exception policy list identifying a plurality of exception protocols and a plurality of exception policies, wherein each exception protocol of the plurality of exception protocols corresponds to an exception policy of the plurality of exception policies, and wherein each exception protocol of the plurality of exception protocols is not compliant with any Request for Comments (RFC) protocol standards and is distinct from every standard protocol of the plurality of standard protocols;

identifying that the first protocol of the first data packet matches a first exception protocol of the plurality of exception protocols, wherein the first exception protocol corresponds to a first exception policy that indicates that transmission of the first exception protocol is allowed based on an adoption value of the first exception protocol reaching or exceeding a previously determined adoption threshold, the adoption value based on a number of times that the first exception protocol has been encountered; and

transmitting the first data packet to a recipient system based on the first exception policy.

Assignments (20)
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0001 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0649 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2022
From: QUEST SOFTWARE INC.
To: SONICWALL US HOLDINGS INC.
Reel/Frame 059912/0097 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
CHANGE OF NAME Recorded Jun 19, 2018
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 046393/0009 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded May 15, 2018
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 046163/0137 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
MERGER Recorded Dec 17, 2015
From: SONICWALL L.L.C.
To: DELL SOFTWARE INC.
Reel/Frame 037320/0950 →
CONVERSION AND NAME CHANGE Recorded Dec 17, 2015
From: SONICWALL, INC.
To: SONICWALL L.L.C.
Reel/Frame 037326/0166 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2015
From: CARAMES, HUGO VAZQUEZ
To: SONICWALL, INC.
Reel/Frame 035260/0104 →
Continuity (1)
Related Publication 20160285912A1 · Sep 29, 2016