Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

P2P Based Solutions prefers SIP or XMPP (Jingle) for Signaling

Tags:

p2p

xmpp

sip

It’s just a start where I am exploring more in P2P side, and finding reasons in terms of Scalability or anything else for : SIP or XMPP (Jingle) for following use case :

P2P Client Application Capable to perform File Transfer on all Network Traversal Scenarios.

// For Signaling (e.g.; to connect/locate/disconnect peers) both XMPP (Jingle) or SIP are available.

May I know possible reasons to use what and why? Any practical use? e.g.; Scalability or anything which really makes a difference for the above Use Case

like image 785
Sumit Arora Avatar asked Apr 04 '11 10:04

Sumit Arora


1 Answers

Jingle is an XMPP extension to handle multimedia sessions. In effect Jingle is the XMPP equivalent of SIP.

As far as a P2P file application goes:

  • Jingle and SIP are roughly equivalent as far as scalability goes. Both separate the signalling and media providing more flexibility (and consequently complications) with the way server side components can be deployed.

  • XMPP/Jingle has a better security design making it much more practicable to enforce clients using an SSL signalling layer. SIP does support SSL but it's more convoluted and also doesn't enjoy widespread support in the real World,

  • As far as NAT goes you're going to have the same problems with both. The scalability you get from having separate signalling and media paths comes back to bite when NAT is involved. There are a few different mechanisms to deal with NAT the latest attempt is ICE. ICE is collection of different mechanisms to try and resolve different NAT configurations and it's worth bearing in mind that not all configurations can be resolved and the fallback is to use a media proxying server such as TURN.

If I was you I'd use XMPP but before starting I'd work out exactly what NAT configurations need to be supported. If you need to support arbitrary clients from anywhere on the internet then you will not be able to rely on always being able to establish direct P2P communications between your clients and that's where you will face your biggest challenge.

like image 134
sipsorcery Avatar answered Jan 03 '23 05:01

sipsorcery