Next: Что читать
Up: А дальше?
Previous: Будущее Internet как сети
Вы сами понимаете, мы не пророки, также мы не можем охватить здесь все перспективы развития Сети, поэтому расскажем только о некоторых, как нам кажется, наиболее важных сторонах будущего Internet.
Подробнее о IPng можно прочитать в RFC 1672-1683, 1752. Информация о IPng имеется и в WWW:
Что есть IPng? IPng -- это Internet Protocol next generation -- следующее поколение протокола Internet.
То, что народ называет IP есть на самом деле 4 версия основного протокола Internet -- IPv4. Он был создан более десяти лет назад и поэтому не мог предусмотреть тех проблем, которые стали возникать в Internet в последние годы, когда Internet вдруг начала расти темпами просто фантастическими. К тому же IPv4 был создан раньше своего стандартного аналога -- OSI CLNP, что привело к тому, что он менее продуман. Всё же IPv4 продолжает служить верой и правдой, но порой ему приходится тяжеловато.
Например, возникла проблема с адресами класса B -- оказалось, их нужно больше, чем предполагалось. Эта проблема довольно серьёзна, она может начать сдерживать развитие Internet.
IPv4 не предусматривает объединения сетевых адресов в группы, поэтому маршрутизаторы вынуждены содержать информацию о каждой сети в Internet, даже если эти сети фактически объединены в группы. Это приводит к огромным таблицам маршрутизации. Эта проблема была частично решена введением CIDR -- Classless Inter-Domain Routing -- безклассовой меж-доменной маршрутизации (см. RFC 1517-1520). В этой схеме одна запись в таблице маршрутизации может использоваться для целой группы сетей. Это разумно, если они действительно расположены вместе. Например, две сети класса B 128.142 и 128.143 (сети CERN) могут быть помещены в одну запись и маршрутизация сообщений, адресованных в эти сети будет единой. Хотя CIDR справилась с устрашающим ростом таблиц маршрутизации, легко видеть, принимая во внимание экспоненциальность роста Internet, что она представляет собой временную заплатку.
Было несколько попыток кардинального решения этих проблем: CATNIP, SIPP, TUBA. Однако, они страдали рядом недостатков, которые делали неразумной их реализацию.
После множества семинаров, телефонных конференций, совершенно потрясающего объёма переписки по e-mail и т.п. специалисты, занимающиеся данной глобальной проблемой, пришли к консенсусу: было решено в качестве основы для разработки нового протокола принять SIPP, адрес в Internet сделать 16-байтным и использовать упрощённую (по сравнению с SIPP) схему перехода к новому стандарту. Протокол, предложенный этим проектом, получил название IPv6 и стал далее дорабатываться IETF.
Почему 6, а не 5? Потому что 5 уже используется под ISP -- Internet Stream Protocol.
IPv6 среди прочего предусматривает встроенные функции управления потоками в реальном времени, обеспечения безопасности, автоматической настройки (конфигурации) и т.д. Переход на этот протокол избавит Сеть от многих накопившихся проблем.
Легко посчитать, что 16-байтный адрес может быть использован для идентификации элемента в множестве, состоящем из 2.5x1038 элементов:
Всё множество адресов организовано в иерархические структуры, что позволит разумно ограничить размеры необходимых таблиц маршрутизации. Начальные (первые) адреса в IPv6 есть просто адреса по IPv4 с фиксированной приставкой.
Разработана соответствующая схема перехода к новому протоколу и план жития в эпоху перемен, последняя версия которого получила название Simple IPng Transition -- SIT. Конечно, в нём были использованы все те находки и мудрые идеи, наработанные в предшественниках (TUBA и т.п.). Как уже было сказано, SIT основан на SIPP, но по сравнению с ним сильно упрощён. SIT предполагает, что обновлённые хосты в Internet будут использовать как IPv6, так и IPv4: при взаимодействии со ``старорежимными'' узлами они будут использовать IPv4, а при взаимодействии с обновлёнными -- IPv6. Для передачи трафика IPv6 через узлы старого образца (работающие только с IPv4) будет испольоваться методика инкапсуляции. Так как первые IPv6-адреса будут представлять собой просто IPv4-адреса с постоянной приставкой (ведущими нулями, например, 0. ... .0.159.93.17.13), то эта инкапсуляция будет совершенно тривиальной. И всё же предусматривается возможность динамической картографии прямого и обратного отображений адресных пространств IPv4 и IPv6.
Достоинством этого плана переходного периода является то, что отдельные элементы Сети (узлы, хосты, маршрутизаторы) можно преобразовывать к новому стандарту относительно независимо. Не требуется никакого Генерального плана одновременного преобразования Internet. Очевидно, всё же начинать надо именно с DNS-серверов, так чтобы они были способны выдавать новые (в новой форме) адреса преобразованных узлов.
Вне сомнения, необходимо будет переработать приложения, активно пользующиеся адресацией, например, NFS и ftp. Конечно, эта переработка будет довольно простой и будет произведена очень быстро. Приложения, менее зависящие от адресации, потребуют минимальных преобразований, если вообще потребуют.
Вы спросите, а как же протоколы ISO? Почему бы вместо IPng не использовать международный стандарт? Очень правильный вопрос. Ответ на него очень прост: здоровый консерватизм. Технология TCP/IP продемонстрировала свою жизнеспособность, доказала своё право на жизнь. Зачем от неё отказываться?
Хотя множество сетей, входящих в Internet, уже используют протоколы OSI, ISO-сети ещё не доросли до масштабов Internet, поэтому трудно судить об их работе на действительно больших сетях. С ростом сетей могут возникать самые неожиданные проблемы, предвидеть которые чисто теоретически очень трудно. Так что большой потребности в использовании протоколов OSI пока ещё нет. Не наблюдается пока за OSI и особых преимуществ перед TCP/IP.
Действительно, правительство США взяло курс на распространение этого протокола на компьютерах правительственных учреждений. Действительно, многие теперь имеют соответствующее программное обеспечение. Но используют-то его очень немногие. И пока совершенно неясно, какова окажется реальная потребность в OSI.
Так как нет мощных аргументов в пользу перехода на OSI, поэтому эта идея и была оставлена. Немаловажную роль в принятии решения сыграло также и то, что переход с IP на OSI сулит множество трудностей переходного периода, в течение которого про нормальное функционирование Internet можно было бы смело забыть. Переход же с IPv4 на IPv6 произойдёт очень плавно, легко и совершенно незаметно для рядового пользователя.
С сетями OSI можно будет общаться через специальные шлюзы. Поскольку обе эти технологии построены по многоуровневому принципу и internet почти соответствует стандарту -- эталонной модели ISO/OSI, можно будет организовать очень хорошее их взаимодействие. Практически можно будет передавать любые услуги этих сетей друг другу по полной программе. Так что Internet OSI и не нужны, она и без них как с ними.
MIME -- это Multipurpose Internet Mail Extensions -- многоцелевые расширения почты Internet. Это реально существующий широкоиспользуемый сегодня стандарт для передачи по e-mail самой разной нетекстовой информации: графики, аудио- и видеоданных, факсов и т.д. Именно MIME позволяет использовать национальные алфавиты в e-mail, автоматически преобразовывать текст, например, на русском из одной кодировки в другую, например, из KOI8 в т.н. альтернативную. Наиболее активно и интенсивно MIME пользуется WWW.
Хотя это реальность дня нынешнего, очевидно, здесь находится одна из наиболее активных и плодотворных точек роста приложений Internet и самой Сети. MIME -- это предвестник стандартов информационной супермагистрали.
По всему по этому мы решили упомянуть MIME в будущем времени. Очень советуем вам приглядеться к этому стандарту повнимательнее -- вы увидите там завтрашний день человечества в едином информационном обществе.
Собственно спецификации MIME находятся в RFC 1521,1522.
Вы помните, мы рассказывали об информационной супермагистрали? Как вы сами понимаете, все виды услуг этой среды, будь то 333-канальное телевидение, заказное кино, интерактивное телевидение, приложения мультимедиа и виртуальной реальности в Internet, требуют гораздо более высоких пропускных способностей линий и большей мощности коммутаторов, чем это может обеспечить современная инфраструктура, представленная в основном телефонными линиями, радиорелейными и спутниковыми каналами, опто-волоконными линиями, использующими традиционные методы коммутации каналов.
Для информационной революции, какой является реализация идеи информационной супермагистрали, потребуется инфраструктура, способная работать по самым передовым технологиям магистралей, которые смогут поддерживать разнообразные информационные услуги. Такой инфраструктурой скорее всего станет сеть опто-волоконных линий связи и скоростных спутниковых каналов, использующих технологии сотовой коммутации (cell relay), воплощённой в стандартах ATM. Так что же такое ATM?
ATM -- это Asynchronous Transfer Mode -- асинхронный режим передачи. Это относительно новая технология организации передачи данных по последовательным линиям, например, по телефонным или опто-волоконным. Преимущества этой технологии проявляются тем более, чем на более высокоскоростных линиях она используется. Вычислительные сети, использующие данную технологию, характеризует практически безграничная масштабируемость -- от небольших локальных сетей со скоростями обмена 25-50Мбит/с до трансконтинентальных сетей с магистралями со скоростями порядка 1Tбит/с*.
Прежде, чем рассказать об ATM, кстати, если вам интересно, подробнее об ATM можно прочитать в журнале [25], скажем пару слов о современной технологии коммутации линий.
В настоящее время физическая коммутация каналов в телефонных сетях осуществляется только внутри сети одной АТС, возможно в пределах одного города. Скоростные междугородние (или между двумя АТС), тем более международные линии используют методику коммутации соединений с временным разделением каналов (мультиплексированием), называемую STM -- Synchronous Transfer Mode -- синхронный режим передачи, развитием которого и является ATM.
В STM канал используется по круговой очереди каждым установленным на этом канале соединением. Объясним это на неком отвлечённом примере.
Представьте себе такую ситуацию: есть одна единственная телефонная линия, 60 мужчин на одном её конце и их жёны -- на другом, супруги хотят говорить друг с другом; пусть супружеские пары носят фамилии Первый -- Первая, Второй -- Вторая, ..., Пятьдесятдевятый -- Пятьдесятдевятая. Как вы думаете, какой самый простой и демократически выдержанный выход в этой ситуации?
Вы правильно думаете: пусть первую минуту каждого часа говорят супруги Первые, вторую минуту -- супруги Вторые и т.д. И пусть эти минуты разговоров будут закреплены за ними навсегда. При этом, если супруги Тридцатьтретьи не говорят в своё время (например, Тридцатьтретий приехал к Тридцатьтретьей), то их время пропадает зря, -- пользоваться тридцать третьей минутой могут только супруги Тридцатьтретьи и никто кроме них.
Возможно, вы возразите, что ничего подобного в телефонных разговорах вы не слышали. И не услышите, поскольку временные интервалы там измеряются миллисекундами, и каждый интервал сжимается в соответствующее количество раз, быстро передаётся, на другом конце растягивается до прежней длины и склеивается с концом предыдущего, поэтому никаких разрывов не возникает. В нашем примере это соответствует следующему: супруга записывает свою очередную реплику в течение часа на магнитофонную кассету и в своё время ускоренно (в 60 раз быстрее) прокручивает эту запись в телефон, а её супруг быстро записывает это на свой магнитофон и позже замедленно (в 60 раз медленнее) прослушивает запись (одновременно записывая на другой магнитофон свою ответную реплику) и т.д. Получается, что оба супруга постоянно что-то говорят и слушают, без перерывов.
Хотя всё выглядит довольно гладко, существуют здесь и проблемы. Например, проблема неэффективного использования линии при отсутствии передачи на некотором соединении (когда супруги Тридцатьтретьи не явились на переговоры). Возможно, что другое соединение в то же самое время имеет вдвое большие объёмы передаваемых данных (супруги Шестые очень болтливы), которые можно было бы передать по временно неиспользуемому соединению (временно передать супругам Шестым тридцать третью минуту).
Теперь переидём к ATM. Переход довольно очевидный: надо убрать жёсткое закрепление временных интервалов за соединениями и ввести механизм динамического распределения. В нашем примере это соответствует тому, чтобы убрать пожизненное закрепление минут за супружескими парами и завести способ оперативно передавать минуты, не используемые задумчиво-молчаливыми супругами, особенно разговорчивым парам (именно это и называется статистическим мультиплексированием). Способ может быть, например, таким: в начале каждой минуты первые 5 секунд идут переговоры, в ходе которых устанавливается, какая пара будет говорить эту минуту.
Если вы внимательнее приглядитесь к получившейся схеме, то вы легко узнаете упрощённый вариант технологии коммутации пакетов! Упрощение состоит, например, в фиксировании длины пакетов. Здесь такие пакеты фиксированной длины называются ячейками (cell).
При этом следует понимать, что данная технология имеет свою специфику, например, при её применении на сетях линий (а не на одной единственной) она требует введения механизма маршрутизации, причём, эта маршрутизация должна быть сверхоперативной -- обеспечивать прокладку маршрута ячейки за время меньшее, чем время между следованиями ячеек данного соединения. Такая сверхбыстрая маршрутизация в настоящее время невозможна при использовании маршрутизаторов, реализованных в виде универсальной ЭВМ со специальным программным обеспечением. Такая маршрутизация реализуется специальными устройствами, фактически представляющими собой специализированные ЭВМ с функциями маршрутизации, реализованными на аппаратном уровне.
Таким образом, технология ATM -- это технология, объединяющая сразу два уровня эталонной модели ISO/OSI -- канальный и сетевой. Использование ATM для построения вычислительных сетей избавляет узлы сети от необходимости выполнять работу по маршрутизации сообщений. Таким образом производительность и технология вычислительной сети практически не зависит от её размеров.
Единственная проблема -- необходимость ограничения использования широковещательных сообщений. Действительно, если позволить компьютерам вести широковещательные передачи, то с ростом сети они будут всё более и более снижать эффективность использования линий, и наступит момент, когда сеть вообще утонет в потоке широковещательных сообщений. Поэтому разработаны средства поиска различных ресурсов без использования широковещания. Эти средства используемыми методами и алгоритмами сильно напоминают обычные маршрутизаторы, но работают на более высоких уровнях эталонной модели ISO/OSI. Так что маршрутизаторы ещё послужат.
Мощная технология вида ATM способна вообще подавить всех своих конкурентов. Вполне возможно, даже скорее всего, так и будет. Как только корпорации подсоединятся к магистралям ATM, получив доступ к недорогим широкополосным службам передачи данных, поставщики услуг частных коммутирующих станций начнут предлагать интерфейсы ATM, позволяя перевести на них речевой трафик корпораций. Кабельное телевидение, видео по требованию и телефонные услуги, как и приложения Internet, перейдут на сети ATM, и спор между ними прекратится.
А что Internet? Internet будет переведена на ATM, и базовая сеть сможет поддерживать более высокие пропускные способности. Например, сегодняшняя речевая связь в США обеспечивает около 600Гб/с*, а к 2020 г. пропускную способность национальной сети данных США планируется довести до 3Тб/с. При этом благодаря многоуровневым протоколам перевести Internet на ATM очень легко, и это будет сделано в течение двух лет.
Успешно разрабатываются и уже имеются первые реализации коммерческого уровня сервисов, основанных на использовании мобильных кодов. Мобильный код -- это программа написанная на специальном языке высокого уровня, обладающем реальной (а не декларируемой) абсолютной переносимостью, т.е. эту программу можно использовать на разных системных и аппаратных платформах, не внося в неё никаких изменений.
Идеология предоставления самого сервиса сходна с идеологией сервиса в WWW, только сервер передаёт клиенту не гипертекст, а программу. Также как и гипертекст в WWW, эта программа интерпретируется самим клиентом. Сам же клиент исполняет эту программу, так же как browser обрабатывает ссылки гипертекста, при их активации пользователем. Проще говоря, сервер присылает клиенту чёткие инструкции, что надо делать, а клиент их добросовестно исполняет. Причём, набор элементарных действий, доступных клиенту, очень велик. Очевидно, мобильные коды обладают большей общностью и большими возможностями, чем глобальные гипертексты.
Наиболее разработанным мобильным языком считается Java. Он напоминает язык C++ с ещё большей примесью языка SmallTalk. Язык Java использован в системе HotJava -- первой реализации подобного рода коммерческого уровня. Поближе познакомиться с этим интересным и перспективным направлением развития сетевых приложений, можно по WWW на http://www.w3.org/ раздел ``Specifications and Development Areas'' пункт ``Mobile Code''. Да и вообще, на этом сервере содержится масса интересной и полезной информации.
Идёт разработка и внедрение концепции ``Knowbot'' (``Энциклоп''). Моделью Энциклопа является умный справочный библиотекарь, у которого вы можете спросить о том, как и где найти интересующую вас информацию, а он вам даст в ответ библиографические и библиотечные ссылки. Причём, вам не надо знать название книг или статей, но только о чём это. Справочные библиотекари обучены обслуживать такие запросы, они обладают энциклопедическими знаниями: обо всём понемногу. Роботизируйте эту модель и вы получите Энциклопа.
Энциклопы задуманы в виде некоторого рода сетевых червей (worms), занимающихся полезной деятельностью -- сбором информации. Они должны по указке пользователя расползаться по сети, по ресурсам и искать, искать, и искать ..., если они находят разветвления ссылок, они посылают по ветвям ``под-червячков''. По исчерпании всех путей поиска червячки возвращаются к своему господину и выдают собранную информацию. Довольно фантастично, но уже имеются проекты и первые экспериментальные образцы. Исследования в этом направлении продолжаются. Это дело будущего.
Вы знаете во сколько раз количество состояний мозга человека больше количества состояний одного его нейрона? Каков средний путь, проходимый импульсом в нервной системе человека от раздражения до реакции? Сколько нейронов участвует в дуге условного рефлекса? Сколько нейронов в человеческом мозге?
Каково количество различных состояний одного узла в Internet? А у системы хост+пользователь? Каков средний путь проходимый пакетом от клиента к серверу? Сколько узлов участвует в передаче сообщений между двумя компьютерами в Internet? Каково население Земли? Сколько пользователей в Internet? Сколько компьютеров в Internet?
Кое-какие ответы:
Next: Что читать
Up: А дальше?
Previous: Будущее Internet как сети