TrustNetServer
Материал из Сервис Облачной Демократии
(Различия между версиями)
Админ (обсуждение | вклад)
(Новая страница: «=== Общий порядок взаимодействия серверов сети доверия между собой === По мере накопления н...»)
Следующая правка →
(Новая страница: «=== Общий порядок взаимодействия серверов сети доверия между собой === По мере накопления н...»)
Следующая правка →
Версия 13:10, 15 июля 2015
Содержание |
Общий порядок взаимодействия серверов сети доверия между собой
По мере накопления новых пакетов на исходном сервере, периодически производится их рассылка на связанные сервера.
- В цикле по всем серверам назначения:
- Исходный сервер анализирует path во всех новых пакетов и выбирает только те пакеты, в которых в path отсутствует данный сервер назначения;
- Данные отобранных пакетов помещаются в оперативный кэш если их там еще нет;
- Формируется документ - анонс новых пакетов для сервера назначения;
- Документ-анонс новых пакетов подписывается транспортным ключем сервера;
- Документ-анонс отправляется на сервер назначения на URL http://<адрес сервера>/s2s/new_packets
Сервер назначения, после получения анонса новых пакетов с другого сервера делает следующее:
- Производит проверку допуска данного сервера для передачи данных:
- Определяет исходящий сервер;
- Ищет в сети доверия удостоверение админа сервера источника и публичного транспортного ключа сервера-источника;
- Проверяет что удостоверение админа, включающее публичный транспортный ключ данного сервера источника подписаны админом данного сервера назначения;
- Проверяет подпись документа-анонса транспортным ключем сервера источника;
- Проверяет наличие идентификаторов присланных пакетов в локальной базе сервера назначения;
- Для всех пакетов, которые отсутствуют в базе:
- Ставится блокировка на добавление данного пакета (что-бы избежать параллельного добавления одного пакета);
- С сервера источника по пути http://<адрес сервера источника>/s2s/get_packet?<id пакета> запрашивается содержимое пакета;
- Пакет добавляется в локальную базу;
- Отменяется блокировка на добавление данного пакета;