# US 10,374,955 B2 · Managing network computing components utilizing request routing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,374,955 B2
- Document ID: US10374955B2
- Status: Granted
- Kind: B2
- Application number: 15/935,615
- Filed: 2018-03-26
- Published: 2018-07-26
- Granted: 2019-08-06
- Earliest claimed: 2013-06-04
- Assignees: Amazon Technologies, Inc.
- Applicants: Amazon Technologies, Inc.
- Inventors: André Mostert
- Web page: https://patentgrep.com/patent/US10374955B2

## CPC

- H04L 41/0897: by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 16/95: Retrieval from the web
- H04L 12/1813: {for computer conferences, e.g. chat rooms (instant messaging H04L51/04; protocols for multimedia communication H04L65/1101; arrangements for multi-party communication H04L65/403; telephonic conference arrangements H04M3/56; television conference systems H04N7/15)}
- H04L 41/046: comprising network management agents or mobile agents therefor
- H04L 41/0803: Configuration setting
- H04L 43/04: Processing captured monitoring data, e.g. for logfile generation
- H04L 45/42: Centralised routing
- H04L 47/20: Traffic policing
- H04L 47/70: Admission control; Resource allocation
- H04L 51/52: for supporting social networking services
- H04L 61/4511: using domain name system [DNS]
- H04L 63/10: {for controlling access to devices or network resources}
- H04L 63/102: {Entity profiles}
- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/56: Provisioning of proxy services (store-and-forward switching systems in data switching networks H04L12/54)
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- H04L 63/1416: {Event detection, e.g. attack signature detection}
- H04L 2101/30: Types of network names
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Aspects of the disclosure will be described with regard to the processing of a client computing device DNS queries by a DNS processing service to determine an identifier associated with a previously instantiated hosted virtual machine instance. In one aspect, if the previously instantiated hosted virtual machine instance is instantiated, the DNS service can resolve the DNS query by transmitting network address information associated with the previously instantiated hosted virtual machine instance. In another aspect, if the previously instantiated hosted virtual machine instance is not instantiated, the DNS service can initiate a process to cause an instantiation of a hosted virtual machine instance based on the previously instantiated hosted virtual machine instance. The DNS service can then resolve the DNS query by transmitting network address information, or an alternative identifier, associated with the newly instantiated hosted virtual machine instance.

## Claims

### Claim 1

A system comprising:
a network point of presence (POP) associated with a content delivery network (CDN) service provider, wherein the network POP includes a domain name system (DNS) server that obtains a DNS query from a client computing device, wherein the DNS query comprises a uniform resource locator (URL), wherein the URL includes an identifier of a hosted virtual machine instance, wherein the identifier is included in a portion of a DNS portion of the URL, and wherein the DNS server in the network POP comprises hardware and is operative to:
parse the DNS portion of the URL to obtain the identifier of the hosted virtual machine instance;
transmit a request for a state of the hosted virtual machine instance to a service provider hosting the hosted virtual machine instance;
obtain information corresponding to availability of the hosted virtual machine instance; and
resolve the DNS query by transmitting, to the client computing device, information associated with the hosted virtual machine instance.

### Claim 2 (depends on 1)

The system as recited in claim 1, wherein the DNS server is further operative to: determine that the hosted virtual machine instance is not instantiated; and transmit a request to re-instantiate the hosted virtual machine instance.

### Claim 3 (depends on 2)

The system as recited in claim 2, wherein the DNS server is further operative to: obtain information corresponding to the re-instantiation of the hosted virtual machine instance.

### Claim 4 (depends on 1)

The system as recited in claim 1, wherein parsing the DNS portion of the DNS query to obtain the identifier associated with the hosted virtual machine instance includes parsing a complete DNS portion of the DNS query.

### Claim 5 (depends on 1)

The system as recited in claim 1, wherein parsing the DNS portion of the DNS query to obtain the identifier associated with the hosted virtual machine instance includes parsing a sub-portion of the DNS portion of the DNS query.

### Claim 6 (depends on 1)

The system as recited in claim 1, wherein resolving the DNS query includes transmitting a canonical name record identifier associated with a service provider hosting the hosted virtual machine instance.

### Claim 7 (depends on 1)

The system as recited in claim 1, wherein resolving the DNS query includes transmitting a network address associated with a service provider hosting the hosted virtual machine instance.

### Claim 8 (depends on 1)

The system as recited in claim 1, wherein the DNS server in the network POP is operative to maintain, for a set of previously instantiated virtual machine instances, information related to an availability to process subsequent requests from the client computing device.

### Claim 9 (depends on 8)

The system as recited in claim 8, wherein the DNS server in the network POP is operative to:
periodically transmit requests related to an availability to process subsequent requests from the client computing device for the set of previously instantiated virtual machine instances;
obtain updated information related to an availability to process subsequent requests from the client computing device for the set of previously instantiated virtual machine instances;
update the information related to an availability to process subsequent requests from the client computing device responsive to the updated information;
obtain a request from the client computing device for the requested content; and
process and transmit the requested content from the selected network computing component in response to the request from the client computing device.

### Claim 10

A method comprising:
obtaining, by a domain name system (DNS) processing service, a DNS query from a client computing device, wherein the DNS query comprises a uniform resource locator (URL), wherein the URL includes an identifier of a hosted virtual machine instance, and wherein the identifier is included in a DNS portion of the URL;
parsing, by the DNS processing service, the DNS portion of the URL to obtain the identifier of the hosted virtual machine instance;
transmitting, by the DNS processing service, a request for a state of the hosted virtual machine instance to a service provider hosting the hosted virtual machine instance;
obtaining, by the DNS processing service, information corresponding to availability of the hosted virtual machine instance; and
resolving, by the DNS processing service, the DNS query by transmitting, to the client computing device, information associated with the hosted virtual machine instance.

### Claim 11 (depends on 10)

The method as recited in claim 10, wherein parsing the DNS portion of the DNS query to obtain the identifier associated with the hosted virtual machine instance includes parsing a complete DNS portion of the DNS query.

### Claim 12 (depends on 10)

The method as recited in claim 10, wherein parsing the DNS portion of the DNS query to obtain the identifier associated with the hosted virtual machine instance includes parsing a sub-portion of the DNS portion of the DNS query.

### Claim 13 (depends on 10)

The method as recited in claim 10, wherein resolving the DNS query includes transmitting a canonical name record identifier associated with a service provider hosting the hosted virtual machine instance.

### Claim 14 (depends on 10)

The method as recited in claim 10, wherein resolving the DNS query includes transmitting a network address associated with a service provider hosting the hosted virtual machine instance.

### Claim 15 (depends on 10)

The method as recited in claim 10 further comprising maintaining, for a set of previously instantiated virtual machine instances, information related to an availability to process subsequent requests from the client computing device.

### Claim 16 (depends on 15)

The method as recited in claim 15 further comprising:
periodically transmitting requests related to an availability to process subsequent requests from the client computing device for the set of previously instantiated virtual machine instances;
obtaining updated information related to an availability to process subsequent requests from the client computing device for the set of previously instantiated virtual machine instances;
updating the information related to an availability to process subsequent requests from the client computing device responsive to the updated information;
obtaining a request from the client computing device for the requested content; and
processing and transmit the requested content from the selected network computing component in response to the request from the client computing device.

### Claim 17

A system comprising:
a network point of presence (POP) associated with a content delivery network (CDN) service provider, wherein the network POP includes a DNS server that obtains a DNS query from a client computing device, wherein the DNS query comprises a uniform resource locator (URL), wherein the URL includes an identifier of a hosted virtual machine instance, wherein the identifier is included in a portion of a DNS portion of the URL, and wherein the DNS server in the network POP comprises hardware and is operative to:
transmit a request for a state of the hosted virtual machine instance to a service provider hosting the hosted virtual machine instance;
obtain information corresponding to availability of the hosted virtual machine instance; and
resolve the DNS query by transmitting, to the client computing device, information associated with the hosted virtual machine instance.

### Claim 18 (depends on 17)

The system as recited in claim 17, wherein the DNS server in the network POP is operative to: evaluate the URL to obtain the identifier associated with the hosted virtual machine instance.

### Claim 19 (depends on 17)

The system as recited in claim 17, wherein resolving the DNS query includes transmitting a canonical name record identifier associated with a service provider hosting the hosted virtual machine instance.

### Claim 20 (depends on 17)

The system as recited in claim 17, wherein resolving the DNS query includes transmitting a network address associated with a service provider hosting the hosted virtual machine instance.

### Claim 21 (depends on 17)

The system as recited in claim 17, wherein the DNS server in the network POP is operative to: maintain, for a set of previously instantiated virtual machine instances, information related a current instantiation state for the set of previously instantiated virtual machine instances.

### Claim 22 (depends on 21)

The system as recited in claim 21, wherein the DNS server in the network POP is operative to:
periodically transmit requests related an instantiation state for the set of previously instantiate virtual machine instances;
obtain updated information related instantiation state for the set of previously instantiate virtual machine instances; and
update the information related to the instantiation state for the set of previously instantiate virtual machine instances.
