Протокол федерации Google Wave

редактировать

Протокол федерации волны Google (ранее Протокол федерации Google Wave ) является открытый протокол, расширение Extensible Messaging and Presence Protocol (XMPP), которое используется в Apache Wave. Он разработан для связи почти в реальном времени между компьютерами, поддерживающими совместную работу серверами wave.

Содержание
  • 1 Обзор
  • 2 Доступность
  • 3 Framework
  • 4 Параллельная федерация
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Обзор

Протокол волновой федерации, все еще находящийся в разработке, представляет собой открытый протокол, который предназначен для параллельной открытости протокола электронной почты, поэтому волны могут вытеснить электронную почту как доминирующую форму связи в Интернете.

Доступность

Поскольку протокол открыт, любой может стать поставщиком волн и делиться волнами с другими. Как и электронная почта, связь возможна независимо от провайдера. Например, организации могут работать в качестве провайдеров волн для своих членов, отдельные лица могут запускать частные серверы волн для одного пользователя или членов семьи, а интернет-провайдер может запускать сервис волн в качестве другого интернет-сервиса для своих пользователей в качестве дополнения к электронная почта, IM, FTP и т. д. В этой модели Google Wave является одним из многих поставщиков волн.

Исходный код Java для "Прототип сервера федерации Google Wave" был выпущен в Репозиторий Mercurial в июле 2009 года по лицензии Apache License 2.0.

Framework

Некоторые особенности Extensible Messaging и Presence Protocol, унаследованные протоколом волновой федерации, являются открытием IP-адресов и номеров портов с использованием системы доменных имен (DNS) записей SRV и аутентификации и шифрования TLS подключений. Транспорт XMPP шифрует операции на транспортном уровне. Таким образом, он обеспечивает только криптографическую безопасность между серверами, напрямую подключенными друг к другу. Дополнительный уровень криптографии обеспечивает сквозную аутентификацию между поставщиками волн с использованием криптографических подписей и сертификатов, позволяя всем поставщикам вейвлетов проверять свойства операции. Следовательно, нижестоящий поставщик волн может проверить, не подделывает ли он операции с вейвлетами. Он не должен иметь возможность ложно утверждать, что операция вейвлета была инициирована пользователем на другом провайдере волн или что она была инициирована в другом контексте. Это устраняет ситуацию, когда два пользователя из разных надежных поставщиков волн являются участниками вейвлета, размещенного на вредоносном провайдере. Протокол требует, чтобы каждый участник подписывал операции своего пользователя собственным сертификатом. Подписи всех операций, отправленных хостом, будут оцениваться участниками. Это делается для того, чтобы злоумышленники не могли изменять или подделывать содержимое сообщений от пользователя других служб. Все подписи и проверки выполняются поставщиками волн, а не клиентским программным обеспечением конечных пользователей.

Все волны и вейвлеты (дочерние волны) идентифицируются глобально уникальным идентификатором волны, который является доменным именем и строка идентификатора. Доменное имя идентифицирует провайдера волны, откуда она возникла. Волны и вейвлеты размещаются провайдером волн создателя. Вейвлеты в одной волне могут размещаться у разных провайдеров волн. Однако пользовательские данные не объединяются; т. е. не передается другим поставщикам волн. Также возможны вейвлеты с частным ответом, о которых другие участники не знают или не имеют доступа. Если частный вейвлет отправляется между пользователями одного и того же поставщика волн, он не объединяется независимо от того, где размещается родительская волна.

Параллельное объединение

Поставщик волн управляет службой волн на одном или больше сетевых серверов. Центральными частями волнового сервиса являются волновое хранилище, в котором хранятся вейвлет-операции, и волновой сервер, который разрешает вейвлет-операции посредством операционного преобразования и записывает и считывает вейвлет-операции в и из волнового хранилища. Как правило, волновой сервис обслуживает волны пользователей провайдера волн, которые подключаются к внешнему интерфейсу сервиса волн. В целях федерации сервис волн делится волнами с участниками от других провайдеров, связываясь с серверами этих провайдеров волн. Копии вейвлетов рассылаются всем поставщикам волн, у которых есть участники данного вейвлета. Копии вейвлета у конкретного провайдера могут быть локальными или удаленными. Мы используем этот термин для обозначения этих двух типов копий вейвлетов (в обоих случаях мы имеем в виду копию вейвлета, а не вейвлет). Волновое представление может содержать как локальные, так и удаленные копии вейвлетов одновременно.

Исходный сервер волн отвечает за размещение и обработку вейвлет-операций, отправленных локальными участниками и удаленными участниками от других поставщиков волн. Сервер волн выполняет управление параллелизмом, упорядочивая представленные операции вейвлета относительно друг друга с помощью операционного преобразования. Он также проверяет операции перед применением их к локальному вейвлету.

Удаленные вейвлеты размещаются у других провайдеров, кэшируются и обновляются с помощью вейвлет-операций, которые локальный провайдер получает от удаленного хоста. Когда локальный участник отправляет вейвлет-операцию удаленному вейвлету, волновой сервер пересылает операцию волновому серверу хостинг-провайдера. Затем преобразованная и примененная операция отражается эхом и применяется к кэшированной копии.

Сервисы Wave используют шлюзы федерации и компоненты прокси-сервера федерации для связи и обмена волнами с другими поставщиками волн. Шлюзы федерации обмениваются данными о локальных вейвлет-операциях, отправляют новые локальные вейвлет-операции удаленным поставщикам волн любых других участников, выполняют запросы на старые вейвлет-операции и обрабатывают запросы на отправку вейвлет-операций. Прокси-сервер федерации обменивается данными с удаленными вейвлет-операциями и является компонентом поставщика волн, который взаимодействует со шлюзом федерации удаленных поставщиков. Он принимает новые вейвлет-операции, переданные ему от других поставщиков, запрашивает старые вейвлет-операции и отправляет вейвлет-операции другим поставщикам.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-22 14:04:08
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте