Проект MaidSafe призван открыть новую веху в децентрализации всего Интернета. Архитектура его консенсуса очевидно будет гораздо сложнее, чем таковая у криповалют. Очередная запись в блоге проекта призвана на доступном уровне описать работу сети SAFE (Secure Access for Everyone — безопасный доступ для всех).
Несмотря на все усилия, нередки случаи, когда в комментариях на форумах люди говорят, что не совсем уверены в том, что же такое MaidSafe. Обычно эти комментарии выглядят примерно так: «Звучит очень круто, но я не очень понимаю, что значит децентрализация Интернета». Мы потратили 12 месяцев, объясняя людям концепцию, беседуя с ними, выпуская видеоматериалы, публикации и прочую документацию, так что вы можете подумать, эти комментарии следует просто игнорировать. Но вы ошибаетесь. На самом деле, такое недопонимание… весьма… понятно.
Во-первых, концепция децентрализации довольно сложна, чтобы мгновенно взорвать вам мозг, если вы не знакомы с Биткоином и другими децентрализованными/распределёнными сетями. Люди всё ещё спрашивают нас: «Так где же на самом деле находятся серверы?» Я подозреваю, суть в том, что клиент/серверная модель слишком укоренилась в наших мыслях и понимании того, как должны работать компьютеры. Другая причина может крыться в том, что мы используем возможно не совсем корректные фразы вроде «децентрализация интернета», чтобы кратко описать то, чем мы занимаемся. К сожалению, необходимость в слогане или подобной крылатой фразе продиктована веяниями современных медиа. В результате того, что существует такое огромное количество компаний и технологий, всем им приходится соревноваться друг с другом за кусочек нашего драгоценного времени.
Чтобы преодолеть эти сложности, может быть полезным на конкретном примере рассмотреть, как работает Интернет, сравнивая с тем, как работает SAFE. Приносим извинения за краткое изложение, продиктованное форматом сообщения в блоге, в котором мы попытаемся раскрыть очень обширную тему, рассмотрев её базовую концепцию с высоты Феликса Баумгартнера. Для более комплексного рассмотрения взгляните на следующий пост (англ.) Руса Шулера — это превосходный ресурс.
Наиболее фундаментальные уровни, согласно модели OSI, составляют кабели, маршрутизаторы, свитчи, серверы и вообще всё существующее «железо». С точки зрения структуры передаваемых данных, это самый базовый уровень — нули и единицы. Каждому из этих устройств требуется уникальный адрес нахождения (в сети TCP/IP), чтобы иметь возможность обращаться друг к другу. Они называются IP (Internet Protocol) -адресами.
Возможно, вы уже слышали о том, что в существующей системе IPv4 не хватает IP адресов (их всего 2^32), иИнженерный Совет Интернета вот уже примерно 25 лет пытается перевести его на стандарт IPv6, однако этот переход слишком затянулся. На диаграмме этот протокол находится на уровне сети, и здесь данные передаются сообщениями, содержащими собственно сами данные и IP адрес получателя, и сеть берёт на себя их доставку. Обычно эти данные разделены на фрагменты, или так называемые пакеты данных.
Существующий Интернет
В этом месте архитектура существующего Интернета и сети SAFE начинают расходиться. На транспортном уровне данные разной величины передаются между источником и получателем, с проверкой того, что каждый пакет доходит до получателя, и повторной отправкой потерянных или повреждённых пакетов. Полезной аналогией здесь может быть обычная почта, которая сортирует и рассылает письма и посылки получателям. Примерами являются два наиболее распространённых протокола четвёртого уровня: это TCP(Transmission Control Protocol) и UDP (User Datagram Protocol).
Уровень сессий управляет соединениями между устройствами; устанавливает, управляет и прерывает обмен данными и диалоги между приложениями. Именно уровень сессии откликается на запрос с уровня представления, который сам по себе несёт функцию преобразования данных в формат, который на уровне приложения может быть принят и отображён. Здесь уже могут быть использованы такие фишки как шифрование, дешифрование или сжатие.
И наконец, у нас есть уровень приложения, самый высокий уровень модели OSI, и именно с ним хорошо знакомы все пользователи Интернета. На уровне приложений информация, полученная с более низких уровней, отображается пользователю, и именно её мы используем для взаимодействия с каждым приложением, когда, например, заполняем форму или читаем эту статью. На этом уровне мы видим такие протоколы как HTTP (Hypertext Transfer Protocol), который повсюду используется для обмена данными в сети, равно как и SMTP (Simple Mail Transfer Protocol) для обмена емэйлами.
Сеть SAFE
Мы не будем вдаваться в подробности всего стека SAFE, это тема для отдельного поста. Здесь нашей целью является дать общее представление и показать её в сравнении с моделью OSI.
Как показано на следующей диаграмме, сеть SAFE — это некая прослойка, использующая существующую аппаратную базу сети Интернет и некоторые его сетевые уровни. Следует отметить, что, сосредоточив внимание на различиях обеих моделей на программном уровне, закономерным также будет ожидать и то, что сеть SAFE будет иметь значительное влияние и на аппаратном уровне. С сетевыми ресурсами, предоставляемыми пользователями сети SAFE, мы в перспективе можем ожидать уменьшение количества размещённых серверов и перемены в способе их использования.