IP Library Granted Patent US 8,793,390
Granted Patent B2
US 8,793,390 · App. 11/419,953 · Granted Jul 29, 2014

Systems and methods for protocol detection in a proxy

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 8,793,390
App. No.
11/419,953
Granted
Jul 29, 2014
Kind
B2
Abstract

Systems, methods, and computer products for detecting protocols in a network proxy are provided. Protocol detection includes receiving from a first computer a request for connection to a second computer, the request conforming to a first protocol; establishing a connection with at least one of the first computer and the second computer; receiving data from at least one of the first computer and the second computer, wherein the data conforms to a second protocol; and performing protocol detection on the data.

Claims (38)

1. A method for protocol detection in a network proxy, comprising:

receiving at the network proxy and from a first computer, a request for connection to a second computer, the network proxy including a plurality of application proxies;

establishing by the network proxy, a connection with at least one of the first computer and the second computer according to a connection establishment routine;

receiving at the network proxy, application data from at least one of the first computer and the second computer, wherein the application data conforms to an application protocol;

prior to forwarding the application data between the first and second computers, determining the application protocol by comparing the received application data to protocol signatures and, according to results of the comparison, determining whether or not the application protocol corresponds to any one of the plurality of application proxies in the network proxy;

if the application protocol, as determined by comparing the received application data to protocol signatures, corresponds to one of the application proxies in the network proxy, then responsively handing off the connection to the one application proxy corresponding to the application protocol; and

if the application protocol, as determined by comparing the received application data to protocol signatures, does not correspond to any one of the plurality of application proxies in the network proxy, then responsively handling the connection according to a predetermined policy that is one of (i) allowing the connection, (ii) allowing the connection to be subject to protocol optimization, and (iii) allowing the connection subject to at least bandwidth limitation, bandwidth prioritization, or bandwidth optimization,

wherein a first set of protocol signatures is employed for analyzing application data received from the first computer and a second set of protocol signatures, different from the first set, is employed for analyzing application data received from the second computer.

2. The method of claim 1 , wherein the connection is established with both the first computer and the second computer before receiving the application data from at least one of the first and second computers.

3. The method of claim 2 , wherein the connection is first established with the first computer.

4. The method of claim 2 , wherein the connection request is forwarded to the second computer, and the connection is established after receiving a reply from the second computer.

5. The method of claim 1 , wherein the first computer is protected by a firewall and the second computer is outside of the firewall.

6. The method of claim 1 , wherein the first computer is outside of a firewall and the second computer is protected by the firewall.

7. The method of claim 1 , wherein neither the first computer nor the second computer is protected by a firewall.

8. The method of claim 1 , wherein both the first computer and the second computer are protected by respective firewalls.

9. A non-transitory computer-readable storage medium having embodied thereon computer-readable instructions for performing a method for protocol detection in a network proxy, the method comprising:

receiving at the network proxy and from a first computer, a request for connection to a second computer, the network proxy including a plurality of application proxies;

establishing by the network proxy, a connection with at least one of the first computer and the second computer according to a connection establishment routine;

receiving at the network proxy application data from at least one of the first computer and the second computer, wherein the application data conforms to an application protocol; and

prior to forwarding the application data between the first and second computers, determining the application protocol by comparing the received application data to protocol signatures and, according to results of the comparison, determining whether or not the application protocol corresponds to any one of the plurality of application proxies in the network proxy;

if the application protocol, as determined by comparing the received application data to protocol signatures, corresponds to one of the application proxies in the network proxy, then responsively handing off the connection to the one application proxy corresponding to the application protocol; and

if the application protocol, as determined by comparing the received application data to protocol signatures, does not correspond to any one of the plurality of application proxies in the network proxy, then responsively handling the connection according to a predetermined policy that is one of (i) allowing the connection, (ii) allowing the connection to be subject to protocol optimization, and (iii) allowing the connection subject to at least bandwidth limitation, bandwidth prioritization, or bandwidth optimization,

wherein a first set of protocol signatures is employed for analyzing application data received from the first computer and a second set of protocol signatures, different from the first set, is employed for analyzing application data received from the second computer.

10. The non-transitory computer-readable storage medium of claim 9 , wherein the connection is established with both the first computer and the second computer before receiving the application data from at least one of the first and second computers.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the connection is first established with the first computer.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the connection request is forwarded to the second computer, and the connection is established after receiving a reply from the second computer.

13. The non-transitory computer-readable storage medium of claim 9 , wherein the first computer is protected by a firewall and the second computer is outside of the firewall.

14. The non-transitory computer-readable storage medium of claim 9 , wherein the first computer is outside of a firewall and the second computer is protected by the firewall.

15. A data processing system for protocol detection in a network proxy, the network proxy including a plurality of application proxies, the data processing system comprising:

a memory having stored thereon instructions; and

a processor executing the instructions, the instructions including instructions for:

receiving from a first computer a request for connection to a second computer,

establishing a connection with at least one of the first computer and the second computer according to a connection establishment routine,

receiving application data from at least one of the first computer and the second computer, wherein the application data conforms to an application protocol,

prior to forwarding the application data between the first and second computers, determining the application protocol by comparing the received application data to protocol signatures and, according to results of the comparison, determining whether or not the application protocol corresponds to any one of the plurality of application proxies in the network proxy; and

if the application protocol, as determined by comparing the received application data to protocol signatures, corresponds to one of the application proxies in the network proxy, then responsively handing off the connection to the one application proxy corresponding to the application protocol, and

if the application protocol, as determined by comparing the received application data to protocol signatures, does not correspond to any one of the plurality of application proxies in the network proxy, then responsively handling the connection according to a predetermined policy that is one of (i) allowing the connection, (ii) allowing the connection to be subject to protocol optimization, and (iii) allowing the connection subject to at least bandwidth limitation, bandwidth prioritization, or bandwidth optimization,

wherein a first set of protocol signatures is employed for analyzing application data received from the first computer and a second set of protocol signatures, different from the first set, is employed for analyzing application data received from the second computer.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2016
From: BLUE COAT SYSTEMS, INC.
To: SYMANTEC CORPORATION
Reel/Frame 039851/0044 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2016
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 039516/0929 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 30740/0181 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035797/0280 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 27727/0144 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035798/0006 →
SECURITY INTEREST Recorded May 22, 2015
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS THE COLLATERAL AGENT
Reel/Frame 035751/0348 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 3, 2013
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 030740/0181 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL RECORDED AT R/F 027727/0178 Recorded Oct 16, 2012
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 029140/0170 →