LXF78:Что такое…JINGLE?

Материал из Linuxformat.

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: !!! В разработке !!! = PDTP = ''И какое же отношение имеет программа Post-Diploma Training Programme к свободному ПО?'' Ника...)
 
(7 промежуточных версий не показаны.)
Строка 1: Строка 1:
-
!!! В разработке !!!
 
-
= PDTP =
+
= Jingle =
-
''И какое же отношение имеет программа Post-Diploma Training Programme к свободному ПО?''
+
-
Никакое — это новый четырехбуквенный акроним, не имеющий ничего общего с дипломами. На самом деле, он расшифровывается как Peer Distributed transfer Protocol (Распределенный протокол передачи данных между равноправными узлами) и представляет собой продвинутую систему передачи файлов с распределением ширины канала между многими клиентами.
+
'' Открытое VoIP-расширение для быстрого обмена сообщениями? '''Энди Ченнел''' неразлучен с Jingle.''
-
''Возможно, я чего не понимаю, но это очень похоже на BitTorrent.''
+
-
Действительно, это так, и если быть совсем честным, PDTP весьма близок к BitTorrent по смыслу и по дизайну. Однако, между ними оказалось достаточно различий для того, чтобы заставить разработчиков начать все с нуля. Таким образом, если вы знаете, как работает BitTorrent, то уже находитесь на полпути к пониманию PDTP.
+
''«Ну есть ли время лучше…» Погодите. Рождество вроде кончилось?''
-
''Так это дальнейшее улучшение BitTorrent?''
+
Ну и что? Jingle можно использовать круглый год. Это новый набор библиотек, его можно встроить в вашу любимую программу обмена сообщениями и совершать звонки через Интернет, используя компьютер с Linux. [обыгрывается рождественская песенка «Jingle Bells», – прим. ред.]
-
Некоторые сторонники Java считают, что их язык является дальнейшим улучшением C++, поскольку при его создании Sun исправила все ошибки в дизайне C++. С другой стороны, сторонники C++ скажут вам, что и в самой Java хватает изъянов. истина состоит в том, что очень сложно усовершенствовать одну часть чего-то, не попортив другую.
+
''Так это просто Skype?''
-
''Так значит, PDTP не идеален?''
+
Нет, но вопрос не такой глупый, как может сперва показаться. Skype – это приложение VoIP (передача голоса по IP), доступное на разных платформах. Оно позволяет общаться с помощью компьютеров, а также совершать звонки на обычные телефоны. Проблема в том, что Skype –бесплатная, но не открытая в терминах сообщества Open Source программа. Вдобавок она принадлежит eBay, и это чревато прекращением поддержки Linux-версии и всякими нежелательными сюрпризами – шпионами, рекламными баннерами и прочими ужасами.
-
Пожалуй, основным признаком несовершенства PDTP можно назвать стремление разработчиков подметить, что их детище написано не на Python, как BitTorrent, а потому должно быть быстрее. Это действительно так, однако, если вы — не счастливый обладатель 486-го компьютера, то вряд ли почувствуете разницу. Python хорошо переносим, что дает ему большое преимущество над C — языком, на котором написан PDTP.
+
''А как насчет Gizmo, Google Talk и других Skype-подобных приложений? Они ведь основаны на открытых стандартах?''
-
''Конечно, вопрос выбора языка — не самый значимый в общей структуре вещей?''
+
Это правда, потому-то Jingle так актуален. Jingle Signalling и его компаньон Jingle Audio – новые расширения XMPP (Extensible Messaging and Presence Protocol), являющегося основой технологии для Jabber. Jingle Audio пожинает лавры, а Jingle Signalling вкалывает, заменяя в Jabber текущий протокол передачи (TINS) на новую систему, способную устанавливать соединение между абонентами и управлять им, а также беспрепятственно работать через брандмауэр и проводить маршрутизацию для обеспечения наилучшего качества звонка.
-
Ну, мы можем на это надеяться. В любом случае, между PDTP и BitTorrent существуют куда более глубокие отличия.
+
Что касается Jingle Audio – этот способен работать с любым аудиопотоком, хотя спроектирован для RTP (протокол для приложений реального времени). Оба расширения были созданы совместными усилиями Jabber Software Foundation (JSF) и программистами поисковика-корифея Google. Расширения легли в основу VoIP-решения Google Talk.
-
''Например?''
+
Более того, чтобы продвинуть технологию в массы и расширить выбор приложений, фирма Google выпустила свою библиотеку libjingle по лицензии BSD, а также опубликовала API для Google Talk. Теперь любой желающий может сделать совместимым с Google Talk свое IM- или VoIP-приложение.
-
Давайте сначала вспомним, как работает BitTorrent. Возьмем гипотетический файл, fc4dvd.iso, и поместим его на некоторый web-сервер. Эта штука занимает 4Гб и пользуется определенной популярностью, так что скоро наш бедный канал переполнится и желающим загрузить файл придется возвращаться назад с пустыми руками. BitTorrent решает эту проблему созданием трекера — сервера, который отслеживает пользователей, загружающих тот или иной файл и распределяющего нагрузку между ними.
+
Сравните текущее положение с недавним прошлым, когда большие игроки – Microsoft, Yahoo и AOL – всячески ограждали тайной свои программы, чтобы приковать пользователей к своим системам. Наступила эпоха перемен!
-
''То есть сам файл хранится на трекере, а не на web-сервере?''
+
''Звучит красиво. Ну и что будет?''
-
Нет. Исходный файл остается на месте, но желающие скачать его направляются к трекеру. Первый пользователь начинает загрузку непосредственно с сервера. Второго клиента трекер направляет и к серверу, и к уже подключенному первому пользователю, который делится с ним тем, что успел получить. Чем больше клиентов, тем выше скорость передачи данных.
+
В конечном счете, VoIP должен пойти тем же путем, что и электронная почта с телефоном – отказаться от привязки к конкретной сети. Но есть и сиюминутные изменения. Представьте, что вы разработчик, решивший составить конкуренцию Skype своим VoIP-приложением. У вас есть две реальных альтернативы: создать новую инфраструктуру и убедить достаточное число людей скачать и установить вашу программу, чтобы проект был жизнеспособным; или же использовать libjingle и дать возможность пользователям звонить своим товарищам в Google Talk, используя ваш клиент.
-
''А как трекер узнает, у какого пользователя искать нужный кусочек файла?''
+
''Беда в том, что я отнюдь не разработчик.''
-
Когда клиент подключается, трекер посылает ему (по HTTP) информацию о других пользователях, загружающих тот же файл. Клиент, в свою очередь, использует эти сведения для установки дополнительных каналов. Здесь BitTorrent проявляет некоторую сообразительность: в первую очередь загружаются наименее популярные части файла, так что общее распределение остается равномерным. По мере получения кусочков файла, клиент сообщает об этом серверу, так что другие пользователи знают, у кого искать нужную часть мозаики.
+
Jingle представляет интерес также и для пользователей, особенно для тех, кто предпочитает Linux другим операционным системам. Возьмем Google: применяя программное обеспечение с открытым исходным кодом практически во всех сферах своей деятельности, эта фирма, тем не менее, не особо стремится выпускать под Linux собственные приложения – Picasa, Google Earth и, как вы уже догадались, Google Talk. В любом случае, Google заинтересован в привлечении к Google Talk возможно большего числа абонентов, а потому и упростил подключение к своей сети пользователей, не работающих под Windows, а также предусмотрел сотрудничество с другими сетями. До появления libjingle, такое было возможно лишь в некоторых приложениях, например, Gaim и Kopete (частично основанном на Jabber). Теперь вы можете скачивать приложения, способные подключаться к Google Talk, не затрудняясь поисками компьютера с Windows. Ну что, ура?
-
''Спасибо за разъяснение. Что еще плохого в BitTorrent, кроме python? Зачем нужен PDTP?''
+
''Ура! Похоже, что Google прибавила себе пользователей, фактически не выпустив готового продукта для своей ключевой ОС. Какие приложения поддерживают данную возможность?''
-
BitTorrent был разработан таким образом, чтобы обеспечивать масштабируемость загрузки, то есть раздавать файл сразу тысячам пользователей. Размер передаваемой секции составляет 256Кб, так что время на ее получение по широкополосному каналу не превышает десяти секунд. Таким образом, если ISO-образ нашего DVD-диска хочет скачать 1000 человек, мы по-прежнему имеем 1000 HTTP-запросов каждые 10 секунд, поскольку пользователям необходимо сообщать трекеру информацию о своем статусе. Сотня запросов в секунду — неплохая нагрузка для большинства серверов и излишняя трата трафика сама по себе, а что если у нас будет 100 000 страждущих? здесь BitTorrent терпит полное фиаско — вместо недоступного web-сервера мы получаем недоступный трекер.
+
Большинство команд разработчиков Linux-программ обмена сообщениями уже выразили намерения принять Jingle, и на момент выхода данной статьи, видимо, уже будут альфа-, бета- или даже полнофункциональные версии, использующие новые преимущества. Один из первых проектов, внедривших их в жизнь – Gizmo, запущенный основателем Linspire Майклом Робертсоном (Michael Robertson), чтобы не отставать от Skype. Как и Skype, Gizmo доступен для Linux, Mac OS X и Windows, но он появился на рынке слишком поздно и не сумел завоевать достаточное число пользователей – так что принятие Jingle может выправить ситуацию. Разработчики Gizmo уже наладили контакт с пользователями Google Talk и работают над добавлением возможности VoIP – хотя пока что умалчивают о сроке ее появления.
-
''И как PDTP борется с этим?''
+
Gaim 2.0 также находится в стадии бета. Однако в имеющемся списке изменений не упоминается ни Google, ни Jingle – даже невзирая на то, что ведущий разработчик Gaim Шон Иган [Sean Egan] теперь работает в Google.
-
Подобно тому, как BitTorrent распределяет загрузку файлов между многими пользователями, PDTP передает разным машинам функции трекера. Эти трекеры общаются как с клиентами, так и друг с другом, что повышает эффективность использования канала.
+
В свою очередь, недавнее сотрудничество Google и AOL означает, что AIM скоро (возможно) будет взаимодействовать с сервисами Google; ходит много слухов о том, что Apple включит libjingle в следующую версию iChat; а Yahoo! добавит такую возможность в своем Messenger. Я уверен, что такая ситуация не понравится программным монополистам.
-
''Ага, значит клиенты PDTP отличаются от клиентов BitTorrent?''
+
''Кто же первый предложит Jingle?''
-
Помимо того, что одни написаны на C, а другие на Python, особых отличий нет. Вся соль — в используемом ими протоколе.
+
Я не собираюсь гадать, но думаю, что рабочую версию уже имеет Kopete. У кое-каких продвинутых пользователей она даже работает (совершались звонки), однако сборка из исходных текстов не проходит гладко – ну, то есть, она вообще не собирается под Unsermake, которым KDE заменило Automake. Так что если хотите собрать Kopete с поддержкой Jingle, убедитесь, что оно не использует Unsermake.
-
''Продолжайте…''
+
''Где я могу взять Kopete с поддержкой Jingle?''
-
Хорошо. В отличие от весьма примитивных torrent-файлов, используемых BitTorrent, формат PDTP базируется на XML, что позволяет добавлять различные мета-данные. Хотите знать, какой кодек нужен для просмотра загруженного вами фильма? Или интересуетесь именем автора и альбомом, в который входит только что скачанная композиция?
+
Вы можете воспользоваться SVN и получить текущую раз рабатываемую ветку. Попробуйте
-
''Но скачивать музыку — это же пиратство!''
+
svn co -N svn://anonsvn.kde.org/home/kde/branches/
 +
KDE/3.5/kdenetwork
 +
cd kdenetwork
 +
svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/
 +
kde-common/
 +
admin
 +
svn co svn://anonsvn.kde.org/home/kde/branches/work/
 +
Kopete/dev-0.12/
 +
Kopete
-
Это зависит от того, где вы живете и что загружаете. В любом случае, XML — это здорово…
+
На момент прочтения, уже может появиться ветка поновее – не поленитесь проверить на сайте Kopete (http://Kopete.kde.org).
-
''Да, но XML вряд ли сделает жизнь легче. самое приятное в стандартах — то, что их много и есть из чего выбрать, правда?''
+
Определившись с версией, отключите Unsermake и запустите команды конфигурации:
 +
export UNSERMAKE=no
 +
make -f Makefile.cvs
 +
./configure --enable-debug --enable-jingle
 +
cd Kopete
 +
make
 +
su -c «make install»
-
Конечно, но разработчики движутся в сторону поддержки схемы Dublin Core Metadata, так что вы сможете обмениваться метаданными со многими приложениями. Вам также будет проще искать в сети нужные файлы…
+
''Надо ли позаботиться еще о каких-нибудь зависимостях?''
-
''Я не думаю, что скачивание по BitTorrent столь распространено…''
+
Вам понадобится несколько программ, включая ORTP (в настоящий момент это должна быть версия 0.7.1), Expat (анализатор XML), Glib 2.0 и Speex (версии 1.1.6 либо 1.0.5).
-
Действительно, вы правы. В основном, это связано со сложностью настройки BitTorrent — он ориентирован на индивидуальные файлы. PDTP, напротив, разрабатывался в качестве альтернативы FTP и HTTP для популярных закачек и, подобно FTP-серверу, поддерживает концепцию вложенных каталогов и файлов. Одной из обещанных функций является возможность использовать простенький сценарий, который автоматически индексирует директорию и делает ее доступной он-лайн.
+
''Сложновато. А нет ли другого способа?''
-
''Это выглядит гораздо проще, но разве размещение нескольких файлов на одном сервере не означает, что он будет быстрее перегружен запросами?''
+
Не совсем – во всяком случае, не сейчас. Появление скомпилированных версий в различных дистрибутивах Linux не за горами. VoIP из тех программ, на которые технари набрасываются с великим энтузиазмом. Они будут сутками напролет просиживать за компьютерами, чтобы поскорее предъявить нам готовый продукт.
-
В самой простой конфигурации PDTP это верно. Конечно, имея множество трекеров, вы можете обслуживать куда больше клиентов, что приведет к куда более быстрой перегрузке сервера, чем в случае BitTorrent. Однако, PDTP позволяет распределить нагрузку на файловый сервер, создав секционный прокси-сервер.
+
''Независимая от сети передача голоса по IP звучит заманчиво, а что еще умеет делать Jingle?''
-
''Подождите, я запутался в терминологии. есть сервер, файловый сервер, прокси-сервер — и все они «сервера»!''
+
Как я уже отметил, вся суть Jingle Signalling – работа на основе клиент-клиент (P2P), через наилучший маршрут между двумя подключенными компьютерами. Благодаря этому он может, со слов Майка Джазаери [Mike Jazaeri] из Google, использоваться для видеоконференций, обмена файлами, удаленного доступа к приложениям и совместной работы.
-
Несмотря на сходство технологий, PDTP использует отличную от BitTorrent терминологию, что изначально привносит некоторую путаницу. Вы уже знаете, что такое клиент — это мы, те кто загружает файлы. Сервер PDTP — это то, что обычно называется трекером. Он следит за тем, какие клиенты подключены, какими данными они располагают и обеспечивает обязательный минимум трафика, который должен отдать клиент. Естественно, эта величина зависит от того, сколько было загружено. Концентратор PDTP (PDTP hub) хранит файлы, передаваемые по сети и является ее своеобразной вершиной — вот почему он был назван концентратором!
+
''Стоп-стоп. Вы сказали, удаленного доступа к приложениям?''
-
Концентратор поддерживает описания (в формате XML), так что любой может узнать, какие файлы доступны и выяснить их контрольную сумму. Кроме этого, есть секционный прокси-сервер (piece proxy), который распределяет нагрузку на концентратор, а также стандартный прокси-сервер. Задача последнего — обеспечивать доступ к сети для клиентов, находящихся за брандмауэрами.
+
Да, и интересный вопрос, не следует ли считать это технологией несанкционированного доступа. Представьте будущее, в котором пользователи вводят в Google свои учетные
-
 
+
записи, используя браузер – так же, как они это делают для обмена сообщениями, электронной почты или RSS – и получают немедленный доступ к широкому классу прило-
-
''Стойте, раньше вы ничего не говорили о контрольных суммах!''
+
жений и ко всем своим документам по сети. Причем процесс еще ускоряется выбором оптимального маршрута передачи данных по замечательным волоконным проводам, которые, по слухам, приобретает Google. Это будет чудесный рождественский подарок… жаль, что на дворе еще только апрель.
-
 
+
-
Только потому, что эта мера предосторожности соответствует здравому смыслу. Передавать большой файл через интернет очень сложно, а много маленьких, которые потом должны без проблем собраться в единое целое — намного труднее. BitTorrent решает эту проблему с помощью алгоритма Secure Hash Algorithm (SHA1) и генерирует контрольную сумму для каждой части файла, что позволяет подтвердить ее корректную доставку. PDTP идет еще дальше и применяет стандарт Digital Signature Standard (DSS) для криптографической защиты содержимого секции.
+
-
 
+
-
''Похоже, это создаст приличную нагрузку на процессор. А я думал, что PDTP — это быстро…''
+
-
 
+
-
PDTP действительно быстр, но это достигается не за счет безопасности. Для начала, PDTP отказывается от HTTP в пользу своего собственного протокола. HTTP-это очень простой, не устанавливающий соединение протокол, ориентированный на передачу текстовой информации. BitTorrent использует его, поскольку многие разработчики понимают, как работать с HTTP. Кроме того, HTTP пользуется поддержкой со стороны индустрии в целом. Однако, возможностей этого протокола чересчур много, если вы всего лишь хотите уведомить сервер о завершении загрузки части файла и готовности принять следующую. PDTP использует двоичный протокол, который позволяет легко проверить корректность запроса и ответа и гораздо быстрее HTTP. Вспомните, что HTTP — текстовый протокол, так что компьютеру необходимо провести синтаксический анализ, прежде чем начать его обработку. Двоичные протоколы обходятся без этого.
+
-
 
+
-
''А как же «дыры», связанные с двоичными протоколами? Недавно в ASN.1 было найдено две больших уязвимости!''
+
-
 
+
-
Верно, потому PDTP и не использует ASN.1. Сложность данного протокола — не только благодатная почва для всякого рода брешей в безопасности, но и причина замедления работы, а PDTP, как вы помните, должен действовать быстро. С другой стороны, двоичный протокол усложняет разработку, однако, создатели PDTP решили эту проблему, выпустив специальную клиентскую библиотеку.
+
-
 
+
-
''Нечто такое, что могут использовать все…''
+
-
 
+
-
..не вникая в тонкости протокола. Да, это именно так. Библиотека возьмет на себя все вопросы по проверке и обработке данных, поступающих по бинарному протоколу, а разработчику предоставит лишь «обертку», помогающую не испачкать ручки. Помимо прочего, это значит, что программисты могут выбрать Python или любой другой язык, тогда как ядро системы всегда будет использовать быстрый C.
+
-
 
+
-
''Я вижу слишком много слов «будет», «должен», «обещается» — ничего конкретного. Почему?''
+
-
 
+
-
PDTP по-прежнему находится в стадии разработки. Видите ли, BitTorrent удовлетворяет текущие нужды: все больше домашних пользователей имеют скоростные каналы подключения к интернету, так что узкое место смещается от них к серверам, которые просто не выдерживают такого наплыва клиентов. BitTorrent позволил людям загружать популярные файлы и его дизайн очень прост. Конечно, он эволюционировал и обрастал новыми функциями, но подход к разработке оставался неизменным — автор делал последовательные улучшения над тем, что уже используется. Создатели PDTP стараются включить весь функционал в исходную версию, что требует очень много времени. Как сказал однажды Линус Торвальдс: «Никто не должен брать на себя большой проект. Начните с маленького, тривиального проекта, и никогда не ожидайте, что он вдруг вырастет, иначе вам придется начинать проектирование заново».
+
-
 
+
-
''То есть PDTP приходилось перестраивать?''
+
-
 
+
-
Он не начинался как маленький проект, это уж точно. Команда планировала выпустить первую milestone-версию на DefCon 12 прошлым летом, но не справилась с такой задачей. Многие части системы до сих пор находятся в состоянии «пре-альфа» — в них есть код, его можно использовать, но он еще не готов к публичному показу. Кое-что уже вошло в фазу альфа-тестирования, однако, чтобы хоть одна часть была по настоящему полезной, необходимо довести до ума весь проект. Некоторые вещи, например, поддержка IPv6, до сих пор отсутствуют. Поддержка IPv4 уже имеется, и не так трудно добавить IPv6 — сложно обеспечить взаимодействие между хостами, использующими разные версии IP. Эта возможность может быть добавлена в первоначальную версию, но скорее всего, будет отложена.
+
-
 
+
-
''Вообще-то этот материал называется «Что такое PDTP», а не «Чем будет PDTP когда-нибудь»!''
+
-
 
+
-
Да, но мы хотим использовать возможность и обратить внимание на новые интересные технологии. иначе, как вы сможете выделиться среди друзей?
+
-
 
+
-
''Справедливо. Так вы ищете себе помощников?''
+
-
 
+
-
Каждый, кто знаком с C и сетевым программированием, может присоединиться к нам, даже если вся помощь будет состоять в запуске кода и перечислении неработающих частей. Мы используем лицензию Apache License, одобренную OSI, так что будьте готовы предоставить результаты своей работы на тех же условиях. Где можно найти спецификацию, чтобы начать работу? Черновой вариант доступен по адресу http://PDTP.org/protocol.php, но к моменту написания данной статьи работа над ним еще не завершена. Например, разработчики все еще ожидают выдачи им фиксированного номера порта в IANA (Internet Assigned Numbers Authority). За исключением этого, разработчики могут загрузить спецификацию и начать программирование, не дожидаясь выпуска нашей клиентской библиотеки.
+
-
 
+
-
''То есть команда занимается только клиентской библиотекой, оставив прочее третьим лицам?''
+
-
 
+
-
Конечно же, нет! Серверный компоненты: концентратор, сервер и секционный прокси-сервер активно разрабатываются основной командой PDTP. Этот проект называется Squall и вы можете найти его по адресу: http://squall.sourceforge.net. Они также занимаются программой, построенной на клиентской библиотеке и называющейся Skyfire. Она базируется на Qt и поэтому является кроссплатформенной. Помимо Linux, одного из главных приоритетов, поддерживаются Windows, BSD, Mac OS X и Solaris.
+
-
 
+
-
''По-моему, достаточно технических деталей. Чем PDTP будет отличаться от BitTorrent с точки зрения практического применения?''
+
-
 
+
-
Первое, что заметит большинство людей — это архитектура, ориентированная на каталоги, а не на отдельные файлы. Сайты вроде Sourceforge, MySQL.com и PHP.net используют устаревшую систему зеркал, которая требует от вас пойти на сайт, выбрать файл, перейти на другой сайт, зависящий от вашего географического местоположения и, наконец, получить желаемое. Это не только трата времени, это еще и трата ресурсов: пока один сервер обслуживает тысячу пользователей, другие вполне могут крутить SetI@Home или что-то еще в этом роде. PDTP исключает человеческий фактор. Вместо того, чтобы выбирать нужное зеркало, каждый клиент обслуживается сразу всеми зеркалами и другими пользователями. Это не только сокращает время, необходимое дистрибьюторам для зеркалирования информации, но также экономит деньги и повышает скорость.
+
-
 
+
-
''Похоже, все находится под контролем. Это конец BitTorrent?''
+
-
 
+
-
Нет. На самом деле, BitTorrent постепенно меняется и решает многие из отмеченных проблем. В мае этого года, Брэм Коэн (создатель BitTorrent) представил на всеобщее обозрение новую версию, поддерживающую закачки без трекеров, то есть обеспечивающую децентрализацию. Это было одной из основных проблем масштабируемости BitTorrent — и причиной для создания PDTP, медленная разработка которого привела к таким результатам. Планируются другие улучшения, например, поиск torrent’ов без трекеров прямо из Firefox. Это жаркое время для BitTorrent, но важно помнить, что все улучшения в нем инкрементальны. Пользователи могут наслаждаться работой с существующей системой, не дожидаясь обновлений. В PDTP все не так.
+
-
 
+
-
''PDTP всего лишь старается вытеснить BitTorrent?''
+
-
 
+
-
В мире существует множество подобных систем: GNunet, Rodi, Mute и другие — есть из чего выбрать. Rodi особенно интересен, поскольку с его помощью можно достичь анонимности, отгородившись от сервера другими клиентами. То есть, клиент A, вместо того, чтобы загрузить нечто с сервера B, просит клиента C сделать это за него. Таким образом, B никогда не узнает IP-адрес A. Конечно, это тоже не панацея: все, что требуется от RIAA (или других блюстителей прав) — создать побольше клиентов C и просматривать трафик.
+
-
 
+
-
''Постойте: BitTorrent не анонимен?''
+
-
 
+
-
Нет, также как и PDTP. Слышите звуки сирен за окном?
+
-
 
+
-
''Я невиновен!''
+
-
 
+
-
Скажите это судье. BitTorrent и PDTP не разрабатывались для обеспечения анонимности и вряд ли когда-то смогут это делать. К слову сказать, это не так уж и нужно: не пытайтесь скачать «Месть ситхов», и вам не потребуется скрывать свое истинное лицо. Да, загрузка нелегальных материалов из сети упростится, но это то, чего разработчики BitTorrent и PDTP хотят в последнюю очередь. Они и так едва избегают судебного преследования — не хватало только добавить функции, которые играют на руку пиратам.
+
-
 
+
-
''А как же свобода слова? Мои права? Я уверен, про это что-нибудь сказано в Декларации о правах человека!''
+
-
 
+
-
Думаю, здесь вы должны решать сами. Если вы загружаете легальные вещи, прекрасно — никто не следит за людьми, скачивающими Fedora или Mandriva. Вы просто, извините, не интересны. Но если вы стремитесь не заплатить кому-то за проделанную работу и загружаете материалы, охраняемые авторским правом, подумайте еще раз: PDTP вам тут не помощник.
+
-
 
+
-
''И что мне делать, если эта программа еще не выпущена?''
+
-
 
+
-
Вы можете загрузить одну из ночных сборок прямо из репозитария PDTP. Клиентская библиотека доступна по адресу: http://svn.PDTP.org/snapshots/libpdtp-snapshot.tgz, а серверные компоненты — с http://svn.PDTP.org/snapshots/squall-snapshot.tgz. Если у вас установлен Subversion (о том, как это сделать, читайте в «[[LXF70:Subversion1 | Руководстве]]»), вы можете попробовать самую свежую версию, просто выполнив команду
+
-
svn co http://svn.PDTP.org/svn/libpdtp
+
-
или
+
-
svn co http://svn.PDTP.org/svn/squall
+
-
Желающие помочь проекту должны связаться с ведущим разработчиком. Его адрес — [mailto:tarcieri@pdtp.org. tarcieri@pdtp.org].
+
-
 
+
-
''У PDTP есть какие-то специальные зависимости?''
+
-
 
+
-
Прежде всего, помните, что код находится в стадии «преальфа», так что его никто особо не чистил. Вам точно придется установить libcrypto, поскольку эта библиотека обеспечивает поддержку DSS. За дополнительной информацией обращайтесь в чудесный раздел FAQ на сайте http://PDTP.org.
+

Текущая версия

Jingle

Открытое VoIP-расширение для быстрого обмена сообщениями? Энди Ченнел неразлучен с Jingle.


«Ну есть ли время лучше…» Погодите. Рождество вроде кончилось?

Ну и что? Jingle можно использовать круглый год. Это новый набор библиотек, его можно встроить в вашу любимую программу обмена сообщениями и совершать звонки через Интернет, используя компьютер с Linux. [обыгрывается рождественская песенка «Jingle Bells», – прим. ред.]

Так это просто Skype?

Нет, но вопрос не такой глупый, как может сперва показаться. Skype – это приложение VoIP (передача голоса по IP), доступное на разных платформах. Оно позволяет общаться с помощью компьютеров, а также совершать звонки на обычные телефоны. Проблема в том, что Skype –бесплатная, но не открытая в терминах сообщества Open Source программа. Вдобавок она принадлежит eBay, и это чревато прекращением поддержки Linux-версии и всякими нежелательными сюрпризами – шпионами, рекламными баннерами и прочими ужасами.

А как насчет Gizmo, Google Talk и других Skype-подобных приложений? Они ведь основаны на открытых стандартах?

Это правда, потому-то Jingle так актуален. Jingle Signalling и его компаньон Jingle Audio – новые расширения XMPP (Extensible Messaging and Presence Protocol), являющегося основой технологии для Jabber. Jingle Audio пожинает лавры, а Jingle Signalling вкалывает, заменяя в Jabber текущий протокол передачи (TINS) на новую систему, способную устанавливать соединение между абонентами и управлять им, а также беспрепятственно работать через брандмауэр и проводить маршрутизацию для обеспечения наилучшего качества звонка.

Что касается Jingle Audio – этот способен работать с любым аудиопотоком, хотя спроектирован для RTP (протокол для приложений реального времени). Оба расширения были созданы совместными усилиями Jabber Software Foundation (JSF) и программистами поисковика-корифея Google. Расширения легли в основу VoIP-решения Google Talk.

Более того, чтобы продвинуть технологию в массы и расширить выбор приложений, фирма Google выпустила свою библиотеку libjingle по лицензии BSD, а также опубликовала API для Google Talk. Теперь любой желающий может сделать совместимым с Google Talk свое IM- или VoIP-приложение.

Сравните текущее положение с недавним прошлым, когда большие игроки – Microsoft, Yahoo и AOL – всячески ограждали тайной свои программы, чтобы приковать пользователей к своим системам. Наступила эпоха перемен!

Звучит красиво. Ну и что будет?

В конечном счете, VoIP должен пойти тем же путем, что и электронная почта с телефоном – отказаться от привязки к конкретной сети. Но есть и сиюминутные изменения. Представьте, что вы разработчик, решивший составить конкуренцию Skype своим VoIP-приложением. У вас есть две реальных альтернативы: создать новую инфраструктуру и убедить достаточное число людей скачать и установить вашу программу, чтобы проект был жизнеспособным; или же использовать libjingle и дать возможность пользователям звонить своим товарищам в Google Talk, используя ваш клиент.

Беда в том, что я отнюдь не разработчик.

Jingle представляет интерес также и для пользователей, особенно для тех, кто предпочитает Linux другим операционным системам. Возьмем Google: применяя программное обеспечение с открытым исходным кодом практически во всех сферах своей деятельности, эта фирма, тем не менее, не особо стремится выпускать под Linux собственные приложения – Picasa, Google Earth и, как вы уже догадались, Google Talk. В любом случае, Google заинтересован в привлечении к Google Talk возможно большего числа абонентов, а потому и упростил подключение к своей сети пользователей, не работающих под Windows, а также предусмотрел сотрудничество с другими сетями. До появления libjingle, такое было возможно лишь в некоторых приложениях, например, Gaim и Kopete (частично основанном на Jabber). Теперь вы можете скачивать приложения, способные подключаться к Google Talk, не затрудняясь поисками компьютера с Windows. Ну что, ура?

Ура! Похоже, что Google прибавила себе пользователей, фактически не выпустив готового продукта для своей ключевой ОС. Какие приложения поддерживают данную возможность?

Большинство команд разработчиков Linux-программ обмена сообщениями уже выразили намерения принять Jingle, и на момент выхода данной статьи, видимо, уже будут альфа-, бета- или даже полнофункциональные версии, использующие новые преимущества. Один из первых проектов, внедривших их в жизнь – Gizmo, запущенный основателем Linspire Майклом Робертсоном (Michael Robertson), чтобы не отставать от Skype. Как и Skype, Gizmo доступен для Linux, Mac OS X и Windows, но он появился на рынке слишком поздно и не сумел завоевать достаточное число пользователей – так что принятие Jingle может выправить ситуацию. Разработчики Gizmo уже наладили контакт с пользователями Google Talk и работают над добавлением возможности VoIP – хотя пока что умалчивают о сроке ее появления.

Gaim 2.0 также находится в стадии бета. Однако в имеющемся списке изменений не упоминается ни Google, ни Jingle – даже невзирая на то, что ведущий разработчик Gaim Шон Иган [Sean Egan] теперь работает в Google.

В свою очередь, недавнее сотрудничество Google и AOL означает, что AIM скоро (возможно) будет взаимодействовать с сервисами Google; ходит много слухов о том, что Apple включит libjingle в следующую версию iChat; а Yahoo! добавит такую возможность в своем Messenger. Я уверен, что такая ситуация не понравится программным монополистам.

Кто же первый предложит Jingle?

Я не собираюсь гадать, но думаю, что рабочую версию уже имеет Kopete. У кое-каких продвинутых пользователей она даже работает (совершались звонки), однако сборка из исходных текстов не проходит гладко – ну, то есть, она вообще не собирается под Unsermake, которым KDE заменило Automake. Так что если хотите собрать Kopete с поддержкой Jingle, убедитесь, что оно не использует Unsermake.

Где я могу взять Kopete с поддержкой Jingle?

Вы можете воспользоваться SVN и получить текущую раз рабатываемую ветку. Попробуйте

svn co -N svn://anonsvn.kde.org/home/kde/branches/
KDE/3.5/kdenetwork
cd kdenetwork
svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/
kde-common/
admin
svn co svn://anonsvn.kde.org/home/kde/branches/work/
Kopete/dev-0.12/
Kopete

На момент прочтения, уже может появиться ветка поновее – не поленитесь проверить на сайте Kopete (http://Kopete.kde.org).

Определившись с версией, отключите Unsermake и запустите команды конфигурации:

export UNSERMAKE=no
make -f Makefile.cvs
./configure --enable-debug --enable-jingle
cd Kopete
make
su -c «make install»

Надо ли позаботиться еще о каких-нибудь зависимостях?

Вам понадобится несколько программ, включая ORTP (в настоящий момент это должна быть версия 0.7.1), Expat (анализатор XML), Glib 2.0 и Speex (версии 1.1.6 либо 1.0.5).

Сложновато. А нет ли другого способа?

Не совсем – во всяком случае, не сейчас. Появление скомпилированных версий в различных дистрибутивах Linux не за горами. VoIP из тех программ, на которые технари набрасываются с великим энтузиазмом. Они будут сутками напролет просиживать за компьютерами, чтобы поскорее предъявить нам готовый продукт.

Независимая от сети передача голоса по IP звучит заманчиво, а что еще умеет делать Jingle?

Как я уже отметил, вся суть Jingle Signalling – работа на основе клиент-клиент (P2P), через наилучший маршрут между двумя подключенными компьютерами. Благодаря этому он может, со слов Майка Джазаери [Mike Jazaeri] из Google, использоваться для видеоконференций, обмена файлами, удаленного доступа к приложениям и совместной работы.

Стоп-стоп. Вы сказали, удаленного доступа к приложениям?

Да, и интересный вопрос, не следует ли считать это технологией несанкционированного доступа. Представьте будущее, в котором пользователи вводят в Google свои учетные записи, используя браузер – так же, как они это делают для обмена сообщениями, электронной почты или RSS – и получают немедленный доступ к широкому классу прило- жений и ко всем своим документам по сети. Причем процесс еще ускоряется выбором оптимального маршрута передачи данных по замечательным волоконным проводам, которые, по слухам, приобретает Google. Это будет чудесный рождественский подарок… жаль, что на дворе еще только апрель.

  • Купить электронную версию
  • Подписаться на бумажную версию