Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
FAST DATA CONNECTION SYSTEM AND METHOD
Document Type and Number:
WIPO Patent Application WO/2019/236376
Kind Code:
A1
Abstract:
Systems and apparatus for implementation and management of a fast data connection in a computer network and methods for making and using the same. In various embodiment, these technologies are used to facilitate fast data exchanges between network nodes among other things.

Inventors:
KOWALEWSKI DAMIAN (US)
COGLITORE GIOVANNI (US)
LEVINSON ROGER (US)
Application Number:
PCT/US2019/034648
Publication Date:
December 12, 2019
Filing Date:
May 30, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
R STOR INC (US)
International Classes:
H04L29/06
Foreign References:
US20170357611A12017-12-14
US20150365506A12015-12-17
US20180048569A12018-02-15
US20150039793A12015-02-05
US20150288763A12015-10-08
Attorney, Agent or Firm:
STOCKWELL, Davin et al. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A method for providing a fast data connection between network components, comprising:

establishing high-speed communication between a first intermediate server in

communication with a first network component and a second intermediate server in

communication with a second network component.

2. The method of claim 1, wherein data exchanges between the first and second network components are accelerated via the first and second intermediate servers.

3. The method of claim 1 or claim 2, further comprising providing a first

communication connection between the first intermediate server and the first network

component.

4. The method of claim 3, wherein said providing the first communication connection includes optimizing data transfer latency, bandwidth or both between the first intermediate server and the first network component.

5. The method of claim 3, wherein the first communication connection supports one or more conventional communication protocol standards.

6. The method of claim 5, wherein the conventional communication protocol standards include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

7. The method of any one of claims 1, 2 and 4-6, further comprising providing a second communication connection between the second intermediate server and the second network component.

8. The method of claim 7, wherein said providing the second communication connection includes optimizing data transfer latency, bandwidth or both between the second intermediate server and the second network component.

9. The method of claim 7, wherein the second communication connection supports one or more conventional communication protocol standards.

10. The method of claim 9, wherein the conventional communication protocol standards include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

11. The method of any one of claims 1, 2, 4-6 and 8-10, wherein the second

communication connection supports at least one communication protocol standard that is supported by the first communication connection.

12. The method of any one of claims 1, 2, 4-6 and 8-10, wherein the second

communication connection supports at least one communication protocol standard that is not supported by the first communication connection.

13. The method of any one of claims 1, 2, 4-6 and 8-10, wherein the first communication connection supports at least one communication protocol standard that is not supported by the second communication connection.

14. The method of any one of claims 1, 2, 4-6 and 8-10, wherein said establishing the high-speed communication includes establishing the high-speed communication with one or more high-speed communication protocol standards.

15. The method of claim 14, wherein the high-speed communication protocol standards include at least one multi-path communication protocol standard.

16. The method of claim 14 or claim 15, wherein the high-speed communication protocol standards include Remote Direct Memory Access (RDMA), RDMA over Converged Ethernet (RoCE), InfiniBand (IB), or a combination thereof.

17. The method of any one of claims 1, 2, 4-6, 8-10 and 15, further comprising selecting the first intermediate server from a first pool of available first intermediate servers each being configured for communicating with the first network component via respective first

communication connections, wherein said establishing the high-speed communication includes establishing the high-speed communication between the available first intermediate servers and the second intermediate server.

18. The method of claim 17, wherein said selecting the first intermediate server includes optimizing data transfer latency, bandwidth or both between the first intermediate server and the first network component.

19. The method of claim 17, wherein said selecting the first intermediate server comprises permanently selecting the first intermediate server.

20. The method of claim 17, wherein said selecting the first intermediate server comprises dynamically selecting the first intermediate server.

21. The method of claim 20, wherein said dynamically selecting the first intermediate server includes periodically selecting the first intermediate server, selecting the first intermediate server based upon a predetermined event-based criteria or both.

22. The method of claim 21, wherein said periodically selecting the first intermediate server includes periodically selecting the first intermediate server on a daily basis or a monthly basis, and wherein the predetermined event-based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available first intermediate servers in the first pool.

23. The method of claim 17, further comprising selecting the second intermediate server from a second pool of available second intermediate servers each being configured for communicating with the second network component via respective second communication connections, wherein said establishing the high-speed communication includes establishing the high-speed communication between the available second intermediate servers and the available first intermediate servers.

24. The method of claim 23, wherein said selecting the second intermediate server includes optimizing data transfer latency, bandwidth or both between the second intermediate server and the second network component.

25. The method of claim 23, wherein each of the high-speed communication connections supports high-speed communications between one of the first intermediate servers and one of the second intermediate servers.

26. The method of claim 23, wherein said selecting the second intermediate server comprises permanently selecting the second intermediate server.

27. The method of claim 23, wherein said selecting the second intermediate server comprises dynamically selecting the second intermediate server.

28. The method of claim 27, wherein said dynamically selecting the second intermediate server includes periodically selecting the second intermediate server, selecting the second intermediate server based upon a predetermined event-based criteria or both.

29. The method of claim 28, wherein said periodically selecting the second intermediate server includes periodically selecting the second intermediate server on a daily basis or a monthly basis, and wherein the predetermined event-based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available second intermediate servers in the second pool.

30. A system for providing a fast data connection between network components comprising means for carrying out the method of any one of claims 1, 2, 4-6, 8-10, 15 and 18-29.

31. A computer program product for providing a fast data connection between network components comprising instruction for carrying out the method of any one of claims 1, 2, 4-6, 8- 10, 15 and 18-29.

32. A system for providing a fast data connection between network components, comprising:

a first intermediate server for communicating with a first network component via a first communication connection that optimizes data transfer latency, bandwidth or both between said first intermediate server and the first network component;

a second intermediate server for communicating with a second network component via a second communication connection that optimizes data transfer latency, bandwidth or both between said second intermediate server and the second network component; and

a high-speed communication connection for providing high-speed communications between said first and second intermediate servers.

33. The system of claim 32, wherein said first and second intermediate servers and said high speed communication connection accelerate data exchanges between the first and second network components.

34. The system of claim 32 or claim 33, wherein said first intermediate server is geographically proximate to the first network component.

35. The system of claim 32 or claim 33, wherein said second intermediate server is geographically proximate to the second network component or both.

36. The system of claim 32 or claim 33, wherein the first communication connection supports one or more conventional communication protocol standards.

37. The system of claim 36, wherein the conventional communication protocol standards include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

38. The system of any one of claims 32, 33 and 37, wherein the second communication connection supports one or more conventional communication protocol standards.

39. The system of claim 38, wherein the conventional communication protocol standards include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

40. The system of claim 38, wherein the first communication connection and the second communication connection support at least one common communication protocol standard.

41. The system of any one of claims 32, 33, 37, 39 and 40, wherein said high-speed communication connection supports one or more high-speed communication protocol standards.

42. The system of claim 41, wherein the high-speed communication protocol standards include at least one multi-path communication protocol standard.

43. The system of claim 41 or claim 42, wherein the high-speed communication protocol standards include Remote Direct Memory Access (RDMA), RDMA over Converged Ethernet (RoCE), InfiniBand (IB), or a combination thereof.

44. The system of any one of claims 32, 33, 37, 39, 40 and 42, further comprising a first pool of available first intermediate servers each being configured for communicating with the first network component via respective first communication connections and a plurality of high speed communication connections for supporting high-speed communications between said available first intermediate servers and said second intermediate server, wherein said first intermediate server comprises a selected first intermediate server from among the available first intermediate servers in said first pool.

45. The system of claim 44, wherein said selected first intermediate server is selected from among said available first intermediate servers to optimize the data transfer latency, the bandwidth or both between said selected first intermediate server and the first network component.

46. The system of claim 44, wherein said selected first intermediate server is permanently selected.

47. The system of claim 44, wherein said selected first intermediate server is dynamically selected.

48. The system of claim 47, wherein said selected first intermediate server is periodically selected, is selected based upon a predetermined event-based criteria or both.

49. The system of claim 48, wherein said selected first intermediate server is periodically selected on a daily basis or a monthly basis, and wherein the predetermined event- based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available first intermediate servers in the first pool.

50. The system of any one of claims 32, 33, 37, 39, 40, 42 and 45-49, further comprising a second pool of available second intermediate servers each being configured for communicating with the second network component via respective second communication connections and a plurality of high-speed communication connections for supporting high-speed communications between said available first intermediate servers and said available second intermediate servers, wherein said second intermediate server comprises a selected second intermediate server from among the available second intermediate servers in said second pool.

51. The system of claim 50, wherein said selected second intermediate server is selected from among said available second intermediate servers to optimize the data transfer latency, the bandwidth or both between said selected second intermediate server and the second network component.

52. The system of claim 50, wherein said selected second intermediate server is permanently selected.

53. The system of claim 50, wherein said selected second intermediate server is dynamically selected.

54. The system of claim 53, wherein said selected second intermediate server is periodically selected, is selected based upon a predetermined event-based criteria or both.

55. The system of claim 54, wherein said selected second intermediate server is periodically selected on a daily basis or a monthly basis, and wherein the predetermined event- based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available second intermediate servers in the second pool.

56. The system of claim 50, wherein each of said high-speed communication connections supports high-speed communications between one of said available first intermediate servers and one of said available second intermediate servers.

57. The system of claim 50, wherein said high-speed communication connections support high-speed communications between said selected first intermediate server and said selected second intermediate server.

Description:
S P E C I F I C A T I O N

FAST DATA CONNECTION SYSTEM AND METHOD

CROSS- REFERENCE TO RELATED APPLICATIONS

[0001] This application claims the benefit of, and priority to, United States Provisional Application Serial No. 62/680,948, filed June 5, 2018, the disclosure of which is hereby incorporated herein by reference in its entirety and for all purposes.

FIELD

[0002] The present disclosure relates generally to digital data processing and more particularly, but not exclusively, to systems and methods for providing a fast data connection between network components.

BACKGROUND

[0003] Conventional computer networks comprise a plurality of interconnected servers, computers and other network components. The various network components can communicate in a wired and/or wireless manner. As a part of this communication, data is exchanged among the network components typically via data packets in accordance with a communication protocol standard, such as Transmission Control Protocol (TCP) and/or User Datagram Protocol (UDP). The same communication protocol standard is used to transmit the data packets as the data packets traverse the computer network from a source network component to a destination network component.

[0004] Exchanging data via conventional communication protocol standards, however, can be problematic. These communication protocol standards introduce data loss, latency and throughput issues during transmission of data packets. UDP, for example, is an unreliable, connectionless protocol that can result in data loss, errors or duplication. Likewise, TCP uses an in-packet checksum for end-to-end reliability, which is expensive and creates bottlenecks in packet processing.

[0005] In view of the foregoing, a need exists for an improved data communication system and method for integrating servers, computers and other network components in an effort to overcome the aforementioned obstacles and deficiencies of conventional computer networks.

SUMMARY

[0006] The present disclosure relates to systems and/or apparatuses for implementation and management of a fast data connection in a computer network and methods for making and using the same and methods for making and using the same. In accordance with a first aspect disclosed herein, there is set forth a method for providing a fast data connection between network components, wherein the method comprises establishing high-speed communication between a first intermediate server in communication with a first network component and a second intermediate server in communication with a second network component.

[0007] In some embodiments of the disclosed method of the first aspect, data exchanges between the first and second network components are accelerated via the first and second intermediate servers.

[0008] In some embodiments, the disclosed method of the first aspect can further comprise providing a first communication connection between the first intermediate server and the first network component. Providing the first communication connection can include optimizing data transfer latency, bandwidth or both between the first intermediate server and the first network component. The first communication connection optionally can support one or more

conventional communication protocol standards, including Transmission Control

Protocol (TCP), User Datagram Protocol (UDP) or both.

[0009] In some embodiments, the disclosed method of the first aspect can further comprise providing a second communication connection between the second intermediate server and the second network component. Providing the second communication connection can include optimizing data transfer latency, bandwidth or both between the second intermediate server and the second network component. The second communication connection optionally can support one or more conventional communication protocol standards, including Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

[0010] The communication protocol standards supported by the second communication connection can be the same as and/or different from the communication protocol standards supported by the first communication connection. Stated somewhat differently, the second communication connection can support at least one communication protocol standard that is supported by the first communication connection and/or the second communication connection can support at least one communication protocol standard that is not supported by the first communication connection. Additionally and/or alternatively, the first communication connection can support at least one communication protocol standard that is not supported by the second communication connection. In selected embodiments, the first communication connection and the second communication connection can support at least one common communication protocol standard.

[0011] In some embodiments of the disclosed method of the first aspect, establishing the high speed communication can include establishing the high-speed communication with one or more high-speed communication protocol standards. The high-speed communication protocol standards optionally can include at least one multi-path communication protocol standard.

Exemplary high-speed (and/or multi-path) communication protocol standards can include Remote Direct Memory Access (RDMA), RDMA over Converged Ethernet (RoCE), InfiniBand (IB), or a combination thereof.

[0012] In some embodiments, the disclosed method of the first aspect can further comprise selecting the first intermediate server from a first pool of available first intermediate servers each being configured for communicating with the first network component via respective first communication connections, wherein the establishing the high-speed communication can include establishing the high-speed communication between the available first intermediate servers and the second intermediate server. Selecting the first intermediate server can include optimizing data transfer latency, bandwidth or both between the first intermediate server and the first network component.

[0013] Selecting the first intermediate server can comprise permanently selecting the first intermediate server and/or can comprise dynamically selecting the first intermediate server. Dynamically selecting the first intermediate server can include periodically selecting the first intermediate server, selecting the first intermediate server based upon a predetermined event- based criteria or both. Periodically selecting the first intermediate server can include periodically selecting the first intermediate server on a daily basis or a monthly basis, and/or the

predetermined event-based criteria can include occurrence of a power outage or an earthquake proximate to one or more of the available first intermediate servers in the first pool.

[0014] In some embodiments, the disclosed method of the first aspect can further comprise selecting the second intermediate server from a second pool of available second intermediate servers each being configured for communicating with the second network component via respective second communication connections, wherein the establishing the high-speed communication can include establishing the high-speed communication between the available second intermediate servers and the available first intermediate servers. Optionally, each of the high-speed communication connections supports high-speed communications between one of the first intermediate servers and one of the second intermediate servers.

[0015] Selecting the second intermediate server can include optimizing data transfer latency, bandwidth or both between the second intermediate server and the second network component. Additionally and/or alternatively, selecting the second intermediate server can comprise permanently selecting the second intermediate server and/or can comprise dynamically selecting the second intermediate server. Dynamically selecting the second intermediate server can include periodically selecting the second intermediate server, selecting the second intermediate server based upon a predetermined event-based criteria or both. Periodically selecting the second intermediate server can include periodically selecting the second intermediate server on a daily basis or a monthly basis, and/or the predetermined event-based criteria can include occurrence of a power outage or an earthquake proximate to one or more of the available second intermediate servers in the second pool.

[0016] In accordance with a second aspect disclosed herein, there is set forth a system for providing a fast data connection between network components, wherein the system comprises means for carrying out each embodiment of the method of the first aspect.

[0017] In accordance with a third aspect disclosed herein, there is set forth a computer program product for providing a fast data connection between network components, wherein the computer program product comprises instruction for carrying out each embodiment of the method of the first aspect.

[0018] In accordance with a fourth aspect disclosed herein, there is set forth a system for providing a fast data connection between network components, wherein the system comprises:

[0019] a first intermediate server for communicating with a first network component via a first communication connection that optimizes data transfer latency, bandwidth or both between the first intermediate server and the first network component;

[0020] a second intermediate server for communicating with a second network component via a second communication connection that optimizes data transfer latency, bandwidth or both between the second intermediate server and the second network component; and

[0021] a high-speed communication connection for providing high-speed communications between the first and second intermediate servers.

[0022] In some embodiments of the disclosed system of the fourth aspect, the first and second intermediate servers and the high speed communication connection can accelerate data exchanges between the first and second network components. Additionally and/or alternatively, the first intermediate server can be geographically proximate to the first network component, and/or the second intermediate server can be geographically proximate to the second network component or both. [0023] In some embodiments of the disclosed system of the fourth aspect, the first communication connection can support one or more conventional communication protocol standards. The conventional communication protocol standards can include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both.

[0024] In some embodiments of the disclosed system of the fourth aspect, the second communication connection can support one or more conventional communication protocol standards. The conventional communication protocol standards can include Transmission Control Protocol (TCP), User Datagram Protocol (UDP) or both. The first communication connection and the second communication connection optionally can support at least one common communication protocol standard.

[0025] In some embodiments of the disclosed system of the fourth aspect, the high-speed communication connection can support one or more high-speed communication protocol standards. The high-speed communication protocol standards optionally can include at least one multi-path communication protocol standard. Exemplary high-speed (and/or multi-path) communication protocol standards can include Remote Direct Memory Access (RDMA), RDMA over Converged Ethernet (RoCE), InfiniBand (IB), or a combination thereof.

[0026] In some embodiments, the disclosed system of the fourth aspect can further comprise a first pool of available first intermediate servers each being configured for communicating with the first network component via respective first communication connections and a plurality of high-speed communication connections for supporting high-speed communications between the available first intermediate servers and the second intermediate server, wherein the first intermediate server comprises a selected first intermediate server from among the available first intermediate servers in the first pool. The selected first intermediate server can be selected from among the available first intermediate servers to optimize the data transfer latency, the bandwidth or both between the selected first intermediate server and the first network component. [0027] Additionally and/or alternatively, the selected first intermediate server can be permanently selected and/or can be dynamically selected. The selected first intermediate server, for example, can be periodically selected, can be selected based upon a predetermined event- based criteria or both. In some embodiments, the selected first intermediate server can be periodically selected on a daily basis or a monthly basis, and/or the predetermined event-based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available first intermediate servers in the first pool.

[0028] In some embodiments, the disclosed system of the fourth aspect can further comprise a second pool of available second intermediate servers each being configured for communicating with the second network component via respective second communication connections and a plurality of high-speed communication connections for supporting high-speed communications between the available first intermediate servers and the available second intermediate servers, wherein the second intermediate server comprises a selected second intermediate server from among the available second intermediate servers in the second pool. The selected second intermediate server can be selected from among the available second intermediate servers to optimize the data transfer latency, the bandwidth or both between the selected second intermediate server and the second network component.

[0029] Additionally and/or alternatively, the selected second intermediate server can be permanently selected and/or can be dynamically selected. The selected second intermediate server, for example, can be periodically selected, can be selected based upon a predetermined event-based criteria or both. In some embodiments, the selected second intermediate server can be periodically selected on a daily basis or a monthly basis, and/or the predetermined event- based criteria includes occurrence of a power outage or an earthquake proximate to one or more of the available second intermediate servers in the second pool.

[0030] In some embodiments of the disclosed system of the fourth aspect, each of the high speed communication connections can support high-speed communications between one of the available first intermediate servers and one of the available second intermediate servers. The high-speed communication connections, for example, can support high-speed communications between the selected first intermediate server and the selected second intermediate server.

BRIEF DESCRIPTION OF THE DRAWINGS

[0031] Fig. 1 is an exemplary top-level drawing illustrating an embodiment of a fast data connection system for enabling data to be exchanged between a first and second network components via a predetermined network path comprising one or more intermediate network components.

[0032] Fig. 2 is an exemplary top-level drawing illustrating an alternative embodiment of the fast data connection system of Fig. 1, wherein a plurality of potential predetermined network paths are available for exchanging data between the first and second network components.

[0033] It should be noted that the figures are not drawn to scale and that elements of similar structures or functions are generally represented by like reference numerals for illustrative purposes throughout the figures. It also should be noted that the figures are only intended to facilitate the description of the preferred embodiments. The figures do not illustrate every aspect of the described embodiments and do not limit the scope of the present disclosure.

DETAILED DESCRIPTION

[0034] Since currently-available computer networks introduce data loss, latency and throughput issues during data transmission, a fast data connection system that enables data to be exchanged between a first and second network components via a predetermined network path can prove desirable and provide a basis for a wide range of computer applications, such as computer networks with wireless and/or wired connections. This result can be achieved, according to one embodiment disclosed herein, by a fast data connection system 100 as illustrated in Fig. 1.

[0035] Turning to Fig. 1, the fast data connection system 100 is shown as including a plurality of interconnected network components (or resources). These network components include server systems 110 that are configured to communicate with one or more other server systems 110 via at least one communication connection 120. Each server system 110 can comprise a computer or a computer program for managing access to a centralized resource (or service) in the network; whereas, each communication connection 120 can support one or more selected communication protocols and preferably comprises a bi-directional communication connection. The fast data connection system 100 can include any predetermined number of network components, which can be arranged in any desired configuration.

[0036] For purposes of illustration only, the fast data connection system 100 of Fig. 1 includes a first server 110A that can communicate with a second server 110Z via a communication connection 120AZ and/or can communicate with a first intermediate server 110B via a communication connection 120AB. The second server 110Z similarly can communicate with the first server 110A via the communication connection 120AZ and/or can communicate with a second intermediate server 110Y via a communication connection 120YZ. In addition, the first intermediate server 110B and the second intermediate server 110Y likewise can communicate via a communication connection 120BY. Stated somewhat differently, the first and second servers 110 A, 110Z can communicate directly via the communication connection 120AZ or indirectly via the first and second intermediate servers 110B, 110Y.

[0037] Advantageously, the first and second intermediate servers 110B, 110Y can be configured to greatly accelerate data exchanges between the first and second servers 110 A,

110Z. Accordingly, data exchanges between the first and second servers 110A, 110Z preferably are conducted via the first and second intermediate servers 110B, 110Y rather than directly via the communication connection 120AZ. Thereby, data transmitted by the first server 110A can be sent to first intermediate server 110B, which forwards the transmitted data to the second intermediate server 110Y via the communication connection 120BY. The second intermediate server 110Y then can forward the transmitted data to the second server 110Z.

[0038] The first intermediate server 110B, for example, can be selected to minimize data transfer latency between the first server 110A and the first intermediate server 110B. In other words, the communication connection 120AB can be selected to optimize the data latency and/or bandwidth between the first server 110A and the first intermediate server 110B. In one embodiment, the first intermediate server 110B can be geographically proximate to the first server 110A to help ensure that the data latency is minimized. Data thereby can be exchanged between the first server 110A and the first intermediate server 110B via a selected conventional communication protocol standard, such as Transmission Control Protocol (TCP) and/or User Datagram Protocol (UDP), without limitation.

[0039] Similarly, the second intermediate server 110Y can be selected to minimize data transfer latency between the second server 110Z and the second intermediate server 110Y.

Stated somewhat differently, the communication connection 120YZ can be selected to optimize the data latency and/or bandwidth between the second server 110Z and the second intermediate server 110Y. In one embodiment, the second intermediate server 110Y can be geographically proximate to the second server 110Z to help ensure that the data latency is minimized. Data thereby can be exchanged between the second server 110Z and the second intermediate server 110Y via a selected conventional communication protocol standard, such as Transmission Control Protocol (TCP) and/or User Datagram Protocol (UDP), without limitation.

[0040] To help facilitate the accelerate data exchanges between the first and second servers 110 A, 110Z, the communication connection 120BY between the first intermediate server 110B and the second intermediate server 110Y preferably comprises a high speed (or low latency) communication connection. In selected embodiments, the high-speed communication protocol standards can include a multi-path communication protocol standard. Exemplary communication connection 120BY can support a selected high-speed (and/or multi-path) communication protocol standard, such as Remote Direct Memory Access (RDMA), RDMA over Converged Ethernet (RoCE), InfiniBand (IB) or any combination thereof, without limitation.

[0041] Turning to Fig. 2, an alternative embodiment of the fast data connection system 100 is shown. The fast data connection system 100 is provided in the manner set forth in more detail above with reference to Fig. 1 and includes a plurality of potential (or available or candidate) first intermediate servers 110B’ and/or a plurality of potential (or available or candidate) second intermediate servers 110U\ Stated somewhat differently, the fast data connection system 100 can include a first pool 112B of available first intermediate servers 110B’ and/or a second pool 112Y of available second intermediate servers l lOYf

[0042] Each available first intermediate server 110B’ can communicate with the first server 110A via respective communication connections 120 and can communicate with at least one other available first intermediate server 110B’ and/or at least one available second intermediate server 110Y’ via respective communication connections 120. Each available first intermediate server 110B’ is a candidate for selection as the first intermediate server 110B based upon the relative data latency and/or bandwidth of the communication connections 120 between the first server 110A and the respective available first intermediate servers 1 l0B\

[0043] In one embodiment, the first intermediate server 110B can comprise a selected first intermediate server 114B from among the first pool 112B of the available first intermediate servers 110B’. The selection of the first intermediate server 110B, for example, can comprise a static selection in which the selected first intermediate server 114B is permanently selected as the first intermediate server 110B. Additionally and/or alternatively, the selection of the first intermediate server 110B can comprise a dynamic selection in which selection of the selected first intermediate server 114B from among the first pool 112B of the available first intermediate servers 110B’ can change over time.

[0044] The selection of the first intermediate server 110B can be based upon any

predetermined criteria. Exemplary predetermined criteria can include, but are not limited to, time-based criteria and/or event-based criteria. For example, the selection of the first intermediate server 110B can occur periodically, such as daily, monthly, etc., and/or can occur based upon occurrence of a predetermined event, such as a power outage and/or an earthquake, proximate to one or more of the available first intermediate servers 110B’ in the first pool 112B. [0045] Similarly, each available second intermediate server 110Y’ can communicate with the second server 110Z via respective communication connections 120 and can communicate with at least one other available first intermediate server 110B’ and/or at least one available second intermediate server 110Y’ via respective communication connections 120. Each available second intermediate server 110Y’ is a candidate for selection as the second intermediate server 110Y based upon the relative data latency and/or bandwidth of the communication connections 120 between the second server 110Z and the respective available second

intermediate servers 110Y’.

[0046] In one embodiment, the second intermediate server 110Y can comprise a selected second intermediate server 114Y from among the second pool 112Y of the available second intermediate servers 110Y’. The selection of the second intermediate server 110Y, for example, can comprise a static selection in which the selected second intermediate server 112Y is permanently selected as the second intermediate server 110Y. Additionally and/or alternatively, the selection of the second intermediate server 110Y can comprise a dynamic selection in which selection of the selected second intermediate server 114Y from among the second pool 112Y of the available second intermediate servers 110Y’ can change over time.

[0047] The selection of the second intermediate server 110Y can be based upon any predetermined criteria. Exemplary predetermined criteria can include, but are not limited to, time-based criteria and/or event-based criteria. For example, the selection of the second intermediate server 110Y can occur periodically, such as daily, monthly, etc., and/or can occur based upon occurrence of a predetermined event, such as a power outage or an earthquake, proximate to one or more of the available second intermediate servers 110Y’ in the second pool 112Y.

[0048] Although various implementations are discussed herein and shown in the figures, it will be understood that the principles described herein are not limited to such. For example, while particular scenarios are referenced, it will be understood that the principles described herein apply to any suitable type of computer network, including, but not limited to, a Local Area Network (LAN), a Wide Area Network (WAN), a Wireless Local Area Network (WLAN), a Metropolitan Area Network (MAN) and/or a Campus Area Network (CAN).

[0049] Accordingly, persons of ordinary skill in the art will understand that, although particular embodiments have been illustrated and described, the principles described herein can be applied to different types of computer networks. Certain embodiments have been described for the purpose of simplifying the description, and it will be understood to persons skilled in the art that this is illustrative only. It will also be understood that reference to a“server,” “computer,”“network component” or other hardware or software terms herein can refer to any other type of suitable device, component, software, and so on. Moreover, the principles discussed herein can be generalized to any number and configuration of systems and protocols and can be implemented using any suitable type of digital electronic circuitry, or in computer software, firmware, or hardware. Accordingly, while this specification highlights particular implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular inventions.