Active/Intelligent Request Routing

Once the request is being directed to a specific region using processes such as ANYCAST, an application server will typically determine if the request is valid and which part of the infrastructure is best placed to serve the response. This layer is business process specific, so it has to run on the CDN's own logic, and that logic needs some form of intelligence about the network resources to be able to then direct the request to the final point of contact within the infrastructure.

In 2001 Global-MIX, my own CDN, used php to handle all our request routing. The two request routing clusters were ANYCAST and shared DNS. Either server cluster could service any request, and there was a private line between them, simply ensuring that everything was replicated in both cluster sites. A major CDN today may have dozens or more such locations, and they may or may not replicate all or parts of the required intelligence everywhere, depending on how the network and DNS routing is setup.

In terms of scaling this model, recent developments have ensured greater decentralization. Most modern CDN edges handle requests directly. This means that an edge cluster may be discovered by a combination of DNS and ANYCAST, and then the edge itself either serves the content or issues a 302 redirection to an available source (which is very fast and lightweight for the processor to handle), perhaps using deterministic hash, etc., to keep the whole process very fast.

Akamai has acquired and developed many patents in the request routing area. They are famous for aggressively defending them to tie up competitors' executive management as a way to weaken them, which highlights the central role request routing takes in the CDN sector.

 
Source
< Prev   CONTENTS   Source   Next >