IP Library Granted Patent US 11,936,754
Granted Patent B1
US 11,936,754 · App. 18/122,234 · Granted Mar 19, 2024

Port management in a horizontally scaled file transfer system

Inventors: Rajagopal Sreenivasan (Bangalore, IN); Raghav Kempanna (Mountain View, CA); Sudarshana Kandachar Sridhara Rao (Bangalore, IN); Srinivasa Srikanth Podila (Bangalore, IN); Kumara Parameshwaran (Bangalore, IN)
Assignee: VMware LLC
H04L67/561H04L67/06
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,936,754
App. No.
18/122,234
Granted
Mar 19, 2024
Kind
B1
Abstract

An example method of file transfer between a client and a server includes: initiating, by the client, a front-end control connection between the client and a horizontally scaled proxy service; creating, by a first proxy instance of a plurality of proxy instances of the horizontally scaled proxy service, a back-end control connection between the first proxy instance and the server; returning, to the client from the first proxy instance, a unique client parameter associated with the front-end connection as a destination port for a front-end data connection; initiating, by the client, the front-end data connection between the client and the horizontally scaled proxy service, the front-end data connection using the destination port as returned by the first proxy instance; and creating, by the first proxy instance, a back-end data connection between the first proxy instance and the server.

Claims (55)

1. A method of file transfer between a client and a server, comprising:

initiating, by the client, a front-end control connection between the client and a horizontally scaled proxy service;

creating, by a first proxy instance of a plurality of proxy instances of the horizontally scaled proxy service, a back-end control connection between the first proxy instance and the server;

returning, to the client from the first proxy instance, a unique client parameter associated with the front-end connection as a destination port for a front-end data connection;

initiating, by the client, the front-end data connection between the client and the horizontally scaled proxy service, the front-end data connection using the destination port as returned by the first proxy instance; and

creating, by the first proxy instance, a back-end data connection between the first proxy instance and the server.

2. The method of claim 1 , wherein the unique client parameter is a source port of the front-end control connection.

3. The method of claim 1 , wherein a destination Internet Protocol (IP) address of the front-end control connection and the front-end data connection is a virtual IP (VIP) address of the horizontally scaled proxy service, and wherein a router selects the first proxy instance of the plurality of proxy instances in response to initiation of the front-end connection by the client to the VIP.

4. The method of claim 1 , further comprising:

returning, by the server to the first proxy instance, a destination port for the back-end data connection;

wherein the first proxy instance creates the back-end data connection to the destination port as returned by the server.

5. The method of claim 1 , further comprising:

initiating, by the client, another front-end control connection between the client and the horizontally scaled proxy service;

creating, by a second proxy instance of the plurality of proxy instances, another back-end control connection between the second proxy instance and the server; and

returning, to the client from the second proxy instance, another unique client parameter associated with the other front-end connection as a destination port for another front-end data connection.

6. The method of claim 5 , wherein the other unique client parameter is a source port of the other front-end control connection that is different from the source port of the front-end control connection.

7. The method of claim 1 , wherein the first proxy instance includes a first IP address mapped by the router to the VIP, and a second IP address that is a source IP address for the back-end control connection and the back-end data connection.

8. A non-transitory computer readable medium comprising instructions to be executed in a computing device to cause the computing device to carry out a method of file transfer between a client and a server, comprising:

initiating, by the client, a front-end control connection between the client and a horizontally scaled proxy service;

creating, by a first proxy instance of a plurality of proxy instances of the horizontally scaled proxy service, a back-end control connection between the first proxy instance and the server;

returning, to the client from the first proxy instance, a unique client parameter associated with the front-end connection as a destination port for a front-end data connection;

initiating, by the client, the front-end data connection between the client and the horizontally scaled proxy service, the front-end data connection using the destination port as returned by the first proxy instance; and

creating, by the first proxy instance, a back-end data connection between the first proxy instance and the server.

9. The non-transitory computer readable medium of claim 8 , wherein the unique client parameter is a source port of the front-end control connection.

10. The non-transitory computer readable medium of claim 8 , wherein a destination Internet Protocol (IP) address of the front-end control connection and the front-end data connection is a virtual IP (VIP) address of the horizontally scaled proxy service, and wherein a router selects the first proxy instance of the plurality of proxy instances in response to initiation of the front-end connection by the client to the VIP.

11. The non-transitory computer readable medium of claim 8 , further comprising:

returning, by the server to the first proxy instance, a destination port for the back-end data connection;

wherein the first proxy instance creates the back-end data connection to the destination port as returned by the server.

12. The non-transitory computer readable medium of claim 8 , further comprising:

initiating, by the client, another front-end control connection between the client and the horizontally scaled proxy service;

creating, by a second proxy instance of the plurality of proxy instances, another back-end control connection between the second proxy instance and the server; and

returning, to the client from the second proxy instance, another unique client parameter associated with the other front-end connection as a destination port for another front-end data connection.

13. The non-transitory computer readable medium of claim 12 , wherein the other unique client parameter is a source port of the other front-end control connection that is different from the source port of the front-end control connection.

14. The non-transitory computer readable medium of claim 8 , wherein the first proxy instance includes a first IP address mapped by the router to the VIP, and a second IP address that is a source IP address for the back-end control connection and the back-end data connection.

15. A file transfer system, comprising:

a client;

a router connected to the client through a network;

a plurality of proxy instances of a horizontally scaled proxy service connected to the router;

an application executing as a server connected to a first proxy instance of the plurality of proxy instances;

wherein:

the client initiates a front-end control connection between the client and the horizontally scaled proxy service;

the first proxy instance creates a back-end control connection between the first proxy instance and the server;

the first proxy instance returns to the client a unique client parameter associated with the front-end connection as a destination port for a front-end data connection;

the client initiates the front-end data connection between the client and the horizontally scaled proxy service, the front-end data connection using the destination port as returned by the first proxy instance; and

the first proxy instance creates a back-end data connection between the first proxy instance and the server.

16. The file transfer system of claim 15 , wherein the unique client parameter is a source port of the front-end control connection.

17. The file transfer system of claim 15 , wherein a destination Internet Protocol (IP) address of the front-end control connection and the front-end data connection is a virtual IP (VIP) address of the horizontally scaled proxy service, and wherein a router selects the first proxy instance of the plurality of proxy instances in response to initiation of the front-end connection by the client to the VIP.

18. The file transfer system of claim 15 , wherein:

the server returns to the first proxy instance a destination port for the back-end data connection;

the first proxy instance creates the back-end data connection to the destination port as returned by the server.

19. The file transfer system of claim 15 , wherein:

the client initiates another front-end control connection between the client and the horizontally scaled proxy service;

a second proxy instance of the plurality of proxy instances creates another back-end control connection between the second proxy instance and the server; and

the second proxy instance returns to the client another unique client parameter associated with the other front-end connection as a destination port for another front-end data connection.

20. The file transfer system of claim 19 , wherein the other unique client parameter is a source port of the other front-end control connection that is different from the source port of the front-end control connection.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2023
From: SREENIVASAN, RAJAGOPAL; KEMPANNA, RAGHAV; KANDACHAR SRIDHARA RAO, SUDARSHANA; PODILA, SRINIVASA SRIKANTH; PARAMESHWARAN, KUMARA
To: VMWARE, INC.
Reel/Frame 063000/0152 →
Priority Claims (1)
IN 202341002276 · Jan 11, 2023 · national