CDN Edge Server Prefetching Configuration for Rendering Speed
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current content delivery networks (CDNs) face challenges in providing efficient and reliable content delivery, especially during peak traffic periods and in handling dynamic or non-cacheable content, which can lead to performance issues and increased costs.
Innovation Solution
Implementing a CDN edge server configuration using XML-based configuration files that enable content prefetching, allowing edge servers to proactively retrieve and cache objects such as images and scripts, reducing rendering time and improving user experience by applying metadata tags for cacheable and uncacheable content, and integrating with tiered distribution and path optimization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If content prefetching is enabled to reduce rendering time, then page rendering speed is improved, but server load increases due to additional request bursts
Solution Approach 1:
The patent implements content prefetching by proactively retrieving objects (images, scripts, stylesheets) before they are actually requested by the browser. The edge server scans HTML pages, identifies embedded objects, and fetches them in advance, storing them in cache. This preliminary action reduces rendering time by making objects readily available when the browser needs them.
Solution Approach 2:
The system uses browser identification (via cookies or IP addresses) to track which users have received prefetched content and to associate prefetched objects with specific browser sessions. This feedback mechanism ensures that prefetched uncacheable objects are only delivered to the correct user, preventing waste and allowing the system to adapt to individual user behavior patterns.
2Speed
If prefetching is applied to uncacheable content to improve speed, then rendering time is reduced, but bandwidth consumption increases
Solution Approach 1:
The system allows the browser to request content in the background without blocking the main page rendering. The edge server processes prefetch requests efficiently by serving content from cache when available, and only fetching from the origin server when necessary. This self-service approach optimizes bandwidth usage by leveraging existing cache infrastructure.
Solution Approach 2:
The patent differentiates between cacheable and uncacheable content, applying different handling strategies. Cacheable objects are stored in the edge server cache with appropriate TTL values, while uncacheable objects are associated with specific browser sessions and delivered only when needed. This parameter-based differentiation optimizes bandwidth consumption by avoiding redundant transfers of uncacheable content.
3Reliability
If content is cached at edge servers to improve delivery reliability, then content availability is improved, but cache memory is consumed
Solution Approach 1:
The patent segments content into cacheable and uncacheable categories. Cacheable content (images, stylesheets, JavaScript files) is stored in the edge server cache with defined TTL values. Uncacheable content (dynamic content requiring authentication or personalized delivery) is not stored in the persistent cache but is instead associated with specific browser sessions. This segmentation allows the system to maintain high reliability for static content while managing cache memory efficiently.
Solution Approach 2:
The system prefetches content selectively based on heuristics and configuration, not all content. It prioritizes objects that are likely to be requested soon, such as those embedded in the current page or linked from the same domain. This partial action approach ensures that cache memory is used for content that provides the most benefit, rather than uniformly caching everything.
Data Source
AI summary
A CDN edge server is configured to provide one or more extended content delivery features on a domain-specific, customer-specific basis, preferably using configuration files that are distributed to the edge servers using a configuration system. A given configuration file includes a set of content handling rules and directives that facilitate one or more advanced content handling features, such as content prefetching. When prefetching is enabled, the edge server retrieves objects embedded in pages (normally HTML content) at the same time it serves the page to the browser rather than waiting for the browser's request for these objects. This can significantly decrease the overall rendering time of the page and improve the user experience of a Web site.


