Method and system for client assisted stateful handling of packets in a communications network
OwnerAvininder Pal Singh GREWAL, Zeljko OLUICinventors
Life of this patent
Estimating the term…
Abstract
A method and system for stateful handling of packets in a network are described. In a client-server network environment, the stateful inspection of incoming protocols is offloaded from the server and distributed to the client device. The stateful inspection, as well as the provisioning of the client with the necessary functions required by the handlers, is referred to as Client Assisted Application Level Gateway (ALG). This version of ALG, in which the client performs or assists the server by performing at least some of the inspection and provisioning tasks, allows for a marked performance gain to the network gateway by reducing its packet inspection load.
Claims19
A computer-implemented method for providing stateful handling of packets in a communications network coupling an application server to a client, the method comprising:
- monitoring, on the client, all outgoing traffic flow to a default File Transfer Protocol (FTP) control port and monitoring a listening socket opened by an application executed on the application server;
- relaying a listen request created by the application to an aggregated service manager server coupled to the network;
- receiving, in the client, a server listen acknowledge signal from the aggregated service manager server, the acknowledge signal including an address and port number for the listening socket;
- intercepting, in the client, a port command issued by the application server in response to a listen success packet transmitted back to the application by the client;
- replacing, in the client, a network address and port number in the port command with an address and port number from the listening socket;
- and
- transmitting from the client to the application, a message with the replaced address and port number.
A system for providing stateful handling of packets in a communications network, comprising:
- an aggregated services manager server coupled to the network and executing a first application proxy program and a first far host server program to process data packets transmitted over the network;
- and
- a network client, the method comprising executing a second application proxy program and a second far host server program to process data packets transmitted to and from an application over the network, the network client configured to
- monitor all outgoing traffic flow to a default control port,
- monitor a listening socket opened by the application,
- relay a listen request created by the application to the aggregated service manager,
- receive a server listen acknowledge signal from the aggregated service manager server, wherein the acknowledge signal includes an address and port number for the listening socket,
- intercept a port command issued by the application server in response to a listen success packet transmitted back to the application by the client,
- replace a network address and port number in the port command with an address and port number from the listening socket, and
- transmit to the application, a message with the replaced address and port number.
A machine-readable medium containing one or more sequences of instructions for providing client assisted stateful handling of packets in a communications network coupling a client computer to an application server computer, the instructions configured to cause a processor in the client computer to:
- monitor all outgoing traffic flow to a default File Transfer Protocol (FTP) control port and monitoring a listening socket opened by an application executed on the application server,
- relay a listen request created by the application to an aggregated service manager server coupled to the network;
- receive a server listen acknowledge signal from the aggregated service manager server, the acknowledge signal including an address and port number for the listening socket;
- intercept a port command issued by the application server in response to a listen success packet transmitted back to the application by the client;
- replace a network address and port number in the port command with an address and port number from the listening socket;
- and
- transmit to the application, a message with the replaced address and port number.
Dependencies are inferred from the claim text.