Definition and Overview
A content delivery network (CDN) is a geographical distribution of servers that speeds up web content delivery by caching the content in the region closest to its users, serving content with minimal load to servers. Web caching refers to storing data for reuse, so the cache can handle requests for the same content without downloading, reducing the server and network resources load.
However, because of the massive internet traffic flow, serving timely web content to users may be challenging. CDNs use optimized routing to route traffic closer to the geographical location of users so they can access web content quickly.
Optimized routing describes the concept of optimizing deliveries on CDNs. A route is any path linking a source to a destination, but taking the conventional shortest route isn’t always ideal for delivering data packets. Optimized routing plays a crucial role in traffic engineering (TE), which aims to select a path with the suitable bandwidth to support maximum customer traffic without causing network congestion and poor performance.
Optimized routing in TE uses the following four methods
Traffic Optimization Scope
When data travels in packets, it may be within a single autonomous system (AS), such as an intra-domain route, or within multiple ASs, such as an inter-domain route. For inter-domains, optimized routing tries to optimize traffic as it travels by deciding on the AS border routers (ASBRs) for entry and exit to route the traffic through the local network, thereby optimizing network resource use.
Routing Enforcement Mechanism
The approach to enforcing routing can be IP-based or multi-protocol label switching (MPLS). For an IP-based system, optimized routing occurs by adjusting the underlying internet routing protocols like Open Shortest Path First (OSPF), Intermediate System to Intermediate System (ISIS or IS-IS), and Border Gateway Protocol (BGP).
In contrast, packet encapsulation and explicit switching using dedicated label switching paths (LSPs) occur in an MPLS-based approach.
Availability of Traffic Demand
Traffic demand could be online or offline. If offline, TE knows the traffic demand and proceeds to map the predicted traffic demand onto the network. An online system’s IP network provider (INP) must perform lightweight computations and efficient path selection for all incoming traffic without knowing the traffic demand in advance.
Traffic Type
Lastly, internet traffic may come in various flows like unicast, anycast, or multicast. Because a massive amount of traffic distributed over the internet uses CDNs, CDNs use routing to match requests and direct traffic to serve content faster. CDNs use multiple transit routes from numerous content distribution servers to internet service providers (ISP), which provide an internet connection with those servers. However, these routes come with varying degrees of performance and cost.
Therefore, CDNs must optimize performance while being economical. You can liken the routing process to a traffic system that aims to deliver products with the shortest and fastest route.
A longer transit route means a longer site loading time. The speed of content delivery heavily depends on the choice of the transit route. However, taking the shortest path isn’t always ideal, thus a need to consider routing protocols and network parameters before selecting a path for delivering packets. This way, optimized routing finds the most cost-efficient way to provide website content to users.
How Does Optimized Routing Work?
Routing protocols use algorithms to optimize routing and determine how packets reach their destination. Various routing protocols exist, like the Routing Information Protocol (RIP), Interior Gateway Protocol (IGRP), Open Shortest Path First (OSPF), Exterior Gateway Protocol (EGP), and Border Gateway Protocol (BGP).
You can divide these protocols into the following three main classes
Distance Vector or Link State Protocol
The distance vector protocol uses hop counts to determine the optimum route for packet delivery. The hop count refers to the number of intermediate devices like routers or modems a given data packet must pass through between the source and destination. For example, a hop count of three translates to having three gateways before packets arrive at their destination.
The link-state protocol uses an algorithm that calculates the speed to the destination and the cost of network resources to find the best routing path and exchanges routing information with other routers in its vicinity.
IGPs or EGP
Interior Gateway Protocols (IGPs) exchange routing information with other routers in a single AS. On the other hand, Exterior Gateway Protocols (EGPs) exchange routing information with other routers in multiple AS.
Classful and Classless Protocols
These protocols use the hop count metric for selecting routes. Classful protocols have since become outdated by classless protocols because they don’t send subnet mask information during routing updates, while classless routing protocols do.
Routing Algorithms
Routing algorithms are present in a router’s memory and help the router decide the best path for delivering packets to their destination. To do this, a routing algorithm considers parameters like packet communication cost, delay, bandwidth, throughput, maximum transmission unit time delay, and hop count. Routing algorithms can be dynamic, where the routing table changes dynamically depending on network factors like distance, or they can be static, where network administrators configure the routing table manually.
Static routing may be suitable for small-routed networks. But as the networks grow, the administrative cost of the routing maintenance becomes expensive. Because dynamic routing assigns routes dynamically, it’s easier to manage for smaller networks and provides better fault tolerance, as traffic can be rerouted if one route fails.
Routing algorithms are sometimes confused with routing protocols because they depend heavily on them. Since the routing protocol specifies the algorithm for delivering data packets, you must change the routing protocol to change the algorithm. Before implementing a routing protocol on your network, carefully research the different supported algorithms before making a decision.
Unicast and Anycast Routing
Unicast and anycast are dynamic routing algorithms that compute multiple routes to determine the best path for delivering network traffic. Unicast routing is the simplest form, involving a single sender and receiver. A single node is assigned to individual IP addresses and connects the receivers to the senders using static routes.
Unfortunately, this single-node system isn’t reliable, as any problem with that one node cuts short communication between the sender and receiver. Additionally, network performance reduces and increases latency when delivering large data packets like videos and software on a larger scale.
Anycast routing is a vast improvement, which instead assigns multiple nodes to a single IP address. When sending packets to specific nodes, route selection occurs by considering factors like server capacity and health and the distance between the node and the web visitor.
Additionally, anycast routing offers benefits like distributed denial-of-service (DDoS) mitigation by routing additional traffic to its extra nodes should a node fail. It also ensures high availability by switching to its fail-over nodes should a node fail or reach its capacity.
Another critical difference between anycast routing and unicast routing is that all the nodes use a single IP address with anycast routing. In contrast, every IP address in a unicast node is unique.
What Are the Benefits of Optimized Routing?
There are several benefits to optimized routing, including the following.
Enhances Network Performance
Choosing the best route optimizes network operations and improves the functions of every tool and resource. For instance, in anycast routing, routing through the closest intermediary node shortens the round trip time (RTT), which reduces hop counts and latency, improving network performance.
DDoS Mitigation
The primary effect of distributed denial of service (DDoS) attacks is making services unavailable. For a routing flow like anycast, multiple nodes’ availability ensures that a single node’s failure from overloading traffic doesn’t cut off communication with the receiver entirely, ensuring network operations proceed with minimal interruptions.
Traffic Load Distribution
Route optimization evaluates traffic distribution across multiple nodes to prevent travel link congestion. For example, if three customers initiate a flow, and the network uses the conventional shortest path routing method to route all three along the same route, it may significantly increase link use and cause congestion.
Think of it like real-world traffic. If everyone uses the same shortcuts, it causes the same traffic they were trying to avoid.
Key Takeaways
- A CDN uses routing to deliver data between a source and a destination.
- Route optimization involves operating a transit route that efficiently sends packets to their destination at peak performance and at an economical cost.
- Routing methods include unicast, anycast, and multicast, differing in how they deliver to their nodes.
- Optimized routing uses routing algorithms to determine the practical path for swift content delivery. This helps improve network performance, mitigate DDoS attacks, and prevent link congestion by evenly distributing customer traffic.