IP Library › Granted Patent US 11,363,089
Granted Patent B2
US 11,363,089 · App. 17/463,449 · Granted Jun 14, 2022

Systems and methods for optimization of transmission of real-time data via network labeling

Inventors: Wei Li (Shanghai, CN); Bin Zhao (Pudong District, CN)
Assignee: AGORA LAB, INC.
H04L65/80H04L12/18H04L12/1827H04L12/1831H04L41/145H04L43/062H04L43/55H04L45/123H04L47/722H04L65/403H04L65/4038H04M3/2236H04M7/0084H04L43/087H04L43/0829H04L43/0858H04L43/16H04L47/283H04L51/234H04L2101/622H04M1/24H04M1/2535H04M7/006H04M2250/62H04M2250/74
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,363,089
App. No.
17/463,449
Granted
Jun 14, 2022
Kind
B2
Abstract

The present invention relates to systems and methods for network labeling in order to enhance real time data transfers. A network for a real time data transfer is identified and predictive models for network performance are compared against to determine if the network is suitable for the data transfer. If so, then the real time data transfer may be completed as expected. However, if the network is predicted to be unsuitable for transmission an alternate means for connection may be suggested. The alternate suggestion may include delaying the data transfer until the network is expected to be in better conditions, connecting to another access point in the network, or switching to another network entirely. During the data transfer, the quality of the network is monitored in order to update the predictive models for the network's quality. Identifiers for the network may be utilized to keep track of the networks. Network signal strength, signal pollution and time may also be tracked in order to identify patterns in the network's performance.

Claims (34)

1. A computerized network routing method comprising:

determining a plurality of edge servers in a network based upon geographical similarity and commonality of ISP addresses;

selecting an edge server from the plurality of edge servers by sending test packets to the plurality of edge servers and monitoring a response;

determining a plurality of regional servers based upon geographical proximity;

selecting a regional server from the plurality of regional servers based upon relative data traffic load;

optimizing packet size and encoding for data over the selected edge server and regional server;

initiating real time data transfer using the selected edge server and regional server using the optimized data packet size and encoding;

renegotiating an updated data packet size and encoding based upon a change in conditions of the selected edge server and regional server.

2. The method of claim 1 , wherein the monitoring the response determines packet loss rate, jitter and packet latency.

3. The method of claim 2 , wherein the monitoring the response determines bandwidth.

4. The method of claim 3 , wherein the optimizing packet size uses the largest packet available when below a threshold packet loss rate and below a threshold bandwidth.

5. The method of claim 1 , wherein the test packets include testing algorithms.

6. The method of claim 5 , wherein the testing algorithms include retransmission on lost, FEC, simultaneous path, very low bitrate encoding, sending of multiple voice frames in one packet, adaptive jitter buffer, and PLC.

7. The method of claim 2 , wherein when the packet loss rate is above 2% then the selected edge server is two or more edge servers, with the real time data transfer simultaneously being transmitted to each of the two or more edge servers.

8. The method of claim 1 , further comprising maintaining a list of backup servers selected based upon historical loss, jitter and latency testing data.

9. The method of claim 8 , further comprising shifting to one of the backup servers when real time data transfer using the selected edge server has a loss rate of above 2% and a latency above 400 ms.

10. The method of claim 1 , wherein the commonality of ISP addresses is determined by an ISP lookup table compiled over time.

11. A computer program product embodied upon a non-transitory computer memory, the computer program product when executed by a computer system performs the steps of:

determining a plurality of edge servers in a network based upon geographical similarity and commonality of ISP addresses;

selecting an edge server from the plurality of edge servers by sending test packets to the plurality of edge servers and monitoring a response;

determining a plurality of regional servers based upon geographical proximity;

selecting a regional server from the plurality of regional servers based upon relative data traffic load;

optimizing packet size and encoding for data over the selected edge server and regional server;

initiating real time data transfer using the selected edge server and regional server using the optimized data packet size and encoding;

renegotiating an updated data packet size and encoding based upon a change in conditions of the selected edge server and regional server.

12. The computer program product of claim 11 , wherein the monitoring the response determines packet loss rate, jitter and packet latency.

13. The computer program product of claim 12 , wherein the monitoring the response determines bandwidth.

14. The computer program product of claim 13 , wherein the optimizing packet size uses the largest packet available when below a threshold packet loss rate and below a threshold bandwidth.

15. The computer program product of claim 11 , wherein the test packets include testing algorithms.

16. The computer program product of claim 15 , wherein the testing algorithms include retransmission on lost, FEC, simultaneous path, very low bitrate encoding, sending of multiple voice frames in one packet, adaptive jitter buffer, and PLC.

17. The computer program product of claim 12 , wherein when the packet loss rate is above 2% then the selected edge server is two or more edge servers, with the real time data transfer simultaneously being transmitted to each of the two or more edge servers.

18. The computer program product of claim 11 , further adapted to perform the steps of maintaining a list of backup servers selected based upon historical loss, jitter and latency testing data.

19. The computer program product of claim 18 , further adapted to perform the steps of shifting to one of the backup servers when real time data transfer using the selected edge server has a loss rate of above 2% and a latency above 400 ms.

20. The computer program product of claim 11 , wherein the commonality of ISP addresses is determined by an ISP lookup table compiled over time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2021
From: LI, WEI; ZHAO, BIN
To: AGORA LAB, INC.
Reel/Frame 058031/0579 →
Continuity (7)
Continuation 16565227 · Sep 9, 2019
Continuation 15140418 · Apr 27, 2016
Continuation In Part 14500960 · Sep 29, 2014
Provisional Application 62175194 · Jun 12, 2015
Provisional Application 62018522 · Jun 27, 2014
Provisional Application 62018520 · Jun 27, 2014
Related Publication 20220046075A1 · Feb 10, 2022