# US 10,771,396 B2 · Communications network failure detection and remediation

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

- Number: US 10,771,396 B2
- Document ID: US10771396B2
- Status: Granted
- Kind: B2
- Application number: 16/011,479
- Filed: 2018-06-18
- Published: 2018-10-18
- Granted: 2020-09-08
- Earliest claimed: 2015-05-08
- Assignees: Ooma, Inc.
- Applicants: Ooma, Inc.
- Inventors: Karl Osterlund; Tobin E. Farrand; William M. Gillon; David A. Bryan; Arvind Vasudev; Douglas E. Hart
- Web page: https://patentgrep.com/patent/US10771396B2

## CPC

- H04L 47/74: measures in reaction to resource unavailability
- H04L 12/2801: {Broadband local area networks}
- H04L 41/5019: Ensuring fulfilment of SLA
- H04L 43/0811: by checking connectivity
- H04L 43/0882: Utilisation of link capacity
- H04L 43/10: Active monitoring, e.g. heartbeat, ping or trace-route
- H04L 43/50: Testing arrangements
- H04L 47/765: triggered by the end-points
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/567: Integrating service provisioning from a plurality of service providers
- H04L 41/0213: Standardised network management protocols, e.g. simple network management protocol [SNMP]
- H04L 43/0852: Delays
- H04L 45/026: {Details of "hello" or keep-alive messages}
- H04L 45/22: {Alternate routing}
- H04L 45/28: using route fault recovery
- H04L 45/74: Address processing for routing
- H04L 47/283: in response to processing delays, e.g. caused by jitter or round trip time [RTT]
- H04L 69/14: Multichannel or multilink protocols
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods for communications network failure detection and remediation. Exemplary methods include: receiving first communications using a network from a first client, the first communications including an identifier for a user of the first client and a security credential of the user; authenticating the first user using the identifier and the security credential; creating, responsive to the authenticating, a registration for the first client in a registration database, the registration including an address for the first client, the registration being used to route second communications from a second client to the first client; establishing, responsive to the authenticating, a connection to the first client; detecting the connection has failed; and removing, responsive to the detecting, the registration from the registration database.

## Claims

### Claim 1

A computer-implemented method for communications network failure detection and remediation comprising:
receiving first communications using a network from a first client, the first communications including a telephone number, location, and security credential, the telephone number, location, and security credential each being associated with a first user of the first client;
authenticating the first user of the first client using the telephone number and the security credential;
creating, responsive to the authenticating, a registration for the first client in a registration database, the registration including the location from the first communications from the first client, the registration being used to route second communications directed to the telephone number of the first client from a second client;
establishing, responsive to the authenticating, a connection to the first client within the network;
detecting the connection to the first client has failed, the detecting comprising:
measuring a time period during which the first client does not send communications traffic; and
determining the measured time period exceeds a limit, the limit being an amount of time after which it is unlikely a valid connection is idle, the limit being produced by a statistical model; and
removing, responsive to the detecting, the registration for the first client from the registration database.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the connection is a virtual private network connection.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein detecting further comprises:
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the detecting comprises:
measuring a time period during which a keep alive communication is not received from the first client; and
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the detecting comprises:
sending an Address Resolution Protocol (ARP) request to the first client;
measuring a time period from the sending during which a communication responsive to the ARP request is not received from the first client; and
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the detecting comprises:
ascertaining a registration message is not received from the first client before an expiration of the registration.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, the method further comprising:
receiving periodic communications from the first client at a predetermined time interval; and
wherein the detecting comprises:
measuring a first time period during which the periodic communications are not received from the first client; and
determining the measured time period exceeds at least one of the predetermined time interval and a pre-determined value received from a system administrator.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, the method further comprising at least one of:
notifying the first user of the first client of the detected connection failure using at least one of email, text message, telephone call, and push notification;
notifying a monitoring center of the detected connection failure; and
notifying the first client.

### Claim 9

A system for communications network failure detection and remediation comprising:
a server, the server including:
a processor; and
a memory communicatively coupled to the processor, the memory storing instructions executable by the processor to perform a method comprising:
receiving first communications using a network from a first client, the first communications including a telephone number, location, and security credential, the telephone number, location, and security credential each being associated with a first user of the first client;
authenticating the first user of the first client using the telephone number and the security credential;
creating, responsive to the authenticating, a registration for the first client in a registration database, the registration including the location from the first communications from the first client, the registration being used to route second communications directed to the telephone number of the first client from a second client;
establishing, responsive to the authenticating, a connection to the first client within the network;
detecting the connection to the first client has failed, the detecting comprising:
measuring a time period during which the first client does not send communications traffic; and
determining the measured time period exceeds a limit, the limit being an amount of time after which it is unlikely a valid connection is idle, the limit being produced by a statistical model; and
removing, responsive to the detecting, the registration for the first client from the registration database.

### Claim 10 (depends on 9)

The system of claim 9, wherein the connection is a virtual private network connection.

### Claim 11 (depends on 9)

The system of claim 9, wherein detecting further comprises:
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 12 (depends on 9)

The system of claim 9, wherein the detecting comprises:
measuring a time period during which a keep alive communication is not received from the first client; and
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 13 (depends on 9)

The system of claim 9, wherein the detecting comprises:
sending an Address Resolution Protocol (ARP) request to the first client;
measuring a time period from the sending during which a communication responsive to the ARP request is not received from the first client; and
determining the measured time period exceeds a limit, the limit being a pre-determined value received from a system administrator.

### Claim 14 (depends on 9)

The system of claim 9, wherein the detecting comprises:
ascertaining a registration message is not received from the first client before an expiration of the registration.

### Claim 15 (depends on 9)

The system of claim 9, the method further comprising:
receiving periodic communications from the first client at a predetermined time interval; and
wherein the detecting comprises:
measuring a first time period during which the periodic communications are not received from the first client; and
determining the measured time period exceeds at least one of the predetermined time interval and a pre-determined value received from a system administrator.

### Claim 16

A system for communications network failure detection and remediation comprising:
means for receiving first communications using a network from a first client, the first communications including a telephone number, location, and security credential, the telephone number, location, and security credential each being associated with a first user of the first client;
means for authenticating the first user of the first client using the telephone number and the security credential;
means for creating, responsive to the authenticating, a registration for the first client in a registration database, the registration including the location from the first communications from the first client, the registration being used to route second communications directed to the telephone number of the first client from a second client;
means for establishing, responsive to the authenticating, a connection to the first client within the network;
means for detecting the connection to the first client has failed, the means for detecting comprising:
means for measuring a time period during which the first client does not send communications traffic; and
means for determining the measured time period exceeds a limit, the limit being an amount of time after which it is unlikely a valid connection is idle, the limit being produced by a statistical model; and
means for removing, responsive to the detecting, the registration for the first client from the registration database.

### Claim 17 (depends on 1)

The computer-implemented method of claim 1, wherein the location comprises an IP address.

### Claim 18 (depends on 1)

The computer-implemented method of claim 1, wherein the security credential comprises one of a password and a certificate.

### Claim 19 (depends on 9)

The system of claim 9, wherein the location comprises an IP address.

### Claim 20 (depends on 9)

The system of claim 9, wherein the security credential comprises one of a password and a certificate.
