I have a great deal of interest in this subject.
I share some of Piergiorgio's view on this. This has driven me crazy for a
long long time and I think it's time to solve it. I have given this a lot
of thought over the last few years.
SIP and XMPP are server oriented protocols, you need a central server for
them to work. During a call, the audio streams pass through a server (this
is known as a "bent pipe").
Up to a few months ago, Skype used to, when possible, try to set up a true
direct connect between client and client. As far as I can tell they no
longer do this. Their connections are markedly worse than just a few
Skype holds the patent (which is quite obvious) of hooking up two peers and
bowing out of the conversation.
I would like to see an open protocol with the following features:
1) open, standard based, so it could be implemented everywhere
2) allow p2p voice/data/chat connections without a bent pipe* (serverless)
and without using skype's patent
3) univerally interconnected so that there are no "islands" (like email)
4) reasonably secure so that two parties could set up a connection on their
own without the use of a central server knowing they set up the connection
(i.e. not like skype at all in this)
5) immune to NAT *
6) something that just worked when people used it.
7) maybe SIP (or a modified SIP or XMPP) would run on or over this to get
the call set up. ZRTP certainly would run over this for the transport
between the peers.
8) ability for users to choose their own name or number in the name-space.
I think something like this is possible but it's not easy.
* The NAT problem is particularly painful to deal with if both parties are
running NAT (which is common) and neither party has UPnP enabled and no
other technique for punching a hole through NAT works. In the worst case,
a bent pipe will be necessary in some situations.
I have been thinking along the lines of using something like bittorrent
(not bittorrent itself but something similar) to keep groups of peers
connected to a shared control channel. Piergiorgio, forget about using
ssh for this.
Before I start sinking time into this, does something like this already
exist? I don't think so. Unless I totally misunderstand the protocols,
the p2p aspect does not exist in SIP or XMPP.
This is clearly not Jitsi development. But is this a good list to talk
about such things? If not, I'm happy to take this off list and set up
another list. The only reason I bring it up on this list is because of