# US 12,009,968 B1 · Managing regional failover via DNS queries

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

- Number: US 12,009,968 B1
- Document ID: US12009968B1
- Status: Granted
- Kind: B1
- Application number: 17/643,813
- Filed: 2021-12-10
- Granted: 2024-06-11
- Earliest claimed: 2021-12-10
- Assignees: Amazon Technologies, Inc.
- Applicants: Amazon Technologies, Inc.
- Inventors: Samir Abed; Abhineet Bansal; Donavan Miller; Oren Nachman; Tsz Him Chiu
- Web page: https://patentgrep.com/patent/US12009968B1

## CPC

- H04L 41/0686: Additional information in the notification, e.g. enhancement of specific meta-data
- H04L 41/0668: by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
- H04L 43/0805: by checking availability
- H04L 61/4511: using domain name system [DNS]
- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- H04L 67/60: 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)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present disclosure generally relates to a failover management service that can continuously monitor attributes of regional network resources to characterize resource availability per region. The failover management service associates the regional resource availability information with a set of hash values in which each individual hash value is representative a concatenation of a resource identifier and a client identifier associated with one or more individual clients. For individual hash values, the failover management service associates failover information, which is propagated to a DNS service. If a network-resource becomes unavailable, clients can transmit DNS queries including a hash value that discovers the appropriate failover information for the specific network-based resource and client device.

## Claims

### Claim 1

A system for managing failover in multi-regional network-based services, the system comprising:
one or more computing devices associated with a processor and a memory for executing computer-executable instructions to implement a failover management service, wherein the failover management service is configured to:
obtain a DNS query from a client device, wherein the DNS query is transmitted responsive to a characterized failure of a network-based resource in a designated region, wherein the DNS query corresponds to network-based resource failover information query, the network-based resource failover information query include a hash value representative of a concatenation of an identifier associated with the network-based resource and a salt associated with the client device;
parse the network-based resource failover information query to identify the hash value;
obtain network-based resource failover information associated with the identified hash value, wherein the network-based resource failover information includes a plurality of identified network-based resources in one or more alternative regions; and
transmit a DNS query response responsive to the obtained DNS query from the client device, the DNS query response including at least a subset of the plurality of identified network-based resources.

### Claim 2 (depends on 1)

The system as recited in claim 1, wherein the salt corresponds to a unique identifier associated with the client device, the unique identifier previously configured on the client device.

### Claim 3 (depends on 1)

The system as recited in claim 1, wherein the DNS query response includes the plurality of identified network-based resources in one or more alternative regions.

### Claim 4 (depends on 1)

The system as recited in claim 1, wherein the failover management service is further operable to:
obtain regional network-resource availability information; and
determine the plurality of identified network-based resources in one or more alternative regions based on the obtained regional network-resource availability information to form the network-based resource failover information.

### Claim 5 (depends on 4)

The system as recited in claim 4, wherein the failover management service is further operable to:
for individual salt value of a set of salt values, concatenate the identifier associated with the network-based resource with the individual salt value, wherein the individual salt value of a set of salt values corresponds to one or more client devices;
generate a hash value of the concatenation of the identifier associated with the network-based resource and the individual salt value; and
associate the regional network-resource availability information, the plurality of identified network-based resources in one or more alternative regions based on regional-resource availability information and the generated hash value.

### Claim 6 (depends on 4)

The system as recited in claim 4, wherein the failover management service identifies the one or more network-based resources in one or more alternative regions based on regional-resource availability information according to financial criteria.

### Claim 7 (depends on 4)

The system as recited in claim 4, wherein the failover management service identifies the one or more network-based resources in one or more alternative regions based on regional-resource availability information according to service performance criteria.

### Claim 8

A method for managing network-based services comprising:
maintaining failover information for a set of network-based resources, wherein the failover information is associated with individual identifiers transmitted with DNS queries;
obtaining individual DNS queries from one or more client devices, wherein the individual DNS queries are obtained responsive to a determined failover of an identified network-based resource in an identified region, wherein the individual DNS queries include an individual identifier corresponding to the identified network-based resource, and wherein the individual identifier includes a hash value, and wherein the hash value is a representative of a concatenation of an identifier associated with the identified network-based resource and a client identifier; and
transmitting a DNS query response responsive to one or more of the obtained individual DNS queries from the one or more client devices, the DNS query response including failover information identifying at least one network-based resource in an alternative region as a failover for the identified network-based resource.

### Claim 9 (depends on 8)

The method as recited in claim 8, wherein the identified network-based resource corresponds to the identified region, and wherein the client identifier is associated with a client device transmitting at least one of the individual DNS queries.

### Claim 10 (depends on 8)

The method as recited in claim 8, wherein the client identifier corresponds to a unique identifier associated with a plurality of client devices, the unique identifier previously configured on the client device transmitting at least one of the individual DNS queries.

### Claim 11 (depends on 8)

The method as recited in claim 8, wherein the client identifier corresponds to a unique identifier associated uniquely with an individual client device, the unique identifier previously configured on the client device transmitting at least one of the individual DNS queries.

### Claim 12 (depends on 8)

The method as recited in claim 8, wherein the failover information identifying at least one network-based resource in an alternative region as a failover for the identified network-based resource includes a plurality of identified network-based resources in one or more alternative regions.

### Claim 13 (depends on 8)

The method as recited in claim 8 further comprising:
obtaining regional network-resource availability information; and
identifying one or more network-based resources in one or more alternative regions based on regional-resource availability information to form the network-based resource failover information.

### Claim 14 (depends on 13)

The method as recited in claim 13 further comprising:
for individual salt value of a set of salt values, concatenating the resource identifier associated with the identified network-based resource with the individual salt value, wherein the individual salt value of a set of salt values corresponds uniquely to the one or more client devices transmitting the individual DNS queries;
generating a hash value of the concatenation of the identifier associated with the network-based resource and the individual salt value; and
associating the regional network-resource availability information, the identified one or more network-based resources in one or more alternative regions based on regional-resource availability information and the generated hash value.

### Claim 15 (depends on 13)

The method as recited in claim 13, wherein identifying one or more network-based resources in one or more alternative regions based on regional-resource availability information includes identifying the one or more network-based resources in one or more alternative regions based on regional-resource availability information according to financial criteria.

### Claim 16 (depends on 13)

The method as recited in claim 13, wherein identifying one or more network-based resources in one or more alternative regions based on regional-resource availability information includes identifying the one or more network-based resources in one or more alternative regions based on regional-resource availability information according to service performance criteria.

### Claim 17 (depends on 8)

The method as recited in claim 8 further comprising updating the maintained failover information for a set of network-based resources based on at least one of a change in network-based resource availability, a change in the client identifier, or a change in the identified at least one network-based resource in the alternative region.

### Claim 18

A method for managing access to network-based services comprising:
transmitting, by a client device, individual DNS queries to a DNS service, wherein the individual DNS queries are obtained responsive to a determined failover of an identified network-based resource in an identified region, wherein the individual DNS queries include an individual identifier corresponding the identified network-based resource, and wherein the individual identifier includes a hash value, and wherein the hash value is a representative of a concatenation of an identifier associated with the identified network-based resource and a client identifier; and
receiving, by the client device, a DNS query response responsive to one or more of the transmitted individual DNS queries, the DNS query response including failover information identifying at least one network-based resource in an alternative region as a failover for the identified network-based resource.

### Claim 19 (depends on 18)

The method as recited in claim 18, wherein the identified network-based resource corresponds to the identified region, and wherein the client identifier is associated with a client device transmitting the DNS query.

### Claim 20 (depends on 18)

The method as recited in claim 18, wherein the client identifier corresponds to a unique identifier associated with the client device, the unique identifier previously configured on the client device.

### Claim 21 (depends on 18)

The method as recited in claim 18, wherein the failover information identifying at least one network-based resource in an alternative region as a failover for the identified network-based resource includes a plurality of identified network-based resources in one or more alternative regions.

### Claim 22 (depends on 21)

The method as recited in claim 21, wherein the plurality of identified network-based resources in one or more alternative regions is prioritized according to service provider criteria.
