Local Data Caching for Network Bandwidth Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data transfer mechanisms in local area networks are inefficient, as multiple computational machines often require the same data files or software updates, leading to heavy use of hardware and wide area network bandwidth, with each machine obtaining separate copies from external resources.
Innovation Solution
A method of data caching and distribution where computational machines within a linear communication orbit determine whether to cache specific data based on local availability, passing requests along the orbit and caching decisions, minimizing the need for wide area network access by utilizing local resources and caching within the network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If each computational machine separately obtains copies of the same data from external resources, then data availability is ensured, but wide area network bandwidth consumption increases and hardware resources are wasted
Solution Approach 1:
The system performs preliminary actions by having machines proactively search for and cache data in advance before it is actually needed. When a machine needs data, it first checks its local cache and the caches of other machines in the communication orbit, only resorting to external resources if necessary. This preliminary caching approach ensures data availability while minimizing WAN bandwidth consumption.
Solution Approach 2:
The patent introduces local caches as intermediary storage between machines and external data resources. These caches act as mediators that store data locally, allowing machines to access data from nearby nodes rather than directly from external resources. This intermediary layer reduces the burden on WAN bandwidth and external servers while maintaining data availability.
2Productivity
If multiple file servers are used to serve data requests, then data distribution capability is improved, but system complexity and hardware requirements increase
Solution Approach 1:
The system implements self-service by enabling computational machines to autonomously search for, retrieve, and cache data without requiring centralized file servers. Each machine independently manages its own data requests by checking local caches and communicating with peers in the communication orbit. This self-service approach eliminates the need for complex file server infrastructure while maintaining effective data distribution.
Solution Approach 2:
The patent merges the data distribution function into the computational machines themselves rather than separating it into dedicated file servers. By combining data caching and distribution capabilities within the existing machine infrastructure and communication orbit, the system achieves effective data distribution without adding separate server hardware, thus reducing overall system complexity.
3Loss of energy
If data is cached locally to reduce WAN bandwidth usage, then network performance is improved, but cache management complexity increases
Solution Approach 1:
The system employs feedback mechanisms where machines continuously monitor data requests and cache effectiveness. When a machine receives a data request, it feedbacks information about data availability and cache status to other machines in the communication orbit. This feedback enables intelligent cache management decisions, allowing the system to optimize bandwidth usage while keeping cache management complexity manageable through distributed coordination.
Data Source
AI summary
In accordance with some embodiments, a computational machine having one or more processors, a local cache and memory receives from a first machine a data request that is used to request specific data. The computational machine determines whether the computational machine stores the specific data in the local cache. In accordance with a determination that the computational machine does not store the specific data in the local cache, the computational machine responds to the data request by passing the data request to a second machine and returning the specific data to the first machine when the second machine returns the specific data to the computational machine. Additionally, the computational machine determines whether to store the returned specific data in the local cache according to a data caching method.


