Что такое Jabber

Теги:Jabber, XMPP
 
+
-
edit
 

Balancer

администратор
★★★★★
Jabber - это протокол обмена быстрыми сообщениями в духе ICQ. Но далеко не только это. Хотя об этом - чуть позднее.

Для начала важное замечание, постараюсь подоходчивее :)

Если под ICQ, как правило, подразумевают и протокол обмена (например, как web, e-mail и т.п. - примеры протоколов), и саму программу для работы с ней (примеры других программ для работы с только что упомянутыми примерами протоколов - Internet Explorer и Outlook Express, соответственно), то Jabber - это только протокол.

Как нет такой программы, как E-mail, а есть, к примеру, The Bat! или Moziila, так и нет программы Jabber. Есть программы для работы с Jabber'ом - Psi, JAJC, Exodus и т.п.

О программах (Jabber-клиентах) я напишу отдельный топик, тут только теория.

Так чем же Jabber лучше ICQ? Да практически всем, кроме числа пользователей, сидящих на нём :D

— Jabber очень секьюрен. Он никогда не допускает прямой связи с чужим пользователем, так что недоброжелатель через jabber никогда не опредеит твой IP-адрес. Сообщения, передаваемые через него, можно шифровать (правда, если эту шифровку поддерживает и клиент собеседника), так что злой админ не прочитает важную переписку.

— Jabber децентрализован. Многие, наверное, сталкивались с проблемой, когда невозможно было достучаться до сервера ICQ. Ещё бы - десятки, или даже сотни миллионов пользователей на одном сервере. У Jabber'а центрального сервера нет. С точки зрения идентификации пользователя тут прямая аналогия - e-mail. При работе с почтой тоже нет единого центрального сервера. А есть конкретные сервера, предоставляющие почтовые ящики пользователям. И идентификаторы поэтому выглядят не как в ICQ в виде единого общего номера, а в виде "пользователь@сервер". Также точно выглядят идентификаторы Jabber'а (JID - Jabber ID). Скажем, у меня и e-mail и JID выглядят одинаково - balancerbalancer.ru Конечно, сервер, через который ты выходишь в Jabber может упасть, или доступ к нему может быть временно недоступен, но если пообщаться будет так важно, то всегда можно зайти с другого сервера. Благо, регистрация на большинстве из них свободная. Зато в плюсах имеем независимость от своеволия руководства сервера. Jabber никто никогда не сделает платным. Не нужно показывать никакой рекламы в программах-клиентах. И т.д. и т.п.

— Jabber имеет множество программ-клиентов, из которых всегда можно выбрать тот, которые нравится больше всего. Если под ICQ программ, кроме "фирменных" ICQ Pro / ICQ Lite можно насчитать не больше 5..6 штук, причём все они имеют те или иные недоработки, подчас серьёзные, то под Jabber их десятки! От довольно наворочанных монстров, кончая крошками по ~30кб, которые можно запускать на J2ME мобильных телефонах! А всё потому, что протокол Jabber'а открытый:

— Jabber имеет открытый протокол, остнованный на XML, в отличие от проприетарного, закрытого бинарного протокола ICQ. Для простого пользователя это мало что значит, кроме того, что под Jabber очень просто писать свои программы, что обеспечивает богатый выбор клиентов. Для программистов же благодаря этому существует большой выбор уже готовых библиотек, благодаря которым, если не хочется изобретать велосипед и возиться с протоколом на низком уровне, можно всегда воспользоваться готовым модулем. C, C++, C#, Дельфи, Python, Perl, PHP...

— Изюминка Jabber'а - возможность использовать гейты/шлюзы, они в терминологии jabber'а называются "транспортами", в другие IM-сети. Многие со мной общаются по ICQ, но не все знают, что я уже несколько месяцев сижу исключительно на Jabber'е. Их я у себя вижу как обычных Jabber-пользователей (хотя, если программа это понимает, то нередко рисует для них традиционный "цветок" контакта аси, вместо более традиционных для Jabber'а звёздочек или человечков), они меня - как обычного ICQ-клиента. Это особенно облегчает переход на Jabber ICQ-пользователю.

— Jabber использует для общения Unicode-протокол UTF-8. Это позволяет, с одной стороны, пересылать произвольные символы любых языков, будь то арабская вязь, иероглифы традиционного киатйского языка, какой-либо мёртвый язык или просто математические спецсимволы, а с другой - позволяет не усложнять работу программистам. Поэтому большинство Jabber-клиентов корректно работает с русским, например. Ну, разве что программисты совсем ленивые попадутся :)

— Децентрализованность протокола не сказывается на сложностях поиска людей по контактам. Есть централизованная (вот тут - плюс централизации) база данных пользователей на jabber.org И все сервера, которые такое дело разрешают, публикуют vCard пользователей (то, что в ICQ называется Details или Info) там, и позволяют делать там поиск.

— Опять про безопасность. Jabber-сервер можно поднять у себя в организации и быть уверенным, что при внутрифирменном общении пользователей, информация, которой они общаются, физически не покидает внутреннюю сеть. При этом всегда можно оставить и возможность общаться с "внешними" пользователями.

— Jabber - это не только обмен сообщениями, но и довольно удобные чаты, которые, сопоставимы по удобству и возможностям с IRC.

Уф. Пока хватит. Продолжу чуть позже :)

А, да. Минусы хотели? Народу на Jabber'е ещё мало :) Посчитать точное число пользователей затруднительно из-за децентрализованности, но оно на сегодня, по оценками, около 10млн. Т.е. на порядок меньше, чем в ICQ. А если брать мой собственный контакт-лист, то там разница и к двум порядкам приближается. На пару сотен ICQ-пользователей, только с дюжину - Jabber'а.

Исправим эту ситуацию? :D
 
Это сообщение редактировалось 25.07.2004 в 18:28
+
-
edit
 

Balancer

администратор
★★★★★
А в этом постинге буду дописывать основные отличия Jabber'а от ICQ с точки зрения практической работы простых пользователей.

— Под одним аккаунтом Jabber'а может быть несколько соединений пользователя. Скажем, если в ICQ, выходя утром из дому, оставить программу-клиент в сети, то придя на работу и выйдя в сеть, мы домашнюю программу выбьем с сообщением с сервера "кто-то ещё зашёл под вашим номером ICQ". В Jabber'е такого не будет. Просто у тех, с кем общаемся, появится ещё один вход под вашим именем, с примечанием, которое можно задать в программе-клиенте. /Дом /Работа /КПК и т.п. В отличие от ICQ нет нужды заводить дополнительные номера вида VasyaWork. Выглядеть будет несколько по-разному, в зависимости от программы-клиента твоих собеседников.
 
RU Black Eugene #17.09.2005 23:35
+
-
edit
 

Black Eugene

новичок
Скажите, пожалуйста, возможно ли с помощью этого JABBER принимать и получать сообщени по ISQ через электронную почту? Ведь JABBER можеть работать как шлюз?
 
+
-
edit
 

Balancer

администратор
★★★★★
На Jabber'е есть такой механизм, как транспорты.

Они опциональны.

Если на твоём сервере есть ICQ-транспорт, то из своего клиента находишь его (что-нибудь типа browse или discowery для сервера, будет показан список транспортов, какое-нибудь контекстное меню), регистрируешься, при этом будет запрошен номер ICQ и пароль. Если пароль верен, то аккаунт соединится с ICQ и можно будет работать.

Транспорты делятся на три категории.

- Не имеющие ничего общего с контакт-листом ICQ-сервера (кажется, такой транспорт сидит на jabber.ru), т.е. все контакты придётся добавлять вручную

- Утягивающие контакты с ICQ-сервера при регистрации, только один раз. Дальше - никакой синхронизации (на balancer.ru такой стоял до этой осени)

- Полностью синхронизирующиеся с ICQ-сервером. Т.е. добавленный в одной системе ICQ-контакт будет добавлен и в другую. Такой транспорт сейчас на balancer.ru стоит. Правда, и у него есть недостатки. Пока совсем не работает поиск в ICQ по параметрам, не очень удобно сделано добавление новых контактов.
 
RU Black Eugene #19.09.2005 04:50
+
-
edit
 

Black Eugene

новичок
Отлично :) Моя задача получать и отправлять сообщения ISQ через e-mail. Возможно ли это реализовать через Jabber?
 
+
-
edit
 

Mishka

модератор
★★★
Да вроде Рома сказал уже, что да. Надо установить сервер с ICQ транспортом и через это транспорт получать и посылать сообщения ICQ клиенту (насколько я понимаю, с точки зрения клиента — это поддерживается протоколом jabber-a). Как написать jabber клиента — они есть Open Source.
 
RU Balancer #19.09.2005 11:50  @Black Eugene#19.09.2005 04:50
+
-
edit
 

Balancer

администратор
★★★★★
B.E.> Отлично :) Моя задача получать и отправлять сообщения ISQ через e-mail. Возможно ли это реализовать через Jabber? [»]

Можно. "emerge sendxmpp", а дальше - скрипт ручками. Или сразу Net::Jabber на Perl.
 
+
-
edit
 

Полл

литератор
★★★★☆
Рома, меня как сисадмина интересует только какой протокол-порт открыть на проксике. :)
 
RU Balancer #25.03.2009 13:17  @Полл#25.03.2009 11:02
+
-
edit
 

Balancer

администратор
★★★★★
Полл> Рома, меня как сисадмина интересует только какой протокол-порт открыть на проксике. :)

Стандартно клиент -> сервер: 5222 и 5223 (старый SSL).

Но бывают сервера, типа allports.jabber.ru, на которые можно цепляться на любой порт.
 
+
-
edit
 

HolyBoy

аксакал

Полл> Рома, меня как сисадмина интересует только какой протокол-порт открыть на проксике. :)

Да, как Рома сказал. Ну и разрешить для этих портов метод CONNECT.
 

Последние действия над темой

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru