RFC: 3920
Оригинал: Extensible Messaging and Presence Protocol (XMPP): Core
Другие версии: RFC 6120
Категория: Предложенный стандарт
Дата публикации:
Автор:
Перевод: Семенов Юрий Алексеевич

2.2. Сервер

Сервер действует как интеллектуальный уровень абстракции для XMPP коммуникаций. Его основные обязанности:

  • установление и поддержание соединения или сессии с другими объектами, в виде XML-потоков (раздел 4) к или от авторизованных клиентов, серверов и прочих объектов.

  • маршрутизацию корректно адресованных строф (stanzas) (раздел 9) между такими объектами в рамках XML-потоков.

Большинство XMPP-совместимых серверов осуществляют также запоминание данных, которые используются клиентами (например, список контактов для пользователей системы обмена сообщениями и данными о присутствии с помощью XMPP); в этом случае, XML-данные обрабатываются непосредственно сервером для клиента, а не переадресуются другому объекту.

2.3. Клиент

Большинство клиентов подключается непосредственно к серверу посредством TCP и используют XMPP для получения полной функциональности, доступной на сервере. Для каждого авторизованного клиента к серверу могут одновременно подключаться несколько ресурсов (например, устройств или позиций). Каждый ресурс характеризуется идентификатором XMPP-адреса (например, <node@domain/home> или <node@domain/work>), как это определено схемой адресации (раздел 3). Рекомендованным номером порта для соединения клиента с сервером является 5222, как это фиксировано IANA (смотри "Номера портов" (раздел 15)).

2.4. Шлюз

Шлюз является специальной функцией сервера, задача которой заключается в трансляции протокола XMPP для внешних систем обмена сообщениями, которые не поддерживают XMPP, а также преобразовании данных, поступающих из удаленных сетей, не поддерживающих XMPP. Примерами могут служить шлюзы для электронной почты (смотри [SMTP]), IRC (Internet Relay Chat, смотри [IRC]), SIMPLE (смотри [SIMPLE]), SMS (Short Message Service), а также сервисы типа AIM, ICQ, MSN Messenger или Yahoo! Instant Messenger.

2.5. Сеть

Так как каждый сервер идентифицируется сетевым адресом и так как коммуникации сервер-сервер являются простым расширение протокола клиент-сервер, на практике система представляет собой сеть серверов, которые взаимодействуют друг с другом. Таким образом, например, <juliet@example.com> может обмениваться сообщениями и данными о присутствии, а также другой информацией с <romeo@example.net>. Эта схема подобна протоколам обмена сообщениями (таким как [SMTP]), которые используют стандарты сетевой адресации. Коммуникации между любыми двумя серверами являются опционными. Если они разрешены, такие коммуникации должны осуществляться посредством XML-потоков, которые сопряжены с TCP-соединениями. Рекомендуемым номером порта для соединения серверов является 5269 (смотри главу "Номера портов" (раздел 15)).

2007 - 2018 © Русские переводы RFC, IETF, ISOC.