IP Library › Granted Patent US 10,298,489
Granted Patent B2
US 10,298,489 · App. 14/808,704 · Granted May 21, 2019

Adding multi-tenant awareness to a network packet processing device on a software defined network (SDN)

Inventors: Ronald Becker Williams (Austin, TX); Cheng-Ta Lee (Taipei, TW); Lun-Pin Yuan (Taoyuan, TW)
Assignee: International Business Machines Corporation
H04L45/64H04L41/0803H04L45/02H04L45/42H04L45/586H04L45/74H04L61/2507H04L61/2517H04L61/2596
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,298,489
App. No.
14/808,704
Granted
May 21, 2019
Kind
B2
Abstract

“Multi-tenant awareness” is added to a set of one or more packet processing devices in a Software Defined Network (SDN) having a controller. For each of one or more tenants, information in a table associates network protocol address attributes with an Internet Protocol (IP) address unique to the tenant. The table is associated with a multiple-layer translation layer being managed by the SDN controller. As a data packet traverses the translation layer, network protocol address attributes are translated according to values in the table to enable logical routing of the packet (to a given PPD. This translation occurs dynamically (or “on-the-fly”) as packets are “on route” to their destination. By implementing a multi-layer network address translation (NAT), one layer may be used to translate network protocol address source attributes, while a second layer may be used to translate network protocol address destination attributes.

Claims (40)

1. A method to add multi-tenant awareness to a set of one or more packet processing devices in a multi-tenant Software Defined Network (SDN) having a controller, comprising:

maintaining a data set that, for each of one or more tenants, associates one or more network protocol address attributes with an Internet Protocol (IP) address unique to the tenant, wherein at least a first tenant also has associated therewith a security policy;

associating the data set with a translation layer configured for multi-layer SDN switching;

as a packet associated with the first tenant and being routed to a given packet processing device (PPD) traverses the translation layer, translating one or more network protocol address attributes according to the data set; and

adjusting the first tenant's security policy to include the translated one or more network protocol address attributes such that, from a perspective of the given PPD, the packet and the adjusted security policy are then uniquely associated with the first tenant;

wherein the translation layer is a network address translation layer having two or more layers.

2. The method as described in claim 1 wherein a first layer of the network address translation layer translates network protocol address source attributes, and a second layer of the network address translation layer translates network protocol address destination attributes.

3. The method as described in claim 1 wherein the one or more network protocol address attributes are any networking attribute of any networking protocol that includes source and destination address parameters.

4. The method as described in claim 1 wherein, with respect to a second packet that originates from the given packet processing device and that is destined for a second packet processing device, translating one or more network protocol address attributes in the second packet using the data set to enable logical routing of the second packet to the second packet processing device.

5. The method as described in claim 1 wherein the translation layer is positioned between a network infrastructure and the one or more packet processing devices.

6. The method as described in claim 5 wherein the network infrastructure comprises a virtual environment.

7. The method as described in claim 1 wherein a second tenant also has associated therewith a security policy, the first and second tenant security policies being distinct from one another and sharing a same source IP address prior to multi-tenant awareness being added, and further including adjusting the second tenant's security policy, wherein the adjusted security policy associated with the first tenant includes a first new source IP address, and an adjusted security policy associated with the second tenant includes a second new source IP address distinct from the first new source IP address.

8. Apparatus associated with an SDN controller, comprising:

a processor;

computer memory holding computer program instructions executed by the processor to add multi-tenant awareness to a set of one or more packet processing devices in a multi-tenant Software Defined Network (SDN) by:

maintaining a data set that, for each of one or more tenants, associates one or more network protocol address attributes with an Internet Protocol (IP) address unique to the tenant, wherein at least a first tenant also has associated therewith a security policy;

associating the data set with a translation layer configured for multi-layer SDN switching;

as a packet associated with the first tenant and being routed to a given packet processing device (PPD) traverses the translation layer, translating one or more network protocol address attributes according to the data set; and

adjusting the first tenant's security policy to include the translated one or more network protocol address attributes such that, from a perspective of the given PPD, the packet and the adjusted security policy are then uniquely associated with the first tenant;

wherein the translation layer is a network address translation layer having two or more layers.

9. The apparatus as described in claim 8 wherein a first layer of the network address translation layer translates network protocol address source attributes, and a second layer of the network address translation layer translates network protocol address destination attributes.

10. The apparatus as described in claim 8 wherein the one or more network protocol address attributes are any networking attribute of any networking protocol that includes source and destination address parameters.

11. The apparatus as described in claim 8 wherein, with respect to a second packet that originates from the given packet processing device and that is destined for a second packet processing device, one or more network protocol address attributes in the second packet are translated using the data set to enable logical routing of the second packet to the second packet processing device.

12. The apparatus as described in claim 8 wherein the translation layer is positioned between a network infrastructure and the one or more packet processing devices.

13. The apparatus as described in claim 12 wherein the network infrastructure comprises a virtual environment.

14. The apparatus as described in claim 8 wherein a second tenant also has associated therewith a security policy, the first and second tenant security policies being distinct from one another and sharing a same source IP address prior to multi-tenant awareness being added, and further including adjusting the second tenant's security policy, wherein the adjusted security policy associated with the first tenant includes a first new source IP address, and an adjusted security policy associated with the second tenant includes a second new source IP address distinct from the first new source IP address.

15. A computer program product in a non-transitory computer readable medium for use in a data processing system, the computer program product holding computer program instructions which, when executed by the data processing system, add multi-tenant awareness to a set of one or more packet processing devices in a multi-tenant Software Defined Network (SDN) by:

maintaining a data set that, for each of one or more tenants, associates one or more network protocol address attributes with an Internet Protocol (IP) address unique to the tenant, wherein at least a first tenant also has associated therewith a security policy;

associating the data set with a translation layer configured for multi-layer SDN switching;

as a packet associated with the first tenant and being routed to a given packet processing device (PPD) traverses the translation layer, translating one or more network protocol address attributes according to the data set; and

adjusting the first tenant's security policy to include the translated one or more network protocol address attributes such that, from a perspective of the given PPD, the packet and the adjusted security policy are then uniquely associated with the first tenant;

wherein the translation layer is a network address translation layer having two or more layers.

16. The computer program product as described in claim 15 wherein a first layer of the network address translation layer translates network protocol address source attributes, and a second layer of the network address translation layer translates network protocol address destination attributes.

17. The computer program product as described in claim 15 wherein the one or more network protocol address attributes are any networking attribute of any networking protocol that includes source and destination address parameters.

18. The computer program product as described in claim 15 wherein, with respect to a second packet that originates from the given packet processing device and that is destined for a second packet processing device, one or more network protocol address attributes in the second packet are translated using the data set to enable logical routing of the second packet to the second packet processing device.

19. The computer program product as described in claim 15 wherein a second tenant also has associated therewith a security policy, the first and second tenant security policies being distinct from one another and sharing a same source IP address prior to multi-tenant awareness being added, and further including adjusting the second tenant's security policy, wherein the adjusted security policy associated with the first tenant includes a first new source IP address, and an adjusted security policy associated with the second tenant includes a second new source IP address distinct from the first new source IP address.

20. A networking system having a Software Defined Networking (SDN) controller that executes in a hardware processor, comprising:

a data store that stores a data set that, for each of one or more tenants, associates one or more network protocol address attributes with an Internet Protocol (IP) address unique to the tenant, wherein at least a first tenant also has associated therewith a security policy; and

a plug-in to the SDN controller, the plug-in executing in the hardware processor and being operative as data packets associated with the first tenant traverse an associated multi-layer SDN switching data plane to translate one or more network protocol address attributes according to the data set, and to adjust the first tenant's security policy to include the translated one or more network protocol address attributes such that the packets and the adjusted security policy are then uniquely associated with the first tenant;

wherein a first layer of the multi-layer SDN switching data plane translates network protocol address source attributes, and a second layer of the multi-layer SDN switching data plane translates network protocol address destination attributes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2015
From: WILLIAMS, RONALD BECKER; LEE, CHENG-TA; YUAN, LUN-PIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036173/0542 →
Continuity (1)
Related Publication 20170026283A1 · Jan 26, 2017
Cited By (2)
US 12,255,804 US 12,399,886