Network flow management for isolated virtual networks
AssigneeAmazon Technologies, Inc.
InventorColm MacCarthaigh
Life of this patent
Estimating the term…
Abstract
A network address assigned to a virtual network interface of a packet transformation node of a flow management service is identified. A packet of a particular network flow associated with an application implemented at an isolated virtual network is sent to the network address. Using a rewrite directive generated at a rewriting decisions node of the service and cached at the packet transformation node, a transformed packet corresponding to a packet received at the packet transformation node is generated and transmitted to a destination.
Claims20
One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors implement a client-side component of a flow management service, wherein the client-side component is configured to:
- maintain a cache comprising a plurality of rewriting directives to transform packets in accordance with a plurality of different packet processing requirements;
- identify a particular packet of a network flow to be transformed in accordance with a packet processing requirement received at the flow management service from an application different from the client-side component, wherein the application is implemented at least in part at an isolated virtual network at which the client-side component is also implemented, wherein the network flow has been previously established, and wherein the cache does not include a rewriting directive generated for the network flow to transform packets in accordance with the packet processing requirement received from the application;
- obtain, from a rewriting decisions tier of the flow management service different from the client-side component, a particular rewriting directive applicable to the network flow;
- store the obtained particular rewriting directive in the cache;
- and
- obtain the stored particular rewriting directive from the cache to generate a transformed packet corresponding to a different packet of the network flow.
A method, comprising:
- maintaining a cache comprising a plurality of rewriting directives to transform packets in accordance with a plurality of different packet processing requirements;
- identifying, at a client-side component of a packet transformation tier, a particular packet of a network flow to be transformed in accordance with a packet processing requirement received at the flow management service from an application different from the client-side component, wherein the application is implemented at least in part at an isolated virtual network at which the client-side component is also implemented, wherein the network flow has been previously established, and wherein the cache does not include a rewriting directive generated for the network flow to transform packets in accordance with the packet processing requirement received from the application;
- obtaining, from a rewriting decisions tier of the flow management service different from the client-side component, a particular rewriting directive applicable to the network flow;
- storing the obtained particular rewriting directive in the cache;
- and
- obtaining the stored particular rewriting directive from the cache to generate a transformed packet corresponding to a different packet of the network flow.
A system, comprising:
- one or more computing devices, respectively comprising at least one processor and memory, implementing a multi-tier network flow management service comprising a packet transformation tier and a rewriting decisions tier;
- and
- a computing device, comprising at least one processor and memory, implementing a client-side component of the packet transformation tier configured to:
- maintain a cache comprising a plurality of rewriting directives to transform packets in accordance with a plurality of different packet processing requirements;
- identify a particular packet of a network flow to be transformed in accordance with a packet processing requirement received at the flow management service from an application different from the client-side component, wherein the application is implemented at least in part at an isolated virtual network at which the client-side component is also implemented, wherein the network flow has been previously established, and wherein the cache does not include a rewriting directive generated for the network flow to transform packets in accordance with the packet processing requirement received from the application;
- obtain, detecting from a rewriting decisions tier of the flow management service different from the client-side component, a particular rewriting directive applicable to the network flow;
- store the obtained particular rewriting directive in the cache;
- and
- obtain the stored particular rewriting directive from the cache to generate a different transformed packet corresponding to a different packet of the network flow.
Dependencies are inferred from the claim text.