Abstract:
An appliance for optimizing network traffic is described. The appliance includes a transport layer controller configured to acquire link characteristics of a link, determine a congestion window for a flow of a plurality of data packets over the link, and determine transport layer characteristics for the flow. The appliance also includes a traffic priority controller configured to acquire a flow priority of the flow, determine whether congestion is or going to occur using the transport layer characteristics and the link characteristics, and increase the congestion window for the flow based on the congestion determination and on the flow priority having been indicated as being higher priority. The appliance further includes a quality of service engine configured to output the flow according to the congestion window.
Abstract:
Described embodiments improve the performance of a computer network via optimization of connection redirection or redistribution based on link characteristics such as latency. In some implementations, a high priority connection may be initially established via an available link having a lowest latency or highest throughput. If the connection is not particularly latency-sensitive, then once the connection has ramped up to a highest throughput (e.g. largest congestion window size, etc.), the connection may be moved to a higher latency link, freeing the lower latency link for new connections to similarly ramp up throughput.
Abstract:
A system for optimizing network traffic is described. The system includes a transport communication protocol (TCP) controller configured to acquire data regarding a flow of a plurality of data packets over a link and to determine TCP characteristics for the flow, a traffic prioritization module configured to assign a flow priority to the flow, and a traffic priority controller configured detect congestion on the link and determine a congestion window size for the flow based on the flow priority and the TCP characteristics.
Abstract:
An appliance for providing compression technique for jitter sensitive application through multiple network links is described. The appliance has one or more processors and includes a link quality estimator, a jitterless compressor, and a link switcher. The link quality estimator is configured to measure latency over a first link and a second link, wherein the second link has a longer latency than the first link. The jitterless compressor is configured to accumulate packets for a time period associated with a difference in latency between the second link and the first link, and determine a number of packets based on a packet size associated with the accumulated packets and bandwidth of the first link. The link switcher is configured to acquire the determined number of packets, wherein the determined number of packets have been compressed, transmit a first packet over the second link, and transmit the acquired number of packets over the first link.
Abstract:
A system for optimizing network traffic is described. The system includes a packet engine configured to acquire data regarding a flow of a plurality of data packets over a link and to determine transport communication protocol (TCP) characteristics for the flow, and a TCP flavor selector configured to dynamically select a TCP flavor based on the TCP characteristics, where the TCP flavor can be used to modify the flow of data packets over the link. The TCP characteristics dynamically change with time. The TCP flavor selector is further configured to modify the flow using the TCP flavor.
Abstract:
A server includes a network interface to interface with mobile computing devices operating within a geographical area, with at least one of the mobile computing devices providing a request for navigation instructions between two geo-locations based on prompting the user to select an optimized connectivity route prompt. A processor is coupled to the network interface and is configured to generate a network connectivity map based on varying cellular network connectivity metrics for the geographical area, and generate, based on the user-selected optimized connectivity route prompt, the navigation instructions between the two geo-locations to be provided to the at least one mobile communications device via said network interface. The navigation instructions are generated based on the network connectivity map to provide a single route that is optimized to include areas with strong cellular network connectivity metric values.
Abstract:
Described embodiments provide systems and methods for selecting between modes for delivering or providing access to a file. A server can be configured to deliver the file via a plurality of modes of delivery including. A first mode of delivery can include downloading the file and a second mode of delivery can include delivering the file via a virtualized stream. The server can receive a request and initiate downloading of the file for a length of time. The server can identify an amount of available bandwidth and size of the file and determine a first time for the first mode of delivery. The first time can be compared to a second time to deliver the file via the second mode of delivery. The server can select between the first mode of delivery and the second mode of delivery and provide the file via the selected mode of delivery.
Abstract:
Described embodiments provide systems and methods for path selection proportional to a penalty delay in processing packets. A server-side intermediary may identify a delay penalty for processing packets of a server destined for a client. The server-side intermediary may be in communication via links of different latencies with a client-side intermediary. The server-side intermediary may select a second link with a latency that deviates from the lowest latency of a first link by the delay penalty. The server-side intermediary may transmit, to the client-side intermediary, duplicates of the packets via the selected second link with information indicating to hold the duplicates at the client-side intermediary. The server-side intermediary may receive an indication to drop or send the duplicates to the client. The server-side intermediary may transmit the indication to the client-side intermediary to drop or send the duplicates according to the indication.
Abstract:
A method may involve receiving, by a computing system, an input indicative of an individual with whom a user of a client device is to communicate. The computing system may determine data of a plurality of applications, the data being indicative of the individual being available with at least one of the plurality of applications. The computing system may select, based at least in part on the data, a first application, from among the plurality of applications, for communication with the individual, and may cause the client device to output an indication that the first application can be used to communicate with the individual.
Abstract:
Methods and systems for bandwidth efficient streaming and synching multimedia content at a desired quality of experience are described herein. One method includes: requesting, by a client device and from a server device, a multimedia file for streaming; receiving, at the client device and responsive to the request, a plurality of chunks of the multimedia file, wherein the chunks are of varying quality; streaming the multimedia file based on the received plurality of chunks; determining a first subset of the plurality of chunks that meet a predefined quality threshold, and a second subset of the plurality of chunks that do not meet the predefined quality threshold; requesting, by the client device and from the server device, a replacement chunk for each chunk of the second subset, wherein each replacement chunk meets the predefined quality threshold; and storing the multimedia file using the first subset and the replacement chunks.