Marco Fretz wrote:
Jeroen Massar wrote:
Marco Fretz wrote: [..]
... but maybe I'm just crazy and you might simply ignore this post :-)
Most people know *how* to do it (fail-over anycast presto), the economics, deploying it worldwide and getting a good solid customer base factor are other factors though.
as I said, maybe it's a stupid idea. I'm more interested in the technical than in the economic aspect.
Get a book/google a bit, take a box, setup a couple of XEN's on it, add some quagga's on them, presto, play with it. You just need some glue between the application you are running and quagga to tag if it is 'alive', simply killing bgpd/ospfd is good enough there.
One used to need a lot of boxes and networking hardware for these kind of tests, but long live VM's nowadays :)
Of course it depends on what kind of setup you want and what you actually want to achieve with it; but it ain't rocketscience, far from.
I've never set up IPv4 anycast services but as far as I know anycast is only recommended for connection less / session less services (DNS, etc...). I never saw http content delivered over anycast, because it's TCP and you need consistent data. pls correct me if I'm wrong...
The question you have to ask here is how often do you swap your anycast route? If that route is in flux, indeed, the packets will end up going to different servers and that won't work for TCP because of state; but if you have a stable route to your 'anycast' node, then all is fine. HTTP connections etc are generally quite short lived, eg say 10 seconds, max, thus if you anycast route swaps every 15 minutes, you are quite fine; the connections that break won't be really noticed as they will hopefully restart. Most Web-applications won't notice the failover.
Note that the actual anycast-node (the IP you are talking to) generally is a big fat loadbalancer which does know about TCP state (and actually terminates the TCP connection in some cases) and just forwards it on to a backend box which does the real work.
Enjoy your playtime ;)
Greets, Jeroen