IP Library Granted Patent US 7,133,369
Granted Patent B1
US 7,133,369 · App. 10/127,076 · Granted Nov 7, 2006

System and method for dynamic caching of data connections

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,133,369
App. No.
10/127,076
Granted
Nov 7, 2006
Kind
B1
Abstract

An integrated network and method for managing cached connections are provided. The integrated network includes one or more Web server clients in communication with one or more data servers that allow the Web server clients to request data over a communication channel. To facilitate repeated data requests, an individual Web server client requests that one or more communication channels be cached. The data server processes the Web server client request based on varying criteria. Upon the instantiation of a cached connection, both the Web server client and the data server may maintain the cached connections.

Claims (54)

1. In an integrated data network including one or more client computing devices in communication with one or more data servers, a method for managing persistent communication connections between a client computing device and a data server, the method comprising:

obtaining a request to establish a persistent communication channel;

calculating a number of persistent communication channels including any existing persistent communication channels and the requested persistent communication channel;

determining whether the number of requested persistent communication channels will exceed a threshold number of persistent communication channels between the data server and the client computing device; and

establishing a persistent communication channel if the requested persistent communication channel will not exceed the threshold number of persistent communication channels.

2. The method as recited in claim 1 , wherein determining whether the requested persistent communication channel will exceed a threshold number of persistent communication channels between the data server and the client computing device includes comparing the requested number of persistent communication channels to a fixed threshold number of persistent communication channels between the data server and the client computing device.

3. The method as recited in claim 1 , wherein determining whether the requested persistent communication channel will exceed a threshold number of persistent communication channels between the data server and the client computing device includes comparing the requested number of persistent communication channels to a dynamic threshold number of persistent communication channels between the data server and the client computing device.

4. The method as recited in claim 3 , wherein the dynamic threshold number of persistent communication channels is based upon a time of day.

5. The method as recited in claim 3 , wherein the dynamic threshold number of persistent communication channels is based upon financial criteria.

6. The method as recited in claim 3 , wherein the dynamic threshold number of persistent communication channels is based upon usage criteria.

7. The method as recited in claim 1 further transmitting a notification corresponding to whether the requested persistent communication channel will be established.

8. The method as recited in claim 1 , wherein the integrated data network includes a second client computing device in communication with the data server, the method further comprising:

obtaining a request to establish a persistent communication channel with the second client computing device;

calculating a number of persistent communication channels including any existing persistent communication channels and the requested persistent communication channel for the second client computing device;

determining whether the number of requested persistent communication channels will exceed a threshold number of persistent communication channels between the data server and the client computing device; and

establishing a persistent communication channel with the second client computing device if the requested persistent communication channel will not exceed the threshold number of persistent communication channels.

9. The method as recited in claim 8 , wherein determining whether the requested persistent communication channel will exceed a threshold number of persistent communication channels between the data server and the client computing device includes comparing the requested number of persistent communication channels to a fixed threshold number of persistent communication channels between the data server and the client computing device.

10. The method as recited in claim 8 , wherein determining whether the requested persistent communication channel will exceed a threshold number of persistent communication channels between the data server and the client computing device includes comparing the requested number of persistent communication channels to a dynamic threshold number of persistent communication channels between the data server and the client computing device.

11. The method as recited in claim 1 further comprising:

determining whether a persistent communication channel is stale; and

terminating the persistent communication channel if the communication channel is stale.

12. The method as recited in claim 1 , wherein determining whether the persistent communication channel is stale includes determining whether the persistent communication channel has transmitted data within a period of time.

13. The method as recited in claim 1 , wherein the client computing device is a Web server client.

14. A computer-readable medium having computer-executable instructions for performing the method recited in claim 1 .

15. An integrated data network for managing persistent communication channels, the integrated data network comprising:

one or more client computing devices operable to generate data requests corresponding to an identifiable set of data over a communication channel; and

one or more data servers, in communication the one or more client computing devices, and operable to process the client computing device requests according to the identifiable set of data;

wherein the one or more client computing devices are further operable to request a communication channel with a data server remain persistent; and

wherein the one or more data servers are further operable to calculate a number of persistent communication channels including any existing persistent communication channels and the requested persistent communication channel, determine whether the number of persistent communication channels will exceed a threshold number of persistent communication channels, establish a persistent communication channel if the number of persistent communication channels will not exceed a threshold number of persistent communication channels.

16. The integrated data network as recited in claim 15 , wherein the threshold number of communication channels is a fixed threshold number of persistent communication channels between the data server and the client computing device.

17. The integrated data network as recited in claim 15 , wherein the threshold number of communication channels is a dynamic threshold number of persistent communication channels between the data server and the client computing device.

18. The integrated data network as recited in claim 17 , wherein the dynamic threshold number of persistent communication channels is based upon a time of day.

19. The integrated data network as recited in claim 17 , wherein the dynamic threshold number of persistent communication channels is based upon financial criteria.

20. The integrated data network as recited in claim 17 , wherein the dynamic threshold number of persistent communication channels is based upon usage criteria.

21. The integrated data network as recited in claim 15 , wherein the one or more data servers are further operable to transmit a notification corresponding to whether the requested persistent communication channel will be established.

22. The integrated data network as recited in claim 15 further comprising a second client computing device in communication with the data server, wherein at least one of the one or more data servers is further operable to calculate a number of persistent communication channels for the second client computing device including any existing persistent communication channels and the requested persistent communication channel, determine whether the number of persistent communication channels will exceed a threshold number of persistent communication channels, establish a persistent communication channel with the second client computing device if the number of persistent communication channels will not exceed a threshold number of persistent communication channels.

23. The integrated data network as recited in claim 15 , wherein the client computing device is a Web server client.

24. In an integrated data network including one or more client computing devices in communication with one or more data servers, a method for managing cached communication connections between a client computing device and a data server, the method comprising:

issuing, by the client computing device, a request to establish a cached communication channel;

obtaining, by the data server, the request to establish a cached communication channel;

calculating, by the data server, a number of cached communication channels including any existing cached communication channels and the requested cached communication channel;

determining, by the data server, whether the number of requested cached communication channels will exceed a threshold number of cached communication channels between the data server and the client computing device; and

transmitting, by the data server, a notification of a granted cached communication channel if the number of requested cached communication channels will not exceed a threshold number of cached communication channels between the data server and the client computing device.

25. The method as recited in claim 24 , wherein determining whether the requested cached communication channel will exceed a threshold number of cached communication channels between the data server and the client computing device includes comparing the requested number of cached communication channels to a fixed threshold number cached communication channels between the data server and the client computing device.

26. The method as recited in claim 24 , wherein determining whether the requested cached communication channel will exceed a threshold number of cached communication channels between the data server and the client computing device includes comparing the requested number of cached communication channels to a dynamic threshold number of cached communication channels between the data server and the client computing device.

27. The method as recited in claim 26 , wherein the dynamic threshold number of cached communication channels is based upon a time of day.

28. The method as recited in claim 26 , wherein the dynamic threshold number of cached communication channels is based upon financial criteria.

29. The method as recited in claim 26 , wherein the dynamic threshold number of cached communication channels is based upon usage criteria.

30. The method as recited in claim 1 , wherein the integrated data network includes a second client computing device in communication with the data server, the method further comprising:

obtaining, by the data server, a request to establish a cached communication channel with the second client computing device;

calculating, by the data server, a number of cached communication channels including any existing cached communication channels and the requested cached communication channel for the second client computing device;

determining, by the data server, whether the number of requested cached communication channels will exceed a threshold number of cached communication channels between the data server and the client computing device; and

transmitting, by the data server, a notification to the second computing device of a granted cached communication channel if the number of requested cached communication channels will not exceed a threshold number of cached communication channels between the data server and the second client computing device.

31. The method as recited in claim 24 , wherein the client computing device is Web server client.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →