CDN Data Object Auctioning for Node-Specific Serving and Caching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing content delivery networks (CDNs) face inefficiencies in distributing content serving and caching tasks due to suboptimal decision-making processes, where the first willing node may not be the best choice for serving or caching, and current bidding methods lack node-specific information necessary for optimal distribution.
Innovation Solution
Implement a centralized auctioning system where CDN nodes bid for serving and/or caching data objects based on node-specific information, ensuring efficient distribution by redirecting requests to the node with the highest bid, and allowing nodes to determine bids based on their capabilities and preferences.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the first queried dCDN node that is willing to serve content is selected, then the request can be served quickly, but the content distribution efficiency is suboptimal because the first node may not be the best choice for serving or caching
Solution Approach 1:
The system performs preliminary actions by having dCDN nodes pre-calculate and submit bids for serving and caching content before actual requests arrive. The uCDN node collects these bids in advance and uses them to make optimal routing decisions, thus resolving the contradiction between quick service and efficient distribution.
Solution Approach 2:
The system introduces dynamic bid values that change based on node-specific conditions such as cache availability, server load, and geographic location. These dynamic bids allow the system to adaptively select the best dCDN node for each request, optimizing both serving speed and distribution efficiency based on real-time conditions.
2Productivity
If a bidding concept per dCDN node is implemented, then optimal content distribution can be achieved, but CSPs would require significant information about content popularity and node characteristics which they often do not have
Solution Approach 1:
The dCDN nodes perform self-service by autonomously evaluating their own capabilities and generating bid values based on their local knowledge of cache status, server load, and geographic characteristics. This eliminates the need for CSPs to have complex information about nodes, as each node independently determines its own bid based on its current state.
Solution Approach 2:
The system changes the parameters used for bidding from content-centric parameters (which CSPs would need to know) to node-centric parameters (which nodes themselves know). Each dCDN node uses its own operational parameters such as cache hit rate, available capacity, and current load to determine its bid, simplifying the information requirements for CSPs.
3Productivity
If centralized auctioning is implemented to optimize content distribution, then task allocation efficiency is improved, but the auctioning process complexity increases
Solution Approach 1:
The centralized auctioning process is segmented into independent, standardized steps: bid request generation, bid submission, bid evaluation, and request redirection. Each segment is handled by a dedicated module, reducing overall process complexity while maintaining optimization benefits. The segmentation allows parallel processing and simplifies debugging and maintenance.
Data Source
AI summary
A method comprises receiving a data object request to serve a data object and transmitting bid requests to a plurality of systems. The data object request identifies the data object and the bid requests comprise information relating to the data object and request the plurality of systems to provide a bid value for serving and/or caching the data object. The method further comprises determining a best bid from one or more bid values received in response to the transmitted bid requests and redirecting or forwarding the data object request to the system which transmitted the best bid and/or requesting the system which transmitted the best bid to cache the data object.


