Abstract:
A device establishes a wireless link with a user device via a network and selects a time period for a slow start state of the wireless link. The device enters the slow start state after selecting the time period and repeatedly provides a quantity of packets over consecutive time periods to the user device. The device determines a delivery rate for each time period, of the consecutive time periods, based on the quantity of packets provided each time period and determines a maximum delivery rate for the delivery rates of the consecutive time periods. The device determines that the wireless link is at a maximum capacity when a current delivery rate satisfies a threshold rate, based on the maximum delivery rate, after a threshold time period of the consecutive time periods and exits the slow start state based on the wireless link being at the maximum capacity.
Abstract:
Network devices may receive a Transport Control Protocol (TCP) segment from a user device. The TCP segment includes a TCP header and a payload, and the payload includes either a Hypertext Transfer Protocol (HTTP) plaintext message or a Secure HTTP (HTTPS) encrypted message. The network devices may extract a TCP Synchronization (SYN) signature from the TCP header and determine whether the payload of the TCP segment includes a HTTP plaintext message or a HTTPS encrypted message. When the payload includes a HTTP plaintext message, the network devices may extract contents of a HTTP User-Agent field from the HTTP plaintext message, determine a device type identifier (ID) and a category ID based on the extracted contents, and update a plurality of device signatures based on the TCP signature, the device type ID, and the category ID.
Abstract:
A device can determine a congestion window (CWND) value, associated with a first transmission control protocol (TCP) state, for a TCP flow that involves one or more devices using active queue management (AQM). The first TCP state to cause the CWND value to be increased at a particular rate. The device can determine a round trip time (RTT) value, associated with the first TCP state, for the TCP flow. The device can determine that one or more TCP state conditions are satisfied. The device can classify the TCP flow into a different TCP state. The different TCP state to cause the CWND value to be maintained, decreased, or increased at a rate that is different than the particular rate. The device can transmit one or more packets, associated with the TCP flow, based on classifying the TCP flow into the different TCP state.
Abstract:
A device can transmit, to a transmission control protocol (TCP) receiver, a quantity of packets based on a congestion window (CWND) value. The device can receive, from the TCP receiver, a quantity of acknowledgement (ACK) packets, that include a corresponding quantity of advertised receive window (RWND) values, based on transmitting the quantity of packets. The device can determine a maximum value for an updated CWND based on the CWND value and the corresponding quantity of RWND values. The device can provide a quantity of additional packets, to the TCP receiver, based on the maximum value for the updated CWND to cause the TCP receiver to selectively increase a size of a receive buffer.
Abstract:
The device type of a user computing device may be used to optimize network communication sessions. In one implementation, an indication of the device type of the user computing device may be received and a communication profile for the user computing device may be determined. The communication profile may be associated with values for a number of parameters relating to one or more communication protocols used to implement communication sessions with the user computing device. One or more network elements, that are involved in the communication sessions with the user computing device, may be provisioned, to cause the one or more network elements to implement the communication protocols, for the user computing device, using the values for the parameters relating to the one or more communication protocols.
Abstract:
A device may determine one or more round-trip time threshold values and may determine a round-trip time value associated with a flow. The device may determine a smoothed round-trip time value based on the one or more round-trip time threshold values and the round-trip time value. The device may determine a congestion window threshold value based on the smoothed round-trip time value and may determine a congestion window value based on the congestion window threshold value. The device may provide traffic associated with the flow based on the congestion window value.
Abstract:
An exemplary method includes an interface device 1) detecting a request provided by a user device for a server to transmit data to the user device by way of a base station and a wireless network that connects the user device to the base station, 2) pre-fetching, in response to the request, the data from the server, 3) transmitting the pre-fetched data to the base station for forwarding by the base station to the user device by way of the wireless network, 4) dynamically receiving, as the interface system transmits the pre-fetched data to the base station, queue occupancy information from the base station, and 5) using the queue occupancy information to perform flow control with respect to the transmission of the pre-fetched data by the interface system to the base station. Corresponding methods and systems are also disclosed.
Abstract:
Systems and methods for pacing data transmission are described. An illustrative method includes transmitting, by a network device, a data stream at a pacing rate to a user equipment (UE) device. The method further includes accessing a metric of a radio access network (RAN) to which the UE device is connected, the metric associated with the UE device. The method further includes adjusting, based on the metric, the pacing rate at which the data stream is transmitted to the UE device.
Abstract:
A method, a device, and a non-transitory storage medium are described in which a network performance optimization service is provided. A load balancer device may receive, from an end device, an application service request for an application service that is available from multiple server devices of an application layer network. The load balancer device may determine, from a source identifier associated with the end device and obtained from the application service request, that the source identifier does not map to a network traffic forwarding rule of a set of stored network traffic forwarding rules. In response, the load balancer device may map the source identifier to an application service profile of a set of stored application service profiles; select, based on the application service profile, a first server device of the multiple server devices and establish the first server device to be the destination of the application service request.
Abstract:
A network device receives, from a congestion controller, traffic policy information associated with a data stream between a sender and a receiver, where the traffic policy information includes a maximum round trip delay time (RTT) and a maximum throughput rate (Rate). The network device obtains a receiver advertised window size (RWND) for the receiver for the data stream. The network device modifies the RWND based on the RTT and the Rate to produce a modified receiver window size (RWND′) and sends the RWND′ to the sender for use in controlling congestion on the data stream between the sender and the receiver.