`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

IPv6 -- большие надежды

0 
 
Сегодняшняя версия протокола IPv4 не претерпела существенных изменений со времени публикации RFC 791 в 1981 г. Много ли, мало ли утекло воды с тех пор, но надвигающиеся проблемы заставили в 1992 г. создать рабочую группу под названием IPng WG (IP next generation Working Group) для их изучения и выработки соответствующих рекомендаций. Основной пакет детализированных предложений был опубликован в 1996 г., а протокол получил наименование IPv6 (IP version 6). Резонно спросить, почему не v5? Дело в том, что версия 5 была присвоена протоколу Internet Stream Protocol version 2 (ST2).

Надо сказать, что IPv4 имел феноменальный успех в сетевой индустрии, и более чем за 20 лет использования зарекомендовал себя как надежный, легко реализуемый протокол, выдержавший требования к масштабированию и обеспечивший взаимодействие огромного количества сетей. Так чем же "провинился" наш герой?


Особенности и ограничения IPv4

Текущая версия протокола IP ориентирована на обслуживание компьютерного рынка, и вплоть до недавнего времени именно он был основной движущей силой развития Internet. Главная его тенденция (в контексте данной темы, конечно) заключалась в том, чтобы объединить компьютеры в сфере бизнеса, правительственном и образовательном секторах в большие сети.

Следующая фаза роста Internet была связана с широким распространением мобильных вычислительных устройств, которые к тому же стали использовать различные беспроводные способы подключения к сети. Они требовали не только новых IP-адресов и более широкомасштабной маршрутизации, но также минимизации непроизводительных расходов при передаче пакетов, автоконфигурации протокола и нативной поддержки мобильности. Природа мобильных вычислений требовала, чтобы протокол имел встроенные средства аутентификации и безопасности. В защите информации на уровне IP нуждались также частные и корпоративные коммуникации через общедоступные сети (виртуальные частные сети). Хотя для обеспечения конфиденциальности данных существует стандарт IPsec, но он является опциональным и может не поддерживаться всеми платформами.

Возник такой потребительский рынок, как многоканальное телевидение и видео по запросу, что превращает каждый телевизор в Internet-хост. Доставка данных в реальном масштабе времени требует обеспечения качества сервиса (QoS). Поддержка такого типа трафика в IPv4 осуществляется с помощью поля Type of Service (ToS) и идентификации полезных данных, в типичном случае используя порты TCP или UDP. К сожалению, поле ToS имеет ограниченную функциональность, а идентификация полезных данных посредством портов TCP и UDP не работает, если пакет шифруется.

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

Спецификация протокола IP, утвержденная в 1981 г., требовала, чтобы каждое устройство в сети имело, по крайней мере, один уникальный адрес. С помощью 32-разрядного поля можно адресовать более 4 млрд. узлов. Правда, основанная на классах структура адресных полей не позволяет полностью использовать возможные значения. Классы были введены для того, чтобы обеспечить определенную гибкость адресации для подключаемых к Internet сетей разных масштабов.

IPv6 -- большие надежды
Рис. 1
В соответствии со стандартом адрес состоял из двух частей: адреса сети, или сетевого префикса, и адреса хоста (рис. 1). Одной из главных особенностей классов было наличие в начале поля кода (ключа), указывавшего точку раздела между сетевым префиксом и адресом хоста. Так, например, если два первых бита адреса принимали двоичное значение 10, то граница раздела лежала между битами 15 и 16. Это упрощало обработку таблиц в первые годы существования Internet. Опишем кратко структуру классов.

Класс А. Каждый адрес класса А содержит 8-разрядный сетевой префикс со значением 0 в старшем разряде, за которым следует 24-разрядный адрес хоста. Таким образом, с помощью адресов класса А может быть идентифицировано 126 (27 -- 2) сетей и 16,7 млн. (224 -- 2) устройств в каждой из них (вычитание 2 связано с резервированием). Так как полный адресный блок содержит 31 разряд, то количество адресов класса А составляет 50% от всех возможных.

Класс В. Адреса этого класса имеют 16-разрядный сетевой префикс, два старших разряда которого принимают двоичное значение 10, и 16-разрядное поле для адреса устройства. Следовательно, может быть определено более 16 тыс. сетей с 65534 хостами в каждой. Занимая 30 разрядов, этот класс адресов составляет 25% от всего адресного пространства.

Класс С. Этот класс используется для адресации небольших сетей. 24-разрядный сетевой префикс с двоичным значением 110 позволяет идентифицировать более 2 млн. сетей, каждая из которых может содержать до 254 хостов. Количество адресов класса С составляет 12,5% от максимально возможного.

Диапазоны значений для адресов каждого класса приведены в таблице. При этом использована так называемая точечно-десятичная нотация, в которой байты разделяются точками, а их значения выражаются десятичным числом.

Класс
адресов
Диапазон
значений
А 1.ххх.ххх.ххх -- 126.ххх.ххх.ххх
В 128.0.ххх.ххх -- 191.255.ххх.ххх
С 192.0.0.ххх -- 223.255.255.ххх

Как видно, разбиение на классы оставляет неиспользованным 12,5% адресов.


IPv6 versus IPv4

Выше был конспективно обрисован круг основных проблем, вызванный расширением Internet и ограничениями существующей версии IP-протокола, которые должна была решить Рабочая группа при создании нового стандарта. Сформулируем теперь особенности IP-протокола нового поколения:
  • новый формат заголовка;
  • большое адресное пространство;
  • эффективная иерархия адресов для улучшения маршрутизации;
  • автоматическая конфигурация и управление IP-адресами;
  • встроенные шифрование, аутентификация и безопасность;
  • поддержка мобильности, позволяющая мобильному хосту напрямую связываться с узлами без участия базовой сети в качестве посредника;
  • улучшенная поддержка качества обслуживания (QoS);
  • встроенная поддержка многоадресной передачи, ограничивающей трафик определенными областями (локальный, региональный, глобальный);
  • обеспечение равноправных (peer-to-peer) коммуникаций;
  • расширяемость.
По понятным причинам мы ограничимся лишь кратким рассмотрением основных особенностей.


Формат заголовка и схема адресации

IPv6 -- большие надежды
IPv6 -- большие надежды
Рис. 2
Как видно из рис. 2, новый протокол предусматривает только восемь полей вместо 14 для старой версии. Три поля IPv4 были переименованы и вошли в состав IPv6. Поле Total Length названо Payload Length, и его содержание изменено. Если первое обозначало полную длину заголовка, то значением второго, как следует из его названия, является длина полезных данных. Поле Time to Live, представлявшее время жизни пакета в секундах, заменено полем Hop Limit, исчисляющим срок жизни пакета количеством допустимых транзитов. Вместо поля Protocol, определяющего, данные какого транспортного протокола следуют за IP-заголовком, в IPv6 введено поле Next Header, которое позволяет включать в случае необходимости дополнительные заголовки. Кроме этого, оно сообщает, какой тип транспортного протокола требуют данные, следующие за основным или дополнительным заголовком. Этот прием дает возможность исключить поле длины заголовка IHL.

Новыми в IPv6 являются поля Prio и Flow Label. С помощью первого хост-отправитель может задать уровень приоритета для своих пакетов, назначение второго -- обеспечить потоковую обработку, что значительно ускоряет маршрутизацию этого типа трафика.

Поля Source Address и Destination Address сохраняют свои значения, однако изменили расположение в заголовке. Увеличив их длину с 32 до 128 разрядов, протокол IPv6 радикальным образом решил проблему исчерпания IP-адресов.

Адресное поле в 128 разрядов позволяет идентифицировать около 3,4 1038 устройств. Часто, для того чтобы проиллюстрировать невообразимо большую величину этого числа, поясняют, что с его помощью каждому квадратному метру земной поверхности можно выделить 6,5 1023 адресов.

Безусловно, такое количество адресов призвано не столько обеспечить все сущее уникальным IP-адресом, сколько организовать многоуровневую иерархическую адресную структуру. Это, в свою очередь, позволит уменьшить размеры маршрутных таблиц и упростить маршрутизацию в ядре Сети за счет объединения трафика в магистралях.

IPv6 допускает три типа адресов.

Unicast Addresses (однонаправленные адреса). Этот тип идентифицирует единственный интерфейс. При соответствующей топологии маршрутов пакеты с таким типом адреса приходят на единственный интерфейс. Вообще говоря, существует несколько форм однонаправленных адресов. Например, для глобальных коммуникаций используются глобальные провайдер-базированные однонаправленные адреса (Provider Based Unicast Addresses), внутри подсети -- локальные (Local-Use Addresses) и ряд других форм.

Multicast Addresses (групповые адреса). С помощью таких адресов идентифицируют группу интерфейсов. При соответствующей топологии маршрутов пакеты с групповым адресом доставляются на все интерфейсы, входящие в группу.

Anycast Addresses (альтернативные, или неопределенные адреса). Этот тип является новым в IP-адресации. Хотя такие адреса идентифицируют группу интерфейсов, пакеты при соответствующей топологии маршрутов доставляются только на один "ближайший" интерфейс. При этом ближайший интерфейс определяется не в смысле географического расстояния, а в терминах топологии маршрутов.


Поддержка качества сервиса

Напомним, что IPv4 обеспечивал качество сервиса, используя в основном протоколы DiffServ (дифференцированные услуги) и/или IntServ (интегрированные услуги). Наряду с этим IPv6 имеет дополнительное 24-разрядное поле для идентификации потокового типа трафика -- метка потока (Flow Label). Оно позволяет хосту-отправителю ассоциировать метку потока с определенным набором параметров, который затем используется для сообщения маршрутизатору о запрашиваемом протоколе управления, таком, как Resource Reservation Protocol, а также для классификации и фильтрации пакетов. Это, в частности, упрощает маршрутизацию.

Четырехразрядное поле Prio в заголовке IPv6 позволяет источнику указывать желаемый уровень приоритета для одних пакетов относительно других, которые он отправляет. Значения приоритета подразделяются на два диапазона. Диапазон значений от 0 до 7 используется для управления перегрузкой, а значения от 8 до 15 -- для трафика, пакеты которого посылаются с постоянной скоростью, без отсрочки передачи в случае перегрузки канала.


Безопасность

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

Первый механизм, называемый "Authentication Header", является расширением заголовка и обеспечивает аутентификацию и целостность данных. Второй -- "IPv6 Encapsulated Security Header" -- также реализуется с помощью расширения заголовка. Он отвечает за конфиденциальность IPv6-дейтаграмм. Он проще, чем некоторые подобные протоколы безопасности (например, Secure Protocol 3D), но достаточно гибок и алгоритмически независим.


Автоконфигурация

Цель разработчиков этой функции нового протокола -- сделать так, чтобы хост автоматически определял всю информацию, необходимую для подключения к Internet. Минимальными требованиями здесь являются способность хоста сгенерировать один уникальный IP-адрес и обнаружить (получить адрес), по крайней мере, один маршрутизатор.

В полностью автоматическом режиме интерфейс сначала присвоит себе локальный однонаправленный адрес, справедливый только в локальной подсети, к которой он подключен. Для этого он будет использовать в качестве начальной части адреса префикс формата соответствующего типа однонаправленных адресов IPv6 (Format Prefix Local-Use Unicast Addresses), а в качестве суффикса добавит какое-нибудь уникальное число (обычно это МАС-адрес карты Ethernet). Затем система посылает запрос во внешний мир с целью проверки неповторимости адреса. Если адрес не уникален, то он изменяется, например случайным образом.

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

Как видно из вышеизложенного, IPv6 не является надмножеством функций, совместимых вниз с IPv4, и поэтому эти протоколы не интероперабельны. Однако осуществить переход на новый протокол "все вдруг" -- задача абсолютно невыполнимая. В связи с этим были разработаны механизмы перехода, позволяющие сосуществовать двум протоколам некоторое время. Это реализация двойного стека в маршрутизаторах и хостах, туннелирование и трансляция.

Как заметил великий Карл Линней, создатель системы классификации растительного и животного мира, "червяк длинен, а жизнь коротка". Наши ресурсы не позволяют даже конспективно коснуться всех особенностей нового протокола. Но даже из столь краткого описания можно сделать вывод, что IPv6 обещает преобразить Internet, обеспечив поддержку широкого круга коммуникационных технологий.

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

0 
 

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT