-@node Сценарии использования
+@node Сценарии
@section Сценарии использования
@menu
* Ненадёжный/дорогой канал связи: UsecaseUnreliableRU.
* Медленная/дорогая связь для больших объёмов данных, плохой QoS: UsecaseQoSRU.
* Экстремальные наземные окружающие условия, нет связи: UsecaseNoLinkRU.
+* Односторонняя широковещательная связь: UsecaseBroadcastRU.
* Частные, изолированные MitM/Sybil-устойчивые сети: UsecaseF2FRU.
* Высоко защищённые изолированные компьютеры с воздушным зазором: UsecaseAirgapRU.
* Обход сетевой цензуры, здоровье: UsecaseCensorRU.
Одна из возможностей это войти на сервер и сделать что-то типа
@command{postqueue -f}, но по-умолчанию у вас есть только несколько дней
-на это, плюс отправитель будет получать уведомления о том что его
+на это, плюс отправитель будет получать уведомления о том, что его
сообщение всё ещё не доставлено. Кроме того, вы должны использовать
безопасный канал связи (SSH, VPN, итд).
Читайте @ref{Postfix, здесь} для более подробной информации. Вся почта
будет сохранятся в NNCP @ref{Spool, спуле}, который после обмена данных
и распаковки вызовет локальный @command{sendmail} для доставки почты,
-как будто это произошло на этой же машине.
+как-будто это произошло на этой же машине.
@node UsecasePOPRU
@subsection Легковесная и быстрая замена POP3/IMAP4
и сразу же посылает оповещение о недоставленных пакетах противоположной
стороне, которая сразу же их может скачать.
-Всего несколько дюжин байтов оповещают о входящих пакетах, дюжины байт
+Всего несколько дюжин байт оповещают о входящих пакетах, дюжины байт
начинающие доставку этих пакетов. Почтовые пакеты сжимаются (POP3 и
-IMAP4, как правило, нет). У вас легковесный, сжатый, надёжный, с низкими
-задержками канал связи для почты с сильным шифрованием и двусторонней
-аутентификацией!
+IMAP4, как правило, нет). У вас легковесный, сжатый, надёжный канал
+связи с низкими задержками для почты, с сильным шифрованием и
+двÑ\83Ñ\81Ñ\82оÑ\80онней аÑ\83Ñ\82енÑ\82иÑ\84икаÑ\86ией!
@node UsecaseUnreliableRU
@subsection Ненадёжный/дорогой канал связи
Представьте, что у вас медленный модем/радио/спутниковый канал связи,
который часто обрывается и вызывает timeout у TCP. Не все HTTP серверы
поддерживают возобновляемые скачивания. SMTP вообще не поддерживает
-возобновление оборванного приёма и тяжёлые сообщения становится очень
+пÑ\80одолжение оборванного приёма и тяжёлые сообщения становится очень
проблематично получить. Более того, каждый обрыв может приводить к
отсылке данных с самого начала, что не всегда по карману.
% nncp-file another_file bob:movie.avi
@end verbatim
-добавят в очередь отправки два файла для узла @emph{bob}. Выстрелил и
-забыл! Теперь это работа демона (или offline передачи) доставить частями
-эти файлы до удалённой системы когда она будет доступна.
+добавят в очередь отправки два файла для узла @emph{bob}.
+Выстрелил-и-забыл! Теперь это работа демона (или offline передачи)
+доставить частями эти файлы до удалённой системы когда она будет
+доступна.
@node UsecaseQoSRU
@subsection Медленная/дорогая связь для больших объёмов данных, плохой QoS
давая возможность передачи, по сути, любых объёмов используя накопители
небольших размеров.
+Вы также можете использовать CD-ROM и ленточные накопители:
+
+@verbatim
+% nncp-bundle -tx bob | cdrecord -tao -
+% nncp-bundle -tx bob | dd of=/dev/sa0 bs=10240
+@end verbatim
+
@node UsecaseNoLinkRU
@subsection Экстремальные наземные окружающие условия, нет связи
передачи пакетов другим узлам.
Представьте, что вы послали два файла узлу @emph{bob}. Вставьте USB
-устройство хранения, подмонтируйте и запустите @ref{nncp-xfer}:
+устройство (SD гораздо предпочтительнее!) хранения, подмонтируйте и
+запустите @ref{nncp-xfer}:
@verbatim
% nncp-xfer -node bob /media/usbstick
дальнейшей обработки. @command{nncp-xfer} это единственная команда
используемая с переносными устройствами хранения.
+@node UsecaseBroadcastRU
+@subsection Односторонняя широковещательная связь
+
+Иногда у вас есть ёмкий, но односторонний, канал связи, например
+широковещательный сигнал со спутника. Вы не можете использовать online
+@ref{Sync, протокол синхронизации}, потому что он требует двустороннего
+взаимодействия.
+
+Вы можете использовать, так называемые, @ref{Bundles, пачки} и потоково
+отсылать их. Они -- всего-лишь последовательность @ref{Encrypted,
+зашифрованных пакетов}, которые вы можете принять.
+
+@verbatim
+% nncp-bundle -tx alice bob eve ... | команда для отправки широковещательной рассылки
+% команда для приёма широковещательной рассылки | nncp-bundle -rx
+@end verbatim
+
+Встроенная возможность определять дубляжи пакетов позволит вам
+переотправлять широковещательные рассылки время от времени, повышая
+шансы на то, что получатель примет их, регулярно слушая рассылку.
+
@node UsecaseF2FRU
@subsection Частные, изолированные MitM/Sybil-устойчивые сети
выбором. Компьютер без каких-либо модемов, проводных и беспроводных
сетей. Очевидно, что единственная возможность обмениваться почтой и
файлами -- использовать физически переносимые устройства хранения типа
-CD-ROM, жёстких дисков, лент и USB накопителей (худший вариант, из-за
-сложности подобных устройств).
+CD-ROM, жёстких дисков, SD, лент и USB накопителей (@strong{худший}
+вариант, из-за сложности подобных устройств).
Предполагаем что у вас есть ещё один собственный узел, стоящий "до"
безопасного, который делает базовые проверки полученных накопителей,
@subsection Обход сетевой цензуры, здоровье
Это тоже подвид плохого канала связи. Некоторые правительства склонны к
-запрету @strong{любого} вида личного общения между людьми, разрешая
-только доставку развлекательного контента и доступ к популярным
+запрету @strong{любого} вида личного (приватного) общения между людьми,
+Ñ\80азÑ\80еÑ\88аÑ\8f Ñ\82олÑ\8cко доÑ\81Ñ\82авкÑ\83 Ñ\80азвлекаÑ\82елÑ\8cного конÑ\82енÑ\82а и доÑ\81Ñ\82Ñ\83п к попÑ\83лÑ\8fÑ\80нÑ\8bм
социальным сетям (которые уже вовсю наводнены рекламой, локально
исполняемым @url{https://www.gnu.org/philosophy/free-sw.ru.html,
-проприетарным} JavaScript кодом (для слежкой за действиями
-пользователя, сбором данных), бесстыдно и бессовестно эксплуатируя
-базовые потребности человека в общении).
+проприетарным} JavaScript кодом (для слежкой за действиями пользователя,
+сбором данных), бесстыдно и бессовестно эксплуатируя базовые потребности
+человека в общении).
Это их естественное желание. Но никто вас не заставляет насильно
подчиняться огромным корпорациям типа Apple, Google или Microsoft. Ваш
@node UsecaseSpyRU
@subsection Разведка, шпионаж, тайная агентура
-ÐÑ\82и Ñ\80ебÑ\8fÑ\82а знаÑ\8eÑ\82 наÑ\81колÑ\8cко небезопаÑ\81ное меÑ\81Ñ\82о Ð\98нÑ\82еÑ\80неÑ\82, неÑ\81овмеÑ\81Ñ\82имое с
-понÑ\8fÑ\82ием пÑ\80иваÑ\82ноÑ\81Ñ\82и. Ð\98м необÑ\85одим бÑ\8bÑ\81Ñ\82Ñ\80Ñ\8bй Ñ\81бÑ\80оÑ\81 и забоÑ\80 даннÑ\8bÑ\85. Ð\91ез
-возможноÑ\81Ñ\82и неÑ\81колÑ\8cкиÑ\85 иÑ\82еÑ\80аÑ\86ий Ñ\82Ñ\83да-обÑ\80аÑ\82но (round trip) -- Ñ\82олÑ\8cко
-сбросить данные, выстрелить и забыть. Опять же, это может быть
+ÐÑ\82и Ñ\80ебÑ\8fÑ\82а знаÑ\8eÑ\82 наÑ\81колÑ\8cко небезопаÑ\81ен Ð\98нÑ\82еÑ\80неÑ\82, неÑ\81овмеÑ\81Ñ\82им с
+понÑ\8fÑ\82ием пÑ\80иваÑ\82ноÑ\81Ñ\82и. Ð\98м необÑ\85одим бÑ\8bÑ\81Ñ\82Ñ\80Ñ\8bй Ñ\81бÑ\80оÑ\81 и забоÑ\80 даннÑ\8bÑ\85. Ð\9dеÑ\82
+возможноÑ\81Ñ\82и пÑ\80овеÑ\81Ñ\82и неÑ\81колÑ\8cко иÑ\82еÑ\80аÑ\86ий Ñ\82Ñ\83да-обÑ\80аÑ\82но (round trip) --
+Ñ\82олÑ\8cко Ñ\81бÑ\80оÑ\81иÑ\82Ñ\8c даннÑ\8bе, вÑ\8bÑ\81Ñ\82Ñ\80елиÑ\82Ñ\8c и забÑ\8bÑ\82Ñ\8c. Ð\9eпÑ\8fÑ\82Ñ\8c же, Ñ\8dÑ\82о можеÑ\82 бÑ\8bÑ\82Ñ\8c
переносной накопитель и/или
-@url{https://en.wikipedia.org/wiki/USB_dead_drop, USB тайник},
+@url{https://en.wikipedia.org/wiki/USB_dead_drop, USB тайник} (dead drop),
@url{https://en.wikipedia.org/wiki/PirateBox, PirateBox}ы,
@url{https://en.wikipedia.org/wiki/Short-range_agent_communications,
связь малой дальности (SRAC)}. Короткоживущие сети малой дальности типа
необходимо запустить другую фазу: @ref{nncp-toss, распаковку}, которая
использует ваши приватные криптографические ключи. То есть, даже если вы
потеряете свой компьютер, устройства хранения и тому прочее -- это не
-так плохо, потому-что вы не носите с собой приватные ключи (ведь так?),
+так плохо, потому что вы не носите с собой приватные ключи (ведь так?),
вы не "распаковываете" эти пакеты сразу же на том же самом устройстве.
Распаковка (чтение этих зашифрованных пакетов с извлечением переданных
файлов и почтовых сообщений) может и должна бы быть произведена на
-отдельном компьютере (@ref{nncp-mincfg} команда может помочь с созданием
+отдельном компьютере (@ref{nncp-cfgmin} команда может помочь с созданием
конфигурационного файла без приватных ключей для этой цели).