Re: P2P Filesharing over UDP
Pyda Srisuresh <[email protected]> Sun, 19 Jun 2005 15:04:46 -0700 (PDT)
| Newsgroups | gmane.ietf.nat.behave,gmane.ietf.midcom |
|---|---|
| Message-ID | <[email protected]> |
--- Saikat Guha <[email protected]> wrote: > Hi, >=20 > FYI, I ran into an interesting (and disturbing) P2P filesharing app > (Rodi) that seems to use UDP and traverses NATs.=20 > http://larytet.sourceforge.net/btRat.shtml >=20 [suresh] This sounds interesting. I will give this a read. > It has an interesting approach to UDP NAT Hole-punching that doesn't us= e > a _public_ STUN-like server per say. >=20 > The first Rodi client opens a UDP hole in the NAT. It does so by > initiating a UDP port-scan to some destination from a fixed local port. > It waits for one response packet. (at present finding the response > packet is manual; but can easily be automated). To keep the UDP hole > open, it keeps sending UDP packets at a low rate to the remote port tha= t > responded. >=20 > Subsequent Rodi clients perform a port scan on a remote address as > before. If the address is a NAT'ed Rodi client (that has already > performed step 1 above), then one of the port-scan packets make it > through to the other end. This is assuming the NAT is Full Cone for UDP= . [suresh] I am not sure, I understand you correctly in your above comment = about assuming Full-Cone NAT. Is the following what you meant? =20 It seems, if the rodi clients (i.e., file-xfering subscrbers) are all be= hind NAT device, then the NAT device just needs to be an Address restricted Co= ne NAT.=20 However, if the destination address (i..e, file-providing publishers) hap= pen to be behind a NAT, then the algorithm would only work if the NAT were a ful= l cone NAT. Right? > The other end replies back with the external IP:port mapping, just as > STUN would.=20 >=20 > Basically, the approach trades off a public STUN server in exchange for > a port-scan and full-cone support. >=20 [suresh] Right. If I understood what you said correctly, You dont need an external public server to get a list of file sharers behind NAT devices, = when the NAT devices exhibit full-Cone NAT behavior. > As a side note, its main mandate is to transfer files while being > indistinguishable from other traffic (Rodi packets can be made to look > like DNS, RTP etc). The default transport protocol of choice is UDP. :-= / > It seems to implement its own "Rate Limiter (RL)" to provide congestion > control, but I can't seem to find how the RL works or how TCP-friendly > it is.=20 >=20 > Just an FYI. >=20 [suresh] Cool. This seems to add yet another voice to full-Cone NAT deplo= yment in providing flexibility from a P2P application vantage. I.e., this is al= so pointing to bi-directional NAT behavior beng preferable to traditional NA= T behavior from a P2P application vantage.=20 cheers, suresh =20 > --=20 > Saikat =20 > > _______________________________________________ > Ietf-behave mailing list > [email protected] > https://list.sipfoundry.org/mailman/listinfo/ietf-behave >=20