Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: generating, by a server, one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client from a plurality of clients and the server, wherein each data point from the plurality of data points represents one or more of: a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request; determining, by the server and based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met: calculating, by the server, updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmitting, by the server and to one or more clients of the plurality of clients, the updated client-server communication parameters.
2. The method of claim 1 , wherein the updated client-server communication parameters further include a socket timeout.
3. The method of claim 1 , wherein each client from the plurality of clients is a member of a unique class of clients.
4. The method of claim 3 , wherein the class of clients is defined by one or more of: a network carrier, a geographic location, a characteristic of an affiliated user account, an IP address range, and a type of client device.
5. The method of claim 1 , wherein determining whether a condition for triggering a client-server communication parameter update has been met comprises: calculating, by the server, statistical characteristics of the one or more data sets; and determining, by the server, whether the statistical characteristics of one of the one or more data sets exceeds a threshold.
6. The method of claim 5 , further comprising: determining, by the server and based on current values of the client-server communication parameters, the threshold.
7. The method of claim 1 , wherein calculating updated client-server communication parameters is based at least in part on one or more of: statistical characteristics of the one or more data sets, historical client-server communication performance, and occurrence of an event.
8. The method of claim 7 , wherein the event comprises one or more of: a server reset of a data transfer limit, a network carrier reset of a data transfer limit, and release of new content at the server.
9. The method of claim 1 , wherein transmitting the updated client-server communication parameters to one or more clients comprises one of: transmitting the updated client-server communication parameters in a header of a response to a client request, transmitting the updated client-server communication parameters in a payload of a response to a client request, and transmitting the updated client-server communication parameters via a push notification.
10. The method of claim 9 , wherein transmitting the updated client-server communication parameters via the push notification comprises one of: transmitting the updated client-server communication parameters via a broadcast, and transmitting the updated client-server communication parameters via a multicast.
11. A device comprising: a processor; and a computer readable storage medium having stored thereon one or more modules executable by the processor to: generate one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client forma plurality of clients and the device, wherein each data point from the plurality of data points represents one or more of: a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request; determine, based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met: calculate updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmit, to one or more clients of the plurality of clients, the updated client-server communication parameters.
12. The server of claim 11 , wherein the updated client-server communication parameters further include a socket timeout.
13. The server of claim 11 , wherein each data point in each data set corresponds to an instance of client-server communication involving a client that is a member of a unique class of clients.
14. The server of claim 13 , wherein the class of clients is defined by one or more of: a network carrier, a geographic location, a characteristic of an affiliated user account, an IP address range, and a type of client device.
15. The server of claim 11 , wherein the one or more modules are executable by the processor to determine whether the condition for triggering the client-server communication parameter update by at least being executable by the processor to: calculate statistical characteristics of the one or more data sets; and determine whether the statistical characteristics of one of the one or more data sets exceeds a threshold.
16. A non-transitory computer-readable storage medium encoded with instructions that, when executed, cause one or more processors of a computing device to: generate one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client from a plurality of clients and the device, wherein each data point from the plurality of data points represents one or more of: a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request; determine, based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met: calculate updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmit, to one or more clients of the plurality of clients, the updated client-server communication parameters.
17. The non-transitory computer-readable storage medium of claim 16 , wherein each data point in each data set corresponds to an instance of client-server communication involving a client that is a member of a unique class of clients, and wherein the class of clients is defined by one or more of a network carrier, a geographic location, a characteristic of an affiliated user account, an IP address range, or a type of client device.
18. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the one or more processors to: calculate statistical characteristics of the one or more data sets; and determine whether the statistical characteristics of one of the one or more data sets exceeds a threshold.
19. The non-transitory computer-readable storage medium of claim 16 , wherein the updated client-server communication parameters are calculated based at least in part on one or more of: statistical characteristics of the one or more data sets, historical client-server communication performance, and occurrence of an event.
20. The device of claim 11 , wherein the updated client-server communication parameters are calculated based at least in part on one or more of: statistical characteristics of the one or more data sets, historical client-server communication performance, and occurrence of an event.
Unknown
February 19, 2019
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.