IP Library Granted Patent US 10,291,553
Granted Patent B2
US 10,291,553 · App. 14/270,716 · Granted May 14, 2019

Logical switch architecture for network virtualization

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,291,553
App. No.
14/270,716
Granted
May 14, 2019
Kind
B2
Abstract

A tool for partitioning a switch into one or more logical switches in a distributed system. The tool creates, by one or more computer processors, one or more logical switch routers, based, at least in part, on a user configuration. The tool assigns, by one or more computer processors, based, at least in part, on a user configuration, one or more ports to the one or more logical switch routers. The tool manages, by one or more computer processors, the one or more logical switch routers.

Claims (114)

1. A computer system with a logical switch architecture for network virtualization, the computer system comprising:

one or more computer processors;

one or more computer readable storage media;

program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising;

a software module configured to manage a default logical switch router in the logical switch architecture;

a software module configured to duplicate the logical switch architecture on a non-default logical switch router, including:

receiving, at the default logical switch router, a request to create a non-default logical switch router, the request containing configuration details including a create command, a name for the non-default logical switch router, and one or more resource management policies;

creating the non-default logical switch router, including:

determining, by the default logical switch router, a MAC address for the non-default logical switch router,

setting up a logical switch router environment for the non-default logical switch router, utilizing the configuration details,

setting up a default network namespace for the non-default logical switch router,

setting up a net device for the non-default logical switch router,

creating a copy of configuration files for a launch service manager of the non-default logical switch router,

initiating the launch service manager of the non-default logical switch router, and

launching all software components of the non-default logical switch router, utilizing the launch service manager of the non-default logical switch router;

a software module configured to coordinate ownership of one or more physical ports and one or more virtual ports to the default logical switch router and the non-default logical switch router within the logical switch architecture, wherein each of the one or more physical ports individually do not belong to more than one logical switch router at any given time, wherein each of the one or more virtual ports individually do not belong to more than one logical switch router at any given time, and wherein the one or more physical ports are individually assigned to the default logical switch router until assigned to the non-default logical switch router; and

a software module configured to coordinate resources across the default logical switch router and the non-default logical switch router within the logical switch architecture.

2. The computer system of claim 1 , wherein the software module that is configured to manage the default logical switch router in the logical switch architecture is further configured to:

interface with a software module configured to receive one or more user requests, the one or more user requests comprising:

the request to create the non-default logical switch router;

a user request to assign at least one of the one or more physical ports;

a user request to assign at least one of the one or more virtual ports; and

a user request to delete the non-default logical switch router.

3. The computer system of claim 1 , wherein the software module that is configured to manage the default logical switch router in the logical switch architecture is further configured to:

prevent direct communications between any two logical switch routers via a data plane on a same switch in a network of switches;

interface with the software module configured to duplicate the logical switch architecture on the one or more switches in the network of switches; and

save user configurations on a per logical switch router basis in separate files accessible to the default logical switch router.

4. The computer system of claim 1 , wherein

the default logical switch router comprises a universal arbitrated fiber port configured to communicate with and connect to the one or more physical ports.

5. The computer system of claim 1 , wherein the software module configured to coordinate ownership of the one or more physical ports and the one or more virtual ports to the default logical switch router and the non-default logical switch router within the logical switch architecture is further configured to interface with one or more software modules within the logical switch architecture to manage assignment of the one or more physical ports and the one or more virtual ports to the non-default logical switch router within the logical switch architecture.

6. The computer system of claim 1 , wherein the software module configured to coordinate resources across the default logical switch router and the non-default logical switch router within the logical switch architecture is further configured to:

manage a plurality of hardware resource policies and a resource assignment status; and

manage index assignment for hardware resources of one or more switches in a network of switches.

7. A method for partitioning a switch into one or more logical switches in a distributed system, the method comprising:

receiving, at a default logical switch router, a request to create a non-default logical switch router, the request containing configuration details including a create command, a name for the non-default logical switch router, and one or more resource management policies;

creating, by one or more computer processors, a non-default logical switch router, including:

determining, by the default logical switch router, a MAC address for the non-default logical switch router,

setting up a logical switch router environment for the non-default logical switch router, utilizing the configuration details,

setting up a default network namespace for the non-default logical switch router,

setting up a net device for the non-default logical switch router,

creating a copy of configuration files for a launch service manager of the non-default logical switch router,

initiating the launch service manager of the non-default logical switch router, and

launching all software components of the non-default logical switch router, utilizing the launch service manager of the non-default logical switch router;

receiving a request to assign a physical port from the default logical switch router to the non-default logical switch router;

assigning, by the one or more computer processors, the physical port from the default logical switch router to the non-default logical switch router,

wherein the physical port does not belong to more than one logical switch router at any given time, and wherein the physical port is individually assigned to the default logical switch router until assigned to the non-default logical switch router; and

managing, by the one or more computer processors, the default logical switch router and the non-default logical switch router.

8. The method of claim 7 , wherein assigning, by the one or more computer processors, the physical port from the default logical switch router to the non-default logical switch router includes:

sending the request to assign the physical port to the default logical switch router,

sending an assignment message from the default logical switch router to a port manager,

sending a port-down message from the port manager to an interface manager of the default logical switch router,

sending an interface-down message from the interface manager of the default logical switch router to all applications within the default logical switch router,

sending an interface-admin-down message from the default logical switch router to an interface agent,

turning off, by the interface agent, a link on the physical port in hardware,

sending a port down acknowledgement from the default logical switch router to a port manager,

sending a port delete message from the port manager to the interface manager of the default logical switch router,

sending an interface-delete message from the interface manager of the default logical switch router to all applications within the default logical switch router, as well as the interface agent,

deleting, by the interface agent, an interface for the physical port,

sending a port-create message from the port manager to an interface manager of the non-default logical switch router,

sending an interface-create message from the interface manager of the non-default logical switch router to all applications within the non-default logical switch router, as well as the interface agent,

creating, by the interface agent, the interface for the physical port,

creating and configuring, by all applications within the non-default logical switch router, the interface for the physical port, and

turning on, by the interface agent, the link on the physical port in hardware.

9. The method of claim 7 , wherein creating the non-default logical switch router further comprises:

determining, by the one or more computer processors, a default network for the non-default logical switch router; and

copying, by the one or more computer processors, one or more configuration files for the non-default logical switch router to a software module configured to manage the non-default logical switch router in the distributed system.

10. The method of claim 7 , further comprising preventing direct communications via a data plane between any two logical switch routers that are created on a same switch.

11. The method of claim 7 , wherein creating the non-default logical switch router further comprises:

upon receiving a request to start a distributed process, sending a request to the non-default logical switch router to launch the distributed process.

12. The method of claim 7 , wherein the request to assign the physical port includes one or more resources to assign selected from a group comprising:

one or more ports to assign; and

the non-default logical switch router to assign to the one or more ports.

13. The method of claim 7 , wherein assigning the physical port to the non-default logical switch router further comprises sending, by the one or more computer processors, messages to one or more software modules responsible for assigning the physical port to the non-default logical switch router, the one or more software modules responsible for assigning the physical port being located on the default logical switch router.

14. A computer program product for partitioning a switch into one or more logical switches in a distributed system, the computer program product comprising:

one or more non-transitory computer-readable storage media having program instructions stored therewith, the program instructions being executable by one or more computer processors to cause the one or more computer processors to:

receive, at a default logical switch router, a request to create a non-default logical switch router, the request containing configuration details including a create command, a name for the non-default logical switch router, and one or more resource management policies;

create, by the one or more computer processors, the non-default logical switch router, including:

determining, by the default logical switch router, a MAC address for the non-default logical switch router,

setting up a logical switch router environment for the non-default logical switch router, utilizing the configuration details,

setting up a default network namespace for the non-default logical switch router,

setting up a net device for the non-default logical switch router,

creating a copy of configuration files for a launch service manager of the non-default logical switch router,

initiating the launch service manager of the non-default logical switch router, and

launching all software components of the non-default logical switch router, utilizing the launch service manager of the non-default logical switch router;

receiving a request to assign a physical port from the default logical switch router to the non-default logical switch router;

receive a request to assign a physical port from the default logical switch router to the non-default logical switch router;

assign, by the one or more computer processors the physical port from the default logical switch router to the non-default logical switch router, wherein the physical port does not belong to more than one logical switch router at any given time, and wherein the physical port is assigned to the default logical switch router until assigned to one of non-default logical switch router; and

manage, by the one or more computer processors, the non-default logical switch router.

15. The computer program product of claim 14 , wherein assigning, by the one or more computer processors, the physical port from the default logical switch router to the non-default logical switch router includes:

sending the request to assign the physical port to the default logical switch router,

sending an assignment message from the default logical switch router to a port manager,

sending a port-down message from the port manager to an interface manager of the default logical switch router,

sending an interface-down message from the interface manager of the default logical switch router to all applications within the default logical switch router,

sending an interface-admin-down message from the default logical switch router to an interface agent,

turning off, by the interface agent, a link on the physical port in hardware,

sending a port down acknowledgement from the default logical switch router to a port manager,

sending a port delete message from the port manager to the interface manager of the default logical switch router,

sending an interface-delete message from the interface manager of the default logical switch router to all applications within the default logical switch router, as well as the interface agent,

deleting, by the interface agent, an interface for the physical port,

sending a port-create message from the port manager to an interface manager of the non-default logical switch router,

sending an interface-create message from the interface manager of the non-default logical switch router to all applications within the non-default logical switch router, as well as the interface agent,

creating, by the interface agent, the interface for the physical port,

creating and configuring, by all applications within the non-default logical switch router, the interface for the physical port, and

turning on, by the interface agent, the link on the physical port in hardware.

16. The computer program product of claim 14 , wherein the program instructions executable by the one or more computer processors to create the non-default logical switch router further causes the one or more computer processors to:

determine, by the one or more computer processors, a default network for the non-default logical switch router; and

copy, by the one or more computer processors, one or more configuration files for the non-default logical switch router to a software module configured to manage the non-default logical switch router in the distributed system.

17. The computer program product of claim 14 , wherein the program instructions executable by the one or more computer processors to manage the non-default logical switch router further causes the one or more computer processors to prevent, by the one or more computer processors, direct communications via a data plane between any two non-default logical switch routers that are created on a same switch.

18. The computer program product claim 14 , wherein the program instructions executable by the one or more computer processors to create the non-default logical switch router further causes the one or more computer processors to:

upon receiving a request to start a distributed process, send, by the one or more computer processors, a request to the non-default logical switch router to launch the distributed process.

19. The computer program product of claim 14 , wherein the program instructions executable by the one or more computer processors to assign the request to assign the physical port includes one or more resources to assign selected from a group comprising:

one or more ports to assign; and

the non-default logical switch router to assign to the one or more ports.

20. The computer program product of claim 14 , wherein the program instructions executable by the one or more computer processors to assign the physical port to the non-default logical switch router further causes the one or more computer processors to send, by the one or more computer processors, messages to one or more software modules responsible for assigning the physical port to the non-default logical switch router, the one or more software modules responsible for assigning the physical port being located on the default logical switch router.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LIMITED
To: LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069869/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2019
From: LENOVO (SINGAPORE) PTE LTD
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 051024/0514 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0353 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2014
From: CHIPPA, ASHOK N.; GARG, VIPIN K.; LEU, DAR-REN; PANDEY, VIJOY A.; SINGH, DALJEET; SPIEGEL, ETHAN M.; ZAGST, ROBERT E., JR.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 032830/0923 →