IP Library Granted Patent US 8,959,185
Granted Patent B2
US 8,959,185 · App. 13/835,017 · Granted Feb 17, 2015

Multitenant server for virtual networks within datacenter

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 8,959,185
App. No.
13/835,017
Granted
Feb 17, 2015
Kind
B2
Abstract

In general, techniques are described for facilitating multi-tenancy of a server accessed by virtual networks of a data center. A device included within a data center comprising one or more processors may perform the techniques. The processors may be configured to execute a virtual switch that supports a number of virtual networks executing within the data center. The virtual switch may be configured to receive a request regarding data associated with an identifier that is unique within one of the virtual networks that originated the request. The virtual switch may then translate the identifier included within the request to generate a globally unique identifier that is unique within the plurality of virtual networks, update the request to replace the identifier included within the request with the globally unique identifier, and transmit the updated request to a server of the data center.

Claims (59)

1. A method comprising:

receiving, with a virtual switch that supports a plurality of virtual networks executing within a data center, a request regarding data associated with an identifier that is unique within one of the plurality of virtual networks that originated the request;

translating the identifier included within the request to generate a globally unique identifier that is unique within the plurality of virtual networks;

updating the request to replace the identifier included within the request with the globally unique identifier; and

transmitting the updated request to a server of the data center.

2. The method of claim 1 , wherein translating the identifier included within the request comprises appending a namespace assigned to the one of the virtual networks that originated the request to the identifier to generate the globally unique identifier.

3. The method of claim 1 ,

wherein the one of the plurality of virtual network that originated the request comprises a first one of the plurality of virtual networks,

wherein the request comprises a first request,

wherein the globally unique identifier comprises a first globally unique identifier, and

wherein the method further comprises:

receiving, with the virtual switch, a second request regarding data associated with the same identifier as that included in the first request, wherein the same identifier is also unique within a second one of the plurality of virtual networks that originated the second request;

translating the identifier included within the second request to generate a second globally unique identifier that is unique within the plurality of virtual networks and different from the first globally unique identifier;

updating the second request to replace the second identifier included within the second request with the second globally unique identifier; and

transmitting the updated second request to the server.

4. The method of claim 1 , further comprising:

receiving a response from the server that includes the globally unique identifier;

translating the globally unique identifier to recover the identifier included within the request;

updating the response to replace the globally unique identifier with the recovered identifier; and

transmitting the response to the one of the plurality of virtual networks that issued the request.

5. The method of claim 4 ,

wherein translating the request comprises transparently translating the identifier included within the request to generate the globally unique identifier that is unique within the plurality of virtual networks such that the one of the plurality of virtual networks that originated the response does not detect the translation, and

wherein translating the globally unique identifier comprises transparently translating the globally unique identifier included within the response to recover the identifier included within the request such that the one of the plurality of virtual networks that originated the response is not aware of the translation.

6. The method of claim 1 , wherein translating the identifier comprises transparently translating the identifier included within the request to generate the globally unique identifier that is unique within the plurality of virtual networks such that the one of the plurality of virtual networks that originated the response is not aware of the translation.

7. The method of claim 1 ,

wherein the request conforms to a vendor neutral protocol, and

wherein the server comprises a vendor neutral server that stores data in accordance with a vendor neutral data model.

8. The method of claim 1 ,

wherein the request conforms to an Interface for Metadata Access Point (IF-MAP) protocol, and

wherein the server comprises an IF-MAP server that stores data in accordance with an IF-MAP data model.

9. The method of claim 1 ,

wherein each of the plurality of virtual networks is associated with a different customer of the data center, and

wherein the server comprises a multi-tenant server that stores data for at least two of the different customers.

10. A device included within a data center comprising:

one or more processors configured to execute a virtual switch that supports a plurality of virtual networks executing within the data center,

wherein the virtual switch is configured to receive a request regarding data associated with an identifier that is unique within one of the plurality of virtual networks that originated the request, translate the identifier included within the request to generate a globally unique identifier that is unique within the plurality of virtual networks, update the request to replace the identifier included within the request with the globally unique identifier, and transmit the updated request to a server of the data center.

11. The device of claim 10 , wherein the one or more processors are further configured to, when translating the identifier included within the request, append a namespace assigned to the one of the virtual networks that originated the request to the identifier to generate the globally unique identifier.

12. The device of claim 10 ,

wherein the one of the plurality of virtual network that originated the request comprises a first one of the plurality of virtual networks,

wherein the request comprises a first request,

wherein the globally unique identifier comprises a first globally unique identifier, and

wherein the one or more processors are further configured to receive a second request regarding data associated with the same identifier as that included in the first request, wherein the same identifier is also unique within a second one of the plurality of virtual networks that originated the second request, translate the identifier included within the second request to generate a second globally unique identifier that is unique within the plurality of virtual networks and different from the first globally unique identifier, update the second request to replace the second identifier included within the second request with the second globally unique identifier, and transmit the updated second request to the server.

13. The device of claim 10 , wherein the one or more processors are further configured to receive a response from the server that includes the globally unique identifier, translate the globally unique identifier to recover the identifier included within the request, update the response to replace the globally unique identifier with the recovered identifier, and transmit the response to the one of the plurality of virtual networks that issued the request.

14. The device of claim 13 ,

wherein the one or more processors are further configured to, when translating the request, transparently translate the identifier included within the request to generate the globally unique identifier that is unique within the plurality of virtual networks such that the one of the plurality of virtual networks that originated the response does not detect the translation, and

wherein the one or more processors are further configured to, when translating the globally unique identifier, transparently translate the globally unique identifier included within the response to recover the identifier included within the request such that the one of the plurality of virtual networks that originated the response is not aware of the translation.

15. The device of claim 10 , wherein the one or more processors are further configured to, when translating the identifier, transparently translate the identifier included within the request to generate the globally unique identifier that is unique within the plurality of virtual networks such that the one of the plurality of virtual networks that originated the response is not aware of the translation.

16. The device of claim 10 ,

wherein the request conforms to a vendor neutral protocol, and

wherein the server comprises a vendor neutral server that stores data in accordance with a vendor neutral data model.

17. The device of claim 10 ,

wherein the request conforms to an Interface for Metadata Access Point (IF-MAP) protocol, and

wherein the server comprises an IF-MAP server that stores data in accordance with an IF-MAP data model.

18. The device of claim 10 ,

wherein each of the plurality of virtual networks is associated with a different customer of the data center, and

wherein the server comprises a multi-tenant server that stores data for at least two of the different customers.

19. A non-transitory computer readable storage medium having stored thereon instructions that, when executed, cause one or more processors of a device included within a data center to execute a virtual switch that supports a plurality of virtual networks executing within the data center,

wherein the virtual switch is configured to receive a request regarding data associated with an identifier that is unique within one of the plurality of virtual networks that originated the request, translate the identifier included within the request to generate a globally unique identifier that is unique within the plurality of virtual networks, update the request to replace the identifier included within the request with the globally unique identifier, and transmit the updated request to a server.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the instructions that, when executed, cause the one or more processors to translating the identifier included within the request further comprise instructions that, when executed, cause the one or more processors to append a namespace assigned to the one of the virtual networks that originated the request to the identifier to generate the globally unique identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2013
From: NAKIL, HARSHAD B; MARQUES, PEDRO R.; AJAY, HAMPAPUR; RANJAN, ASHISH; SINGLA, ANKUR
To: JUNIPER NETWORKS, INC.
Reel/Frame 030093/0278 →