[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
ICE-TCP<http://tools.ietf.org/html/draft-ietf-mmusic-ice-tcp-08>,
it's a work in progress. What we have is one for
ICE-UDP<http://xmpp.org/extensions/xep-0176.html>.
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
implementation"<http://nice.freedesktop.org/libnice/pt03.html>.
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
draft<http://tools.ietf.org/html/draft-meyer-xmpp-e2e-encryption-02>and
an
"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