Transparent Proxy Architecture for Multi-Path Data Connections
Abstract
A method for forming an optimized communication connection providing enhanced performance of an application utilizing the communication connection is provided, the communication connection including multiple individual communication networks. The method includes: obtaining a set of performance requirements corresponding to the application utilizing the communication connection; obtaining real-time capacity information for each of a plurality of available channels associated with the respective individual communication networks; applying at least one policy-based management criteria to the available channels for controlling, in real-time, one or more aspects of the available channels; dynamically aggregating the individual communication networks to form the optimized communication connection, the communication connection leveraging one or more features and capabilities of at least a subset of the communication networks; and controlling real-time traffic scheduling across at least a subset of the available channels so as to adapt the communication connection to changes in network conditions and/or policy-based management criteria.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for forming an optimized communication connection providing enhanced performance of at least one application utilizing the communication connection, the optimized communication connection comprising a plurality of individual communication networks, the method comprising:
obtaining a set of performance requirements corresponding to the at least one application utilizing the communication connection; obtaining capacity information for each of a plurality of available channels associated with the respective plurality of individual communication networks; applying at least one policy-based management criteria to the available channels for controlling one or more aspects of the available channels; dynamically aggregating the plurality of individual communication networks to form the optimized communication connection, the communication connection leveraging one or more features and capabilities of at least a subset of the plurality of communication networks; and controlling real-time traffic scheduling across at least a subset of the plurality of available channels so as to adapt the communication connection to changes in at least one of network conditions and policy-based management criteria.
2 . The method of claim 1 , wherein the step of obtaining a set of performance requirements corresponding to the at least one application comprises performing real-time profiling of the at least one application.
3 . The method of claim 1 , wherein the step of applying at least one policy-based management criteria to the available channels is controlled locally.
4 . The method of claim 1 , wherein the step of applying at least one policy-based management criteria to the available channels is network controlled.
5 . The method of claim 1 , wherein the step of obtaining capacity information for each of the plurality of available channels comprises performing at least one of passive monitoring, active monitoring and real-time data collection.
6 . The method of claim 5 , wherein passive monitoring comprises monitoring traffic performance on the plurality of available channels in real-time.
7 . The method of claim 5 , wherein active monitoring comprises periodically sending one or more active performance probes.
8 . The method of claim 1 , wherein the step of controlling real-time traffic scheduling across the plurality of available channels comprises estimating at least one performance characteristic of each of the plurality of channels to thereby optimize concurrent transmission of data traffic.
9 . The method of claim 8 , wherein the at least one performance characteristic comprises at least one of bandwidth, round trip delay time (RTT) and jitter associated with each of the plurality of channels.
10 . The method of claim 1 , wherein the step of dynamically aggregating the plurality of individual communication networks to form the optimized communication connection is performed using a dynamic multi-path network protocol.
11 . The method of claim 1 , wherein the step of controlling real-time traffic scheduling comprises reconfiguring real-time traffic scheduling across at least the subset of the plurality of available channels as a function of at least one of available window size, latency estimation, bandwidth estimation and in-flight and queue traffic computation corresponding to at least the subset of the plurality of available channels.
12 . The method of claim 1 , wherein the step of controlling real-time traffic scheduling comprises reconfiguring real-time traffic scheduling across at least the subset of the plurality of available channels as a function of one or more requirements of the at least one application utilizing the communication connection.
13 . The method of claim 12 , wherein the step of reconfiguring real-time traffic scheduling comprises at least one of mirroring traffic on a subset of the plurality of available channels, and mapping at least a portion of prescribed traffic onto at least one specified network path.
14 . The method of claim 1 , further comprising the step of maintaining at least one virtual queue per destination with a sender's retransmission queue and applying a retransmission procedure on a per-destination basis without affecting an operation of the sender so as to enable the sender to adapt a size of a congestion window maintained by the sender to thereby reduce a number of unnecessary packet retransmissions when packet reordering is performed at the destination.
15 . The method of claim 1 , further comprising:
obtaining transmission destination information for determining in-order delivery of data by a sender to a corresponding destination; and generating selective acknowledgments to the sender indicative of receipt of the data by the destination as a function of the transmission destination information.
16 . The method of claim 15 , wherein the step of generating selective acknowledgments comprises delaying all acknowledgments to the sender irrespective of an order in which data is received.
17 . The method of claim 1 , further comprising establishing a plurality of transport streams within the optimized communication connection, each of at least a subset of the streams being configured to have different performance characteristics.
18 . The method of claim 17 , wherein the step of controlling real-time traffic scheduling comprises applying a different scheduling scheme to each of at least two of said plurality of transport streams.
19 . The method of claim 1 , wherein the step of applying at least one policy-based management criteria to the available channels for controlling one or more aspects of the available channels comprises controlling one or more aspects of the available channels in real-time.
20 . A method for performing managed data offloading using multiple access networks, the method comprising:
provisioning a client device to establish simultaneous connectivity with the client device using at least two channels in the multiple access networks, such that data from a first one of the channels is offloaded to a second one of the channels in real-time without disruption of service; adding a layer of signaling between the client device and at least one server device in communication with the client device; dynamically aggregating at least a subset of available access networks as a function of decision-making criteria controlled jointly by a transaction between the client and server devices; and controlling offloading of at least a portion of data as a function of one or more characteristics of the available access networks.
21 . An apparatus for multiplexing a plurality of individual network connections to form an enhanced communication connection providing at least one of increased bandwidth, security, reliability and efficiency in a hybrid peer-to-peer network, the apparatus comprising:
memory; at least one processor connected with the memory; and a non-transient persistent storage medium that contains instructions which, when loaded into said memory, configure said at least one processor: (i) to discover and maintain multiple-network connectivity for at least a subset of a plurality of respective peers forming a peer-to-peer ad hoc network; (ii) to leverage a plurality of individual multiple access networks connected with one or more of the plurality of peers and aggregate the plurality of multiple access networks into a logical connection; and (iii) to implement out-of-band signaling operative to support communication and control of the peer-to-peer ad hoc network.
22 . The apparatus of claim 21 , wherein the at least one processor is operative to aggregate the plurality of multiple access networks into the logical connection such that the logical connection integrates at least a portion of characteristics associated with the plurality of individual multiple access networks, whereby the logical connection has overall characteristics associated therewith that are superior to any one of the individual multiple access networks.Join the waitlist — get patent alerts
Track US2016119250A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.