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

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

Обзор

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

Доступность

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

Ява исходный код для "Прототип сервера федерации Google Wave" был выпущен в Mercurial репозиторий в июле 2009 года под Лицензия Apache 2.0.[6][7]

Рамки

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

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

Параллельная федерация

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

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

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

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

Смотрите также

Рекомендации

  1. ^ видео на YouTube
  2. ^ "Протокол федерации Google Wave". Google. Архивировано из оригинал на 2009-05-30. Получено 2009-05-29.
  3. ^ Хахман, Марк (28 мая 2009 г.). «Google заново изобретает электронную почту и документы с помощью Google Wave». www.pcmag.com. Получено 2009-06-02.
  4. ^ а б c d е ж грамм час «Архивная копия». Архивировано из оригинал на 2013-03-30. Получено 2009-06-05.CS1 maint: заархивированная копия как заголовок (связь)
  5. ^ а б c d е ж грамм час «Архивная копия». Архивировано из оригинал на 2013-03-30. Получено 2009-06-05.CS1 maint: заархивированная копия как заголовок (связь)
  6. ^ http://googlewavedev.blogspot.com/2009/07/google-wave-federation-protocol-and.html
  7. ^ https://code.google.com/p/wave-protocol/

внешняя ссылка