Logical router with multiple routing components
AssigneeNicira, Inc.
InventorsRonghua Zhang, Ganesan Chandrashekhar, Sreeram Ravinoothala, Kai-Wei Fan
Life of this patent
Estimating the term…
Abstract
Some embodiments provide a method for implementing a logical router in a network. The method receives a definition of a logical router for implementation on a set of network elements. The method defines several routing components for the logical router. Each of the defined routing components includes a separate set of routes and separate set of logical interfaces. The method implements the several routing components in the network. In some embodiments, the several routing components include one distributed routing component and several centralized routing components.
Claims25
A method for implementing a logical router in a network, the method comprising:
- at a set of network controllers, receiving a definition of a logical router for implementation by a set of network elements, the definition of the logical router comprising specification of a plurality of interfaces for connecting with an external network;
- defining a plurality of routing components for the logical router, each of the defined routing components comprising a separate set of routes and separate set of logical interfaces, wherein defining the plurality of routing components comprises:
- assigning a first one of the plurality of interfaces to a first gateway machine and a second one of the plurality of interfaces to a second gateway machine;
- defining a first centralized routing component for implementation on the first gateway machine by defining (i) a first interface for the first centralized routing component using configuration details of the first interface assigned to the first gateway machine and (ii) a second interface for the first centralized routing component used to communicate with a distributed routing component;
- and
- defining a second centralized routing component for implementation on the second gateway machine by defining (i) a first interface for the second centralized routing component using configuration details of the second interface assigned to the second gateway machine and (ii) a second interface for the second centralized routing component used to communicate with the distributed routing component;
- and
- generating data for configuring the set of network elements to implement the plurality of routing components of the logical router in the network.
A non-transitory machine readable medium storing a network controller program which when executed by at least one processing unit implements a logical router in a network, the program comprising sets of instructions for:
- at the network controller, receiving a definition of a logical router for implementation by a set of network elements, the definition of the logical router comprising specification of a plurality of interfaces for connecting with an external network;
- defining a plurality of routing components for the logical router, each of the defined routing components comprising a separate set of routes and separate set of logical interfaces, wherein defining the plurality of routing components comprises:
- assigning a first one of the plurality of interfaces to a first gateway machine and a second one of the plurality of interfaces to a second gateway machine;
- defining a first centralized routing component for implementation on the first gateway machine by defining (i) a first interface for the first centralized routing component using configuration details of the first interface assigned to the first gateway machine and (ii) a second interface for the first centralized routing component used to communicate with a distributed routing component;
- and
- defining a second centralized routing component for implementation on the second gateway machine by defining (i) a first interface for the second centralized routing component using configuration details of the second interface assigned to the second gateway machine and (ii) a second interface for the second centralized routing component used to communicate with the distributed routing component;
- and
- generating data for configuring the set of network elements to implement the plurality of routing components of the logical router in the network.
Dependencies are inferred from the claim text.