CDN (Content Delivery Network)
- A computer network which has multiple copies of data stored at different points of the network.
- The end user connected to a CDN will access the data from the nearest server (middle) instead of connecting to a Central server.
- Few of the applications include media distribution, multiplayer gaming, and distance learning.
- The end user can be a wired or wireless unit, which tries to access the content.
The middle servers (or several servers forming a cluster) store the images of the content from the central (main) server. They are located at the edge of the ISP network and may be geographically separated from each other.
Elements of CDN
- Request: A request for a specific content (for e.g. a webpage) is made from the End user, which is redirected to the nearest image server. This is done by the use of a protocol known as Web Cache Communication Protocol (WCCP).
- Distribution: Once the request is received, a distribution element in the CDN forwards the request based on the point of origin, content availability, location and servers' global load.
- Delivery: Delivery of the requested content is made by this element by using routing and switching protocols.
Algorithms/Protocols used in Request Routing
- A variety of algorithms are used for this purpose. These include Global Server Load Balancing, DNS-based request routing, Dynamic metafile generation etc.
- Global Server Load Balancing (GLSB) enables the content to be obtained from a server pool in a sequential manner using round-robin method and redirect the request in case of inactive server sessions.
- DNS-based request routing: Here when a request is made (URL), the local DNS server provides the IP address of the nearest matching CDN node. If the Local DNS is not able to resolve the URL, it forwards the request to the Root DNS server, which then provides the nearest possible CDN server IP.
- Dynamic metafile generation includes creation of a metafile, which has an ordered hierarchy of CDN domains connected to a Main server and helps in the load balancing on each of CDN nodes connected to it.
- ICAP (Internet Content Adaptation Protocol), OPES (Open Pluggable Edge Services) and ESI (Edge Side Includes) are the protocols used for accessing data through a request in CDNs.
- ICAP is a high level protocol that helps in generating http requests and delivers contents from the CDN servers.
- OPES uses a Processor in order to share contents to the end users. This processor duplicates the content at each CDN node and traces the route followed by each request made by the user and notifies the user once the content is found.
- ESI avoids back end processing delays hence providing dynamic contents with ease. It breaks web content into fragments and delivers dynamic contents to end users.
Benefits of CDNs
- Accelerates web-based applications
- Low connectivity latency
- Optimization of capacity per user
- Faster and reliable access to contents
- Low network loads