Network integrated dynamic resource routing

US9363327B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9363327-B2
Application numberUS-201113161077-A
CountryUS
Kind codeB2
Filing dateJun 15, 2011
Priority dateJun 15, 2011
Publication dateJun 7, 2016
Grant dateJun 7, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A device receives, from a client device, a request for a resource, and determines, based on information provided in the request, whether to terminate a connection for the request at the device. The device forwards the request to a network when the connection is not terminated at the device, and selects a target device for the resource when the connection is terminated at the device. The device also provides the request to the selected target device, receives the resource from the selected target device, and provides the resource to the client device.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, by a computing device and from a particular network device, a particular quantity of resources, the particular quantity of resources, received from the particular network device, being greater than a threshold quantity of resources, resources, of the particular quantity of resources received from the particular network device, including video data, audio data, image data, or text; storing, by the computing device and in a data structure, information identifying the particular network device based on the particular quantity of resources being greater than the threshold quantity of resources; receiving, by the computing device and from a client device, a request for a resource; determining, by the computing device, that the client device is requesting the resource from the particular network device based on information provided in the request and the data structure; terminating, by the computing device, a connection for the request at the computing device based on: the information identifying the particular network device that is stored in the data structure based on the particular quantity of resources being greater than the threshold quantity of resources, and the client device requesting the resource from the particular network device; selecting, by the computing device, a target device for the resource based on terminating the connection at the computing device, the target device being selected based on one or more conditions of a network associated with the computing device, the one or more conditions including one or more of a bandwidth of the network or a load on the network; providing, by the computing device, the request to the selected target device; receiving, by the computing device, the resource from the selected target device; and providing, by the computing device, the resource to the client device. 2. The method of claim 1 , where determining that the client device is requesting the resource from the particular network device includes: extracting at least one of: a destination Internet protocol (IP) address from the request, an IP address of the client device from the request, or information identifying a destination port associated with the request; and determining, based on the at least one of the destination IP address, the IP address of the client device, or the destination port, that the client device is requesting the resource from the particular network device. 3. The method of claim 1 , where selecting the target device for the resource comprises: determining whether the resource is stored in a local cache provided in the computing device; and selecting the local cache as the target device when the resource is stored in the local cache. 4. The method of claim 3 , where, when the resource is not stored in the local cache, selecting the target device for the resource further comprises: providing, to a routing broker server, a query for the requested resource; receiving, from the routing broker server and based on the query, an identification of the target device; and connecting with the target device based on the identification. 5. The method of claim 1 , where providing the request to the selected target device comprises: providing a proxy of the request to the selected target device. 6. The method of claim 5 , where the proxy of the request includes the request and an Internet protocol (IP) address of the computing device. 7. The method of claim 1 , where providing the resource to the client device comprises: providing a proxy of the resource to the client device. 8. The method of claim 7 , where the proxy of the resource includes the resource and an Internet protocol (IP) address of the computing device. 9. The method of claim 1 , where the resource comprises one or more of audio data, video data, text, or a service. 10. A network device, comprising: a memory to store a local cache of resources; and a processor to: receive, from a device, a quantity of resources, the quantity of resources, received from the device, being greater than a threshold quantity of resources, resources, of the quantity of resources received from the device, including video data, audio data, image data, or text; store, in a data structure, information identifying the device based on the quantity of resources being greater than the threshold quantity of resources; receive, from a client device, a request for a resource; determine, based on information included in the request and the data structure, that the client device is requesting the resource from the device; terminate a connection for the request at the network device based on: the information identifying the device that is stored in the data structure based on the quantity of resources being greater than the threshold quantity of resources, and the client device requesting the resource from the device; determine, based on the connection for the request being terminated, whether the resource is stored in the local cache; select the local cache as a target device for the resource when the resource is stored in the local cache; select the target device, from a plurality of devices storing resources, when the resource is not stored in the local cache, the target device being selected based on one or more conditions of a network associated with the network device, the one or more conditions including one or more of a bandwidth of the network or a load on the network; provide, when the resource is not stored in the local cache, the request to the selected target device; receive, based on providing the request to the selected target device, the resource from the selected target device; and provide, based on receiving the resource from the selected target device, the resource to the client device. 11. The network device of claim 10 , where, when determining that the client device is requesting the resource from the device, the processor is to: extract at least one of: a destination Internet protocol (IP) address from the request, an IP address of the client device from the request, or information identifying a destination port of the request, and determine, based on the at least one of the destination IP address, the IP address of the client device, or the destination port, that the client device is requesting the resource from the device. 12. The network device of claim 10 , where the processor is further to: receive another request for the resource; determine that the resource is being requested from another device; and forward the request to the other device. 13. The network device of claim 10 , where, when the resource is not stored in the local cache, the processor is further to: provide, to a routing broker server, a query for the resource, receive, from the routing broker server and based on the query, an identification of the target device, and connect with the target device based on the identification. 14. The network device of claim 10 , where, when providing the request to the selected target device, the processor is further to: associate, with the request, an Internet protocol (IP) address of the network device to create a modified request, and provide the modified request to the selected target device. 15. The network device of claim 10 , where, when providing the resource to the client device, the processor is further to: associate, with the resource, an Internet protocol (IP) address of the network device to create a modified resource, and provide the modified resource to the client device.

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • H04L69/16Primary

    Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] · CPC title

  • Electricity · mapped topic

  • Electricity · mapped topic

  • Parsing or analysis of headers · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9363327B2 cover?
A device receives, from a client device, a request for a resource, and determines, based on information provided in the request, whether to terminate a connection for the request at the device. The device forwards the request to a network when the connection is not terminated at the device, and selects a target device for the resource when the connection is terminated at the device. The device …
Who is the assignee on this patent?
Kohli Jaspal, Juniper Networks Inc
What technology area does this patent fall under?
Primary CPC classification H04L69/16. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 07 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).