amuck-landowner

What is anycast?

Minmeo

New Member
Sorry if this is a newb question but what is anycast? I saw a provider that has "anycast vps", does this mean that my visitor has my website loaded from the closest server to them?
 
Last edited by a moderator:

Kris

New Member
Two* or more. One IP essentially can be routed to many servers.

Most anycast setups are created to take the 'best' route.

One node can be in NY, one in London.  People in France will hit the London IP, people in Dallas will hit the NY IP. 

It goes deeper. If you have an unbalanced anycast setup (anycast across different ISPs / uplinks) you'll need some traffic engineering to get the best latency.

I've found some ISP routes are pretty leaky in the UK and NL, where communities come in to wrangle the traffic and keep it in region. That's where engineering, prepending and communities come in. Essentially to make sure people in the US aren't hitting your NL setup, and vice versa. 
 

splitice

Just a little bit crazy...
Verified Provider
Multiple routes to a single IP address where the routes end up in different locations. The connecting users will always end up at the closest destination, i.e lowest cost path.

Uses:

- CDN / Latency Optimization

- High Availability (HA)

- Load Balancing for Geo-Diverse traffic (including for attack mitigation)
 
Last edited by a moderator:

mhosts

New Member
Verified Provider
The important part to mention here, is that for Anycast to be of benefit, you would be doing it at geographically diverse locations. There wouldn't be a point of doing anycast at the same physical location (a load balancer or other methods would be prefereable). This allows you to bring your content closer to end users.

From a technical perspective, a provider "announces" the same IP space at different locations which they will assign to your VM's (each VM will have a standard public IP which routes directly to it, and the anycast IP which will be assigned to all of them).

This does introduce some extra nuances in your application that you will need architect around. If you're using it for simple static files (like a CDN) this isn't really an issue. If your application tracks user sessions, it can be possible that your end user may hit different physical servers in some situations. For example, if you have end users who are on a corporate network where their LAN admin does simple outgoing "load balancing" through different ISP's, the potential is there that each load balanced packet would end up on a different server. So setting up an internal network between your VM's and sharing some common aspects of the application is important in this case.

There are many benefits to anycast (especially if your content is latency & bandwidth dependent), but there is also much more to be aware of at the network level as well.
 

splitice

Just a little bit crazy...
Verified Provider
Ah the problems...

PoP switches.... That is when the most cost-effective route changes, most likely interrupting any TCP streams (and the sessions of any UDP applications). Anycast is not for the feint of heart, especially when running a production service on it (as opposed to reaping benefits from a anycast based closest first DNS or GeoDNS system).

And then there is Anycast services communicating with Anycast services...
 
Top
amuck-landowner