P
US12267243B2ActiveUtilityPatentIndex 62

Method and systems for reducing network latency

Assignee: PISMO LABS TECHNOLOGY LTDPriority: Nov 20, 2020Filed: Dec 27, 2023Granted: Apr 1, 2025
Est. expiryNov 20, 2040(~14.4 yrs left)· nominal 20-yr term from priority
Inventors:LEUNG WAN CHUN
H04L 47/32H04L 47/2416H04L 43/0858H04L 47/11H04L 45/24H04L 47/125G06F 15/173H04L 45/121
62
PatentIndex Score
0
Cited by
19
References
20
Claims

Abstract

The present invention discloses methods and systems for reducing network latency. A first network device establishes a plurality of connections with a second network device. After that, determining non-congesting latency of each of the plurality of connections. Assigning a weighting to each of the plurality of connections. Decreasing the weighting of a connection when the performance of the connection deteriorated according to a first criteria. The first network device may perform weight decreasing again after a time interval. Last, sending data packets through the plurality of connections according to the weightings.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A transmission control protocol (TCP) acceleration method, which is applied to a first network device, comprising:
 (a) receiving a plurality of TCP packets from a first host; 
 (b) sending a first plurality of acknowledgment messages to the first host; 
 (c) determining a weighting for each connection in a plurality of connections according to a non-congested latency of each connection in the plurality of connections; and 
 (d) when more than one connections are connection in the plurality of connections is available:
 (i) distributing, based on the weighting of each connection in the plurality of connections, the plurality of TCP packets to a plurality of available connections in the plurality of connections according to an algorithm; 
 (ii) transmitting a first plurality of TCP packets in the plurality of TCP packets to a second host using the plurality of available connections; and 
 (iii) when the plurality of available connections is ready, transmitting a second plurality of TCP packets in the plurality of TCP packets to the second host using the plurality of available connections; 
 
 wherein: 
 the algorithm is dependent on the weighting of each connection in the plurality of connections; 
 the first plurality of acknowledgment messages corresponds to the plurality of TCP packets received by the first network device; 
 a second plurality of acknowledgment messages corresponds to the first plurality of TCP packets received by the second host; 
 the plurality of available connections is ready when the second plurality of acknowledgment messages is received from the second host; and 
 the first plurality of acknowledgment messages is sent to the first host for a first period of time before receiving the second plurality of acknowledgment messages from the second host. 
 
     
     
       2. The method of  claim 1 , wherein each connection in the plurality of connections is available if performance of the first each connection in the plurality of connections is not deteriorated according to a criteria. 
     
     
       3. The method of  claim 1 , wherein the algorithm is weighted round-robin. 
     
     
       4. The method of  claim 3 , wherein:
 when the algorithm is weighted round-robin, the weighting of each connection in the plurality of connections is updated based on the latency of each connection in the plurality of connections. 
 
     
     
       5. The method of  claim 1 , wherein the plurality of connections is a plurality of WAN-to-WAN connections. 
     
     
       6. The method of  claim 1 , wherein the plurality of connections is an aggregated connection. 
     
     
       7. The method of  claim 2 , wherein the criteria is satisfied when latency of a connection in the plurality of connections has increased more than a particular percentage of a non-congested latency of the connection. 
     
     
       8. The method of  claim 2 , wherein the criteria further include a timing factor that the criteria is active for a second period of time. 
     
     
       9. The method of  claim 1 , wherein step (c) is performed after different time intervals. 
     
     
       10. A transmission control protocol (TCP) acceleration method, which is applied to a first network device, the method comprising:
 (a) receiving a plurality of TCP packets from a first host; 
 (b) sending a first plurality of acknowledgment messages to the first host; 
 (c) determining a weighting of each connection in a plurality of connections according to a non-congested latency of each connection in the plurality of connections; 
 (d) when more than one connection in the plurality of connections is available:
 (i) distributing, based on the weighting of each connection in the plurality of connections, the plurality of TCP packets to a plurality of available connections in the plurality of connections according to an algorithm; 
 (ii) transmitting a first plurality of TCP packets in the plurality of TCP packets to a second host using the plurality of available connections; and 
 (iii) when the plurality of available connections is ready, transmitting a second plurality of TCP packets in the plurality of TCP packets to the second host using the plurality of available connections; 
 
 wherein: 
 the algorithm is weighted round-robin; 
 the plurality of connections is a plurality of WAN-to-WAN connections; 
 the algorithm is dependent on the weighting of each connection in the plurality of connections; 
 the first plurality of acknowledgment messages corresponds to the plurality of TCP packets received by the first network device; 
 a second plurality of acknowledgment messages corresponds to the first plurality of TCP packets received by the second host; 
 the plurality of available connections is ready when the second plurality of acknowledgement messages is received from the second host; and 
 the first plurality of acknowledgment messages is sent to the first host for a first period of time before receiving the second plurality of acknowledgement messages from the second host. 
 
     
     
       11. The method of  claim 10 , wherein;
 the plurality of connections is an aggregated connection; 
 the weighting of each connection in the plurality of connections is based on a latency of each connection in the plurality of connections when the algorithm is the weighted round-robin; 
 the weighting of each connection in the plurality of connections is updated based on the latency of each connection in the plurality of connections. 
 
     
     
       12. A first network device, comprising:
 a secondary storage; 
 a main memory; 
 at least one processing unit; 
 at least one network interface; and 
 at least one non-transitory computer readable storage medium; 
 wherein the non-transitory computer readable storage medium stores program instructions executable by the at least one processing unit for: 
 (a) receiving a plurality of TCP packets from a first host; 
 (b) sending a first plurality of acknowledgment messages to the first host; 
 (c) determining a weighting of each connection in a plurality of connections according to a non-congested latency of each connection in the plurality of connections; and 
 (d) when more than one connection in the plurality of connections is available:
 (i) distributing, based on the weighting of each connection in the plurality of connections, the plurality of TCP packets to a plurality of available connections in the plurality of connections according to an algorithm; 
 (ii) transmitting a first plurality of TCP packets in the plurality of TCP packets to a second host using the plurality of available connections; and 
 (iii) when the plurality of connections is ready, transmitting a second plurality of TCP packets in the plurality of TCP packets to the second host using the plurality of available connections; 
 
 wherein:
 the algorithm is dependent on the weighting of each connection in the plurality of connections; 
 the first plurality of acknowledgment messages corresponds to the plurality of TCP packets received by the first network device; 
 the plurality of available connections is ready when a second plurality of acknowledgement messages is received from the second host; 
 the second plurality of acknowledgment messages corresponds to the first plurality of TCP packets received by the second host; and 
 the first plurality of acknowledgment messages is sent to the first host for a first period of time before receiving the second plurality of acknowledgement messages from the second host. 
 
 
     
     
       13. The first network device of  claim 12 , wherein each connection in the plurality of connections is available if performance of each connection in the plurality of connections is not deteriorated according to a criteria. 
     
     
       14. The first network device of  claim 12 , wherein the algorithm is weighted round-robin. 
     
     
       15. The first network device of  claim 14 , wherein:
 when the algorithm is weighted round-robin, the weighting of each connection in the plurality of connections is updated based on the respective latency of each connection in the plurality of connections. 
 
     
     
       16. The first network device of  claim 12 , wherein the plurality of connections is a plurality of WAN-to-WAN connections. 
     
     
       17. The first network device of  claim 13 , wherein the criteria is satisfied when latency of a connection in the plurality of connections has increased more than a particular percentage of a non-congested latency of the connection. 
     
     
       18. The first network device of  claim 13 , wherein the criteria further include a timing factor that the criteria is active for a second period of time. 
     
     
       19. The first network device of  claim 12 , wherein the connection is a WAN-to-WAN connection. 
     
     
       20. The first network device of  claim 12 , wherein step (c) is performed after different time intervals.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.