US2013332516A1PendingUtilityA1
Polling protocol for automatic load limiting
Est. expirySep 24, 2030(~4.2 yrs left)· nominal 20-yr term from priority
Inventors:Shital Shah
H04L 67/62H04L 43/0817H04L 67/42
37
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A client-specific or client-independent polling interval is provided to each client dynamically based on server load. The polling interval can be provided in the server polling response sent in response to a client polling request. The polling interval can be determined using a feedback control system or using a Bucket Reservation Method. The server uses a next polling interval and a flag that indicates if the previous polling request was ignored. Using these two parameters the server can continuously control the polling frequency from the client to achieve optimal performance.
Claims
exact text as granted — not AI-modifiedWhat is claimed:
1 . A system, comprising:
a processor and a memory; and a module executed by the processor that is configured to cause the processor to repeatedly adapt rate of polling by a plurality of clients on a server, the module configured to calculate a next polling interval for a client of the plurality of clients using a feedback control mechanism in which a polling interval is varied for each of the plurality of clients to achieve a desired server polling rate; and the calculated next polling interval is transmitted to the client in a server polling response.
2 . The system of claim 1 , wherein a filter implemented using exponential averaging is applied to at least one of the next polling interval or a rate of polling requests made on the server.
3 . The system of claim 2 , wherein the filter is configured to adapt a smoothing factor to dampen sudden changes in the next polling interval.
4 . The system of claim 2 , wherein the filter is configured to adapt a second smoothing factor to further dampen sudden changes in the next polling interval.
5 . The system of claim 1 , wherein a filter is applied to at least one of the next polling interval or a rate of polling requests made on the server, the filter implemented using at least one of recursive least square (RLS), a regression technique, or a neural network.
6 . The system of claim 1 , wherein the rate of polling is dynamically adjusted for each polling request to tune the rate of polling of the server to current operating conditions of the server.
7 . The system of claim 1 , wherein the server polling response comprises a value that indicates a client polling request was ignored by the server in response to receiving a client request disregarding the calculated next polling interval for the client.
8 . A method comprising:
receiving by a server module executing on a server computer a request from a client executing on a client computer; calculating a next polling interval for a plurality of clients polling the server computer to continuously adapt a rate of polling requests received by the server computer, wherein said calculating comprises calculating the next polling interval using a feedback control mechanism in which a polling interval is varied for each of the plurality of clients to achieve a desired server polling rate; and sending the next polling interval for the client to the client computer in a server polling response.
9 . The method of claim 8 , wherein said calculating comprises:
calculating the next polling interval by applying an exponential averaging filter to a previous client polling interval.
10 . The method of claim 8 , wherein said calculating comprises:
calculating the next polling interval by applying an exponential averaging filter to a rate of polling requests made on the server.
11 . The method of claim 10 , wherein said calculating the next polling interval by applying an exponential averaging filter to a rate of polling requests made on the server comprises:
adapting a smoothing factor of the exponential averaging filter to dampen sudden changes in the next polling interval.
12 . The method of claim 11 , wherein said calculating the next polling interval by applying an exponential averaging filter to a rate of polling requests made on the server further comprises:
adapting a second smoothing factor of the exponential averaging filter to further dampen sudden changes in the next polling interval.
13 . The method of claim 8 , wherein said calculating comprises:
calculating the next polling interval by applying a filter that implements at least one of recursive least square (RLS), a regression technique, or a neural network.
14 . The method of claim 8 , wherein the server polling response comprises a value that indicates a client polling request was ignored by the server computer in response to receiving a client request disregarding the calculated next polling interval for the client.
15 . A computer-readable storage medium comprising computer-executable instructions which when executed cause at least one processor to perform tasks comprising:
continuously adapt rate of polling of a server based on current utilization of the server by calculating a next polling interval for a client of the plurality of clients using a feedback control mechanism configured to adjust a current rate of polling requests to achieve a desired rate of polling requests according to a change in a number of the plurality of clients making polling requests; sending the calculated next polling interval to the client in a server polling response sent by the server to the client.
16 . The computer-readable storage medium of claim 15 , comprising further computer-executable instructions, which when executed cause the at least one processor to perform further tasks comprising:
calculating the next polling interval by applying an exponential averaging filter to a previous client polling interval.
17 . The computer-readable storage medium of claim 15 , comprising further computer-executable instructions, which when executed cause the at least one processor to perform further tasks comprising:
calculating the next polling interval by applying an exponential averaging filter to a rate of polling requests made on the server.
18 . The computer-readable storage medium of claim 17 , comprising further computer-executable instructions, which when executed cause the at least one processor to perform further tasks comprising:
adapting a smoothing factor of the exponential averaging filter to dampen sudden changes in the next polling interval.
19 . The computer-readable storage medium of claim 18 , comprising further computer-executable instructions, which when executed cause the at least one processor to perform further tasks comprising:
adapting a second smoothing factor of the exponential averaging filter to further dampen sudden changes in the next polling interval.
20 . The computer-readable storage medium of claim 15 , comprising further computer-executable instructions, which when executed cause the at least one processor to perform further tasks comprising:
calculating the next polling interval by applying a filter that implements at least one of recursive least square (RLS), a regression technique, or a neural network.Join the waitlist — get patent alerts
Track US2013332516A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.