System and method for improving internet communication by using intermediate nodes
US-12143461-B2 · Nov 12, 2024 · US
US9294415B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9294415-B2 |
| Application number | US-201514617904-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 9, 2015 |
| Priority date | Jan 4, 2013 |
| Publication date | Mar 22, 2016 |
| Grant date | Mar 22, 2016 |
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.
The disclosure describes a proxy server application that supports the dynamic modification of proxy rules implemented by a proxy server. The proxy rules implemented by the proxy server specify network behaviors to be performed at various points during the handling of requests from client applications. A proxy server implements the proxy rules by processing one or more user-generated network traffic filters for managing network traffic. In an embodiment, users generate network traffic filters by creating network traffic filter source code that specify processing steps to be performed by a proxy server relative to network messages the proxy server receives. In an embodiment, user-generated network traffic filters may be added, removed, reordered, or otherwise modified in a proxy server application at runtime in order to respond to current network conditions or to achieve other desired proxy configurations.
Opening claim text (preview).
What is claimed is: 1. A method comprising: in a proxy server that is configured to receive requests directed toward one or more origin servers and to distribute the requests to one or more of the origin servers for processing, loading, from a data repository, one or more first network traffic filters, wherein each of the first network traffic filters specifies processing criteria and one or more actions; without ending execution of the proxy server, loading and initiating operation of one or more second network traffic filters; determining whether a network message satisfies particular processing criteria of a particular network traffic filter; in response to determining that the network message satisfies the particular processing criteria, causing one or more particular actions of the particular network traffic filter to be performed; wherein the method is performed on one or more computing devices. 2. The method of claim 1 , further comprising, without ending execution of the proxy server, performing one or more of removing one or more of the first network traffic filters; reordering one or more of the first network traffic filters. 3. The method of claim 1 , wherein the one or more first network traffic filters comprise a first network traffic filter chain comprising one or more pre-processing network traffic filters that are configured to process the requests before the requests are distributed to the one or more of the origin servers. 4. The method of claim 1 , wherein the one or more first network traffic filters comprise a second network traffic filter chain comprising one or more dispatch network traffic filters that are configured to distribute the requests to the one or more of the origin servers. 5. The method of claim 1 , wherein the one or more first network traffic filters comprise a third network traffic filter chain comprising one or more post-processing network traffic filters that are configured to process responses returned by the one or more of the origin servers before the response is sent to a requesting client. 6. The method of claim 3 , wherein the one or more first network traffic filters further comprise one or more of a fourth network traffic filter chain comprising one or more static network traffic filters that are configured to process requests and return response messages without distributing the requests to the one or more of the origin servers. 7. The method of claim 3 , wherein the one or more first network traffic filters further comprise a fifth network traffic filter chain comprising one or more error network traffic filters that are configured to process errors generated by one or more other network traffic filters. 8. The method of claim 1 , wherein the one or more particular actions include one or more of: validating the network message, authenticating the network message, modifying the network message, caching the network message, storing information associated with the network message, sending the network message to one or more second network elements, causing the sending or delivery of the network message to be delayed, modifying application behavior, replying to the network message. 9. The method of claim 1 , wherein the determining whether the network message satisfies the particular processing criteria includes examining one or more of: a header associated with the network message, a message body associated with the network message, contextual data generated by one or more of the first network traffic filters and second network traffic filters. 10. The method of claim 1 , wherein the determining whether the network message satisfies the particular processing specified criteria includes determining one or more of: a type of device that generated the network message, a network address associated with the network message, a geographic location associated with a client generating the network message, a user associated with the network message, a resource requested by the network message. 11. A non-transitory computer-readable data storage medium storing one or more sequences of instructions which when executed cause one or more processors to perform, in a proxy server that is configured to receive requests directed toward one or more origin servers and to distribute the requests to one or more of the origin servers for processing: loading, from a data repository, one or more first network traffic filters, wherein each of the first network traffic filters specifies processing criteria and one or more actions; without ending execution of the proxy server, loading and initiating operation of one or more second network traffic filters; determining whether a network message satisfies particular processing criteria of a particular network traffic filter; in response to determining that the network message satisfies the particular processing criteria, causing one or more particular actions of the particular network traffic filter to be performed. 12. The non-transitory computer-readable data storage medium of claim 11 , further comprising sequences of instructions which when executed cause, without ending execution of the proxy server, performing one or more of removing one or more of the first network traffic filters; reordering one or more of the first network traffic filters. 13. The non-transitory computer-readable data storage medium of claim 11 , wherein the one or more first network traffic filters comprise a first network traffic filter chain comprising one or more pre-processing network traffic filters that are configured to process the requests before the requests are distributed to the one or more of the origin servers. 14. The non-transitory computer-readable data storage medium of claim 11 , wherein the one or more first network traffic filters comprise a second network traffic filter chain comprising one or more dispatch network traffic filters that are configured to distribute the requests to the one or more of the origin servers. 15. The non-transitory computer-readable data storage medium of claim 11 , wherein the one or more first network traffic filters comprise a third network traffic filter chain comprising one or more post-processing network traffic filters that are configured to process responses returned by the one or more of the origin servers before the response is sent to a requesting client. 16. The non-transitory computer-readable data storage medium of claim 13 , wherein the one or more first network traffic filters further comprise one or more of a fourth network traffic filter chain comprising one or more static network traffic filters that are configured to process requests and return response messages without distributing the requests to the one or more of the origin servers. 17. The non-transitory computer-readable data storage medium of claim 13 , wherein the one or more first network traffic filters further comprise a fifth network traffic filter chain comprising one or more error network traffic filters that are configured to process errors generated by one or more other network traffic filters. 18. The non-transitory computer-readable data storage medium of claim 11 , wherein the one or more particular actions include one or more of: validating the network message, authenticating the network message, modifying the network message, caching the network message, storing information associated with the network message, sending the network message to one or more second network elements, causing the sending or delivery of the network message to be delayed, modifying application behavior, replying t
Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70) · CPC title
Actions related to the user profile or the type of traffic · CPC title
Electricity · mapped topic
Electricity · mapped topic
Provisioning of proxy services (store-and-forward switching systems in data switching networks H04L12/54) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.