Re: One big cluster: How CloudFlare launched 10 data centers...
by jcr on Friday October 19, 2012 @04:16PM
(#4675222)
Routes change all the time. What you probably meant to say was
destination or endpoint. If the destination of a route changes during a
TCP session, there are two possible ways to handle it; shared state and
retrying the connection.
In a shared state setup, the old and new endpoints are communicating the
'state' of connections, so as long as the state is in sync when the old
endpoint goes down, the new endpoint can pick up the connection without
delays. This is the basic way arrays of stateful firewalls work together
to provide redundancy. When a shared state system fails to keep state in
sync, the application can fall back to retrying the connection.
Retrying the connection incurs a larger delay than shared state systems,
but it's handled transparently, so it's often not a big deal.
In a shared state setup, the old and new endpoints are communicating the 'state' of connections, so as long as the state is in sync when the old endpoint goes down, the new endpoint can pick up the connection without delays. This is the basic way arrays of stateful firewalls work together to provide redundancy. When a shared state system fails to keep state in sync, the application can fall back to retrying the connection.
Retrying the connection incurs a larger delay than shared state systems, but it's handled transparently, so it's often not a big deal.