[Jingle] XEP-0177 Raw UDP Trying/Received messages

Paul Witty paulrw at codian.com
Thu Nov 27 09:53:15 CST 2008


I've seen that there's been some discussion of this previously, in which 
I failed to participate, but I feel the need to weigh in with a few 
comments, largely against the idea.

Firstly, this is unlike what is done in SIP.  RTCP already exists to 
provide statistics on whether media is being received, so creating a 
further mechanism to do so seems redundant.  As has been said 
previously, ICE-UDP exists for when we want to be sure that media will 
work; Raw-UDP should be a fire-and-forget mechanism.

Secondly, by following the spec a Jingle client will (at best) leak your 
IP to anyone on your buddy list, should it be generating a ringing tone 
as the RTP to send; at worst will send valid media.  I'm opposed to 
sending any media at all before the user accepts the Jingle session.

Thirdly, it's not clear what we should do if we don't receive a received 
message in response to our trying message.  If we're waiting for the 
received before sending the session-accept, then the user will click the 
"accept call" button, which will do nothing.  I'd rather accept the call 
when the user requests, and if media isn't working, then this should be 
obvious to the users.  In cases where we are using Raw-UDP, we probably 
expect that failures will be the exception rather than the norm, 
otherwise we would be using ICE.

By having it simply as a fire-and-forget, we have three scenarios:
Media works both ways - not a problem.
Media works neither way - both ends realise it's broken.  Each client 
can display a "no received media" message, so that both users can 
clearly see this connection is broken.  I'd say this is better than the 
caller wondering why the far end is not accepting their call, while the 
far end is clicking the "accept call" button and wondering why it's not 
working.
Media works one way - potential hilarity as one user thinks the far end 
can't see them.  But this could also happen if doing the 
trying-receiving handshake in half of the cases which would fail without.

Considering then that the full handshake improves only of the scenarios, 
making a further worse in my opinion, and requiring the generation and 
transmission of media before the receiver has consented to do anything, 
I'd rather simplify Raw-UDP, and leave all the complicated stuff to ICE-UDP.

-- 

Paul


More information about the Jingle mailing list