I'm the author of the paper mentioned in this thread. I read the patent application and, however the idea of NAT type discovery is present and common to our paper (as to others: the STUN RFC above all), the patent describes just few types (6) of NAT behavior. In our paper, we define as many as (27). On top of that, the paper outlines how to carry out hole punching in each specific combination of NAT types (NAT type A against NAT type B). Although many details are omitted in the document due to space constraints, the description is probably enough for people to start implement state of the art NAT traversal logic in their p2p applications. Results from our test network show that the connection establishment success rate is very high using this model (~ 90%).
Regarding open source implementations of updated NAT traversal techniques, I could't find any. Most of the libraries still implement the old STUN and TURN techniques. However, we are working on our Java-based software library which supports both NAT Traversal (UDP and TCP) and congestion control techniques like LEDBAT. We hoper to make it available as open source in the coming months. We do currently provide a small software in order for people to test their implementations of NAT Traversal against our model. The software provides a small NAT box emulator which implements the aforementioned 27 types. I'll be glad to provide support for anybody who wants to use it. http://code.google.com/p/natcracker/ -------------------------------------------------------------------- Roberto Roverso Researcher & Project Manager, Peerialism Inc. Ph.D. Student, Royal Institute of Technology (KTH) E-mail: robe...@peerialism.com / rove...@kth.se _______________________________________________ p2p-hackers mailing list p2p-hackers@lists.zooko.com http://lists.zooko.com/mailman/listinfo/p2p-hackers