Second Example: Customer to Noncustomer
Assume traffic is coming in from A and is destined to M. How can AS64501 maximize revenue stream in this situation? There is only place to make money (the [A,C] link), and there is one place where its expensive to transit the traffic (the [F,G] link). The policy here should be to maximize traffic across [A,C], and minimize traffic across [F,G]. The policy, then, should be to push the traffic out of the network as soon as possible, and definitely without passing through [F,G]. There’s no point in carrying traffic through an expensive long distance link when you’re not getting paid on both ends of the path.
So what’s the solution here? Hot potato routing — prefer the closest exit point from your network, rather than the exit point closest to the destination. In this case, the provider wants to exit their network at the [D,E] link, although this path really isn’t any shorter to reach the final destination. Here local preference would be used to select a exit point that is closest to the point where the traffic enters the network. Typically the way to do this is to set the local preference on all received routes to some “base value.” For routes received from a locally connected customer, you set the local preference to a higher value, so routes to connected customers are preferred. Along a long haul or expensive link you might actually adjust the local preference to avoid the link if a path through a peer is available — but the policy needs to be built to continue preferring connected customers through the direct path.
The combination of these two policies is often called mashed potato routing, as it’s a combination of hot and cold potato policies.
Third Example: Content Provider
Content providers make their money by getting people to pay for a service, or access to some piece of information, rather than for transiting traffic. One way to make your service more attractive to users than similar competing services is to figure out how to make your service more responsive — in other words, make your service faster. But how do you make your service faster? The simplest answer is to disperse your service everywhere, as in caching the service, or creating a distributed service that is always close to the user. Some services, however, don’t lend themselves to this type of distribution. What is your other option?
To build out a really excellent global network that always prefers your traffic (quality of service, etc.) in order of the profit you make off of each service, and draw the customer’s traffic onto your network as soon as possible. You might call this the ultimate in cold potato routing — content providers often want to draw traffic onto their network, and carry over their network, even across moderately long distances, in order to control the user experience. Note that some transit providers specialize in providing services to such content providers, giving them the control they need to optimize traffic while not managing the entire network end-to-end.
What About Interprovider Links?
Finally, we need to discuss those interprovider links, and their impact on the provider’s policy — for instance, the [D,E] link. The general rule for a provider in these situations is, “don’t pay for anything new, and try to get others to pay you.” In other words, providers generally want to convert settlement-free links into links that are settled in their favor. Failing that, they want to keep the links settlement free if at all possible. How does this impact policy?
Returning to the customer-to-noncustomer example, transit providers are going to prefer hot potato routing — they want traffic they’re not being paid for at both ends off their network as soon as possible. But what happens if the [D,E] link suddenly becomes out of balance — what happens if AS64501 is sending more traffic along the link than AS64502 is? In this case, AS4502 will begin demanding settlement — which is good for AS64502, and bad for AS64501. If AS64501 must start paying settlement, then it might as well pay to increase the capacity on the long haul link [F,G] it already has in place instead.
In this case, AS64501 is going to balance it’s hot potato routing policy against the risk of being forced to pay for settlement. There are many ways to do this, but adjusting local preference on some destinations so they traverse internal links (less than hot potato routing) is the primary mechanism. Here the provider needs some sort of monitoring system than can see imbalances in traffic flows and adjust things as needed — or a number of sharp eyed engineers to cover the same ground.