Hi,
I have a problem concerning reliability of my Internet connections.
I live in a residential area where I use two different ISPs: one is
using an ADSL line, the other one is using the television cable.
Due to various reasons, those connections are not very reliable and
there isn't much I can do to solve this, besides moving to an other
location (like going back to my previous appartment, where I have a
very good connection... and that I still use as my "main" office).
I ran some tests, collected some datas, and the problem can be more
or less resumed to this (datas collected over several days and
presented here in an over-simplified way):
- ADSL connection has an uptime of approximately 88.5 %
- Cable connection has an uptime of approximately 94 %
If I could somehow combine the two for better availability, uptime
would become approximately 99.5 %. This would be a huge increase
for me: 94% simply isn't enough for me: it means frequent problems
and time lost re-connecting to various servers.
Here's the setup I'd like to have:
----- ADSL ---
/ (88.5%) \
/ \
Internet --- Router B - Router A - Client PCs
(availability
of five 9's) /
\ /
\----- Cable ---
(94%)
I work from "Client PCs". On the same LAN there's "Router A", which
is connected to two external networks: one by ADSL, one by Cable.
Both connect to Router B (a computer that is located somewhere else,
but that I own, and that has a very fast and reliable Internet
connection).
When one of the PC connects to some server on the Internet (eg by
opening a shell using SSH), the server only sees the IP of Router B.
If either ADSL or Cable fails/reboot/change IP/whatever, the clients
stays connected (that is: the SSH connection, for example, continues
as if nothing happened).
In other words, every open connections only fails if both the adsl
and the cable line go down simultaneously...
Is there a way to do this in an affordable way? (ie I've got full
control of Router A and Router B and can configure them as
I like, but I don't have thousands of Euros to spend on expensive
hardware).
If not, how do I write a protocol that allows me to do this ?
Note that I do *not* simply want the setup where you have no router B
and then have Router A "simply" re-routing traffic from clients PCs
through the interface that is connected: this helps having my PCs
nearly always connected to the Internet... But the IP externally
used changes, hence loosing all established IP connections.
Also note that I do not want to combine the two connections to have
a wider bandwith and that I realize that having an additional router
means additional latency: latency is not a problem, bandwith is not a
problem.
Even *doubling* the bandwith would not be a problem.
All I want is better net connectivity (and, theoretically, even with
the two mediocres connections that I have, it is possible).
Does it exist?
Thanks in advance for all informations,
Jean