System and method to process a chain of network applications
First Claim
Patent Images
1. A network controller, comprising:
- a fast path module for processing data packets, the fast path module stored in memory at the network controller and executed by at least one processor, wherein the fast path module;
receives a service request data packet from a client side session between a client and the network controller;
determines that the service request data packet matches a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications, the plurality of network applications residing on the network controller;
sends the service request data packet to a first indicated network application of the plurality of network applications for processing;
sends a session context to the first indicated network application, the session context including an entry of a session table and an indication for the first indicated network application to process the service request data, the entry including the session context being pre-stored in the fast path module;
receives a modified service request data packet and a modified session context back from the first indicated network application after processing;
sends the modified service request data packet and the modified session context to a second indicated network application of the plurality of network applications for processing based on the network application chain order,sends the modified session context to the second indicated network application, the modified session context further including an indication for the second indicated network application to process the service request data packet;
receives a further modified service request data packet and a further modified session context back from the second indicated network application;
sends the further modified service request data packet to a server;
receives a data packet from a server side session between a server and the network controller;
determines that the data packet matches the network application chain order;
sends the data packet to the second indicated network application;
receives the data packet back from the second indicated network application;
sends the data packet to the first indicated network application;
receives the data packet back from the first indicated network application; and
sends the data packet to the client.
1 Assignment
0 Petitions
Accused Products
Abstract
Facilitation of processing a chain of network applications by a network controller is provided herein. In some examples, a network controller comprising a fast path module receives a service request data packet from a client side session between a client and the network controller and determines that the service request data packet matches a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications. The fast path module processes the service request data packet according to the configuration indicated in the network application chain order.
302 Citations
24 Claims
-
1. A network controller, comprising:
- a fast path module for processing data packets, the fast path module stored in memory at the network controller and executed by at least one processor, wherein the fast path module;
receives a service request data packet from a client side session between a client and the network controller; determines that the service request data packet matches a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications, the plurality of network applications residing on the network controller; sends the service request data packet to a first indicated network application of the plurality of network applications for processing; sends a session context to the first indicated network application, the session context including an entry of a session table and an indication for the first indicated network application to process the service request data, the entry including the session context being pre-stored in the fast path module; receives a modified service request data packet and a modified session context back from the first indicated network application after processing; sends the modified service request data packet and the modified session context to a second indicated network application of the plurality of network applications for processing based on the network application chain order, sends the modified session context to the second indicated network application, the modified session context further including an indication for the second indicated network application to process the service request data packet; receives a further modified service request data packet and a further modified session context back from the second indicated network application; sends the further modified service request data packet to a server; receives a data packet from a server side session between a server and the network controller; determines that the data packet matches the network application chain order; sends the data packet to the second indicated network application; receives the data packet back from the second indicated network application; sends the data packet to the first indicated network application; receives the data packet back from the first indicated network application; and sends the data packet to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
- a fast path module for processing data packets, the fast path module stored in memory at the network controller and executed by at least one processor, wherein the fast path module;
-
11. A method for processing a chain of network applications by a network controller implemented by a processor, comprising:
-
receiving, by a fast path module of the network controller implemented by the processor, a service request data packet from a client side session between a client and the network controller; determining that the service request data packet matches a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications, the plurality of network applications residing on the network controller; sending, by the fast path module, the service request data packet to a first indicated network application of the plurality of network applications for processing; sending, by the fast path module, a session context to the first indicated network application, the session context including an entry of a session table and an indication for the first indicated network application to process the service request data, the entry including the session context being pre-stored in the fast path module; receiving a modified service request data packet and a modified session context back from the first indicated network application after processing; sending, by the fast path module, the modified service request data packet and the modified session context to a second indicated network application of the plurality of network applications for processing based on the network application chain order; sending, by the fast path module, the modified session context to the second indicated network application, the modified session context further including an indication for the second indicated network application to process the service request data packet; receiving a further modified service request data packet and a further modified session context back from the second indicated network application; sending the service request data packet to a server; receiving, by a fast path module of the network controller implemented by the processor, a data packet from a server side session between a server and the network controller; determining that the data packet matches the network application chain order; sending the data packet to the second indicated network application; receiving the data packet back from the second indicated network application; sending the data packet to the first indicated network application; receiving the data packet back from the first indicated network application; and sending the data packet to the client. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A network controller, comprising:
-
a fast path module for processing data packets, the fast path module stored in memory at the network controller and executed by at least one processor, wherein the fast path module; receives a service request data packet from a client side session between a client and the network controller; determines if at least one network address of the service request data packet matches a session context in a session table; based on the determining there is no match, determines that the at least one network address of the service request data packet matches a service entry in a service table, the service table comprising an indication to apply a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications, the plurality of network applications residing on the network controller; creates a session context to store the service request data packet, the service request data packet comprising an association of the service request data packet to the network application chain order; sends the service request data packet and the session context to a first indicated network application of the plurality of network applications for processing; sends the session context to the first indicated network application, the session context including an entry of the session table and an indication for the first indicated network application to process the service request data, the entry including the session context being pre-stored in the fast path module; receives a modified service request data packet and a modified session context modified by the first indicated network application after processing; sends the modified service request data packet and the modified session context to a second indicated network application of the plurality of network applications for processing based on the network application chain order; sending, by the fast path module, the modified session context and the modified service request data packet to the second indicated network application, the modified session context including an indication for the second indicated network application to process the modified service request data packet; receives a further modified service request data packet and a further modified session context further modified by the second indicated network application; receives a data packet from a server side session between a server and the network controller; matches at least one network address of the data packet to a session context in the session table, the session context associated with the network application chain order; sends the data packet and the session context to the first indicated network application; receives the data packet and the session context modified by the first indicated network application; sends the modified data packet and modified session context to the second indicated network application; receives the modified data packet and modified session context further modified by the second indicated network application; determines no other network applications are to be applied; and sends the modified data packet to the client. - View Dependent Claims (22)
-
-
23. A method for processing a chain of network applications by a network controller implemented by a processor, comprising:
-
receiving, by a fast path module of the network controller implemented by the processor, a service request data packet from a client side session between a client and the network controller; determining if at least one network address of the service request data packet matches a session context in a session table; based on the determining there is no match, determining that the at least one network address of the service request data packet matches a service entry in a service table, the service table comprising an indication to apply a network application chain order, the network application chain order indicating a configuration to apply a plurality of network applications, the plurality of network applications residing on the network controller; creating a session context to store the service request data packet, the service request data packet comprising an association of the service request data packet to the network application chain order; sending the service request data packet and the session context to a first indicated network application of the plurality of network applications for processing; sending the session context to the first indicated network application, the session context including an entry of the session table and an indication for the first indicated network application to process the service request data, the entry including the session context being pre-stored in the fast path module; receiving a modified service request data packet and a modified session context modified by the first indicated network application after processing; sending the modified service request data, packet and the modified session context to a second indicated network application of the plurality of network applications for processing based on the network application chain order; sending a modified session context and the modified service request data packet to the second indicated network application, the modified session context including an indication for the second indicated network application to process the modified service request data packet; receiving a further modified service request data packet and a further modified session context further modified by the second indicated network application; receiving a data packet from a server side session between a server and the network controller; matching at least one network address of the data packet to a session context in the session table, the session context associated with the network application chain order; sending the data packet and the session context to the first indicated network application; receiving the data packet and the session context modified by the first indicated network application; sending the modified data packet and modified session context to the second indicated network application; receiving the modified data packet and modified session context further modified by the second indicated network application; determining no other network applications are to be applied; and sending the modified data packet to the client. - View Dependent Claims (24)
-
Specification