Patent ID: 7706314

Claim:
A computer-implemented method for processing network packets, the computer-implemented method comprising: identifying, in a packet that conforms to the TCP/Internet Protocol (IP) packet structure, original Transmission Control Protocol (TCP) header data that conforms to the TCP; identifying, in the packet, original Internet Protocol (IP) header data that conforms to the IP; generating a copy of the original TCP header data in the packet; generating a copy of the original IP header data in the packet; generating encrypted packet data by encrypting at least a portion of the packet using IPsec, wherein the encrypted packet data includes at least encrypted original TCP header data and encrypted payload data; generating new TCP header data by: including in the new TCP header data all the data from the copy of the original TCP header data except for a TCP packet length value in the copy of the original TCP header data, and modifying a length value in the new TCP header data to reflect a combined length of the encrypted packet data that at least includes an Encapsulated Security Payload (ESP) header, the original TCP header, payload data and an ESP trailer, wherein the new TCP packet length value in the new TCP header data enables the new TCP header data to be correctly processed by a performance enhancing proxy application; generating new IP header data by: including in the new IP header data all the data from the copy of the original IP header data except for an IP packet length value in the copy of the original IP header data, and including in the new IP header data a new IP packet length value that reflects a combined length of the encrypted packet data and a length of the new TCP header data, wherein the new IP packet length value in the new IP header data enables the new IP header data to be correctly processed by the performance enhancing proxy application; and generating a new packet, that conforms to the TCP/IP IPsec packet structure, that includes the new IP header data, the new TCP header data and the encrypted packet data; providing the new packet, that conforms to the TCP/IP IPsec packet structure, for processing by the performance enhancing proxy application.