IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0412431
(2009-03-27)
|
등록번호 |
US-8521851
(2013-08-27)
|
발명자
/ 주소 |
- Richardson, David R.
- Marshall, Bradley E.
- Sivasubramanian, Swaminathan
- Saraf, Tal
|
출원인 / 주소 |
- Amazon Technologies, Inc.
|
대리인 / 주소 |
Knobbe, Martens, Olson & Bear, LLP
|
인용정보 |
피인용 횟수 :
119 인용 특허 :
181 |
초록
▼
A system, method and computer-readable medium for request routing based on application information associated with the requested resource are provided. A DNS nameserver at an application broker obtains a DNS query corresponding to a resource requested from a client computing device and associated wi
A system, method and computer-readable medium for request routing based on application information associated with the requested resource are provided. A DNS nameserver at an application broker obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes application information associated with the requested resource. Based on the application information parsed from the first resource identifier, the DNS nameserver at the application broker selects either a second resource identifier which resolves to a domain of a network computing provider or an IP address associated with a network computing component for processing the requested resource. The DNS nameserver then transmits either the second resource identifier or IP address to the client computing device.
대표청구항
▼
1. A system for processing resource requests comprising: a DNS nameserver component associated with an application broker, wherein the DNS nameserver component receives a DNS query from a client computing device, wherein the DNS query corresponds to a requested resource associated with a first resou
1. A system for processing resource requests comprising: a DNS nameserver component associated with an application broker, wherein the DNS nameserver component receives a DNS query from a client computing device, wherein the DNS query corresponds to a requested resource associated with a first resource identifier including application information regarding the requested resource, wherein the application broker manages content processing on behalf of a content provider, wherein the first resource identifier further includes information identifying the application broker, and wherein the DNS nameserver component includes one or more computing devices and is operable to: parse the first resource identifier so as to obtain the application information regarding the requested resource;obtain a second resource identifier based at least in part on a portion of the application information parsed from the first resource identifier, wherein the second resource identifier resolves to one of: a domain of a network computing provider selected as a function of a location associated with the client computing device if a ratio of data received by an application for processing the requested resource to data delivered out of the application exceeds a first threshold, wherein the network computing provider is different from the application broker;a domain of a network computing provider selected as a function of a location associated with the client computing device if a ratio of a measure of resource utilization to data received by the application from a source exceeds a second threshold, wherein the network computing provider is different from the application broker; anda domain of a network computing provider selected as a function of a location associated with a storage component maintaining the requested resource if a ratio of a measure of resource utilization to data received by the application from a source fails to exceed a third threshold, wherein the network computing provider is different from the application broker; andtransmit the second resource identifier to the client computing device. 2. The system as recited in claim 1 further comprising: a second DNS nameserver component that receives, from the client computing device, a subsequent DNS query corresponding to the second resource identifier provided by the application broker, wherein the second DNS nameserver component corresponds to a network computing provider, and wherein the second DNS nameserver component is operable to:resolve the subsequent DNS query, at the second DNS server, to identify an IP address corresponding to a network computing component for processing and providing content associated with the original resource request; andtransmit the IP address corresponding to the network computing component to the client computing device. 3. The system as recited in claim 2, wherein the second resource identifier includes additional routing criteria different from the first resource identifier, wherein the additional routing criteria includes at least one of service level routing criteria, geographic routing criteria, network performance routing criteria, financial cost routing criteria, resource popularity information, observed behavior, and content provider specified routing criteria. 4. The system as recited in claim 3, wherein the second DNS nameserver is further operable to parse the second resource identifier so as to obtain the additional routing criteria regarding the requested resource, wherein the second DNS nameserver resolves the subsequent DNS query to identify an IP address corresponding to a network computing component as a function of the parsed additional routing criteria. 5. The system as recited in claim 1, wherein the first resource identifier includes a first portion with DNS information and a second portion with path information. 6. The system as recited in claim 5, wherein the first portion of the first resource identifier includes the application information. 7. The system as recited in claim 1, wherein the DNS nameserver component obtains the second resource identifier additionally based on at least one of service level routing criteria, geographic routing criteria, network performance routing criteria, financial cost routing criteria, resource popularity information, observed behavior, and content provider specified routing criteria. 8. The system as recited in claim 7, wherein network performance routing criteria includes network data transfer latencies. 9. The system as recited in claim 1, wherein the first and second resource identifiers are Uniform Resource Locators (URLs). 10. A method for request routing comprising: obtaining a DNS query from a client computing device at a DNS server, wherein the DNS query corresponds to a requested resource associated with a first resource identifier, wherein the DNS server corresponds to an application broker, and wherein the first resource identifier includes information identifying the application broker;determining that the first resource identifier is associated with an alternative resource identifier as a function of application information regarding the requested resource, wherein the application information is included in the first resource identifier; andtransmitting the alternative resource identifier to the client computing device, wherein the alternative resource identifier includes information for causing a DNS query to resolve to a domain corresponding to a network computing provider and supplemental request routing information not included in the first resource identifier. 11. The method of claim 10 further comprising: obtaining a subsequent DNS query from the client computing device at a second DNS server, wherein the subsequent DNS query corresponds to the alternative resource identifier provided by the application broker and wherein the second DNS server corresponds to the network computing provider;resolving the subsequent DNS query, at the second DNS server, to identify a network computing component for processing and providing content associated with the original resource request; andtransmitting information identifying the network computing component to the client computing device. 12. The method as recited in claim 11, wherein resolving the subsequent DNS query to identify a network computing component comprises identifying an IP address of a network computing component as a function of the supplemental request routing information included in the alternative resource identifier. 13. The method as recited in claim 12, wherein the supplemental request routing information includes one of service level routing criteria, geographic routing criteria, network performance routing criteria, financial cost routing criteria, observed behavior, and content provider specified routing criteria. 14. The method as recited in claim 10, wherein first resource identifier corresponds to a uniform resource locator such that the DNS query resolves to a domain corresponding to the network computing provider. 15. The method as recited in claim 10, wherein the alternative resource identifier corresponds to a canonical name record identifier. 16. The method as recited in claim 10, wherein the network computing component comprises an application for processing the requested resource. 17. The method as recited in claim 10, wherein the network computing component is operable to dynamically cause the creation of an instance of a virtual machine for processing the requested resource. 18. The method as recited in claim 10, wherein the application information includes information associated with a file type of the requested resource. 19. The method as recited in claim 10, wherein the application information includes information associated with a type of application for processing the requested resource. 20. The method as recited in claim 10, wherein the application information includes information identifying an instance of an application for processing the requested resource. 21. The method as recited in claim 10 further comprising obtaining, at the DNS server, information corresponding to the client computing device associated with the DNS query, wherein the information corresponding to the client computing device is associated with a geographic location of the client computing device and wherein selecting an alternative resource identifier is further based on information associated with a geographic location of the client computing device. 22. The method as recited in claim 10 further comprising determining, at the DNS server, information corresponding to a storage location of the requested resource associated with the DNS query, wherein selecting an alternative resource identifier is further based on information associated with the storage location of the requested resource. 23. The method as recited in claim 10 further comprising determining, at the DNS server, information corresponding to latency information associated with the DNS query, wherein selecting an alternative resource identifier is further based on the latency information. 24. The method as recited in claim 10, wherein the alternative resource identifier resolves to a domain of a network computing provider selected as a function of a location associated with the client computing device if a ratio of data received by an application for processing the requested resource to data delivered out of the application exceeds a first threshold. 25. The method as recited in claim 10, wherein the alternative resource identifier resolves to a domain of a network computing provider selected as a function of a location associated with the client computing device if a ratio of a measure of resource utilization to data received by the application from a source exceeds a second threshold. 26. The method as recited in claim 10, wherein the alternative resource identifier resolves to a domain of a network computing provider selected as a function of a location associated with a storage component maintaining the requested resource if a ratio of a measure of resource utilization to data received by the application from a source fails to exceed a third threshold. 27. A method for request routing comprising: obtaining a DNS query from a client computing device at a DNS server, wherein the DNS query corresponds to a requested resource associated with a first resource identifier, wherein the DNS server corresponds to an application broker, and wherein the first resource identifier includes information identifying the application broker;selecting a network computing component for processing the requested resource from a plurality of network computing components based on application information included in the first resource identifier; andtransmitting information identifying the selected network computing component from the DNS server to the client computing device. 28. The method as recited in claim 27, wherein the network computing component comprises an application for processing the requested resource. 29. The method as recited in claim 27, wherein the network computing component is operable to dynamically cause the creation of an instance of a virtual machine for processing the requested resource. 30. The method as recited in claim 27, wherein the application information comprises identification of a file type of the requested resource and wherein a network computing component is selected at the DNS server based on the file type. 31. The method as recited in claim 27, wherein the application information comprises identification of a type of application for processing the requested resource and wherein a network computing component is selected at the DNS server based on the application type. 32. The method as recited in claim 27, wherein the application information includes identification of an instance of an application for processing the requested resource and wherein a network computing component is selected at the DNS server based on the application instance. 33. The method as recited in claim 27 further comprising determining, at the DNS server, additional information for selecting the network computing component, wherein the additional information includes at least one of service level routing criteria, geographic routing criteria, network performance routing criteria, financial cost routing criteria, observed behavior, and content provider specified routing criteria. 34. The method as recited in claim 27 further comprising obtaining, at the DNS server, information corresponding to the client computing device associated with the DNS query, wherein the information corresponding to the client computing device is associated with a geographic location of the client computing device and wherein selecting a network computing component is further based on information associated with a geographic location of the client computing device. 35. The method as recited in claim 27 further comprising determining, at the DNS server, information corresponding to a storage location of the requested resource associated with the DNS query, wherein selecting a network computing component is further based on information associated with the storage location of the requested resource. 36. The method as recited in claim 27, wherein the network computing component is further selected as a function of a location associated with the client computing device if a ratio of data received by an application for processing the requested resource to data delivered out of the application exceeds a first threshold. 37. The method as recited in claim 27, wherein the network computing component is further selected as a function of a location associated with the client computing device if a ratio of a measure of resource utilization to data received by the application from a source exceeds a second threshold. 38. The method as recited in claim 27, wherein the network computing component is further selected as a function of a location associated with a storage component maintaining the requested resource if a ratio of a measure of resource utilization to data received by the application from a source fails to exceed a third threshold.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.