Berke Durak (berke@gsu.linux.org.tr)
Tue, 18 Aug 1998 23:18:49 +0300 (EEST)
On Tue, 18 Aug 1998, Perry E. Metzger wrote:
> Berke Durak writes:
> > It could be built over UDP, since TCP is painfully slow over long-distance
> > links with important packet loss.
>
> I think you don't understand TCP. Do us a favor, though, and don't use
> UDP.
I am talking about UDP because, as its name implies, UDP is a
connectionless, datagram protocol: it could be possible to build a
transmission control protocol on top of UDP, adapted to distribution of
packets to multiple clients, to traffic padding and to packet re-routing for
anonymising. I think this would be hard with TCP, since TCP is a stream
protocol and thus requires the establishment of a connection prior to data
exchange, which would be an unnecessary overhead. This would be some kind of
custom broadcasting protocol.
If such a packet protocol succeeds, it could be possible to remove the UDP
layer and directly encapsulate it inside IP datagrams; on most UNIX
systems access to raw sockets requires root privileges. UDP sockets are
user-accessible and would thus be more suited to this (highly hypothetical)
prototype of a project for now.
By the way I'm currently in Turkey, a country where Internet infrastructure
is quite underdevelopped; there can be incredible amounts of packet loss (>70%),
and unimaginable round-trip times (10000 ms) to some servers (due to low
bandwidth and poor routing). I was simply thinking of a more "aggressive"
protocol which could (maybe to the expense of consuming more bandwidth and
making things worse) for example, have shorter timeouts and/or duplicate
packets n times to get them a higher probability of reaching their destination,
or maybe using RAID-like techniques for "spreading" data accross packets.
These are just raw ideas. And don't worry about being forced to
use a distributed chat program that uses UDP, I'm far from being able to
design or implement such a thing :) Just some ideas.
Berke Durak - berke@gsu.linux.org.tr - http://gsu.linux.org.tr/kripto-tr/
PGP bits/keyID: 2047/F203A409 fingerprint: 44780515D0DC5FF1:BBE6C2EE0D1F56A1
The following archive was created by hippie-mail 7.98617-22 on Sat Apr 10 1999 - 01:10:58