Method and apparatus for improving the operation of an application layer proxy
First Claim
1. A method of moving data from a first communication connection to a second communication connection in an application layer proxy, comprising:
- receiving the data in a receive buffer of the first communication connection in the application layer proxy;
generating an address pointer to the data in the receive buffer; and
storing the address pointer in a send queue of the second communication connection in the application layer proxy to thereby move the data from the first communication connection to the second communication connection.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for improving the operation of an application layer proxy by minimizing sources of delay in moving data from one TCP/IP connection to the other are provided. The apparatus and method improve the operation of the application layer proxy by performing the movement of data packets from one TCP/IP connection to the other in the kernel of the application layer proxy. The movement of data packets is performed by moving address pointers to the data packets from a first TCP/IP connection receive buffer to a send buffer of a second TCP/IP connection. In this way, the context switching required by the prior art is eliminated and traversal of the TCP/IP stack is not necessary. Furthermore, two separate TCP connections are maintained and thus, the features used for the connections are not limited by the features supported by the end points. Features supported by the application layer proxy may be used in the TCP connections.
68 Citations
24 Claims
-
1. A method of moving data from a first communication connection to a second communication connection in an application layer proxy, comprising:
-
receiving the data in a receive buffer of the first communication connection in the application layer proxy;
generating an address pointer to the data in the receive buffer; and
storing the address pointer in a send queue of the second communication connection in the application layer proxy to thereby move the data from the first communication connection to the second communication connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24)
-
-
12. An apparatus for moving data from a first communication connection to a second communication connection in an application layer proxy, comprising:
-
means for receiving the data in a receive buffer of the first communication connection in the application layer proxy;
means for generating an address pointer to the data in the receive buffer; and
means for storing the address pointer in a send queue of the second communication connection in the application layer proxy to thereby move the data from the first communication connection to the second communication connection.
-
-
19. A computer program product in a computer readable medium for moving data from a first communication connection to a second communication connection in an application layer proxy, comprising:
-
first instructions for receiving the data in a receive buffer of the first communication connection in the application layer proxy;
second instructions for generating an address pointer to the data in the receive buffer; and
third instructions for storing the address pointer in a send queue of the second communication connection in the application layer proxy to thereby move the data from the first communication connection to the second communication connection.
-
Specification