Reducing buffer usage for TCP proxy session based on delayed acknowledgement

US9531846B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9531846-B2
Application numberUS-201313747545-A
CountryUS
Kind codeB2
Filing dateJan 23, 2013
Priority dateJan 23, 2013
Publication dateDec 27, 2016
Grant dateDec 27, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Reducing buffer usage for a TCP proxy session between a client and a server by a service gateway includes: determining a first round trip time (RTT) for a server side TCP session and determining a second RTT for a client side TCP session; comparing the first RTT with the second RTT; determining whether the second RTT exceeds the first RTT beyond a threshold; if so, then calculating a desired RTT based on the second RTT; and setting a timer according to the calculated desired RTT, where a TCP acknowledgement for the server side TCP session is delayed until the timer expires. The desired RTT may be calculated as a percentage of the second RTT or as the second RTT minus a predetermined value. The service gateway waits until the timer has expired before sending a TCP acknowledgement data packet to the server.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for reducing memory usage of a service gateway buffer for a Transmission Control Protocol (TCP) proxy session between a client and a server by adjusting server side session transmission time to reduce buffer usage, comprising: periodically monitoring performance of a TCP session using round trip time (RTT) for the TCP session including a server side TCP session and a client side TCP session; determining a first round trip time (RTT) for the server side TCP session of the TCP proxy session between a service gateway and the server; determining a second RTT for the client side TCP session of the TCP proxy session between the service gateway and the client that is based at least on one or more prior client side TCP sessions with the client, the service gateway comprising a processor, a memory module, and a server side receive buffer residing in the memory module; comparing the first RTT with the second RTT by the service gateway; determining that the second RTT exceeds the first RTT; in response to determining that the second RTT exceeds the first RTT, calculating by the service gateway a desired RTT based on the second RTT, wherein the desired RTT is calculated as a percentage of the second RTT or as the second RTT minus a predetermined value; and setting a timer by the service gateway according to the calculated desired RTT and scheduling a TCP acknowledgement data packet to be sent at a later time using the timer, wherein the TCP acknowledgement for the server side TCP session is delayed until the service gateway determines that the timer expires. 2. The method of claim 1 , wherein the determining whether the second RTT exceeds the first RTT and the calculating a desired RTT based on the second RTT comprise: determining whether the second RTT exceeds the first RTT beyond a predetermined threshold; and in response to determining that the second RTT exceeds the first RTT beyond the predetermined threshold, calculating by the service gateway the desired RTT based on the second RTT. 3. The method of claim 1 , wherein the setting a timer by the service gateway according to the calculated desired RTT comprises: receiving by the service gateway a data packet from the server over the server side TCP session; determining by the service gateway a need to send the TCP acknowledgement to the server; setting a timer to the desired RTT by the service gateway; and in response to an expiration of the timer, sending the TCP acknowledgement to the server by the service gateway. 4. The method of claim 1 , wherein the second RTT is determined at periodic intervals. 5. The method of claim 1 , wherein the second RTT is estimated based on one or more prior server side TCP sessions. 6. The method of claim 1 , wherein the calculating by the service gateway a desired RTT based on the second RTT is further based on a memory capacity of the server side receive buffer. 7. A non-transitory computer readable medium with computer readable program code embodied therewith for reducing buffer usage for a Transmission Control Protocol (TCP) proxy session between a client and a server by adjusting server side session transmission time to reduce buffer usage, the computer readable program code configured to: periodically monitor performance of a TCP session using round trip time (RTT) for the TCP session including a server side TCP session and a client side TCP session; determine a first round trip time (RTT) for the server side TCP session of the TCP proxy session between a service gateway and the server; determine a second RTT for the client side TCP session of the TCP proxy session between the service gateway and the client that is based at least on one or more prior client side TCP sessions with the client, the service gateway comprising a processor, a memory module, and a server side receive buffer residing in the memory module; compare the first RTT with the second RTT by the service gateway; determine that the second RTT exceeds the first RTT; in response to determining that the second RTT exceeds the first RTT, calculate a desired RTT based on the second RTT, wherein the desired RTT is calculated as a percentage of the second RTT or as the second RTT minus a predetermined value; and set a timer by the service gateway according to the calculated desired RTT and schedule a TCP acknowledgement data packet to be sent at a later time, using the timer, wherein the TCP acknowledgement for the server side TCP session is delayed until the service gateway determines that the timer expires. 8. The non-transitory computer readable medium of claim 7 , wherein the computer readable program code configured to determine whether the second RTT exceeds the first RTT and to calculate a desired RTT based on the second RTT are further configured to: determine whether the second RTT exceeds the first RTT beyond a predetermined threshold; and in response to determining that the second RTT exceeds the first RTT beyond the predetermined threshold, calculating by the service gateway the desired RTT based on the second RTT. 9. The non-transitory computer readable medium of claim 7 , where computer readable program code configured to set the timer according to the calculated desired RTT is further configured to: receive a data packet from the server over the server side TCP session; determine a need to send the TCP acknowledgement to the server; set a timer to the desired RTT; and in response to an expiration of the timer, send the TCP acknowledgement to the server. 10. A system for reducing buffer usage for a Transmission Control Protocol (TCP) proxy session between a client and a server by adjusting server side session transmission time to reduce the buffer usage, the system comprising: a service gateway comprising a processor, a memory module, and a server side receive buffer residing in the memory module, wherein a server side TCP session of the TCP proxy session is established between the service gateway and the server, and a client side TCP session of the TCP proxy session is established between the service gateway and the client, wherein the service gateway: periodically monitors performance of the TCP proxy session using a round trip time (RTT) including RTT for the server side TCP session and the client side TCP session; determines a first round trip time (RTT) for the server side TCP session of the TCP proxy session between the service gateway and the server; determines a second RTT for the client side TCP session of the TCP proxy session between the service gateway and the client wherein the second RTT is based at least on one or more prior client side TCP sessions with the client; compares the first RTT with the second RTT; determines that the second RTT exceeds the first RTT; in response to determining that the second RTT exceeds the first RTT, calculates a desired RTT based on the second RTT, wherein the desired RTT is a percentage of the second RTT or the second RTT minus a predetermined value; and sets a timer according to the calculated desired RTT and schedules a TCP acknowledgement data packet to be sent at a later time, using the timer, wherein the TCP acknowledgement for the server side TCP session is delayed until the timer expires. 11. The system of claim 10 , wherein the determines whether the second RTT exceeds the first RTT and the calculates a desired RTT based on the second RTT comprise: determines whether the second RTT exceeds the first RTT beyond a predetermined threshold; and in response to determining that the second RTT exceeds the first RTT beyond the predetermined threshold, calculates the desired RTT based on the second RTT.

Assignees

Inventors

Classifications

  • H04L47/283Primary

    in response to processing delays, e.g. caused by jitter or round trip time [RTT] · CPC title

  • H04L69/16Primary

    Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] · CPC title

  • Round-trip engineering · CPC title

  • Round trip delays · CPC title

  • Threshold monitoring · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9531846B2 cover?
Reducing buffer usage for a TCP proxy session between a client and a server by a service gateway includes: determining a first round trip time (RTT) for a server side TCP session and determining a second RTT for a client side TCP session; comparing the first RTT with the second RTT; determining whether the second RTT exceeds the first RTT beyond a threshold; if so, then calculating a desired RT…
Who is the assignee on this patent?
A10 Networks Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/283. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 27 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).