[Standards-JIG] Jingle vs. Zoep

Jean-Louis Seguineau jean-louis.seguineau at laposte.net
Wed Feb 8 23:29:41 UTC 2006


I don't feel that bridging XMPP/SIP through a gateway is that of an issue
for the most common features of SIP (call or message sessions) and SIMPLE
(presence) It requires a little more work than what is describe in Peter's
draft ;)

In comparing the values of these two protocols, we needs to take into
account the very different contexts in which they have been designed.
Because it was originally designed to establish voice sessions between
peers, SIP goes to great length in discovering a remote party through
sophisticated DNS queries, it allows a vast array of transports to be used,
and therefore accommodate for the shortcomings of each of them. I possess
well defined mechanisms to cater with network issues or user agent issues
through a vast array of error messages, and well specified time based state
machines.

On the XMPP side, the context is simpler, as we are using TCP on the network
layer, and we rely on presence to assess the availability of a remote party.
This is somewhat simpler, as XMPP does not need to encompass all possible
combination that SIP has to deal with. To make it short, in XMPP if two user
agents see each other presence, we have gone a long way into being able to
establish a media session. 

The real need at this point is to actually negotiate the media session. And
this is not really the realm of SIP, but rather of SDP. Which is what Jingle
is attempting (I'm simplifying on purpose here) As XMPP is presence based,
it becomes very easy for a server to 'fork' calls to different user agents
based on priorities and/or RAP and achieve a result similar to that of SIP.
In the end, XMPP already provides the signaling transport. And as nobody
disagree on the use of RTP, we just need the media negotiation to provide a
decent media session establishment though XMPP. An in my opinion, Jingle
could do a better job at it than encapsulating SIP within XMPP (not to
mention the inefficiency of the entire payload). Why, because it took two
RFCs to the SIP workgroup to finalize the media call establishment. And this
work has been done and documented. And XMPP only needs a part of it and
learn from the past mistakes the SIP workgroup made. In that field, we can
build a clean sheet system without having being concerned with a legacy
(which SIP has to do). 

For XMPP Jingle has a much greater potential than anything that was
conceived for a different context. It was the case of TINS, and IMHO, I do
not think transporting SIP inside XMPP solves anything but a short term
practical problem: at the time Jingle did not existed and it was a sensible
way to go to create a VOIP XMPP client.

My $0.02

Jean-Louis

P.S. I agree with Peter that the two protocols are better off in their own
world and bridged through gateways. After all networks are all but a bunch
of gateways to bridge communication gaps...

-----Original Message-----

Message: 1
Date: Wed, 08 Feb 2006 14:51:53 -0700
From: Peter Saint-Andre <stpeter at jabber.org>
Subject: Re: [Standards-JIG] Jingle vs. Zoep
To: Jabber protocol discussion list <standards-jig at jabber.org>
Message-ID: <43EA67F9.4090306 at jabber.org>
Content-Type: text/plain; charset="iso-8859-1"

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

dirk.griffioen at voipster.com wrote:

> I do feel there is some overlap
> between Jingle and Zoep, so what I would be interested in is in
> determining where and how big this overlap is. Jingle is without doubt
> very well thought out, but there is value in SIP too, if only for
> legacy, connectivity or wider acclaim: now XMPP does SIP too .. which
> maybe brings in parties formerly not aware of or not interested in
> XMPP's possibilities.

It's amusing to see people arguing for the benefits of SIP on this list
("I realize XMPP rocks, but don't forget, there is value in SIP too"!).
I'm not being critical at all, but it's not something we see every day
here. :-)

I agree with you that we need to determine what the overlap is between
Jingle and Zoep. Perhaps it would help for you to define the use cases
that Zoep is addressing. Is this something that two XMPP clients would
use to set up a voice chat or other multimedia session? Is it something
that an XMPP client would use only when communicating with a SIP gateway?

There are many ways that SIP and XMPP can interoperate. One way is
through gateways. I've defined a spec for that at the IM and presence
level (draft-saintandre-xmpp-simple) and I envision writing something
like that for multimedia sessions as well once the Jingle spec is a
little more stable. The gateway approach may seem ugly, but it is a
workable model (we've been doing gateways in the Jabber world since
1999). Better, I think, to let each protocol go its own way and interop
through gateways than to mix the two in ways that no one ever intended.

But I'm open to argument. :-)

Peter





More information about the Standards mailing list