IP Library Granted Patent US 11,005,810
Granted Patent B2
US 11,005,810 · App. 16/578,891 · Granted May 11, 2021

Multi-tenant environment with overlapping address space

Inventors: William C. Souhrada (Southhampton, NY); Fernando Matos (Hellertown, PA); Marianne Aubry (Saint-Paul de Vence, FR); B. Stephen Currie (Harleysville, PA); Aram Avetisyan (Brno, CZ)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
H04L61/2514H04L12/4641H04L61/1547H04L61/2557H04L61/6013
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,005,810
App. No.
16/578,891
Granted
May 11, 2021
Kind
B2
Abstract

A method includes: receiving communications from first and second tenants of a multi-tenant computing environment over first and second dedicated networks, respectively, the communications being transmitted to a first globally unique IP address in first and second dedicated environments, respectively; NATing the first globally unique IP address, to which the communication from the first tenant was transmitted, to a first non-globally unique IP address that is locally unique in the service provider environment; NATing the first globally unique IP address, to which the communication from the second tenant was transmitted, to a second non-globally unique IP address that is locally unique in the service provider environment; providing the communication from the first tenant and the communication from the second tenant access to a shared resource in the service provider environment using the first and second non-globally unique IP addresses, respectively.

Claims (51)

1. A computer-implemented method comprising:

receiving, by a computer device, a communication from a first tenant of a multi-tenant computing environment over a first dedicated communication network, the communication being transmitted to a first globally unique internet protocol (IP) address in a first dedicated environment in a service provider environment, the first dedicated environment being dedicated to the first tenant;

receiving, by the computer device, a communication from a second tenant of the multi-tenant computing environment over a second dedicated communication network, the communication from the second tenant being transmitted to the first globally unique IP address in a second dedicated environment in the service provider environment, the second dedicated environment being dedicated to the second tenant;

network address translating, by the computer device, the first globally unique IP address, to which the communication from the first tenant was transmitted, to a first non-globally unique IP address that is locally unique in the service provider environment;

network address translating, by the computer device, the first globally unique IP address, to which the communication from the second tenant was transmitted, to a second non-globally unique IP address that is locally unique in the service provider environment;

providing, by the computer device, the communication from the first tenant access to a shared resource in the service provider environment using the first non-globally unique IP address; and

providing, by the computer device, the communication from the second tenant access to the shared resource using the second non-globally unique IP address.

2. The computer-implemented method of claim 1 , wherein

the first dedicated communication network connects the first tenant to the first dedicated environment in the multi-tenant computing environment, and

the second dedicated communication network connects the second tenant to the second dedicated environment in the multi-tenant computing environment.

3. The computer-implemented method of claim 2 , wherein the network address translating of the first globally unique IP address, to which the communication from the first tenant was transmitted, is performed on a subnet that is public and is non-routable on the Internet, and

the network address translating of the first globally unique IP address, to which the communication from the second tenant was transmitted, is performed on the subnet that is public and is non-routable on the Internet.

4. The computer-implemented method of claim 3 , wherein the network address translations are source network address translations (SNATs).

5. The computer-implemented method of claim 3 , further comprising:

creating, by the computer device, a first segment of the subnet for use with the first dedicated environment; and

creating, by the computer device, a second segment of the subnet for use with the second dedicated environment,

wherein the first segment is isolated from the second segment.

6. The computer-implemented method of claim 2 , further comprising determining, by the computer device, that a first communication from the shared resource is directed to the first tenant based on the communication from the first tenant being sent from the first non-globally unique IP address.

7. The computer-implemented method of claim 6 , further comprising network address translating, by the computer device and in response to the first communication from the shared resource, the first non-globally unique IP address to the first globally unique IP address with a proxy resource that resides in the first dedicated environment.

8. The computer-implemented method of claim 7 , further comprising determining, by the computer device, that a second communication from the shared resource is directed to the second tenant based on the communication from the second tenant being sent from the second non-globally unique IP address.

9. The computer-implemented method of claim 8 , further comprising network address translating, by the computer device and in response to the second communication from the shared resource, the second non-globally unique IP address to the first globally unique IP address with a proxy resource that resides in the second dedicated environment.

10. The computer-implemented method of claim 1 , wherein the second non-globally unique IP address is not visible to the first tenant.

11. The computer-implemented method of claim 1 , wherein the computer device includes software provided as a service in a cloud computing environment.

12. The computer-implemented method of claim 1 , wherein the first dedicated communication network is a first virtual private network (VPN),

the second dedicated communication network is a second virtual private network (VPN), and

the first VPN and the second VPN are different networks.

13. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computing device to cause the computing device to:

receive a communication from a first tenant of a multi-tenant computing environment over a first dedicated communication network, the communication being transmitted to a first globally unique internet protocol (IP) address in a first dedicated environment in a service provider environment, the first dedicated environment being dedicated to the first tenant;

receive a communication from a second tenant of the multi-tenant computing environment over a second dedicated communication network, the communication from the second tenant being transmitted to the first globally unique IP address in a second dedicated environment in the service provider environment, the second dedicated environment being dedicated to the second tenant;

network address translate the first globally unique IP address, to which the communication from the first tenant was transmitted, to a first non-globally unique IP address that is locally unique in the service provider environment;

network address translate the first globally unique IP address, to which the communication from the second tenant was transmitted, to a second non-globally unique IP address that is locally unique in the service provider environment;

provide the communication from the first tenant access to a shared resource in the service provider environment using the first non-globally unique IP address; and

provide the communication from the second tenant access to the shared resource using the second non-globally unique IP address.

14. The computer program product of claim 13 , wherein

the first dedicated communication network connects the first tenant to the first dedicated environment, and

the second dedicated communication network connects the second tenant to a second dedicated environment.

15. The computer program product of claim 14 , wherein the network address translations are performed on a subnet that is public and is non-routable on the Internet.

16. A system comprising:

a processor, a computer readable memory, and a computer readable storage medium;

program instructions to receive a communication from a first tenant of a multi-tenant computing environment over a first dedicated communication network, the communication being transmitted to a first globally unique internet protocol (IP) address in a first dedicated environment in a service provider environment, the first dedicated environment being dedicated to the first tenant;

program instructions to receive a communication from a second tenant of the multi-tenant computing environment over a second dedicated communication network, the communication from the second tenant being transmitted to the first globally unique IP address in a second dedicated environment in the service provider environment, the second dedicated environment being dedicated to the second tenant;

program instructions to network address translate the first globally unique IP address, to which the communication from the first tenant was transmitted, to a first non-globally unique IP address that is locally unique in the service provider environment;

program instructions to network address translate the first globally unique IP address, to which the communication from the second tenant was transmitted, to a second non-globally unique IP address that is locally unique in the service provider environment;

program instructions to provide the communication from the first tenant access to a shared resource in the service provider environment using the first non-globally unique IP address; and

program instructions to provide the communication from the second tenant access to the shared resource using the second non-globally unique IP address,

wherein the program instructions are stored on the computer readable storage medium for execution by the processor via the computer readable memory.

17. The system of claim 16 , wherein the first dedicated communication network connects the first tenant to the first dedicated environment, and

the second dedicated communication network connects the second tenant to the second dedicated environment.

18. The system of claim 16 , further comprising program instructions to determine that a first communication from the shared resource is directed to the first tenant based on the communication from the first tenant being sent from the first non-globally unique IP address.

19. The system of claim 18 , further comprising program instructions to network address translate, in response to the first communication from the shared resource, the first non-globally unique IP address to the first globally unique IP address with a proxy resource that resides in the first dedicated environment.

20. The system of claim 16 , wherein the second non-globally unique IP address is not visible to the first tenant.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2019
From: SOUHRADA, WILLIAM C.; MATOS, FERNANDO; AUBRY, MARIANNE; CURRIE, B. STEPHEN; AVETISYAN, ARAM
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 050462/0768 →
Continuity (2)
Provisional Application 62893358 · Aug 29, 2019
Related Publication 20210067486A1 · Mar 4, 2021
Cited By (3)
US 12,223,021 US 12,587,374 US 12,587,513