Re: [dcdev] ADC already obsolete?
Jan Vidar Krey
2005-02-11 3:28
Direct Connect developers

On Friday 11 February 2005 14:27, Gustaf Räntilä wrote:

> And the idea is:
> Let's say we have two NAT:ed peers, "P1" and "P2", and an ADC hub "H".
> P1 wants to connect to P2, and sends a UDP packet to P2. This packet will
> be "dropped" at P2's NAT, but P1's NAT now automatically accepts incoming
> UDP packets from P2 from now on. P1 also sends a (adc-tcp) request to the
> hub, which tells P2 to send a UDP packet back to P1, the same way P1 did.
> Now P2's NAT accept UDP packets from P1, and this latter packet sent by P2
> to P1 will be received. From now on, the UDP packets sent between P1 and P2
> will be received, as long as their NAT's don't mess around too much (this
> is not a _completely_ safe method, but is being widely used by many
> protocols if I've understood it correctly).
Yes, this sounds logical, but many NAT routers will rewrite the source port, 
and the scheme you outlined relies on the fact that the parts are sending to 
the correct ports which will be opened for a brief window of time (45 seconds 
is default in Linux at least). In the cases where the source port have been 
changed by the router, the clients have no way of knowing which port to send 
to, thus communication cannot be established.

I suspect this happens more frequently on routers when there is high amounts 
of traffic going on.

> Connections between two NAT:ed peers is a requirement for a protocol like
> ADC to not be obsolete upon its release, since this is the way to go, for
> today's protocols. What this will require from us is a layer above the UDP
> which gives us what TCP already has given us, as well as a new protocol
> message (besides CTM and RCM).
CTM have a command parameter for this exact reason. The thing we need is
a standardized CTCP for control channel via hub, and an additional protocol 
for such udp traffic. That can be done by merely adding a few commands to the
hub, so the hub doesn't need to be updated much at all.

> I just wanted to raise this as a topic, wondering if anyone else is
> interested in it. I simply like the idea of anyone being able to connect to
> anyone else.
And an interesting one ;)

> Opera
hm, are you my employer ? :)


janvidar / Dj Offset

-- Jan Vidar Krey E-mail: [email protected] Mobile: +47 98607328 WWW : http://www.extatic.org/