IP Library Granted Patent US 10,805,384
Granted Patent B1
US 10,805,384 · App. 16/129,877 · Granted Oct 13, 2020

Systems and methods for load balancing server infrastructure

Inventors: Alexey Kutuzov (Moscow, RU); Igor Marnat (Moscow, RU); Nikolay Dobrovolskiy (Moscow, RU); Serguei Beloussov (Costa del Sol, SG); Sergey Pachkov (Moscow, RU)
Assignee: Parallels International GmbH
H04L67/101H04L63/0281H04L67/1008H04L67/1063
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 10,805,384
App. No.
16/129,877
Granted
Oct 13, 2020
Kind
B1
Abstract

The present disclosure generally relates to the field of distributed system server administration, and more specifically, to systems and methods for load balancing server infrastructure and improving the performance of peer-to-peer connections between computing devices.

Claims (32)

1. A method, comprising:

receiving, by a server, from a first computing device, a first information comprising one or more identities of one or more proxy servers accessible by the first computing device;

receiving, from a second computing device, a second information comprising one or more identities of one or more proxy servers accessible by the second computing device;

receiving, by the server, a request from the first computing device to initiate a connection to the second computing device;

identifying, based on the first information, the second information, and a plurality of values of a workload metric for each proxy server of the one or more proxy servers accessible by the first computing device and the second computing device, a proxy server accessible to the first computing device and the second computing device; and

transmitting, to the first computing device, an identifier of the proxy server accessible to the first computing device and the second computing device.

2. The method of claim 1 , wherein the first information further comprises values of a network performance metric on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

3. The method of claim 2 , wherein the network performance metric reflects numbers of hops on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

4. The method of claim 2 , wherein the network performance metric reflects latencies of respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

5. The method of claim 2 , wherein the network performance metric reflects available bandwidths of respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

6. The method of claim 2 , wherein the network performance metric reflects number of dropped packets on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

7. The method of claim 2 , wherein the proxy server accessible to the first computing device and the second computing device is selected based on the values of the network performance metric.

8. The method of claim 1 , wherein the server is a cloud-based server.

9. The method of claim 1 , wherein the first information is received by the server according to a schedule.

10. The method of claim 1 , wherein the first information further comprises values of a network performance metric on respective end-to-end paths connecting the first computing device and the second computing device via each proxy server of the one or more proxy servers accessible by the first computing device and the second computing device.

11. The method of claim 1 , wherein the first information further comprises values reflecting geographic proximity of each proxy server of the one or more proxy servers to the first computing device and the second computing device.

12. A server computer system, comprising:

a memory; and

a processor, coupled to the memory, the processor configured to:

receive, from a first computing device, a first information comprising one or more identities of one or more proxy servers accessible to each respective by the first computing device;

receive, from a second computing device, a second information comprising one or more identities of one or more proxy servers accessible by the second computing device;

receive a request from the first computing device to initiate a connection to the second computing device;

identify, based on the first information, the second information, and a plurality of values of a workload metric for each proxy server of the one or more proxy servers accessible by the first computing device and the second computing device, a proxy server accessible to the first computing device and the second computing device; and

transmit, to the first computing device, an identifier of the proxy server accessible to the first computing device and the second computing device.

13. The system of claim 12 , wherein the first information further comprises values of a network performance metric on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

14. The system of claim 13 , wherein the network performance metric reflects numbers of hops on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

15. The system of claim 13 , wherein the network performance metric reflects latencies of respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

16. The system of claim 13 , wherein the network performance metric reflects available bandwidths of respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

17. The system of claim 13 , wherein the network performance metric reflects number of dropped packets on respective network paths between the first computing device and each of the one or more proxy servers accessible by the first computing device.

18. The system of claim 13 , wherein the proxy server accessible to the first computing device and the second computing device is selected based on the values of the network performance metric.

19. The system of claim 12 , wherein the first information is received by the server computer system according to a schedule.

20. The system of claim 12 , wherein the first information further comprises values of a network performance metric on respective end-to-end paths connecting the first computing device and the second computing device via each proxy server of the one or more proxy servers accessible by the first computing device and the second computing device.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 047973 FRAME 0797 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 049773/0590 →
SECURITY INTEREST Recorded Dec 21, 2018
From: PARALLELS INTERNATIONAL GMBH
To: UBS AG, STAMFORD BRANCH
Reel/Frame 047973/0797 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2018
From: KUTUZOV, ALEXEY; MARNAT, IGOR; DOBROVOLSKIY, NIKOLAY; BELOUSSOV, SERGUEI; PACHKOV, SERGEY
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 046861/0262 →
Cited By (5)
US 12,346,746 US 12,450,096 US 12,591,915 US 12,625,715 US 12,632,315