US2021135978A1PendingUtilityA1

Intelligent adaptive transport layer to enhance performance using multiple channels

42
Assignee: CLEVERNET INCPriority: Jun 18, 2016Filed: Dec 14, 2020Published: May 6, 2021
Est. expiryJun 18, 2036(~9.9 yrs left)· nominal 20-yr term from priority
H04L 12/4641H04L 67/61H04L 41/5019H04L 45/38H04L 45/124H04L 47/76H04L 45/12H04L 45/121H04L 45/24H04L 67/322
42
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A set of connections is established, continuously evaluated and maintained between two endpoints of a computer network for use in transmitting information flows in a more efficient and controlled manner. New connections are established and existing connections are terminated in a continual search for connections with better and/or different performance characteristics. Each connection may utilize the same or a different path through the network and may have performance characteristics that change over time. Several paths can be used simultaneously for a given information flow to improve network metrics including: throughput, transaction time, data consistency, latency and packet loss. Flows of information can be broken into one or more sub-flows and sub-flows can be assigned to one or more active connections. Furthermore, dynamic decisions regarding how flows are broken up and how they are assigned to connections can be made in response to network conditions. Through the use of these connections, a reduced cost can be offered and application QoS/QoE can be guaranteed, allowing existing networks such as the public Internet to provide an enterprise class connection, which can be used to accelerate enterprise cloud adoption without modifying the present Internet infrastructure.

Claims

exact text as granted — not AI-modified
1 . A method of communicating a flow of information over a plurality of available connections in a system comprising a plurality of network hosts coupled to a network capable of communicating information between hosts, wherein the system utilizes a plurality of connections between the network hosts, the method comprising:
 receiving a request to transfer an application information flow between a first network host and a second network host;   breaking the application information flow into a plurality of sub-flows;   assigning each of the plurality of sub-flows to a connection from among a plurality of connections between said first network host and said second network host;   communicating data from said plurality of sub-flows over one or more of said plurality of connections based on said step of assigning.   
     
     
         2 . The method of  claim 1  wherein said plurality of connections are pre-existing tunnels maintained independently from the communication of the application information flow. 
     
     
         3 . The method of  claim 1  wherein said request is associated with application characteristics comprising one or more characteristics taken from the set consisting of: packet size, flow size, flow duration, latency requirements, and priority. 
     
     
         4 . The method of  claim 1  wherein said step of assigning is based on at least one performance metric associated with at least one of said plurality of connections. 
     
     
         5 . The method of  claim 1  wherein said step of breaking changes how the application information flow is divided into sub-flows dynamically during transfer of the application information flow. 
     
     
         6 . The method of  claim 1  wherein said step of assigning changes an assignment of one or more of the plurality of sub-flows to a different connection among said plurality of connections during transfer of the application information flow. 
     
     
         7 . The method of  claim 1  wherein at least one of said plurality of sub-flows is bidirectional and each direction of said at least one of said plurality of sub-flows is assigned to different ones of said plurality of connections. 
     
     
         8 . The method of  claim 1  wherein said first network host comprises a first network interface and said second network host comprises a second network interface, and wherein at least two of said plurality of connections are established that utilize both said first network interface and said second network interface. 
     
     
         9 . The method of  claim 1  further comprising the steps of:
 receiving a second request to transfer a second application information flow between said first network host and said second network host; 
 breaking the second application information flow into a second plurality of sub-flows; 
 assigning each of the second plurality of sub-flows to a connection from among said plurality of connections between said first network host and said second network host; 
 communicating data from each of said second plurality of sub-flows over one or more of said second plurality of connections based on said step of assigning each of the second plurality of sub-flows. 
 
     
     
         10 . The method of  claim 9  wherein at least one of said plurality of connections communicates data from both the application information flow and the second application information flow. 
     
     
         11 . An apparatus for communicating information flows between network hosts over a network coupling the network hosts, the apparatus comprising:
 a first network host comprising at least one processor in communication with least one memory storing processor readable instructions, wherein the at least one processor is operably configured by the processor readable instructions to:   receive a request to transfer an application information flow to a second network host;   break the information flow into a plurality of sub-flows;   assign each of the plurality of sub-flows to a connection from among a plurality of connections between said first network host and said second network host;   communicate data from said plurality of sub-flows over one or more of said plurality of connections.   
     
     
         12 . The apparatus of  claim 11  wherein said plurality of connections are pre-existing tunnels maintained independently from the communication of the application information flow. 
     
     
         13 . The apparatus of  claim 11  wherein said wherein said request is associated with application characteristics comprising one or more characteristics taken from the set consisting of: packet size, flow size, flow duration, latency requirements, and priority. 
     
     
         14 . The apparatus of  claim 11  wherein said processor is operably configured to assign each of the plurality of sub-flows to a connection based on at least one performance metric associated with at least one of said plurality of connections. 
     
     
         15 . The apparatus of  claim 11  wherein said processor is operably configured to change how the application information flow is divided into said plurality of sub-flows dynamically during transfer of the application information flow. 
     
     
         16 . The apparatus of  claim 11  wherein said processor is operably configured to change an assignment of one or more of the plurality of sub-flows to a different connection among said plurality of connections during transfer of the application information flow. 
     
     
         17 . The apparatus of  claim 11  wherein at least one of said plurality of sub-flows is bidirectional and each direction of said at least one of said plurality of sub-flows is assigned to different ones of said plurality of connections. 
     
     
         18 . The apparatus of  claim 11  wherein said first network host comprises a first network interface and said second network host comprises a second network interface, and wherein at least two of said plurality of connections are established that utilize both said first network interface and said second network interface. 
     
     
         19 . The apparatus of  claim 11  wherein the at least one processor is further operably configured by the processor readable instructions to:
 receive a second request to transfer a second application information flow between said first network host and said second network host; 
 break the second application information flow into a second plurality of sub-flows; 
 assign each of the second plurality of sub-flows to a connection from among said plurality of connections between said first network host and said second network host; 
 communicate data from each of said second plurality of sub-flows over one or more of said second plurality of connections. 
 
     
     
         20 . The apparatus of  claim 19  wherein at least one of said plurality of connections communicates data from both the application information flow and the second application information flow.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.