System and method for handling TCP performance in network access with driver initiated application tunnel
First Claim
1. A method for improving Transmission Control Protocol (TCP) performance in network access, the method comprising:
- detecting an encapsulated outgoing data packet;
processing a Point to Point Protocol (PPP) layer in the outgoing data packet to obtain routing information for establishing a connection to a Virtual Private Network (VPN) tunnel and to determine when the PPP layer encapsulates at least TCP and Internet Protocol (IP) layers of the outgoing data packet; and
when the PPP layer encapsulates at least TCP and IP layers of the outgoing data packet;
removing the PPP layer including the encapsulated TCP and IP layers from the outgoing data packet; and
processing the outgoing data packet in accordance with a locally driven application protocol path comprising encapsulating data of the outgoing data packet with a Layer 7 header in place of the removed PPP layer, wherein the application protocol path is configured to act as a TCP proxy connection over the VPN tunnel; and
the method further comprising;
determining when the outgoing data packet does not include a PPP layer and processing the outgoing data packet in accordance with an access configuration path when the outgoing data packet does not include a PPP layer.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for improving TCP performance in a L2 tunneling environment by snooping TCP/IP packets from the tunnel interface, terminating TCP locally and proxying TCP data in separate TCP connections. In particular, the system and method detects an encapsulated outgoing packet utilizing a Layer 2 tunneling protocol, processes a Point to Point Protocol layer in the outgoing packet to establishing Layer 2 tunneling protocol for a connection. The system and method also removes the Point to Point Protocol layer from the outgoing packet and inspects the outgoing packet for TCP information in the packet. The system and method forwards the outgoing packet to a locally driven application protocol path if TCP information is present, wherein the outgoing packet is encapsulated in association with the application protocol path.
222 Citations
15 Claims
-
1. A method for improving Transmission Control Protocol (TCP) performance in network access, the method comprising:
-
detecting an encapsulated outgoing data packet; processing a Point to Point Protocol (PPP) layer in the outgoing data packet to obtain routing information for establishing a connection to a Virtual Private Network (VPN) tunnel and to determine when the PPP layer encapsulates at least TCP and Internet Protocol (IP) layers of the outgoing data packet; and when the PPP layer encapsulates at least TCP and IP layers of the outgoing data packet; removing the PPP layer including the encapsulated TCP and IP layers from the outgoing data packet; and processing the outgoing data packet in accordance with a locally driven application protocol path comprising encapsulating data of the outgoing data packet with a Layer 7 header in place of the removed PPP layer, wherein the application protocol path is configured to act as a TCP proxy connection over the VPN tunnel; and the method further comprising; determining when the outgoing data packet does not include a PPP layer and processing the outgoing data packet in accordance with an access configuration path when the outgoing data packet does not include a PPP layer. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A non-transitory machine readable medium having stored thereon instructions for improving Transmission Control Protocol (TCP) performance in network access, the instructions comprising machine executable code which when executed by at least one machine, causes the machine to perform steps comprising:
-
detecting an encapsulated outgoing data packet; processing a Point to Point Protocol (PPP) layer in the outgoing data packet to obtain routing information for establishing a connection to a Virtual Private Network (VPN) tunnel and to determine when the PPP layer encapsulates at least TCP and Internet Protocol (IP) layers of the outgoing data packet; and when the PPP layer encapsulates at least TCP and IP layers of the outgoing data packet; removing the PPP layer including the encapsulated TCP and IP layers from the outgoing data packet; and processing the outgoing data packet in accordance with a locally driven application protocol path comprising encapsulating data of the outgoing data packet with a Layer 7 header in place of the removed PPP layer, wherein the application protocol path is configured to act as a TCP proxy connection over the VPN tunnel; and the steps further comprising; determining when the outgoing data packet does not include a PPP layer and processing the outgoing data packet in accordance with an access configuration path when the outgoing data packet does not include a PPP layer. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A client device comprising:
-
a processor coupled to a memory and configured to be capable of executing programmed instructions for improving Transmission Control Protocol (TCP) performance in network access stored in the memory to perform steps comprising; detecting an encapsulated outgoing data packet; processing a Point to Point Protocol (PPP) layer in the outgoing data packet to obtain routing information for establishing a connection to a Virtual Private Network (VPN) tunnel and to determine when the PPP layer encapsulates at least TCP and Internet Protocol (IP) layers of the outgoing data packet; and when the PPP layer encapsulates at least TCP and IP layers of the outgoing data packet; removing the PPP layer including the encapsulated TCP and IP layers from the outgoing data packet; and processing the outgoing data packet in accordance with a locally driven application protocol path comprising encapsulating data of the outgoing data packet with a Layer 7 header in place of the removed PPP layer, wherein the application protocol path is configured to act as a TCP proxy connection over the VPN tunnel; and the steps further comprising; determining when the outgoing data packet does not include a PPP layer and processing the outgoing data packet in accordance with an access configuration path when the outgoing data packet does not include a PPP layer. - View Dependent Claims (12, 13, 14, 15)
-
Specification