Ämne: Re: [dcdev] ADC already obsolete? |
Från: Jan Vidar Krey |
Datum: 2005-02-11 3:28 |
Till: Direct Connect developers |
On Friday 11 February 2005 14:27, Gustaf Räntilä wrote:
_completely_ safe method, but is being widely used by many protocols if I've understood it correctly).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
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 ? :) Cheers janvidar / Dj Offset-- Jan Vidar Krey E-mail: [email protected] Mobile: +47 98607328 WWW : http://www.extatic.org/-- DC Developers mailinglist http://3jane.ashpool.org/cgi-bin/mailman/listinfo/dcdev