Bridging two distributed Erlang node groups ?
Mon Feb 9 18:29:21 CET 2004
Miguel Barreiro wrote:
>> a very high latency, low throughput point-to-point link (like worst
>> case 500 seconds, 4 kbits/sec :-) which I believe precludes making
>> the two nodes groups
> Uh, interplanetary erlang? :-)
Seems more like satellite-relayed communications.
(Actually Nigel says so in his second message...)
> IMHO you really really don't want to run TCP over a link with 500 sec
> latency, and the (default) communications among beam machines runs
> over TCP.
Actually that's not a serious problem. You have to tweak some IP
parameters to make this work properly, but it's being done all the time.
Not that I'd expect an actual IP stack being used for satellite
But whatever the protocol, Nigel will have to live with these latencies.
To answer the question whether this is feasible with Erlang, the
question is not whether Erlang can live with a nonstandard protocol
(from what I have seen, it's not very difficult to make Erlang use a
The real question is whether the Erlang message passing mechanism will
work reasonably with latencies on that order of magnitude. If message
passing is entirely asynchronous, I see no problems that wouldn't be
present with any other approach; however, if there's any handshake
involved, the latency will probably become unacceptable.
It might to test any hypotheses in this area using a delaying TCP driver
for Erlang. That driver could be done as a simple wrapper around the
existing TCP driver, so it wouldn't be too difficult to do (and help to
gain experience with writing Erlang networking drivers).
Currently looking for a new job.
More information about the erlang-questions