Managing transmission control protocol (TCP) traffic

US11743192B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11743192-B2
Application numberUS-202117321890-A
CountryUS
Kind codeB2
Filing dateMay 17, 2021
Priority dateAug 29, 2019
Publication dateAug 29, 2023
Grant dateAug 29, 2023

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.

A terrestrial terminal enables communications, over a network connection, between a local host of one or more connected local hosts and a remote host. The terrestrial terminal is configured to perform operations comprising: receiving, from the remote host, a network packet for the local host; obtaining, from the network packet, an included TCP segment; determining, from the TCP segment, a receive window size advertised by the remote host; computing, using one or more characteristics of the network connection, a target receive window size; comparing the target receive window size with the advertised receive window size; and in response to determining that the target receive window size is different from the advertised receive window size: modifying the TCP segment by replacing the advertised receive window size with the target receive window size, and forwarding the network packet with the modified TCP segment to the local host.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a terrestrial terminal configured to connect a local host with a remote host over a network connection, wherein the terrestrial terminal is configured to perform operations comprising: obtaining a receive window size advertised by the remote host for a Transmission Control Protocol (TCP) connection between the local host and the remote host; determining that the advertised receive window size is different from a target receive window size for the network connection; in response to the determining, modifying at least one TCP segment in one or more network packets received from the remote host by replacing the advertised receive window size with the target receive window size in the at least one TCP segment; and forwarding the one or more network packets that include the modified at least one TCP segment to the local host. 2. The system of claim 1 , wherein the operations further comprise: determining the target receive window size, wherein the determining comprises computing the target receive window size based at least on one or more characteristics of the network connection. 3. The system of claim 1 , wherein the one or more network packets received from the remote host includes a first network packet received in response to sending, to the remote host, a TCP connection request, wherein the first network packet includes a TCP segment; and wherein the TCP segment included in the first network packet corresponds to a TCP SYN/ACK segment. 4. The system of claim 3 , wherein the operations further comprise: receiving, from the local host, a plurality of network packets, each network packet including a TCP data segment; determining that an aggregate size of TCP data segments included in the plurality of network packets is greater than the advertised receive window size of the remote host; in response to the determination: selecting a subset of the plurality of network packets, wherein an aggregate size of TCP data segments included in the subset is within the advertised receive window size, sending, to the remote host over the network connection, the selected subset of the network packets, and storing, in memory coupled to the terrestrial terminal, a remainder of the plurality of network packets; upon sending the selected subset to the remote host, receiving a new network packet from the remote host; obtaining, from the new network packet, a TCP ACK segment acknowledging successful reception of the selected subset of network packets by the remote host; and in response to obtaining the TCP ACK segment from the new network packet, sending one or more of the remainder of the plurality of network packets to the remote host over the network connection. 5. The system of claim 3 , wherein the operations further comprise: receiving, from the remote host, a new network packet; obtaining, from the new network packet, a TCP segment that includes the advertised receive window size; following receiving the new network packet, computing, based at least on one or more characteristics of the network connection, a new target receive window size for the network connection; comparing the new target receive window size with the advertised receive window size; determining, based on the comparison, that the new target receive window size is different from the advertised receive window size; and in response to the determining, modifying the TCP segment by replacing the advertised receive window size with the new target receive window size in the TCP segment, and forwarding the new network packet with the modified TCP segment to the local host. 6. The system of claim 5 , wherein determining that the new target receive window size is different from the advertised receive window size comprises: determining that the new target receive window size is greater than the advertised receive window size. 7. The system of claim 3 , wherein the target receive window size is greater than the advertised receive window size, and wherein the operations further comprise: reducing the target receive window size to the advertised receive window size based on a local condition; receiving, from the remote host, new network packets, each including a TCP segment indicating the advertised receive window size; and forwarding, to the local host, the new network packets, including modifying the TCP segment in each successive network packet by replacing the advertised receive window size with a successively lower target receive window size, wherein a last network packet forwarded to the local host includes, in the TCP segment corresponding to the last network packet, a lowered target receive window size equal to the advertised receive window size. 8. The system of claim 3 , wherein the operations further comprise: receiving, from the remote host over the network connection, one or more new network packets, each new network packet including a TCP data segment; forwarding, to the local host, the one or more new network packets; receiving, from the local host, a first network packet that includes a first TCP ACK segment acknowledging successful reception by the local host of a new network packet of the one or more new network packets; upon receiving the first network packet, starting a timer and storing the first network packet in memory coupled to the terrestrial terminal; before expiration of the timer, receiving, from the local host, a second network packet that includes a second TCP ACK segment acknowledging successful reception of another new network packet of the one or more new network packets by the local host; and in response to receiving the second network packet before expiration of the timer: sending the second network packet to the remote host over the network connection, and dropping the first network packet. 9. A method performed by a terrestrial terminal connecting a local host with a remote host over a network connection, the method comprising: obtaining a receive window size advertised by the remote host for a Transmission Control Protocol (TCP) connection between the local host and the remote host; determining that the advertised receive window size is different from a target receive window size for the network connection; in response to the determining, modifying at least one TCP segment in one or more network packets received from the remote host by replacing the advertised receive window size with the target receive window size in the at least one TCP segment; and forwarding the one or more network packets that include the modified at least one TCP segment to the local host. 10. The method of claim 9 , further comprising: determining the target receive window size, wherein the determining comprises computing the target receive window size based at least on one or more characteristics of the network connection. 11. The method of claim 9 , wherein the one or more network packets received from the remote host includes a first network packet received in response to sending, to the remote host, a TCP connection request, and wherein the TCP segment included in the first network packet corresponds to a TCP SYN/ACK segment. 12. The method of claim 11 , further comprising: receiving, from the local host, a plurality of network packets, each network packet including a TCP data segment; determining that an aggregate size of TCP data segments included in the plurality of network packets is greater than the advertised receive window size of the remote host; in response to the determination: selecting a subset of the plurality of network packets, wherein an aggregate size of TCP data segments included in the subse

Assignees

Inventors

Classifications

  • H04L47/193Primary

    at the transport layer, e.g. TCP related · CPC title

  • Transmission in a satellite or space-based system · CPC title

  • Identifying congestion · CPC title

  • H04L47/27Primary

    Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets · CPC title

  • adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP] (wireless network protocols or protocol adaptations to wireless operation, e.g. wireless application protocol H04W80/00) · 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 US11743192B2 cover?
A terrestrial terminal enables communications, over a network connection, between a local host of one or more connected local hosts and a remote host. The terrestrial terminal is configured to perform operations comprising: receiving, from the remote host, a network packet for the local host; obtaining, from the network packet, an included TCP segment; determining, from the TCP segment, a recei…
Who is the assignee on this patent?
Hughes Network Systems Llc
What technology area does this patent fall under?
Primary CPC classification H04L47/193. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Aug 29 2023 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).