Extending routing rules from external services
First Claim
1. A computer-implemented method to control network flow disposition in a multi-tenant environment, the computer-implemented method comprising:
- receiving, from a first of a plurality of applications external to a software-defined networking (SDN)-enabled network, a request to modify a specified rule of a plurality of rules enforced by at least one network element of the SDN-enabled network, wherein each of the plurality of rules is modifiable by request from a respective one of the plurality of applications and governs disposition of a respective network flow specific to the respective application in the multi-tenant environment, the at least one network element having a presentation layer, a network abstraction layer, and a service implementation layer, the presentation layer providing a software development kit (SDK) associated with a predefined application programming interface (API);
marshalling the request by the SDK, wherein the marshalled request is transmitted via a predefined communications channel of the at least one network element, the predefined communications channel configured to expose the API to the first application;
un-marshalling the transmitted request upon receipt;
interpreting the un-marshalled request at the network abstraction layer of the at least one network element;
converting the interpreted request into one or more commands at the service implementation layer of the at least one network element; and
executing the one or more commands by operation of one or more computer processors, in order to modify the specified rule enforced by the at least one network element, responsive to the request from the first application external to the SDN-enabled network.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are disclosed to extend routing rules from external services. A request is received to modify a specified rule in a network element of a network. The specified rule governs disposition of a network flow specific to an application. The request is received via a communications channel configured to expose an application programming interface (API) to the application. The request is interpreted at a network abstraction layer of the network element. The request is converted into a command at a service implementation layer of the network element. The command is executed to modify the specified rule in the network element, responsive to the request.
26 Citations
20 Claims
-
1. A computer-implemented method to control network flow disposition in a multi-tenant environment, the computer-implemented method comprising:
-
receiving, from a first of a plurality of applications external to a software-defined networking (SDN)-enabled network, a request to modify a specified rule of a plurality of rules enforced by at least one network element of the SDN-enabled network, wherein each of the plurality of rules is modifiable by request from a respective one of the plurality of applications and governs disposition of a respective network flow specific to the respective application in the multi-tenant environment, the at least one network element having a presentation layer, a network abstraction layer, and a service implementation layer, the presentation layer providing a software development kit (SDK) associated with a predefined application programming interface (API); marshalling the request by the SDK, wherein the marshalled request is transmitted via a predefined communications channel of the at least one network element, the predefined communications channel configured to expose the API to the first application; un-marshalling the transmitted request upon receipt; interpreting the un-marshalled request at the network abstraction layer of the at least one network element; converting the interpreted request into one or more commands at the service implementation layer of the at least one network element; and executing the one or more commands by operation of one or more computer processors, in order to modify the specified rule enforced by the at least one network element, responsive to the request from the first application external to the SDN-enabled network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer readable medium containing a program which, when executed, performs an operation to control network flow disposition in a multi-tenant environment, the operation comprising:
-
receiving, from a first of a plurality of applications external to a software-defined networking (SDN)-enabled network, a request to modify a specified rule of a plurality of rules enforced by at least one network element of the SDN-enabled network, wherein each of the plurality of rules is modifiable by request from a respective one of the plurality of applications and governs disposition of a respective network flow specific to the respective application in the multi-tenant environment, the at least one network element having a presentation layer, a network abstraction layer, and a service implementation layer, the presentation layer providing a software development kit (SDK) associated with a predefined application programming interface (API); marshalling the request by the SDK, wherein the marshalled request is transmitted via a predefined communications channel of the at least one network element, the predefined communications channel configured to expose the API to the first application; un-marshalling the transmitted request upon receipt; interpreting the un-marshalled request at the network abstraction layer of the at least one network element; converting the interpreted request into one or more commands at the service implementation layer of the at least one network element; and executing the one or more commands by operation of one or more computer processors when executing the program, in order to modify the specified rule enforced by the at least one network element, responsive to the request from the first application external to the SDN-enabled network. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A system to control network flow disposition in a multi-tenant environment, the system comprising:
-
one or more computer processors; a memory containing a program which, when executed by the one or more computer processors, performs an operation comprising; receiving, from a first of a plurality of applications external to a software-defined networking (SDN)-enabled network, a request to modify a specified rule of a plurality of rules enforced by at least one network element of the SDN-enabled network, wherein each of the plurality of rules is modifiable by request from a respective one of the plurality of applications and governs disposition of a respective network flow specific to the respective application in the multi-tenant environment, the at least one network element having a presentation layer, a network abstraction layer, and a service implementation layer, the presentation layer providing a software development kit (SDK) associated with a predefined application programming interface (API); marshalling the request by the SDK, wherein the marshalled request is transmitted via a predefined communications channel of the at least one network element, the predefined communications channel configured to expose the API to the first application; un-marshalling the transmitted request upon receipt; interpreting the un-marshalled request at the network abstraction layer of the at least one network element; converting the interpreted request into one or more commands at the service implementation layer of the at least one network element; and executing the one or more commands;
in order to modify the specified rule enforced by the at least one network element, responsive to the request from the first application external to the SDN-enabled network. - View Dependent Claims (17, 18, 19, 20)
-
Specification