@node Сравнение
@section Сравнение с существующими решениями

Это сравнение @url{https://ru.wikipedia.org/wiki/Uucp, UUCP}
(Unix to Unix copy), @url{https://ru.wikipedia.org/wiki/FTN, FTN}
(@url{https://ru.wikipedia.org/wiki/%D0%A4%D0%B8%D0%B4%D0%BE, FidoNet})
и @url{https://ru.wikipedia.org/wiki/SMTP, SMTP} (так как это тоже
сохранить-и-переслать режим).

@multitable @columnfractions 0.40 0.15 0.15 0.15 0.15
@headitem @tab UUCP @tab FTN @tab NNCP @tab SMTP

@item Простота настройки           @tab Средне           @tab Сложно       @tab Легко            @tab Сложно
@item Передача почты               @tab @strong{Да}      @tab @strong{Да}  @tab @strong{Да}      @tab @strong{Да}
@item Передача новостей            @tab @strong{Да}      @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Передача файлов              @tab @strong{Да}      @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Мультвещательная передача    @tab Нет              @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Разбиение файлов на части    @tab Нет              @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Удалённое исполнение команд  @tab @strong{Да}      @tab Нет          @tab @strong{Да}      @tab Нет
@item Возобновляемое скачивание    @tab @strong{Да}      @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Приоритезация пакетов        @tab @strong{Да}      @tab Нет          @tab @strong{Да}      @tab Нет
@item Сжатие почты                 @tab Нет              @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Интеграция с SMTP            @tab @strong{Да}      @tab Нет          @tab @strong{Да}      @tab N/A
@item Push/poll модель             @tab @strong{Обе}     @tab @strong{Обе} @tab @strong{Обе}     @tab Push
@item DTN                          @tab @strong{Да}      @tab @strong{Да}  @tab @strong{Да}      @tab Нет
@item Предполагаемый размер сети   @tab Дюжины           @tab Глобально    @tab Дюжины           @tab Глобально
@item Маршрутизация                @tab Ручное/статичное @tab Федеративное @tab Ручное/статичное @tab Федеративное
@item Поддержка телефонной сети    @tab @strong{Да}      @tab @strong{Да}  @tab Возможно         @tab Нет
@item Анонимные участники          @tab @strong{Да}      @tab Нет          @tab Нет              @tab @strong{Да}
@item Аутентификация участников    @tab PAP              @tab PAP/CHAP     @tab публичный ключ   @tab Нет
@item Шифрование пакетов           @tab Нет              @tab Нет          @tab @strong{Да}      @tab Нет
@item Приватность метаданных       @tab Нет              @tab Нет          @tab @strong{Да}      @tab Нет
@item Проверка целостности пакетов @tab Нет              @tab Нет          @tab @strong{Да}      @tab Нет
@item Дружелюбность к флоппинету   @tab Нет              @tab Частично     @tab @strong{Да}      @tab Нет

@end multitable

@table @strong

@item Простота установки
    UUCP относительно легко настраивается несколькими строчками в
    нескольких конфигурационных файлах. Но вы вынуждены добавить
    дополнительный уровень шифрования и аутентификации для безопасного
    обмена данными.

    FTN сложен в настройке, потому что это совершенно другой мир
    программного обеспечения, по-сравнению с Unix-ом. Даже редактор
    почты будет какой-нибудь GoldEd, а не обычный почтовый клиент. Более
    того, из коробки не предоставляется никакого шифрования и сильной
    аутентификации.

    NNCP требует редактирование единственного Hjson @ref{Configuration,
    конфигурационного файла}.

@item Передача файлов
    SMTP может передавать файлы только в Base64 кодировке -- это очень
    не эффективно.

@item Разбиение файлов на части
    FTN программы могут автоматически разбивать огромные файлы на
    меньшие части, чтобы собрать их воедино на целевом узле. NNCP тоже
    @ref{Chunked, поддерживает} эту возможность, особенно важную когда
    дело касается переносных устройств хранения небольшого объёма.

@item Приоритезация пакетов
    UUCP и NNCP сначала будут отправлять пакеты с высоким приоритетом
    ("grade" в терминологии UUCP). Ваша почта пройдёт, даже если при
    этом в очереди на отправку будут гигабайты файлов.

@item Интеграция с SMTP
    Почтовые серверы типа @url{http://www.postfix.org/, Postfix} и
    @url{http://www.exim.org/, Exim} предоставляют документацию и
    примеры конфигурации для использования с UUCP.
    @url{http://www.sendmail.com/sm/open_source/, Sendmail} тоже
    относительно легко может быть интегрирован с ним. Для использования
    с NNCP, просто замените UUCP команды на аналогичные NNCP.

@item Push/poll модель
    С SMTP, вы вынуждены ждать в online режиме когда удалённые участники
    отправят вам сообщение. Существуют расширения протокола позволяющие
    делать poll-модель взаимодействия, но они не везде доступны и
    используются. Очень важно быть независимым от заданной модели
    поведения и обмениваться данными с теми возможностями которые у вас
    имеются.

@item @url{https://ru.wikipedia.org/wiki/DTN, DTN} (сеть устойчивая к разрывам)
    SMTP удалит сообщения которые не могут быть доставлены в течении
    длительного времени (несколько дней). Другие решения толерантны к
    длительным задержкам.

@item Маршрутизация
    UUCP и NNCP ничего не знают о маршрутизации. Вы явно должны сообщать
    через какие и к каким узлам нужно посылать пакет.

@item Поддержка телефонной сети
    UUCP и FidoNet всегда из коробки поддерживали работу с модемами.
    Только много лет позже они получили возможность работы поверх
    TCP/IP соединений. SMTP работает только поверх TCP/IP. NNCP на
    данный момент имеет только TCP демон, но ничего не мешает
    использовать другой 8-бит online транспорт.

@item Анонимные участники
    NNCP и FTN являются только друг-к-другу (F2F) сетью. Это очень
    безопасно и предотвращает многие возможные атаки
    человека-по-середине (MitM) и
    @url{https://en.wikipedia.org/wiki/Sybil_attack, Sybil}.

@item Дружелюбность к флоппинету
    Никто, кроме NNCP, не поддерживает штатный обмен данными через
    переносные устройства хранения типа флеш накопителей, CD-ROM-ов,
    лент и жёстких дисков. Это можно сэмулировать для большинства FTN
    программного обеспечения, путём ручного копирования файлов в
    входящие/исходящие директории. Но UUCP и SMTP требуют ещё больше
    ручной работы для этого.

@end table
