Маленький шаг к покорению технологий: Интернет

Используя какую-то технологию, мы редко задумываемся о том, как она устроена, главное — чтобы работало. Например, Интернет. Листая ленту VK, просматривая видео в youtube на телефоне и при этом переходя из одной лекторной в другую, мы не догадываемся, что эта возможность появилась в результате длительной работы людей, которые хотели заставить компьютеры общаться между собой.

Тех, кто хочет узнать немного из истории Интернета, вернуться в стены школы и слегка приоткрыть завесу того, что происходит «под капотом», пока ты читаешь посты HSE PRESS, прошу под кат.


От холодной войны до наших времен

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



Вернёмся в школьные годы и вспомним, как мы передавали записки друг другу на уроках, а теперь представим, что эти записки можно бросать только старосте класса, который уже потом бросает записку адресату. А что будет, если староста заболеет? Тогда вы не сможете передать ответы на контрольную своему товарищу. Согласитесь, это не очень удобно.

Логичным решением проблемы будет передать сообщение через другого человека, например, ближайшего соседа. Примерно такой же подход предложил Пол Бэрен (Paul Baran), один из сотрудников корпорации RAND, к которой обратилось Министерство обороны США для создания своей сети. Конечно же, по природе своей человек ленив, поэтому изначально никто не хотел прокладывать тысячи новых кабелей отдельно для этой разработанной сети, решили использовать уже имеющуюся телефонную, поэтому проект был передан на разработку компании AT&T (в то время единственный в США монополист в области телефонных сетей), однако AT&T сразу же отклонила идею Бэрена и сказала, что такую сеть построить невозможно (никто не любит, когда им указывают, как делать их работу, особенно богатейшая и крупнейшая компания, которую учит какой-то мальчишка). Другого решения у Министерства обороны не было до октября 1957 года. В этом году в СССР был запущен первый в мире искусственный спутник Земли, который дал нам огромное преимущество в космосе. Тогда президент Эйзенхауэр устроил проверку в министерствах с целью узнать, на что идут средства. Выяснилось, что армия, флот и ВВС США только зря проедают деньги, отпущенные Пентагоном на научные исследования. Тогда же и было принято решение создать единую научную организацию под покровительством Министерства обороны, ARPA (Advanced Research Projects Agency, Управление перспективного планирования научно-исследовательских работ). Изначально у этой организации не было ничего, кроме небольшого офиса и скромного, по меркам Пентагона, бюджета. На начальном этапе организация находилась в научных поисках, и вот на научном симпозиуме ACM SIGOPS, который состоялся в конце 1967 года в Гетлинбурге, штат Теннесси, Ларри Робертс, диспетчер программ в ARPA услышал доклад о системе, созданной в Национальной физической лаборатории (NPL) под руководством Дональда Дэвиса (Donald Davis), в которой рассматривалась небольшая (несколько компьютеров) сеть в Англии. Самое удивительное было то, что работа практически цитировала отвергнутую когда-то идею Бэрена! Директор ARPA уехал из Гелтинбурга с твердым намерением создать в Америке то, что позднее будет названо ARPANET.

Вернёмся опять в наш класс и попробуем передать ответы на контрольную нашему бедствующему другу. С нами сидит верный сосед по парте, у которого, в свою очередь, есть как минимум два друга, через которых он может передать нашу посылку, получается некая «братия добрых соседей». Два друга нужно для того, чтобы если вдруг один заболеет, то сообщение можно было всё равно передать.



Примерно так и работала сеть ARPANET, только вместо подсети в виде «братии добрых соседей» используется подсеть компьютеров, называемых IMP (Interface Message Processor). Кстати, в переводе с английского imp — означает бес, — да, у авторов было чувство юмора. Такую экспериментальную сеть удалось запустить в декабре 1969 года. Важно отметить, что здесь начинает появляться одна из ключевых особенностей Интернета — его модульность. По сути, мы не знаем, через кого передаются сообщения внутри «братии». Аналогично поступает почта: нас уверяют, что, если мы положим правильно оформленное письмо в конверт, то оно дойдет до адресата.

Это свойство модульности очень важно для работоспособности такой огромной системы, наряду с концепцией многоуровневого общения.

Рассмотрим пример «архитектуры» (схемы) философ-переводчик-секретарь.



Представьте себе двух философов, один из которых говорит на клингонском и немецком, а другой — на гуджарати и урду. Поскольку нет общего языка, на котором они смогли бы общаться, каждый из них использует переводчика, каждый из которых, в свою очередь, нанимает секретаршу. Философ 1 желает выразить собеседнику своё неравнодушие к виду Félis silvéstris cátus. Для этого он передает сообщение (на немецком) своему переводчику, говоря «я люблю котиков». Переводчики договорились общаться между собой на нейтральном языке, французском, таким образом, сообщение преобразуется к виду «J'aime les chats». Затем переводчик отдаёт сообщение секретарю для передачи, например, по электронной почте. Когда сообщение получено другим секретарем, оно переводится на урду переводчиком 2 и передается философу 2. Каждая пара (философы, переводчики и секретари) независимы друг от друга, поскольку общение между этими парами строго структурировано. Переводчики могут переключиться с французского на финский, при условии, что оба будут согласны, при этом в паре философов и секретарей ничего не поменяется. Секретари также могут изменить электронную почту на факс или отправку сообщения голубиной почтой, не говоря об этом никому, при этом система будет все также функционировать и философы смогут обмениваться своими предпочтениями.


Окей, так что же такое, этот ваш Интернет?

Поскольку мы теперь знаем, для чего создавался Интернет и его базовые концепции, мы можем сказать, что такое Интернет в некотором приближении. Интернет — распределённая сеть компьютеров, которые общаются между собой по определённому стеку протоколов, причём этот стек соответствует концепции многоуровневого общения. Когда мы запрашиваем определённую страницу в сети, наш браузер упаковывает сообщение, и на пути следования оно постепенно «разворачивается», при этом каждый протокол заботится о передаче только на своем участке и имеет унифицированные интерфейсы для общения с соседними протоколами.


Вместо заключения

На деле мы рассмотрели маленькую толику архитектуры реального Интернета, но тем и хороши технологии, что есть разные уровни понимания их принципа работы.

В данной статье рассмотрены базовые понятия и после её прочтения вы немного приоткрыли завесу тайны. Цели описать 60 лет работы огромного количества людей в две страницы 10 кегля, при этом не оставив огромного количества информации за бортом, не ставилось. (Существует книга на 946 страниц под авторством Э. Таненбаума и Д. Уэзеролла по компьютерным сетям, в которой достаточно подробно описаны общие(!) принципы работы компьютерных сетей, начиная от физического уровня передачи данных (кодирование информации, ряды Фурье и т. д.) и заканчивая проблемами безопасности в компьютерных сетях.) Важно понимать, что технологии создавались людьми для людей, и принципы их работы совершенно просты, потому что человек по природе своей не любит сложностей, даже самое красивое и необычное здание построено из простых кирпичиков. 


Надеемся, что для кого-то эта статья станет отправной точкой в изучении технологий в принципе, а может, и Интернета. Все пожелания, а также возникшие вопросы или просьбы объяснить какие-то вещи можете писать автору на эту почту: . Отдельное спасибо Александру Комарову за иллюстрации к статье и Э. Танненбауму и Д. Уэзероллу за их книгу «Компьютерные сети», избранные главы которой послужили основой для статьи. В заключение привожу ссылки для пытливых: How the Internet works, Как устроен интернет.


Павел Абрамов

Читать еще