Scalable network function virtualization service
AssigneeAmazon Technologies, Inc.
InventorsReuben Alexander Hawkins, Nicholas Gene Kalteux, Stewart Allen, Harshit Vijayvargia, Christopher Thomas, Rajagopal Subramaniyan, Gregory Skoczek, Rashid Michael Aga
Life of this patent
Estimating the term…
Abstract
A network function virtualization service includes an action implementation layer and an action decisions layer. On a flow of network traffic received at the service, the action implementation layer performs a packet processing action determined at the action decisions layer.
Claims21
A method, comprising:
- performing, by one or more computing devices:
- obtaining, at an action implementation node running on a first host computing device of a multi-layered network function virtualization service, a first packet of a network flow;
- identifying, at the action implementation node, a first packet processing action to be applied to at least the first packet of the network flow, identifying comprising:
- performing a cache look up at a cache of the action implementation node to find the first packet processing action;
- and
- responsive to not finding the first packet processing action in the cache of the action implementation node:
- sending a request over a network to a second host computing device running decision making logic of a decisions layer of the multi-layered network function virtualization service, wherein the first packet processing action is determined at least in part using the decision making logic running on the second host computing device in the decisions layer of the multi-layered network function virtualization service, wherein at least a portion of the decision making logic is indicated via a programmatic interface by a client of the multi-layered network function virtualization service;
- and
- applying, by the action implementation node, the first packet processing action found in the cache or determined using the decision making logic, to at least the first packet of the network flow.
A system, comprising:
- a multi-layered network function virtualization service, wherein the multi-layered network function virtualization service includes:
- an action implementation layer executing on one or more computing devices and configured to:
- perform a cache look up in a cache of the action implementation node to find a packet processing action;
- and
- responsive to not finding the first packet processing action in the cache of the action implementation node, send a request over a network to an action decisions layer;
- and
- the action decisions layer executing on a different one or more computing devices, configured to:
- receive from a client of the multi-layered network function virtualization service via a programmatic interface, an indication of at least a portion of decision making logic;
- and
- responsive to receipt of the request at the different one or more computing devices from the action implementation layer, determine the packet processing action using the decision making logic executing on the different one or more computing devices,
- wherein the action implementation layer is configured to perform, on a flow of network traffic received at the multi-layered network function virtualization service, the packet processing action found at the action implementation layer or determined at the action decisions layer.
One or more non-transitory computer-readable storage media storing program instructions that when executed on or across one or more processors cause the one or more processors to perform:
- obtaining, at an action implementation node of a multi-layered network function virtualization service executing at a first computing device, a first packet of a network flow;
- identifying, at the action implementation node, a first packet processing action to be applied to at least the first packet of the network flow, identifying comprising:
- performing a cache look up at a cache of the action implementation node to find the first packet processing action;
- and
- responsive to not finding the first packet processing action in the cache of the action implementation node, sending a request over a network to a second computing device running decision making logic of a decisions layer of the multi-layered network function virtualization service,
- wherein the first packet processing action is determined at least in part using the decision making logic running in the decisions layer of the multi-layered network function virtualization service and executing at the second computing device, wherein at least a portion of the decision making logic is indicated via a programmatic interface by a client of the multi-layered network function virtualization service;
- and
- applying, by the action implementation node, the first packet processing action found at the action implementation node or determined by the decision making logic, to at least the first packet of the network flow.
Dependencies are inferred from the claim text.