Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СОС_Шабалин.doc
Скачиваний:
876
Добавлен:
21.05.2015
Размер:
1.73 Mб
Скачать

2.2.2 Протокол iPv6

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

Протокол IPv6 выполняет ряд усовершенствованных функций.

Большое адресное пространство. Главной причиной, по которой нужно вносить изменения в используемую версию протокола IP, является большее адресное пространство: адреса в IPv6 имеют длину 128 бит (против 32 бит в IPv4). Большее адресное пространство позволяет избежать потенциальной проблемы исчерпания адресного пространства протокола IPv4.

Автоконфигурация узлов. Узел IPv6 может быть конфигурирован автоматически при подключении к сети с IPv6-маршрутизацией с помощью протокола обмена сообщениями ICMPv6. При первом подключении узел посылает запрос на получение своих конфигурационных параметров (router solicitation), и, если это возможно, маршрутизатор отправляет пакет с настройками сетевого уровня для данного узла (router advertisement). Если IPv6 неприменима по каким-либо причинам, хост может быть конфигурирован вручную.

Суперграммы (Jumbograms). В IPv4 размер пакетов ограничен 64 килобайтами полезной нагрузки. В IPv6 появилась возможность обходить это ограничение за счет применения так называемых суперграмм, которые позволяют использовать пакеты размером до 4 мегабайт. Употребление такого пакета в локальной сети или в обычном канале Интернет представляется нецелесообразным, а на магистралях и в других сетевых каналах большой емкости передача меньшего количества пакетов большего объема является преимуществом.

Сетевая безопасность. Протокол для защиты IP-сети IPSec (Internet Protocol Security), реализующий слой шифрования и аутентификации, является неотъемлемой частью базового протокола в IPv6, в отличие от IPv4, где он считался дополнительным.

Качество обслуживания (Quality of Service, QoS). В основе данного нововведения лежит идея дифференцирования служб, которая заключается в необходимости обеспечения возможности выбора и оплаты уровня обслуживания, отличного от принятого по умолчанию. Среди возможных вариантов – гарантированная доставка, срочная доставка, временное выделение значительной пропускной способности, минимальные издержки на доставку (возможно, ценой скорости доставки) и многие другие параметры, которые могут иметь приоритетное значение для конкретных пользователей в зависимости от определенного времени и места их нахождения. В протоколе IPv4 система QoS частично реализована, тем не менее широкого распространения она не получила.

Мобильные пользователи. Мобильность была частично решена в протоколе IPv4, но широкого распространения не получила, так как ноутбуки, карманные компьютеры и мобильные телефоны стали повсеместно использоваться не так давно; однако с развитием беспроводных технологий не могла не быть усовершенствованной в новом протоколе IPv6, в стандартах которого различают мобильность двух типов: обычную мобильность и микромобильность. Как правило, микромобильность связывается с канальным уровнем (беспроводное соединение). Здесь уместно провести аналогию с сотовой связью: в обоих случаях рассматриваются пути осуществления возможности перемещения мобильного устройства между беспроводными точками доступа без разрыва соединения. Проект находится в совместной разработке с компаниями–разработчиками беспроводных сетевых технологий Wi-Fi и Wi-MAX, которым прогнозируют в будущем полностью вытеснить с рынка сотовую связь и стать фундаментом для IP-телефонии, набирающей в последнее время обороты. Другой вид мобильности находит применение в несколько более крупном масштабе, когда, к примеру, пользователю необходимо войти в сеть в Москве и обменяться информацией с клиентом в Нью-Йорке так, как будто он находится в собственной сети в Токио, и в этом случае ему не требуется отсылать все сообщения через полмира. Решения и стандарты поддержки мобильных пользователей до сих пор находятся в стадии разработки [32].

Считается, что все эти нововведения станут залогом длительного использования протокола IPv6 в качестве основного для межсетевого взаимодействия, прежде всего, в сети Интернет.

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

IPv6-заголовок разработан с расчетом на уменьшение времени обработки в пункте назначения и на промежуточных маршрутизаторах. Для IPv6-заголовка не характерна переменная длина – она всегда составля­ет 40 байт. Формат IPv6-заголовка отличается от структуры заголовка IPv4-пакета уменьшением количества полей (некоторые убраны за ненадобностью, добавлены новые, некоторые модифицированы и изменены названия). Структура пакета IPv6 представлена на рис. 2.8. [33]

4 бита

Версия

8 бит Класс

20 бит Поток

16 бит

Общая длина

8 бит

Следующий заголовок

8 бит

Лимит транзитов

128 бит

Адрес источника

128 бит

Адрес назначения

ЗАГОЛОВКИ РАСШИРЕНИЙ

До 4 Мегабайт

ПОЛЕ ДАННЫХ

Рисунок 2.8 – Структура IPv6–пакета

В поле Версия (Version) указывается, что данный заголовок от­носится к протоколу IPv6; значение этого 4-х-битного поля – 6.

Новое поле Класс (Class) обеспечивает поддержку назначения приоритетов трафика. Первый бит поля D указывает на то, что трафик чувствителен к задерж­кам. Если он приравнен к единице, значит, трафик зависим от временных характеристик. К примеру, обмены интерактивными данными, равно как передачи аудио- и видеоинформации, требуют установления соединений с низкой задержкой. Следовательно, в пакетах, в которых содержатся полез­ные нагрузки этих типов, первый бит поля Class обычно приравнивается к единице. Поле Предшествование (Precedence) аналогично соответствующему полю IPv4-заголовка и позволяет приложению дифференцировать типы трафика исходя из их приоритетов. Соответственно, маршрутизаторы могут обращаться к битам предшествования для определения приоритетов трафика во время обработки и организации очередей. Последние четыре бита поля Class в данный момент являются зарезервирован­ными.

Поле Поток (Flow) управляет группой пакетов, которые по требованию источника долж­ны особым образом обрабатываться промежуточными маршрутизаторами. Поле обычно не используется: по умолчанию оно забивается 20 нулями.

Поле Длина полезной нагрузки (Payload Length) содержит информацию об объеме данных, следующих за IPv6-заголовком (сам заголовок не в счет). Длина поля Payload Length составляет 2 байта.

В по­ле Следующий заголовок (Next Header), длина которого составляет 1 байт, указывается последующий заголовок расширения, транспортный или какой-либо другой протокол (табл. 2.3). Многие из представленных в таблице значений характерны также для IPv4-пакета (в скобках отмечены значения только для пакета IPv6).

Таблица 2.3 – Значения поля Next Header

Значение

Тип заголовка

0

Межтранзитные опции (IPv6)

1

Протокол контроля сообщений в Интернет ICMP

2

Межсетевой протокол управления группами IGMP

4

Инкапсуляция пакета IPv4 в пакет IPv6 (IPv6)

5

Поток (IPv6)

6

Протокол управления передачей TCP

17

Протокол передачи дейтаграмм пользователя UDP

43

Заголовок маршрутизации (IPv6)

44

Заголовок фрагментации (IPv6)

51

Заголовок аутентификации (IPv6)

52

Зашифрованная полезная нагрузка безопасности (IPv6)

58

Протокол контроля сообщений в Интернет ICMP (IPv6)

59

Отсутствие следующего заголовка (IPv6)

60

Заголовок опций назначения (IPv6)

Поле Лимит транзитов (Hop Limit) в протоколе IPv4 называется Время жизни. Это название соответствует фактическому порядку его использо­вания в обеих версиях протокола.

Поле Адрес источника (Source Address) идентифицирует 16-ти-байтный IP-адрес отправляющего хоста.

Поле Адрес назначения (Destination Address) идентифицирует 16-ти-байтный IP-адрес принимающего хоста.

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

Заголовок IPv6

Заголовки расширений

1. Межтранзитные опции (Hop-by-Hop Options)

2. Опции назначения (Destination Options)

3. Маршрутизация (Routing)

4. Фрагментация (Fragment)

5. Аутентификация (Authentication)

6. Инкапсулированная полезная нагрузка безопасности (Encapsulated Security Payload, ESP)

Заголовок высшего уровня (например, протоколов UDP, TCP, ICMP)

Поле данных

Рис. 2.9 – Расположение заголовков в пакете IPv6

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

1) передача предупреждений маршрутизаторам;

2) передача опций сервиса качества обслуживания QoS.

Заголовок расширений опций назначения представляет способ увеличения IPv6-заголовка в целях поддержки опций обработки и настроек пакетов. Этот заголовок предусматривает применение в будущем фирменных и стандартизированных сообщений. Значения типов опций должны будут регистрироваться в организации IANA (Internet Assigned Numbers Authority (www.iana.org)) и описываться в специальных стандартах Ин­тернет RFC (Request For Comments).

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

Протокол IPv6 запрещает фрагментацию пакетов в пути (на маршрутизаторах). Исходный отправитель обязан проверить величину MTU до пункта назна­чения и фрагментировать данные в соответствии с этой единицей передачи до отправки пакета. Если передающее устройство испытывает необходимость в отсылке пакетов, превышающих значение MTU, применяется Заголовок расширений фрагментации протокола IPv6.

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

Заголовок расширений инкапсулированной полезной нагрузки безопасности предназначен для шифрования данных и всегда должен быть последним в цепи IP-заголовков.

Следовательно, протокол IPv6 по своему внутреннему устройству и функциональным возможностям явно превосходит протокол IPv4 и является его достойной заменой. Пока же протокол IPv4 считается основным, а IPv6 имеет лишь частичное применение. До тех пор пока IPv6 окончательно не вытеснит IPv4 (что вряд ли произойдет в обозримом будущем), будут употребляться переходные механизмы, необходимые для того, чтобы IPv6-узлы могли применять IPv4-сервисы и чтобы изолированные IPv6-хосты и сети использовали IPv6-Интернет через IPv4-инфраструктуры.

Существует 2 варианта решения данной проблемы [8].

Двухстековый подход. Поскольку IPv6 является расширением IPv4, существует возможность создания сетевого стека, поддерживающего как IPv4, так и IPv6. Такая реализация называется двойным стеком, а реализация двойного стека для узла называется двухстековым узлом.

Туннелирование через IPv4. Для того чтобы добраться до IPv6-Интернет, изолированные узлы или сети должны иметь возможность использовать существующие инфраструктуры IPv4 для передачи IPv6-пакетов. Это можно сделать, применив метод, известный как туннелирование, который заключается во встраивании IPv6-пакетов в IPv4 (по сути, IPv4 становится как бы канальным уровнем для IPv6).

Полный переход на IPv6 и перечисленные выше решения подразумевают полный отказ от текущего коммутационного оборудования, которое работает только с протоколом IPv4. Переход на новую аппаратуру в локальных сетях и в Интернете повлечет за собой материальные расходы, что, безусловно, также сдерживает внедрение протокола IPv6. Основными этапами введения IPv6 являются следующие:

1) замена или перепрошивка устаревшего оборудования;

2) обеспечение производителей нового оборудования достаточными информационными ресурсами для обработки IPv6;

3) инвестирование в разработки нового программного обеспечения для поддержки IPv6;

4) обеспечение публичности (чтобы убедить конечных пользователей в полезности подготовки к модернизации существующего оборудования);

5) донесение информации до конечных пользователей (чтобы создать спрос на IPv6-оборудование);

6) инвестирование провайдерами технических ресурсов в подготовку к IPv6.

В качестве примера поддержки протокола IPv6 выступили организаторы летних Олимпийских игр 2008 года в Пекине, которые создали копию основного сайта по IPv6-адресу http://ipv6.beijing2008.cn/ en (IP-адрес: 2001:252:0:1::2008:6 и 2001:252:0:1::2008:8). Все сетевые взаимодействия на Олимпиаде было запланировано проводить с использованием IPv6. Это событие можно считать крупнейшей демонстрацией технологии IPv6 с момента ее создания.