\chapter*{\large ВВЕДЕНИЕ}  
\addcontentsline{toc}{chapter}{ВВЕДЕНИЕ}

С ростом и развитием сети Интернет разработка одноранговых (peer-to-peer) сетей стала сложнее: с исчерпанием адресов IPv4 появилась технология Network Address Translator, объединяющая устройства в локальные сети и не дающая устройствам беспрепятственно взаимодействовать с устройствами из других локальных сетей. Теперь одноранговые сети обязаны иметь сервера в своей архитектуре, что роднит её с клиент-серверной архитектурой. Отличием являются лишь требования к характеристикам серверов.

Peer-to-peer сети имеют ряд недостатков:
\begin{itemize}
    \item высокое потребление ресурсов на устройствах: и клиентская, и серверная часть объединены в одну программу, все данные хранятся у пользователя сети;
    \item ограничение один пользователь --- одно устройство (в известных реализациях);
    \item ограниченность в возможностях;
    \item сложность в использовании;
    \item безопасность передачи информации.
\end{itemize}

В дипломной работе будет разработана библиотека yap2p для развёртывания peer-to-peer сети на языке программирования Rust. Библиотека будет предоставлять возможность разработки различных прикладных приложений, что будет достигаться новой топологией сети. YAP2P также будет предоставлять набор структур и протоколов, позволяющих пользователям сети иметь более одного устройства. Для более оптимальной защиты сообщений предложен новый протокол защиты информации на основе симметричного шифрования и технологии блокчейн.

В ходе выполнения дипломной работы были поставлены следующие задачи:

\begin{itemize}
    \item Изучение теории компьютерных сетей.
    \item Изучение существующих подходов к построению peer-to-peer сетей.
    \item Проектирование собственной сети, решающей недостатки существующих.
    \item Разработка протокола связи в сети и подключения к ней.
\end{itemize}