Filtering network health information based on customer impact
US-2018091394-A1 · Mar 29, 2018 · US
US12160366B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12160366-B2 |
| Application number | US-202117218039-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 30, 2021 |
| Priority date | Mar 30, 2021 |
| Publication date | Dec 3, 2024 |
| Grant date | Dec 3, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A message indicating an auxiliary task associated with traffic transmitted via a virtual router between a pair of isolated networks is received at an offloading device. A stack multiplexer at the offloading device selects a protocol stack instance to process the message. A result of the auxiliary task is obtained by the multiplexer from the selected protocol stack instance and transmitted to the virtual router, where it is used to transmit a packet between the isolated networks.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: one or more computing devices; wherein the one or more computing devices include instructions that upon execution on or across the one or more computing devices cause the one or more computing devices to: execute, at an offloading device associated with a virtual router configured to transmit network packets between a first isolated network and a second isolated network, a plurality of protocol stack instances in user space configured to perform different types of auxiliary tasks associated with different types of network protocols, wherein the offloading device comprises one or more resources of a provider network; receive, at the offloading device, a message from the virtual router indicative of at least a portion of an auxiliary task associated with a network protocol, wherein the message includes an encapsulation packet prepared by the virtual router that encapsulates one or more packets formatted in the network protocol, and the encapsulation packet is prepared according to an encapsulation protocol that adds encapsulation packet metadata to the encapsulation packet; select, by a protocol stack multiplexer of the offloading device, a particular protocol stack instance from the plurality of protocol stack instances at the offloading device to process at least a portion of the message, wherein the protocol stack multiplexer is configured to access one or more direct memory access (DMA) buffers into which the message is placed by a network interface card, wherein the particular protocol stack instance is selected based at least in part on a networking protocol identifier indicated in the encapsulation packet metadata of the encapsulation packet; obtain, at the offloading device, a result of the auxiliary task from the particular protocol stack instance; cause, by the offloading device, the result to be transmitted from the offloading device to the virtual router; and utilize the result by the virtual router to transmit at least one network packet between the first isolated network and the second isolated network. 2. The system as recited in claim 1 , wherein the one or more computing devices include further instructions that upon execution on or across the one or more computing devices further cause the one or more computing devices to: cause state information pertaining to one or more auxiliary tasks including the auxiliary task to be stored at one or more storage devices external to the offloading device. 3. The system as recited in claim 1 , wherein the particular protocol stack instance comprises a processing engine for a version of one or more of: (a) the Border Gateway Protocol (BGP), (b) the Internet Group Management Protocol (IGMP), or (c) the Two-Way Active Measurement Protocol (TWAMP). 4. The system as recited in claim 1 , wherein the encapsulation packet metadata contained in the message comprises one or more of: (a) a virtual router identifier, (b) an identifier of a virtual network interface, (c) an identifier of a client of the provider network, or (d) an identifier of an isolated network of the first and second isolated networks. 5. The system as recited in claim 1 , wherein the one or more computing devices include further instructions that upon execution on or across the one or more computing devices further cause the one or more computing devices to: in response to receiving, at the offloading device, a first message indicating a particular Internet Protocol (IP) address as a destination, cause, by the protocol stack multiplexer, at least a portion of the first message to be processed at a first protocol stack instance of the plurality of protocol stack instances, wherein the first protocol stack instance is selected to process the portion of the first message based at least in part on metadata associated with the first message; and in response to receiving, at the offloading device, a second message indicating the particular Internet Protocol (IP) address as a destination, cause, by the protocol stack multiplexer, at least a portion of the second message to be processed at a second protocol stack instance of the plurality of protocol stack instances, wherein the second protocol stack instance is selected to process the portion of the second message based at least in part on metadata associated with the second message. 6. A computer-implemented method, comprising: executing, at an offloading device associated with a virtual router configured to transmit network packets between a first isolated network and a second isolated network, a plurality of protocol stack instances configured to perform different types of auxiliary tasks associated with different types of network protocols; receiving, at the offloading device, a message from the virtual router indicative of at least a portion of a first auxiliary task associated with a network protocol, wherein the message includes an encapsulation packet prepared by the virtual router that encapsulates one or more packets formatted in the network protocol, and the encapsulation packet is prepared according to an encapsulation protocol that adds encapsulation packet metadata to the encapsulation packet; selecting, by a protocol stack multiplexer of the offloading device, a particular protocol stack instance from the plurality of protocol stack instances running at the offloading device to process at least a portion of the message, wherein the particular protocol stack instance is selected based at least in part on a networking protocol identified by an analysis of the encapsulation packet metadata of the encapsulation packet; obtaining, at the offloading device, a result of the first auxiliary task from the particular protocol stack instance; causing, by the offloading device, the result to be transmitted from the offloading device to the first virtual router; and utilizing the result by the first virtual router to transmit at least one network packet between the first isolated network and the second isolated network. 7. The computer-implemented method as recited in claim 6 , further comprising: programmatically attaching the first isolated network and the second isolated network to the first virtual router in response to one or more programmatic requests from a first client of a provider network; programmatically attaching a third isolated network to a second virtual router on response to one or more programmatic requests from a second client of the provider network; and performing, at the particular protocol stack instance, at least a portion of a second auxiliary task associated with transmission of network packets between the third isolated network and one or more endpoints outside the third isolated network. 8. The computer-implemented method as recited in claim 6 , wherein the offloading device comprises a virtualization host of a virtualized computing service, and wherein the particular protocol stack instance comprises one or more threads running in user space at a compute instance launched at the virtualization host. 9. The computer-implemented method as recited in claim 6 , wherein the result of processing the message is obtained at the protocol stack multiplexer via a socket interface. 10. The computer-implemented method as recited in claim 6 , wherein the one or more protocol stack instances comprise another protocol stack instance, wherein the particular protocol stack instance implements at least a first transport layer protocol and a first application layer protocol, and wherein the other protocol stack instance implements at least the first transport layer protocol and the first application layer protocol. 11. The computer-implemented method as recited in claim 6 ,
Gateways (arrangements for connecting between networks having differing types of switching systems, e.g. gateways, H04L12/66) · CPC title
in the transport layer [OSI layer 4] (H04L69/16 takes precedence) · CPC title
Protocol engines · CPC title
Address processing for routing · CPC title
Definitions, standards or architectural aspects of layered protocol stacks · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.