Patent ID: 9716659
Date: 2017-07-25
CPC Classifications: H04L

Claim:
1. A method, comprising: performing, by a first network device at a first node of a broadband network, a probe transaction over a tunnel within the broadband network, wherein the probe transaction comprises one or more of transmission and reception of a probe packet over the tunnel; measuring, based on the probe transaction, one or more parameters reflecting performance of the probe transaction over the tunnel; determining, based on one or more of the determined parameters, a target transmit rate and a target receive rate for the data communications over the tunnel; regulating, based on the target transmit rate, the rate of data communications transmitted over the tunnel from the first node; and regulating, based on the target receive rate, the rate of data communications received over the tunnel by the first node; wherein the tunnel comprises one of a peered tunnel and a peerless tunnel, wherein (1) in the case of a peered tunnel, the peered tunnel is configured for data communications between the first node and a peer second node of the broadband network, and (2) in the case of a peerless tunnel, the peerless tunnel is configured for data communications between the first node and a non-peer second node; wherein, when the tunnel comprises the peered tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises performing a set rate transaction with the peer second node, wherein the set rate transaction establishes a rate for data communications transmitted over the tunnel by the peer second node to the first node; wherein, when the tunnel comprises the peerless tunnel, the regulation of the rate of data communications received over the tunnel by the first node comprises shaping data communications traffic received over the tunnel, wherein the shaping of the data communications traffic received over the tunnel is accomplished by one or more of increasing latency for data traffic received over the tunnel, adjustment of window sizing, control of new connection establishment, and packet dropping; wherein the adjustment of the window sizing comprises actively controlling receive window sizes for transmission of data by remote hosts over the peerless tunnel to regulate throughput for the data communications received over the peerless tunnel; wherein the control of new connection establishment comprises actively controlling the establishment of parallel connections via which remote hosts transmit data over the peerless tunnel to regulate throughput for the data communications received over the peerless tunnel; and wherein the packet dropping comprises a systematic dropping of packets received from a respective host to signal the host to adjust its associated transmit rate.