Patent Document ID: 9154984
Application ID: 13296505
Patent Flag: 1

Claim One:
1. A computer implemented method for estimating network performance of a mobile device, comprising: receiving operational data corresponding to one or more previously performed network operations, the operational data including: a) network condition data indicative of a condition of a network during performance of the previously performed network operation, the network condition data including signal strength at an antenna of a device that performed the previously performed network operation, b) physical state data indicative of a physical condition of the device during performance of the previously performed network operation, the physical state data indicating a geographic location of the device, a speed of the device, and whether the device was indoors or outdoors, and c) realized network performance data indicative of at least one of a realized throughput and a realized network delay of the previously performed network operation; generating a performance log entry corresponding to each of the previously performed network operations based on the received operational data; storing each performance log entry in a network performance database; receiving a request for a network performance estimate from the mobile device, the request including: a) current network condition data of the mobile device indicative of a current condition of the network at a time corresponding to the request, the current network condition data including a current signal strength at the antenna of the mobile device, and b) current physical state data indicative of a current physical condition of the mobile device at the time corresponding to the request, the current physical state data indicating a geographic location of the mobile device, a speed of the mobile device, and whether the mobile device is indoors or outdoors; performing a nearest neighbor search on the network performance database using the current network condition data and the current physical state data received in the request; receiving realized network performance data of K previously performed network operations, wherein K is an integer and wherein the K previously performed network operations are selected based on a degree of similarity between the network condition data and physical state data of the K previously performed network operations and the current network condition data and the current physical state data; and determining the network performance estimate based on the current network condition data, the current physical state data, and the realized network performance data, the network performance estimate indicating at least one of an estimated throughput and an estimated delay of the network operation to be performed.