Difference between revisions of "Jabber"
m (Reverted edits by 12.145.215.94 (Talk); changed back to last version by Applesin) |
(вот так надо передирать из Википедии) |
||
Line 1: | Line 1: | ||
− | + | '''Jabber''' («джабер», или «жабер», от англ. ''jabber'' — трёп, болтовня) — | |
− | + | # [[IM|система мгновенного обмена сообщениями (IM)]] между двумя любыми абонентами сети [[Internet|Интернет]], построенная на протоколе [[XMPP]]. | |
+ | # совокупность программного обеспечения, исходного кода, технологий и идей, связанных с протоколом XMPP и его расширениями — [[XEP]]. | ||
+ | Разработан [[Jeremie Miller|Джереми Миллером]]. | ||
− | ==Ссылки== | + | На базе использования данной технологии было создано множество частных и корпоративных [[server|серверов]] Jabber. Среди них выделяются такие крупные проекты, как системы обмена мгновенными сообщениями компании [[Google]] ([[Google Talk]]) и [[LiveJournal|Живого журнала]]. |
+ | |||
+ | == Протокол == | ||
+ | В основе протокола [[XMPP]] лежит язык [[w:XML|XML]], имеется поддержка шлюзов в другие IM-сети, однако их реализация зависит от конкретного Jabber-сервера и подвержена нестабильности из-за закрытости коммерческих IM-сервисов{{ref|stability}}. Семейство протоколов Jabber [http://www.xmpp.org/rfcs/ принято] как стандарт [[RFC]]. | ||
+ | |||
+ | Jabber имеет ряд преимуществ по сравнению с коммерческими системами IM: | ||
+ | |||
+ | * '''Открытость:''' протокол Jabber [[w:открытый стандарт|открыт]], общедоступен и достаточно лёгок для понимания; существует множество реализаций серверов и клиентов, а также библиотек с открытым исходным кодом. | ||
+ | |||
+ | * '''Расширяемость:''' с помощью [[w:пространство имён (программирование)|пространств имён]] в XML можно расширить протокол Jabber для выполнения требуемых задач и для обеспечения поддержки взаимодействия между различными системами. Общие расширения разрабатываются под контролем [[Jabber Software Foundation]]. | ||
+ | |||
+ | * '''Децентрализованность:''' кто угодно может запустить свой собственный сервер Jabber, что позволяет организациям и частным лицам заниматься любыми экспериментами с IM. | ||
+ | |||
+ | * '''Безопасность:''' любой сервер Jabber может быть изолирован от общедоступной сети Jabber, многие из вариантов реализации сервера используют [[SSL]] при обмене между клиентом и сервером, и немало клиентов поддерживают [[Encryption|шифрование]] с помощью PGP/GPG внутри протокола. | ||
+ | |||
+ | Jabber удовлетворяет многие потребности частных лиц и организаций. Но важно понимать, что он не является универсальным решением всех задач. В частности, Jabber не является: | ||
+ | |||
+ | * '''Универсальным чат-клиентом для различных систем IM''' — несмотря на множество [[client|клиентов]] Jabber под различные платформы, они не предоставляют таких возможностей по взаимодействию с различными системами IM, которые обеспечиваются программами [[Miranda]], [[Trillian]] или [[Pidgin]]: вместо этого взаимодействие между Jabber и другими системами осуществляют [[gateway|шлюзы]], расположенные на стороне сервера. | ||
+ | |||
+ | * '''Универсальным решением проблем взаимодействия с различными IM-системами''' — некоторые сервера Jabber предоставляют возможность взаимодействия с другими системами IM через шлюзы, которые транслируют протокол Jabber в протокол этих систем; однако только от самих систем зависит осуществление взаимодействия (к чему они подчас не стремятся, и даже наоборот). | ||
+ | |||
+ | * '''Единообразной IM-системой, созданной одной компанией''' — Jabber-cообщество не монолитно; напротив, существует большой набор общедоступных и закрытых серверов Jabber, проектов с открытым кодом, компаний по разработке ПО, использующих протокол Jabber. | ||
+ | |||
+ | == История == | ||
+ | Проект Jabber был основан [[Jeremie Miller|Джереми Миллером]] в начале 1998 года с разработки сервера [[jabberd]]. Первое сообщение о проекте появилось 4 января 1999 года на [[w:Slashdot]]. Вскоре после этого к проекту присоединилось несколько основных разработчиков, которые стали работать над сервером jabberd, клиентами Jabber для [[Windows]] и [[Linux|GNU/Linux]], а также [[gateway|шлюзами]] в основные системы IM ([[AIM]], [[ICQ]], [[MSN]], и [[Yahoo IM]]). Позже, в 1999, ''Webb Interactive Services'' начало спонсировать основных разработчиков, что ускорило процесс создания проекта. В то время появилась основа протокола Jabber, а также сервер jabberd и ранние клиенты, такие, как [[WinJab]] (устарел и получил своё развитие в [[Exodus]]) и [[Gabber]]. Этот ранний период постоянных изменений закончился в мае 2000 с выпуском jabberd 1.0. | ||
+ | |||
+ | С тех пор протокол Jabber продолжает развиваться (с августа 2001 под контролем ''Jabber Software Foundation''). Например, в 2003 году было, по крайней мере, четыре реализации сервера, несколько библиотек для немалого количества языков программирования, клиенты Jabber для многих платформ от [[w:Amiga|Amiga]] до [[Microsoft Windows]]. Кроме того, множество серверов Jabber установлено в Интернете и в частных локальных сетях, и предположительно около миллиона человек используют Jabber по всему миру. | ||
+ | |||
+ | == Адресация == | ||
+ | Каждый пользователь в сети имеет уникальный идентификатор, адрес — [[JID|Jabber ID (сокращённо JID)]]. Во избежание необходимости существования сервера с полным списком всех адресов, JID подобно адресу электронной почты содержит имя пользователя и [[w:DNS|DNS]]-адрес сервера, на котором зарегистрирован пользователь, разделённые знаком (<tt>@</tt>). Например, пользователь <tt>somebody</tt>, зарегистрированный на сервере <tt>example.com</tt>, будет иметь следующий адрес (JID): <tt>somebody@example.com</tt>. | ||
+ | |||
+ | Также пользователь может подключаться, находясь в разных местах, сервер позволяет определять дополнительное значение, называемое [[resource|ресурсом]], который идентифицирует клиента пользователя в данный момент. Так можно включить в адрес пользователя (JID) имя его ресурса, добавив его через слэш в конце адреса. К примеру, пусть полный адрес пользователя будет <tt>example@example.com/work</tt>, тогда сообщения, посланные на адрес <tt>example@example.com</tt>, дойдут на указанный адрес вне зависимости от имени ресурса, но сообщения для <tt>example@example.com/work</tt> дойдут на указанный адрес только при соответствующем подключённом ресурсе. | ||
+ | |||
+ | Адреса (JID) могут также использоваться без явного указания имени пользователя (с указанием имени ресурса или без такового) для системных сообщений и для контроля специальных возможностей на сервере. | ||
+ | |||
+ | == Программное обеспечение == | ||
+ | * [[:Category:Server|Серверы]] | ||
+ | * [[:Category:Client|Клиенты]] | ||
+ | |||
+ | == Ссылки == | ||
+ | * [http://www.jabber.org/ Официальный сайт и сервер Jabber Software Foundation] ''(англ.)'' | ||
+ | * [[jabber.ru|Информация о Jabber, а также сервер]] | ||
+ | |||
+ | == Примечания == | ||
+ | #{{note|stability}} Это не относится к открытым коммерческим сервисам, таким как, например, [[Mail.ru Agent]]. | ||
+ | |||
+ | == Протокол == | ||
+ | |||
+ | == Ссылки == | ||
* [http://www.jabber.org/ Официальный сайт Jabber Software Foundation] | * [http://www.jabber.org/ Официальный сайт Jabber Software Foundation] |
Revision as of 19:27, 13 November 2007
Jabber («джабер», или «жабер», от англ. jabber — трёп, болтовня) —
- система мгновенного обмена сообщениями (IM) между двумя любыми абонентами сети Интернет, построенная на протоколе XMPP.
- совокупность программного обеспечения, исходного кода, технологий и идей, связанных с протоколом XMPP и его расширениями — XEP.
Разработан Джереми Миллером.
На базе использования данной технологии было создано множество частных и корпоративных серверов Jabber. Среди них выделяются такие крупные проекты, как системы обмена мгновенными сообщениями компании Google (Google Talk) и Живого журнала.
Contents
Протокол
В основе протокола XMPP лежит язык XML, имеется поддержка шлюзов в другие IM-сети, однако их реализация зависит от конкретного Jabber-сервера и подвержена нестабильности из-за закрытости коммерческих IM-сервисовTemplate:Ref. Семейство протоколов Jabber принято как стандарт RFC.
Jabber имеет ряд преимуществ по сравнению с коммерческими системами IM:
- Открытость: протокол Jabber открыт, общедоступен и достаточно лёгок для понимания; существует множество реализаций серверов и клиентов, а также библиотек с открытым исходным кодом.
- Расширяемость: с помощью пространств имён в XML можно расширить протокол Jabber для выполнения требуемых задач и для обеспечения поддержки взаимодействия между различными системами. Общие расширения разрабатываются под контролем Jabber Software Foundation.
- Децентрализованность: кто угодно может запустить свой собственный сервер Jabber, что позволяет организациям и частным лицам заниматься любыми экспериментами с IM.
- Безопасность: любой сервер Jabber может быть изолирован от общедоступной сети Jabber, многие из вариантов реализации сервера используют SSL при обмене между клиентом и сервером, и немало клиентов поддерживают шифрование с помощью PGP/GPG внутри протокола.
Jabber удовлетворяет многие потребности частных лиц и организаций. Но важно понимать, что он не является универсальным решением всех задач. В частности, Jabber не является:
- Универсальным чат-клиентом для различных систем IM — несмотря на множество клиентов Jabber под различные платформы, они не предоставляют таких возможностей по взаимодействию с различными системами IM, которые обеспечиваются программами Miranda, Trillian или Pidgin: вместо этого взаимодействие между Jabber и другими системами осуществляют шлюзы, расположенные на стороне сервера.
- Универсальным решением проблем взаимодействия с различными IM-системами — некоторые сервера Jabber предоставляют возможность взаимодействия с другими системами IM через шлюзы, которые транслируют протокол Jabber в протокол этих систем; однако только от самих систем зависит осуществление взаимодействия (к чему они подчас не стремятся, и даже наоборот).
- Единообразной IM-системой, созданной одной компанией — Jabber-cообщество не монолитно; напротив, существует большой набор общедоступных и закрытых серверов Jabber, проектов с открытым кодом, компаний по разработке ПО, использующих протокол Jabber.
История
Проект Jabber был основан Джереми Миллером в начале 1998 года с разработки сервера jabberd. Первое сообщение о проекте появилось 4 января 1999 года на w:Slashdot. Вскоре после этого к проекту присоединилось несколько основных разработчиков, которые стали работать над сервером jabberd, клиентами Jabber для Windows и GNU/Linux, а также шлюзами в основные системы IM (AIM, ICQ, MSN, и Yahoo IM). Позже, в 1999, Webb Interactive Services начало спонсировать основных разработчиков, что ускорило процесс создания проекта. В то время появилась основа протокола Jabber, а также сервер jabberd и ранние клиенты, такие, как WinJab (устарел и получил своё развитие в Exodus) и Gabber. Этот ранний период постоянных изменений закончился в мае 2000 с выпуском jabberd 1.0.
С тех пор протокол Jabber продолжает развиваться (с августа 2001 под контролем Jabber Software Foundation). Например, в 2003 году было, по крайней мере, четыре реализации сервера, несколько библиотек для немалого количества языков программирования, клиенты Jabber для многих платформ от Amiga до Microsoft Windows. Кроме того, множество серверов Jabber установлено в Интернете и в частных локальных сетях, и предположительно около миллиона человек используют Jabber по всему миру.
Адресация
Каждый пользователь в сети имеет уникальный идентификатор, адрес — Jabber ID (сокращённо JID). Во избежание необходимости существования сервера с полным списком всех адресов, JID подобно адресу электронной почты содержит имя пользователя и DNS-адрес сервера, на котором зарегистрирован пользователь, разделённые знаком (@). Например, пользователь somebody, зарегистрированный на сервере example.com, будет иметь следующий адрес (JID): somebody@example.com.
Также пользователь может подключаться, находясь в разных местах, сервер позволяет определять дополнительное значение, называемое ресурсом, который идентифицирует клиента пользователя в данный момент. Так можно включить в адрес пользователя (JID) имя его ресурса, добавив его через слэш в конце адреса. К примеру, пусть полный адрес пользователя будет example@example.com/work, тогда сообщения, посланные на адрес example@example.com, дойдут на указанный адрес вне зависимости от имени ресурса, но сообщения для example@example.com/work дойдут на указанный адрес только при соответствующем подключённом ресурсе.
Адреса (JID) могут также использоваться без явного указания имени пользователя (с указанием имени ресурса или без такового) для системных сообщений и для контроля специальных возможностей на сервере.
Программное обеспечение
Ссылки
Примечания
- Template:Note Это не относится к открытым коммерческим сервисам, таким как, например, Mail.ru Agent.