В последних двух статьях мы рассказывали вам о том, что Интернет — самое невероятное изобретение, но так ли это?
Мы узнали о внутренней работе Интернета и о том, как он стал таким, каким мы наблюдаем его сегодня. Вы, вероятно, поняли, что то, что мы рассмотрели — это значительное упрощение того, как данные маршрутизируются через сеть. Существует множество тонкостей и нюансов: различные сетевые протоколы и технологии, работающие на нескольких уровнях инфраструктуры Интернета; тысячи интернет-провайдеров объединенных для совместной работы, а также существование многочисленных учреждений управляющих Интернетом. Вы, наверное, задаетесь вопросом, как после стольких лет разработки, и с учетом такого количества людей, работающих в Интернете, он до сих пор такой неэффективный?
Интернет — это сеть дорог
В прошлой статье мы представляли Интернет в виде дерева, теперь давайте вообразим его как сеть дорог. Точно так же, как автомобили проезжают по дорогам, чтобы добраться до места назначения, данные передаются по Интернету пользователям. Мы называем маршруты, которые соединяют города или даже страны, автомагистралями. Они, как правило, являются самым быстрым способом для того, чтобы добраться до отдаленных мест назначения и предназначены для обработки большого количества трафика. Мы достигаем этого, делая их, насколько это возможно, прямыми и широкими.
Все интернет-кабели работают одинаково. Мы делаем наши “кабели” таким образом, чтобы они могли обрабатывать огромные объемы трафика. У этого процесса даже есть специальный термин — пропускная способность. Для “главных кабелей” это вполне допустимо, но помните, что данные должны достигать конечного пользователя, поэтому происходит их разветвление по более узким, меньшим маршрутам, здесь можно провести аналогию с городскими дорогами. В какой-то момент мы достигаем эксплуатационных ограничений наших кабелей, сталкиваемся с необходимостью увеличения их пропускной способности. Через какое-то время потребность возникает вновь, и нам, опять же, приходится работать над усовершенствованием их возможностей.
Однако, является ли это наиболее эффективным и устойчивым решением проблемы?
Интенсивное движение
Когда вы путешествуете на машине, у вас почти всегда есть возможность выбрать маршрут поездки. Вы можете ехать по памяти, следуя визуальным подсказкам или с помощью навигационных систем. Часто, именно так, вы можете избегать интенсивного движения или пробок. Вопреки статистике дорожно-транспортных происшествий, водители принимают достаточно взвешенные решения.
Однако, в современном интернете пакеты данных ведут себя неэффективно. После отправки, они пойдут по кратчайшему маршруту без учета возможных перегрузок в сети. Из-за этого вы, как конечный пользователь, сталкиваетесь низким качеством получаемых данных, а также увеличенным временем загрузки. Эти проблемы могут быть не так заметны, если у вас приличное Интернет-соединение, но они становятся более явными при торговле на бирже, в онлайн-играх, потоковой передаче и т.д.
Возникает вопрос. Почему в мире, где существуют умные телевизоры и холодильники, сам Интернет никак не изменяется?
Нет ничего идеального, и Интернет не является исключением. Многие существующие сетевые технологии ждут своего улучшения, и мы рассмотрим, на наш взгляд, наиболее важные из них.
Метод скорейшей передачи
Существует два способа передачи трафика между интернет-провайдерами: маршрутизация с удержанием пакетов (cold-potato routing) и высокоскоростная маршрутизация (hot-potato routing).
Последний дешевле. Таким образом, он чаще используется, особенно между теми провайдерами, которые имеют соглашения о пиринге без расчетов. Однако то, что является более доступным, обычно характеризуется более низким качеством. Высокоскоростная маршрутизация (hot-potato routing) говорит сама за себя. Эта практика гарантирует, что пакеты данных, которые проходят через сеть, передаются следующему провайдеру так быстро, насколько это только возможно. По этой причине, трафик направляется через Интернет по кратчайшему маршруту без учета возможных заторов на пути. Это очевидная проблема для постоянно растущего и требующего все большей пропускной способности Интернета. Так, всего одна ссылка низкого качества, появившаяся на пути пакета с данными, позволит скомпрометировать соединение.
Протокол пограничного шлюза
Протокол пограничного шлюза (BGP — Border Gateway Protocol) был разработан в 1994 году, чтобы ISP роутеры могли найти путь к любому IP-адресу. Если вы помните первую статью, это один из протоколов сетевой модели TCP/IP. BGP подвержен значительным ограничениям, хотя и используется уже более двух десятилетий. Одно из этих ограничений заключается в том, что BGP может перенаправлять трафик только на соседний маршрутизатор, что означает, что он не может контролировать весь маршрут и предвидеть потенциальные недостатки в сети. Не вдаваясь в подробности, BGP устарел и не способен справляться с постоянно растущим спросом современных интернет-сетей. Это решение не масштабируемо и определенно не безопасно.
Какие меры предпринимаются — IPv6
Возможно, вы слышали, что Интернет переходит с IPv4 на IPv6, но почему? Так вот, основной мотивацией для перехода является то, что у нас заканчиваются IP-адреса. IPv4, который использует 32-разрядные адреса, может предоставить только около 4,3 миллиарда уникальных адресов. Может показаться, что это очень большая цифра, но с постоянно растущим количеством пользователей Интернета и революционными изменениями, которые преподнес Интернет вещей (IoT) у нас уже просто не хватает места. IPv6, с другой стороны, использует 128-битные адреса, что решает проблему со значительным запасом.
Однако, если уж мы обновляем этот сегмент, то почему бы не добавить несколько дополнительных функций? Пакеты данных IPv6 будут расширены по размеру и позволят добавлять пользовательскую информацию заголовка, но как это нам принесет пользу? Хорошо, представьте пакет данных в виде письма, которое вы отправляете по почте. До IPv6 вы могли только указать, откуда и куда вы хотите отправить это письмо. Теперь вы сможете точно определить путь вашего послания.
Таким же образом пакеты данных будут программируемыми, и с помощью поддерживающих маршрутизаторов мы сможем определить не только на какой адрес они будут отправлены, но и какой маршрут они для этого выберут. Наверняка Вы уже поняли, какую пользу это нам принесет, и единственное, чего не хватает, — это технологии — Программируемого Интернета NOIA Network.
Интернет, в том виде, в котором он есть сейчас, достаточно сложный и изощренный, его еще предстоит улучшить. Некоторые из его ограничений обусловлены исключительно экономическими причинами, а некоторые — тем, что инфраструктуре еще не удалось сравниться с технологическим прогрессом. В любом случае, всегда есть место для улучшения, и именно этим занимается NOIA Network. Теперь, когда мы более или менее понимаем, как работает Интернет и с какими проблемами он сталкивается, мы можем разобраться, как их решить. В следующей части этой серии статей мы именно это и сделаем. Объясним, как программируемые интернет-решения NOIA Network позволят существенно улучшить способ передачи данных через все эти “сети сетей”. Оставайтесь с нами!
Ссылки на официальные англоязычные ресурсы:
Веб-сайт: https://noia.network/
GitHub: https://github.com/noia-network
Facebook: https://www.facebook.com/NOIANetwork/
Twitter: https://twitter.com/NoiaNetwork
Medium: https://medium.com/noia
Reddit: https://www.reddit.com/r/NOIA/
Youtube: https://www.youtube.com/channel/UChCZuura_kvQog6uiRDPu3g
Telegram: https://t.me/Noia_Network/
Telegram (RUS):https://t.me/NOIA_RUS