Между APRANET и Интернетом: киклады, цикады, катенет

Этот сюжет случился внезапно. Я переводил очередной кусок Ciscoвской документации, глаз зацепился за слово datagram, я решил копнуть предысторию термина, наткнулся на странные термины Сatenet b APRANET и меня понесло… 

МЕЖДУНАРОДНАЯ ОБСТАНОВКА

В 1962 году Америка и Советский Союз неожиданно решили проверить у кого в тестикулах тверже металл и в мире сильно запахло жареным — наступил Кубинский кризис. Вашингтону и Москве пришлось усиленно рисовать «пожарные планы» на разные случаи и без того неспокойной жизни. Вашингтон внезапно для себя обнаружил, что они не могут на 200% гарантировать, что нужные люди в нужный момент смогут «дотянуться» до «красной кнопки».

Поскольку жить очень хочется — то Пентагон счел это хорошей предпосылкой (помимо прочих) для начала разработки своей сети.

ОФИЦИАЛЬНАЯ АМЕРИКАНСКАЯ ЛЕТОПИСЬ

Когда я изучал историю создания Интернета, я с удивлением для себя обнаружил, что почти везде история пишется под копирку, ну, типа такого:

«Однажды, в середине 60-х, ребята из Пентагона задумали сделать сеть, которой будет не страшна даже ядерная война. Сеть назвали ARPA, работала она по принципу коммутации каналов.

Коммутация каналов — это примерно так: «Алло, девушка? Соедините меня со Смольным… Как нет связи? … Что? … Какая-то #$#@# кусок провода свистнула на цветмет? … И что, теперь связи нет? А по другим каналам никак?… Ага, понял… А когда теперь? Завтра? Ну хорошо, попробую прозвониться завтра».

Само собой, военных такая связь никак устроить не могла, поэтому они начали искать варианты.

Вызвался один умелец — Пол Бэран (Paul Baran, компания RAND) — и набросал им схемку, по которой, если где-то образовался обрыв связи, то система должна сама находить «объездные» пути для переданной информации. «Хм, это интересно» сказали ребята из Пентагона и пошли со схемкой к единственным на их районе телефонистам (AT&T).

Телефонисты ответили быстро — ваш план фигня, а мы фигней не занимаемся. Тогда Пентагон кинул клич в народ — кто сможет решить эту задачу, тот получит от нас сладкую-сладкую конфету.

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

С этой темой и тяжелым сердцем в 1967 году пентагонцы пошли на научный симпозиум и.. — офигеть! услышали там, что ушлые британцы (под руководством Дональда Дэвиса (Donald Davis)) уже что-то подобное смастерили в пределах одного отдельно взятого британского института и вовсю обкатывают.

Пентагонские ребята были беспредельно счастливы — решение было найдено. Через некоторое время они сделали такую же систему в США, назвали ее ARPANET. Дальше всё пошло как по маслу, и на этом масле ARPANET в итоге дорос до INTERNET.

По всем параметрам получалось, что англосаксы — бритиши + американцы — молодцы, потому что придумали такую офигенную штуку и подарили ее миру».

СОМНЕНИЯ

Еще недавно я был уверен, что всё было именно так, пока мне в переводе не попалось странное слово CATENET, которому — как уверяют европейские эксперты — чуть-чуть не хватило авторитета, чтобы войти в историю ВМЕСТО Интернета. Но почему же ни в одном популярном учебнике по истории телекоммуникаций об этом не говорится? Как получилось так, что по факту, наш нынешний Интернет построен на технологиях CATENET/CYCLADES (дейтаграммы, адресация), но при этом официальная история Интернета эти имена старается не упоминать всуе? Я на всякий случай даже спросил нескольких сетевиков — слышали ли они про эти термины? Нет, в вузовской программе им про этих чудо-зверей не рассказывали.

Пойдем по порядку.

ОБСТАНОВКА ВО ФРАНЦИИ

В середине 60-х Париж уже начал явственно ощущать, что пора завязывать «жевать сопли» — Америка начала уходить в технологическом плане в отрыв. Американцы начали откровенно хамить даже на территории самой Франции — в 1964 году американская General Electric всосала в себя крупнейшего французского производителя компьютеров Bull, а затем показали французам фигу на их просьбу поставлять им тогдашние супер-ЭВМ (Франция, во избежание разных «типа-карибских» недоразумений, тоже захотела свою ядрёную бомбу и компьютеры нужны были для совместной научной работы и расчётов).

В 1966 году Шарль де Голль объявил программу компьютерного импортозамещения, чтобы не зависеть от американцев. Был взят курс на компьютеризацию всей страны.

ЛУИ ПУЗЕН

В 1950 году 19-летний Луи закончил Высшую политехническую школу в Палезо (Франция) и пошел работать в телефонную компанию. Как-то раз на одной технической выставке он увидел прелюбопытнейшую по тем временам вещь — электронный калькулятор. Штуковина ему понравилась и Луи стал интересоваться ИТ. Он уволился из телефонной компании и устроился в вышеупомянутую фирму Bull.

Луи вспоминает: «Начинал свою работу я на считывателях перфокарт и перфолент, и на первых ЭВМ… Вскоре я понял, что если я не осилю английский, то мне в этом бизнесе делать будет нечего. Мой шеф со мной согласился и откомандировал меня в США, в Массачусетский технологический институт. Там я выучил английский, узнал, как программировать супер-ЭВМ и даже начал экспериментировать — я изобрел командную оболочку с дружественным интерфейсом (shell)». (т.е. термин shell был изобретен в 1963-1964 годах французом Луи Пузеном, а не американцами — http://multicians.org/shell.html)

СНОБИЗМ

По возвращении из США Луи продолжил работать айтишником, но уже в других конторах (автомобилестроение и метеорология).

«В начале 70-х мне позвонили мои бывшие коллеги и сказали, что правительство хочет сделать свою сеть во Франции. В США с 1968 года уже работал Arpanet, поэтому Франция отправила посмотреть на это чудо ученых в США. Возвратившись домой они сказали — технология нужная, надо делать. А в 1971 году меня уже самого вызвали, чтобы разработать экспериментальную французскую сеть на государственные деньги. Я был в восторге. Для меня это было абсолютно новая тема и я снова поехал в Америку, чтобы понять, как и что там работает…. В то же время PTT — национальная телефонная компания — тоже начала продумывать свою собственную сеть, но какого-то конкретного плана у них еще не было».

«Я объехал все США, чтобы посмотреть, как построен ARPANET. Меня познакомили с ведущими разработчиками, с некоторыми из них я был уже знаком. Вообще, до поездки я уже прочитал документацию про ARPANET, но мне она показалась несколько непонятной — я не мог понять, как это все выглядело вживую. Съездив в США я вник в то, как они начинали, как всё организовали, какие были поставлены цели и какие возникали проблемы. Они объяснили мне все свои слабые места и недоделки. Мы начали обсуждать, как решить эти проблемы.
Тогда они поняли, что я планирую сделать свою сеть, но отнеслись к этому скептически. Им казалось, что такую сложную систему как Arpanet можно сделать только в такой стране как США — с деньгами, опытом и т.п. ».

В общем, Луи вернулся из США во Францию, собрал надежных ребят, заручился поддержкой международных компьютерных сообществ и начал работать. Проект запустили в 1972 г. и назвали CYCLADES (по названию греческого архипелага Киклады)

ARPANET против CYCLADES

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

Если упрощенно, то современные сети работают примерно так же — данные разбиваются на пакеты (дейтаграммы) и они улетают в сеть, каждый пакет может дойти до адресата в разное время, разными маршрутами и в разном порядке, но компьютер все равно их выстраивает в правильном порядке и если какой-то пакет потерялся или испортился, то адресат просит отправителя отправить ему этот пакет повторно.

ARPANET же была разработана таким образом, чтобы компьютеры в сети отправляли и получали пакеты строго по порядку. «Я сказал», — вспоминает Луи — «что мы будем строить такую сеть с коммутацией пакетов, которую можно будет связывать с другими сетями. Мы будем исходить из того, что в будущем у телефонных компаний не будет монополии, в каждой стране будет куча разных сетей и операторов, и что эти сети будут ненадежны»

«Если сети связаны между собой, то с кого спрашивать, если будут проблемы? Каждый будет отнекиваться, типа проблема на вашей стороне, у меня все ОК. И мы начали разрабатывать такой протокол — набор правил, который даст возможность программам обмениваться информацией друг с другом. Это значит, что одна сторона посылает данные, другая получает их, затем протокол проверяет эти данные на полноту и целостность, и сигнализирует — все ОК, продолжай засылать. Сегодняшний Интернет немыслим без этого — система хоть и построена из ненадежных компонентов, но в итоге работает надежно».

«На разработку дейтаграм меня вдохновило два момента. Первый — разработки Дональда Дейвиса (прим: тот самый шустрый британец). У него уже как был макет сети на базе дейтаграмм, и хотя он пока еще ни одной сети не построил, его идеи мне показались технически реализуемыми. А второй момент — я люблю, чтобы все было просто. Мне показалось, что нет технического смысла разбивать этот end-to-end протокол на два уровня, и что всё можно будет уложить в один уровень.

Все эти принципы были реализованы в CYCLADES, а подсети, из которых она состояла, назывались cygales (цикады). У термина «цикада» своя история — разработчики поставили на каждый компьютер спикер и когда приходил пакет, спикер «цыкал» как цикада.

Мне попался на глаза доклад Луи за 1973 год по концепции Cyclades (http://www.rogerdmoore.ca/PS/CYCLB.html). Там помимо прочего, есть очень любопытный раздел про адресацию внутри этой сети.

Цитата из доклада: <Формат адреса будет следующий: тип сети (3 бита), регион (5 бит), провайдер (8 бит). Но поскольку для Cyclades не требуется такое большое адресное пространство, часть бит можно зарезервировать для будущего использования, и оставить только регион (4 бита) и провайдера (4 бита)>.

Ничего не напоминает? Я лично в этом увидел прототип будущего IP-адреса с делением на зоны и классы подсетей.

Продолжая эту идею, в 1978 году Луи публикует еще один доклад, где описывает концепцию Catenet, очень похожую на нынешний Интернет.

У французов были и другие интересные идеи, на основе которых были сформулированы протоколы TCP и IP, вы их легко найдете по ссылке выше.

Как бы то ни было, сейчас американцы не очень любят вспоминать о том, что добрую долю идей этих протоколов они взяли из CYCLADES, а также о том, что в 1972 году от APRANET даже приехала делегация во Францию, перенимать опыт (http://zymigroup.com/artigos/o-que-ou-quem-te-inspira.html).

Позже, в 1974 г. участники этой делегации, Винтон Серф и Роберт Кан опубликовали статью с описанием протокола для коммутации пакетов (https://www.cs.princeton.edu/…/fal…/cos561/papers/cerf74.pdf), где Пузен и его сеть упомянуты только в библиографии, среди прочих.

ВОТ И СКАЗКЕ КОНЕЦ

Закончилось все печально. До 1974 года Cyclades считалась перспективным государственным проектом и всячески поддерживалась правительством Франции. Затем к власти пришел другой президент — Жискар д’Эстен, советниками по технической части у которого были люди от телефонной компании-монополиста PTT, которая реализовывала свою телекоммуникационную сеть и которой, естественно, не нравилась бурная самодеятельность Луи. Проекту Луи стали перекрывать кислород и в итоге к 1981 году «бобик сдох».

Сейчас месье Пузен работает директором по проектам в EUROLINC — организации, которая продвигает идею использования национальных алфавитов и языков в Интернете. В 2003 году он получил от правительства Франции орден Кавалера Почетного легиона, в 2012 году попал в Зал славы Интернета, а в 2013 году его наградила лично королева Елизавета II за достижения в области инженерного дела.

В общем на данный момент заслуги Луи отметили все причастные… кроме американцев… 🙂

P.S. Я прошу прощения за допущенные технические вольности и неточности. Я все-таки переводчик (читай: гуманитарий), а не инженер :).

P.S.S. Кстати, Луи Пузен (Louis Pouzin) еще жив, во всяком случае я нашел его в Facebook (https://www.facebook.com/pages/%D0%9F%D1%83%D0%B7%D0%B5%D0%BD-%D0%9B%D1%83%D0%B8/232840863542212?fref=mentions&rf=143529988996784)

С уважнием,
Евгений Бартов,
переводчик, копирайтер, маркетолог.