Difference between revisions of "Jingle"
(еще три раздела: Jingle и SIP, Применение и Поддержка в программах) |
(фиксы + описание) |
||
Line 1: | Line 1: | ||
[http://www.xmpp.org/extensions/xep-0166.html XEP-0166: Jingle] | [http://www.xmpp.org/extensions/xep-0166.html XEP-0166: Jingle] | ||
− | Универсальный сигнальный протокол для XMPP. | + | == Описание == |
− | + | Универсальный сигнальный протокол для XMPP. В его функции не входит сама передача данных, а только рукопожатие. Другими словами, два клиента используюя Jingle обговаривают адреса, порты, тип передаваемых данных, кодеки, тип канала, используемые транспорты и другую информацию, необходимую для установки соединения, по которому уже будет происходить непосредственная передача данных. | |
== История == | == История == | ||
Line 31: | Line 31: | ||
Клиент [[GTalk]] работает поверх очень похожего на Jingle протокола, но все же, это не Jingle в чистом виде. То же самое относится и к библиотеке [[libjingle]] созданной коммандой Google. | Клиент [[GTalk]] работает поверх очень похожего на Jingle протокола, но все же, это не Jingle в чистом виде. То же самое относится и к библиотеке [[libjingle]] созданной коммандой Google. | ||
− | Список клиентов и реализаций чистого Jingle можно найти на [http://wiki.jabber.org/index.php/Jingle_%28XEP-0166%29 wiki-странице протокола] сервера [http://wiki.jabber.org]. В Явики есть специальная [[:Category:Jingle|категория для программ, поддерживающих Jingle]] | + | Список клиентов и реализаций чистого Jingle можно найти на [http://wiki.jabber.org/index.php/Jingle_%28XEP-0166%29 wiki-странице протокола] сервера [http://wiki.jabber.org wiki.jabber.org]. В Явики есть специальная [[:Category:Jingle|категория для программ, поддерживающих Jingle]] |
== Смотрите также == | == Смотрите также == | ||
− | * [[:Category:Jingle Программы, которые используют или реализуют Jingle]] | + | * [[:Category:Jingle|Программы, которые используют или реализуют Jingle]] |
== Ссылки == | == Ссылки == | ||
* [http://www.xmpp.org/extensions/xep-0166.html XEP-0166: Jingle] | * [http://www.xmpp.org/extensions/xep-0166.html XEP-0166: Jingle] | ||
* [http://wiki.jabber.org/index.php/Jingle_(XEP-0166) Стрница на wiki.jabber.org по протоколу] | * [http://wiki.jabber.org/index.php/Jingle_(XEP-0166) Стрница на wiki.jabber.org по протоколу] |
Revision as of 21:03, 3 April 2007
Contents
Описание
Универсальный сигнальный протокол для XMPP. В его функции не входит сама передача данных, а только рукопожатие. Другими словами, два клиента используюя Jingle обговаривают адреса, порты, тип передаваемых данных, кодеки, тип канала, используемые транспорты и другую информацию, необходимую для установки соединения, по которому уже будет происходить непосредственная передача данных.
История
До появления Jingle на свет ситуация с поддержкой голоса, видео и других p2p потоков была следующая: существовало несколько закрытых протоколов используемых в закрытых клиентах с одной стороны и был разработан открытый стандарт TINS с другой. Закрытые протоколы, кроме того, что были закрыты от сообщества, не всегда учитывали требования, необходимые для совместимости с уже существующими сетями на базе SIP, а открытый TINS имел недостатки, непозволяющие ему легко встраиваться в Jabber/XMPP клиенты.
Такая ситуация привела к расколу сообщества и XSF оказалась перед выбором:
- Рекомендовать всем клиентам реализовывать одновременную поддержку и XMPP и SIP для передачи голоса
- Сделать новый полноценный сигнальный протокол для XMPP
Опыт подсказывал, что не везде, где уже сделаны клиенты Jabber, можно реализовать двойную поддержку, поэтому XFS решило попробовать второй вариант и Joe Hildebrand вместе с Peter Saint-Andre начали разработку протокола, который бы обеспечил необходимую сигнальную функциональность и остался бы совместим с существующими стандартами. Кодовое название протокола стало Jingle (звенеть)
После общения с разработчиками из Google стало понятно, что только появляющийся Jingle концептуально (и даже местами семантически) похож на сигнальный протокол используемый в приложении Google Talk. Тогда, ради совместимости, было решено согласовать эти два протокола и разработчики из Google стали входить в процесс разработки Jingle как соавторы.
Сейчас Jingle в основном идентичен протоколу используемому в GTalk, отличия заключаются в нескольких корректировках основанных на откликах разработчиков приложений.
Jingle и SIP
Сигнальный XMPP протокол Jingle работает поверх только XMPP без использования SIP из-за того, что создавать и поддерживать клиенты реализующие два больших протокола вместо одного достаточно сложно. В цели разработчиков Jingle не входило заменить или выжить SIP, вместо этого они постарались сделать протокол таким, чтобы клиенты без особых сложностей могли входить в существущие SIP сети.
Применение
XEP-166 определяет только базовую функциональность сигнального протокола. Для каждого типа потока данных (звук, файлы, видео) существуют отдельные стандарты, конкретизирующие применение Jingle в своей области:
- XEP-0167: Jingle Audio via RTP — звук через RTP
- XEP-0177: Jingle Raw UDP Transport — создание UDP соединения для передачи любых данных
- XEP-0180: Jingle Video via RTP — видео через RTP
- XEP-0183: Jingle Telepathy Transport — создание телепатического канала для передачи мыслей.
Поддержка в программах
Клиент GTalk работает поверх очень похожего на Jingle протокола, но все же, это не Jingle в чистом виде. То же самое относится и к библиотеке libjingle созданной коммандой Google.
Список клиентов и реализаций чистого Jingle можно найти на wiki-странице протокола сервера wiki.jabber.org. В Явики есть специальная категория для программ, поддерживающих Jingle