Вы здесь

Lightning Network – новый TCP/IP-стек, позволяющий совершать односторонние транзакции в сети

Недавно мне стало известно, что вокруг Lightning Network в сообществах Bitcoin и Bitcoin Cash происходит множество различных спекуляций, что порождает еще большую путаницу. Я бы хотел поделиться с вами своим мнением насчет Биткоина, блокчейна и Lightning Network исключительно, с исследовательской точки зрения.

Lightning Network – новый TCP/IP-стек, позволяющий совершать односторонние транзакции в сети

Чтобы понять, как работает связка блокчейна и Lightning Network нужно абстрагироваться от споров в Twitter и Reddit (ничего толкового из них все равно не извлечь) и разобраться в сути самих сетевых протоколов, на которых построен наш Интернет. Я считаю, что в понимании функционирования компьютерных сетей и работы Интернета кроется огромное количество знаний. В том числе и об ограничениях масштабирования биткоина.

Три протокола, которые я буду разбирать в этой статье – это Ethernet, IP и TCP. Разобравшись в принципах их работы, мы станем более подготовленными, и будем лучше понимать вопрос масштабирования биткоина и увеличения размера блока первой криптовалюты.

Наиболее популярные способы передачи данных в компьютерных сетях – это broadcast (широковещательный) и unicast (одноадресный, одноцелевой). Существуют и другие формы, например, anycast и multicast, но в этой статье мы не будем их разбирать.

Давайте сначала начнем с определения и понятия этих форм передачи данных:

  • Broadcast - тип передачи данных, при котором информация отправляется из одной точки сети в другие точки, от одной ко всем сразу.
  • Unicast - тип передачи данных, при котором информация отправляется из одной точки в сети в другую точку, от одной к одной.

Разобравшись, что собой представляют эти типы форм передачи данных, мы быстро обнаруживаем, что блокчейн-транзакции напоминают широковещательные формы связи. Когда транзакция выполняется в сети Bitcoin, она передается или транслируется на все подключенные узлы в сети. Другими словами, для того чтобы транзакция была полностью подтверждена в биткоине, все узлы должны получать и записывать эту транзакцию. Блокчейн-транзакции очень похожи на обработку передачи данных устаревшими концентраторами Ethernet.

Мы использовали концентраторы Ethernet для передачи данных между компьютерами давным-давно. Со временем стало понятно, что они просто не масштабируются из-за ограниченного характера. В старых концентраторах Ethernet поддерживаются только широковещательные передачи, данные, которые поступают через один интерфейс или порт, должны будут транслироваться и реплицироваться через все другие интерфейсы и порты в сети.

Например, если бы вы захотели отправить мне мегабайтный файл с изображением по сети, включающей 100 участников, эта картинка должна была быть реплицирована 99 раз и передана всем остальным пользователям сети. Только тогда передача данных стала бы валидной.

В биткоин-сети мы видим похожую ситуацию: данные (транзакция или блок), которые поступают от одного узла, транслируются и реплицируются на все остальные узлы сети. Блокчейн аналогичен устаревшим концентраторам Ethernet, он создает не самые лучшие условия для передачи и обмена данными. Для меня, как сетевого инженера, просто неприемлемо даже рассматривать возможность масштабирования глобальной платежной сети, такой как Bitcoin, посредством транзакций на основе всех узлов. Даже сейчас наши сетевые инженеры проявляют большую осмотрительность в отношении сетей Ethernet и LAN, не говоря уже о глобальном уровне.

Для наглядности, попробуем смоделировать ситуацию: если бы мы перепроектировали Интернет, полагаясь только на передачи широковещательных данных, как в блокчейне и концентраторах Ethernet, мы бы разместили каждого пользователя, хост или устройство по всему миру в один и тот же сегмент ЛВС или широковещательный домен. Интернет был бы гигантской, плоской сетью LAN, где вся коммуникация должна тиражироваться и транслироваться на каждое отдельное устройство. Чтобы вы смогли открыть и прочитать эту статью, ее пришлось бы подгрузить на все остальные устройства в интернете.

В компьютерных сетях чаще всего используется одноадресная или двухточечная форма связи. Большая часть коммуникаций в Интернете маршрутизируется с одного компьютера на другой, и больше не нужно полагаться на слепые трансляции в надежде, что она дойдет до получателя. Мы можем точно отправлять и доставлять сообщения принимающей стороне.

Мы узнали, что передача файла изображения в 1 МБ в широковещательной сети потребует, чтобы файл был реплицирован и передан каждому участнику в этой сети. Вместо этого в сети, которая поддерживает одноадресные передачи данных, мы можем соответствующим образом маршрутизировать этот файл изображения из источника в пункт назначения четким способом.

Для меня Lightning Network – это Bitcoin уровня IP. Я понимаю, что описанные формы передачи данных существуют как в Ethernet, так и в IP. Но я чувствую, что аналогия поможет нам лучше понять эти сложные и в значительной степени абстрактные идеи: блокчейн, Lightning Network, каналы и т. д.

Отбросим на время все чрезмерно упрощенные определения LN, которые даются различными участниками дискуссий в Твиттере. Вместо этого, давайте объективно взглянем на Lightning Network и определим, что мы точно о ней знаем. Она позволяет нам открывать каналы с другими пользователями и обмениваться биткоинами в обход блокчейна. Что еще мы знаем? Мы можем отправлять и получать транзакции между двумя точками, которые формируют канал. Мы также можем направлять транзакции сразу на место назначения.

Основываясь на этих ключевых моментах, мы можем установить, что Lightning Network позволяет совершать одноадресные транзакции в биткоин-системе, которая ранее поддерживала только широковещательные транзакции. Для меня узлы Lightning в биткоине эквивалентны IP-хостам, где мы можем, наконец, провести транзакцию «один к одному» определенному пользователю.

В традиционном IP мы отправляем и получаем пакеты данных, в LN мы отправляем и получаем биткоин. IP – это то, что позволило нам масштабировать наши маленькие примитивные устаревшие сети в глобальную систему, которой является сегодня интернет. Подобным образом, Lightning – это то, что позволит нам масштабировать глобальную сеть биткоина.

Если принять узлы Lightning Network как IP-хосты, то каналы LN можно рассмотреть, как TCP-соединения. На сегодняшний день, когда мы пытаемся зайти на какой-нибудь сайт в интернете, мы открываем TCP-соединение с веб-сервером, через который мы можем загрузить исходный HTML-код сайта. Кроме того, когда мы загружаем торрент-файл, мы открываем TCP-соединения с другими компьютерами в Интернете, которые затем используются для облегчения передачи данных торрента.

В Lightning мы устанавливаем каналы с другими пользователями и можем напрямую [точка-точка] отправлять и получать данные (транзакции) аналогично TCP. Где Blockchain похож на Ethernet, Lightning Nodes - это наши IP-адреса, а Lightning Channel - наши TCP-соединения.

Я вижу много общего у блокчейна, биткоина и Lightning Network с ранее существовавшими сетевыми технологиями и протоколами, которые питают нашу компьютерную сеть. С технической точки зрения, я не верю, что масштабирование блоков Bitcoin когда-либо будет работать, и я опасаюсь таких нововведений в будущем. Я приветствую наши новые методы одноадресной транзакции, предоставляемые Lightning Network.

Тем более я в восторге от идеи создания «паутины над биткоином». В то время как большинство зациклились на обычном блокчейне, я бы посоветовал обратить внимание на LN. Lightning Network – это TCP/IP-стек для биткоинов. LN – это то, что будет включать и активировать наши приложения и дополнительные протоколы и уровни.

Что после этого случится с блокчейном биткоина? Он должен и будет оставаться децентрализованным, защищенным от несанкционированного доступа, неизменным базовым слоем, предоставляющим нам криптографические данные.
Некоторые участники криптовалютного сообщества, и даже целые группы распространяют пугающие слухи о Lightning Network и последствиях транзакций «над блокчейном», но они не понимают, что их подход масштабирования блокчейн-транзакций только толкает нас в прошлое (Ethernet). Если биткоин потеряет децентрализацию на своем базовом слое, мы потеряем биткоин.

Я написал эту статью с надеждой, что она поможет устранить продолжающуюся путаницу в отношении блокчейна, биткоина и Lightning Network. Я постарался лучше объяснить принципы блокчейна и Lightning через аналогии с концепциями, с которыми вы можем быть, более знакомы.

Категория: 
Криптовалюты
Монета: 
Технология: 
5
Ваша оценка: Нет Средняя: 5 (1 оценка)

Что еще почитать:

Комментарии:

Роман

Интересная аналогия, жаль что статья не раскрывает механизма верификации транзакций в LN.

пн, 01/15/2018 - 22:15

Все таки хорошо, что появилась технология Lightning Network для биткоина, иначе обмен криптовалютой превратился бы в настоящую каторгу и стоил бы намного дороже.

вс, 10/14/2018 - 22:24