[jdev] questions about gsoc: file transfer over jingle

Zhenchao Li cockneykevin at gmail.com
Sat Mar 27 03:35:18 CDT 2010

On 27 March 2010 07:03, Yann Leboulanger <asterix at lagaule.org> wrote:
> Zhenchao Li wrote:
>>   As far as I know the jingle protocol is kind of similar to the
>> original stream initiation(xep-0095) conceptually. Apart from jingle
>> being a newer, more general session negotiation protocol(general in the
>> sense that there are already video, voice calls applications built on
>> jingle) and SI practically being used only by SI file
>> transfer(xep-0096), what are the advantages that jingle has over SI?
>> Surely there are already clients that has support for jingle file
>> transfer(pidgin, gtalk) so we definitely will see more clients
>> implementing this, but, is there anything extra that jingle has brought
>> us so we can improve the file transfer process? What's the rationale
>> behind implementing file transfer over jingle given SI file transfer
>> already works fine?
> Jingle FT allows to use any transport you want, and especially ICE-TCP
> that allow a better NAT traversal.
> --
> Yann
> _______________________________________________
> JDev mailing list
> Forum: http://www.jabberforum.org/forumdisplay.php?f=20
> Info: http://mail.jabber.org/mailman/listinfo/jdev
> Unsubscribe: JDev-unsubscribe at jabber.org
> _______________________________________________

Hi, Yann,
   Thanks for your reply. Now I see one big advantage of jingle really is it
employs much more optional transport methods. To fully utilize this
advanntage for file transfer, we need to implement ICE-TCP . But there's the
problem: AFAIK there isn't an XEP defined for
it's a work in progress. What we have is one for
But unlike voice or video transmission, file transfer needs to ensure packet
integrity, which rules out FT using ICE-UDP only. Implementing a ICE-TCP
stack requires much design and careful implementation, and even sounds like
another gsoc project. After some search I find that the libnice library
implements ICE-UDP as well as a "pseudo TCP
Perhaps that's one viable way to transfer file?(At the risk of rewriting
this transport method sometime in the furture when ICE-TCP is standardized.)
    I've also been investigating the possibility of implementing XTLS for
encrypting FT streams. XTLS itself is listed as a proposal on the xmpp ideas
page, and we have a
"XEP" <http://xmpp.org/extensions/inbox/jingle-xtls.html> for reference.
It's not quite complicated and there are some python libraries
available(python binding for gnutls, tlslite). Would it be a good idea to
add this additional feature?(After implementing and thoroughly testing
jingle FT).

Homepage:   www.fantasticsid.com
EMAIL:         fantasticsid at fantasticsid.com, cockneykevin at gmail.com
IRC:             fantasticsid
Jabber:         fantasticsid at jabber.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.jabber.org/pipermail/jdev/attachments/20100327/2f3c0cb5/attachment.htm>

More information about the JDev mailing list