[jgroups-dev] Creating a STUNT protocol for JGroups?

Mike Jensen <[email protected]>
Newsgroups gmane.comp.java.javagroups.devel
Message-ID <[email protected]>
I was just curious as to what it would take to create a STUNT protocol 
for JGroups.  You can read about STUNT here:
http://nutss.gforge.cis.cornell.edu/publications.php
http://nutss.gforge.cis.cornell.edu/pub/imc05-tcpnat.pdf


Basically it is like STUN, except it is not specific to UDP, but tries 
to punch through TCP by having a middle hosts.  Long story short, I 
believe it works by simply having an open connection to a server.  Then 
you have that server drop the connection and immediately have a third 
host take over that open port in the firewall.  It sounds like on most 
firewalls this will let you have two natted machines have a TCP 
connection to each other.

Something like this has obvious benefits for P2P as well as my 
protocol.  I was hoping to show my treeMesh chat program demo in the 
next couple weeks.  But in order to have chat members establish 
connections to other chat members something like this would be needed.  
Any advice as to how difficult you think this might be?  In order to get 
such precise control on the sockets would I need to create a new 
protocol that extends TCP?  Or at a high level how might this work? 
(just trying to gauge if it is worth the effort or not right now)

Alternatively, if I don't create a STUNT protocol here is what I am 
thinking I might do:
* Have a root node that accepts unlimited connections (to function as 
the IRC bridge)
* Use a gossip server so that multiple chat instances on the same LAN 
can establish a normal tree like structure.

But I don't expect it to truly show off the benefits of the treeMesh 
doing something like this.  The only other option I see is just have no 
IRC bridge, and just have the chat program only work with other LAN 
members (would use MPING for discovery then).  But that's not very 
interesting!

Any thoughts on the best way to demo the TreeMESH protocol?

Thanks everyone.  Expect an update from me in the next couple weeks to 
be sure.  I am working on updating documentation, and currently just 
trying to fix some bugs with graph partitions/merging.  I have also done 
some performance based testing, but want to do more.  But in general it 
has (IMO) been starting to work pretty darn good.

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
Javagroups-development mailing list
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.