# US 8,572,427 B1 · Systems and methods for determining operational states of network resources based on network user activities

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

- Number: US 8,572,427 B1
- Document ID: US8572427B1
- Status: Granted
- Kind: B1
- Application number: 13/046,052
- Filed: 2011-03-11
- Granted: 2013-10-29
- Earliest claimed: 2011-03-11
- Assignees: Google Inc.
- Applicants: Sorin Stancu-mara; Juro Gottweiss
- Inventors: Sorin Stancu-mara; Juro Gottweiss
- Web page: https://patentgrep.com/patent/US8572427B1

## CPC

- G06F 11/0709: {in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems}
- G06F 11/076: {by exceeding a count or rate limit, e.g. word- or bit count limit}
- G06F 11/0784: {Routing of error reports, e.g. with a specific transmission path or data flow}
- H04L 41/065: {involving logical or physical relationship, e.g. grouping and hierarchies}
- H04L 41/0686: Additional information in the notification, e.g. enhancement of specific meta-data
- H04L 43/0817: by checking functioning
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present application discloses systems, computer readable media, and methods for determining the operational status of network resources based on failed attempts by communications devices to access the network resources. In some embodiments, error messages are analyzed, and status data is associated with hostnames corresponding to network resources based on the analysis. The status data may include status identifiers that indicate the apparent operational states of network resources and geographic accessibility information associated with network resources. Some embodiments may include sending status messages to users and/or network managers based on the status data. Still other embodiments may include sharing the status data with a search engine configured to generate, display, format, and/or rank search results based on the status data.

## Claims

### Claim 1

A method comprising:
receiving a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
associating status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the error messages include the individual hostname within a defined time period, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
storing the status data associated with the individual hostnames in a status database;
receiving an additional error message generated by a communications device in response to a failed attempt by the communications device to access a network resource, wherein the additional error message includes a hostname associated with the network resource that the communications device failed to access;
retrieving from the status database status data associated with the hostname included in the additional error message; and
transmitting a status message in response to the additional error message, wherein the status message includes the status data retrieved from the status database.

### Claim 2 (depends on 1)

The method of claim 1, wherein the network resource is an Internet website, a network-based video service, a network-based music service, or a network-based gaming service.

### Claim 3 (depends on 1)

The method of claim 1, wherein each error message in the plurality of error messages and the additional error message further include at least one of an error type, an origin associated with the communications device that generated the error message, and a timestamp associated with a time that the communications device generated the error message.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
analyzing the plurality of error messages to determine whether the failed attempt that prompted the additional error message was caused by the network resource being non-operational or by a network problem unrelated to the operational state of the network resource, wherein the determination is based at least in part on an analysis of origin information included in each error message of the plurality of error messages and the additional error message.

### Claim 5 (depends on 1)

The method of claim 1, wherein associating status data with an individual hostname based at least in part on how many of the error messages include the individual hostname within the defined time period comprises:
determining a number corresponding to how many of the error messages include the individual hostname within the defined time period;
comparing the number with a threshold number;
associating a first status identifier with the individual hostname in response to determining that the number is less than the threshold number, wherein the first status identifier indicates that the network resource associated with the individual hostname appears to be operational; and
associating a second status identifier with the individual hostname in response to determining that the number is greater than or equal to the threshold number, wherein the second status identifier indicates that the network resource associated with the first hostname appears to be not fully operational.

### Claim 6 (depends on 5)

The method of claim 5, wherein the threshold number is based on at least one of a time of day, historical error rates associated with the individual hostname, a number of errors in a previous time period, and a geographic region.

### Claim 7 (depends on 1)

The method of claim 1, wherein associating status data with an individual hostname based at least in part on how many of the error messages include the individual hostname within the defined time period comprises:
determining a number corresponding to how many of the error messages include the individual hostname within the defined time period, and comparing the number with a threshold number, and wherein the method further comprises:
initiating a web crawl of the individual network resource in response to determining that the number is greater than or equal to the threshold number.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
initiating the transmission of a status message to a network manager associated with a particular hostname in response to associating a status identifier with the particular hostname that indicates that the network resource associated with the particular hostname appears to be not fully operational.

### Claim 9

A method comprising:
receiving a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
associating status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the error messages include the individual hostname within a defined time period, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
storing the status data associated with the individual hostnames in a status database;
receiving a query from a search engine, the query comprising at least one hostname;
retrieving from the status database status data associated with the at least one hostname; and
sending the status data associated with the at least one hostname to the search engine in response to the query.

### Claim 10 (depends on 9)

The method of claim 9, wherein the search engine is configured to display search results or format links associated with search results based at least in part on the status data associated with the at least one hostname.

### Claim 11 (depends on 9)

The method of claim 9, wherein the search engine is configured to link a search result to either a network location associated with the search result or a cached version of the search result based at least in part on the status data associated with the at least one hostname.

### Claim 12

A system comprising:
one or more communications interfaces configured to receive a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
one or more processors configured to associate status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the plurality of error messages received within a defined time period include the individual hostname, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
a status database configured to store the status data associated with the individual hostnames; and
wherein the one or more processors are further configured to (i) process an additional error message generated by a communications device in response to a failed attempt by the communications device to access a network resource, wherein the additional error message includes a hostname associated with the network resource that the communications device failed to access, (ii) retrieve from the status database status data associated with the hostname included in the additional error message, and (iii) initiate the transmission of a status message in response to the additional error message, wherein the status message is based on the status data retrieved from the status database.

### Claim 13 (depends on 12)

The system of claim 12, wherein the network resource is an Internet website, a network-based video service, a network-based music service, or a network-based gaming service.

### Claim 14 (depends on 12)

The system of claim 12, wherein each error message in the plurality of error messages and the additional error message further include at least one of an error type, an origin associated with the communications device that generated the error message, and a timestamp associated with a time that the communications device generated the error message.

### Claim 15 (depends on 14)

The system of claim 14, wherein the one or more processors are further configured to determine whether the failed attempt that prompted the additional error message was caused by the network resource being non-operational or by a network problem unrelated to the operational state of the network resource, wherein the determination is based at least in part on origin information included in each error message of the plurality of error messages and the additional error message.

### Claim 16 (depends on 12)

The system of claim 12, wherein the one or more processors are further configured to (i) determine a number corresponding to how many of the error messages include the individual hostname within the defined time period, (ii) compare the number with a threshold number, (iii) associate a first status identifier with the individual hostname in response to determining that the number is less than the threshold number, wherein the first status identifier indicates that the network resource associated with the individual hostname appears to be operational, and (iv) associate a second status identifier with the individual hostname in response to determining that the number is greater than or equal to the threshold number, wherein the second status identifier indicates that the network resource associated with the first hostname appears to be not fully operational.

### Claim 17 (depends on 16)

The system of claim 16, wherein the threshold number is based on at least one of a time of day, historical error rates associated with the individual hostname, a number of errors in a previous time period, and a geographic region.

### Claim 18 (depends on 12)

The system of claim 12, wherein the one or more processors are further configured to (i) determine a number corresponding to how many of the error messages include the individual hostname within the defined time period, (ii) compare the number with a threshold number, and (iii) initiate a web crawl of the individual network resource associated with the individual hostname in response to determining that the number is greater than or equal to the threshold number.

### Claim 19 (depends on 12)

The system of claim 12, wherein the one or more processors are further configured to initiate the transmission of a status message to a network manager associated with a particular hostname in response to associating a status identifier with the particular hostname that indicates that the network resource associated with the particular hostname appears to be not fully operational.

### Claim 20

A system comprising:
one or more communications interfaces configured to receive a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
one or more processors configured to associate status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the error messages include the individual hostname within a defined time period, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
a status database configured to store the status data associated with the individual hostnames;
wherein the one or processors are configured to (i) process a query received from a search engine, the query comprising at least one hostname, (ii) retrieve from the status database status data associated with the at least one hostname, and (iii) send the status data associated with the at least one hostname to the search engine in response to the query.

### Claim 21 (depends on 20)

The system of claim 20, wherein the search engine is configured to display search results or format links associated with search results based at least in part on the status data associated with the at least one hostname.

### Claim 22 (depends on 20)

The system of claim 20, wherein the search engine is configured to link a search result to either a network location associated with the search result or a cached version of the search result based at least in part on the status data associated with the at least one hostname.

### Claim 23

An article of manufacture including computer readable media with instructions stored thereon that, when executed by a processor, cause the processor to perform functions, the functions comprising:
receiving a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
associating status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the error messages include the individual hostname within a defined time period, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
storing the status data associated with the individual hostnames in a status database;
receiving an additional error message generated by a communications device in response to a failed attempt by the communications device to access a network resource, wherein the additional error message includes a hostname associated with the network resource that the communications device failed to access;
retrieving from the status database status data associated with the hostname included in the additional error message; and
transmitting a status message in response to the additional error message, wherein the status message is based on the status data retrieved from the status database.

### Claim 24 (depends on 23)

The article of manufacture of claim 23, wherein the network resource is an Internet website, a network-based video service, a network-based music service, or a network-based gaming service.

### Claim 25 (depends on 23)

The article of manufacture of claim 23, wherein each error message in the plurality of error messages and the additional error message further include at least one of an error type, an origin associated with the communications device that generated the error message, and a timestamp associated with a time that the communications device generated the error message.

### Claim 26 (depends on 25)

The article of manufacture of claim 25, the functions further comprising:
analyzing the plurality of error messages to determine whether the failed attempt that prompted the additional error message was caused by the network resource being non-operational or by a network problem unrelated to the operational state of the network resource, wherein the determination is based at least in part on origin information included in each error message of the plurality of error messages and the additional error message.

### Claim 27 (depends on 23)

The article of manufacture of claim 23, wherein associating status data with an individual hostname based at least in part on how many of the error messages include the individual hostname within the defined time period comprises:
determining a number corresponding to how many of the error messages include the individual hostname within the defined time period;
comparing the number with a threshold number;
associating a first status identifier with the individual hostname in response to determining that the number is less than the threshold number, wherein the first status identifier indicates that the network resource associated with the individual hostname appears to be operational; and
associating a second status identifier with the individual hostname in response to determining that the number is greater than or equal to the threshold number, wherein the second status identifier indicates that the network resource associated with the first hostname appears to be not fully operational.

### Claim 28 (depends on 27)

The article of manufacture of claim 27, wherein the threshold number is based on at least one of a time of day, historical error rates associated with the individual hostname, a number of errors in a previous time period, and a geographic region.

### Claim 29 (depends on 23)

The article of manufacture of claim 23, wherein associating status data with an individual hostname based at least in part on how many of the error messages include the individual hostname within the defined time period comprises determining a number corresponding to how many of the error messages include the individual hostname within the defined time period, and comparing the number with a threshold number, the functions further comprising:
initiating a web crawl of the individual network resource in response to determining that the number is greater than or equal to the threshold number.

### Claim 30 (depends on 23)

The article of manufacture of claim 23, the functions further comprising:
initiating the transmission of a status message to a network manager associated with a particular hostname in response to associating a status identifier with the particular hostname that indicates that the network resource associated with the particular hostname appears to be not fully operational.

### Claim 31

An article of manufacture including computer readable media with instructions stored thereon that, when executed by a processor, cause the processor to perform functions, comprising:
receiving a plurality of error messages generated by a plurality of communications devices in response to failed attempts by the communications devices to access network resources, wherein each error message in the plurality of error messages includes a respective hostname associated with a particular network resource that a particular communications device failed to access;
associating status data with individual hostnames included in the plurality of error messages, wherein the status data associated with an individual hostname is based at least in part on how many of the error messages include the individual hostname within a defined time period, and wherein the status data includes a status identifier that indicates an operational state of the network resource associated with the individual hostname;
storing the status data associated with the individual hostnames in a status database;
receiving a query from a search engine, the query comprising at least one hostname;
retrieving from the status database status data associated with the at least one hostname; and
sending the status data associated with the at least one hostname to the search engine in response to the query.

### Claim 32 (depends on 31)

The article of manufacture of claim 31, wherein the search engine is configured to display search results or format links associated with search results based at least in part on the status data associated with the at least one hostname.

### Claim 33 (depends on 31)

The article of manufacture of claim 31, wherein the search engine is configured to link a search result to either a network location associated with the search result or a cached version of the search result based at least in part on the status data associated with the at least one hostname.
