главная страница поиск карта сайта написать письмо
   
  История
  Документация
  Пресс-центр
  Предложения
  О Форуме
 логин
 пароль
IPv4 и его недостатки
/ История / Почему IPv6? / IPv4 и его недостатки

Расскажем о самом IPv4 (RFC-791) - том протоколе, на котором в данный момент основан Интернет почти полностью, т.к. IPv4 является основной частью стека TCP/IP.
Этот протокол занимается маршрутизацией в сетях, т.е. он направляет пакет по пути от отправителя до получателя. IP-протокол посылает данные дейтограммами. Каждая такая дейтаграмма, кроме передаваемых данных, содержит в себе и заголовок. Формат этого заголовка перед вами:

 Версия

Длинна заголовка

Тип сервиса

 Полная длинна  дейтаграммы

Идентификатор

Флаги

Указатель фрагмента

Время жизни

Протокол

Контрольная сумма заголовка

IP-адрес отправителя

IP-адрес получателя

IP-опции

Данные
...


Обычно заголовок содержит 20 октетов, т.е. имеет длину 20 байт, но эта длинна может варьироваться, что отнюдь не упрощает процесс передачи данных.
Наиболее интересными для нас по данной теме полями заголовка являются поля IP-адресов (адрес отправителя и получателя), поле тип сервиса (изначально неиспользовавшееся, а теперь устаревшее) и поле протокол (определяющее структуру поля "данные", т.е. в соответствии с каким протоколом они кодировались).
Итак, перечислим общие недостатки протокола IPv4:
  1. дефицит адресного пространства - количество различных устройств, подключаемых к сети Internet, растет экспоненциально, размер адресного пространства 232 быстро истощается;
  2. слабая расширяемость протокола - недостаточный размер заголовка IPv4, не позволяющий разместить требуемое количество дополнительных параметров в нем;
  3. проблема безопасности коммуникаций - не предусмотрено каких-либо средств для разграничения доступа к информации, размещенной в сети.
  4. отсутствие поддержки качества обслуживания - не поддерживается размещение информации о пропускной способности, задержках, требуемой для нормальной работы некоторых сетевых приложений;
  5. проблемы, связанные с механизмом фрагментации - не определяется размер максимального блока передачи данных по каждому конкретному пути;
  6. отсутствие механизма автоматической конфигурации адресов;
  7. проблема перенумерации машин.
Поля IP-адресов содержат IP-адреса отправителя и получателя. В IPv4 IP-адрес состоит из 4 байт и часто представляется в виде 4 чисел, размером 1 байт, разделяемые точками, что даёт чуть больше 4 миллиардов различных адресов. В такой схеме каждый компьютер в Интернет имеет свой уникальный адрес. Но при появлении Интернет-ресурсов адреса распределялись огромными блоками. Так Массачусецкий университет имеет у себя блок в 16 миллионов адресов, в то время, когда средненький провайдер имеет несколько тысяч адресов(при НАМНОГО меньшем количестве линий связи). Такая "транжирка" IP-адресов привела к тому, что их пространство начало заканчиваться и ощущаться нехватка. Близился тот день, когда 32-битное пространство адресов исчерпает себя, что приведёт к остановке развития Интернета. Хотя и были предприняты меры решения этой проблемы (например технологии выделения блоков по 2 адреса и технология раздачи динамичных IP-адресов DHCP, а так же NAT, позволяющая транслировать IP-адреса из внешней сети во внутреннюю), всё равно, "финал" удалось лишь отсрочить. При нынешних темпах роста Интернета, согласно IPv4 Address Space Report (bgp.potaroo.net/ipv4), не розданные пока адреса закончатся к 2018 году, а 32-битное IP-пространство исчерпается в 2040 году (хотя есть и намного менее оптимистичные прогнозы). Проблема адресного пространства IPv4 счяитается основной, но она не главная и не единственная.
Проблемы масштабируемости IPv4 на этом не заканчиваются. Есть также проблемы связанные с транспортировкой данных, заключающиеся в сложности маршрутизации и, следовательно, разрастании таблиц маршрутизации. Хоть эту проблему и пытались решить введением бесклассовой междоменной маршрутизацией (CIDR), всё равно она этим не разрешилась, зато IP-администрирование от этого усложнилось. Всё же трудно построить и упорядочить структуру адресов в 32битном пространстве...   Затем, сложность обработки IP-загаловка. Существенное число полей, которое он содержит, отнюдь не облегчает жизнь процессам, обрабатывающим такие заголовки. Ведь некоторые поля заголовка уже потеряли свою значимость, а другие возможно существенно упростить. Также переменная длинна заголовка заставляет постоянно пересчитывать контрольную сумму, а при высоких скоростях это сильно загрузит процессор.
Также, в IPv4 отсутствуют некоторые механизмы, необходимые по современным меркам. Это механизмы информационной безопасности и средства поддержки классов обслуживания. Отсутствуют методы шифрования данных, которые сейчас на практике очень пригождаются. А такие средства должны быть реализованы именно на сетевом уровне, чтобы не напрягать этим приложения. Обеспечить поддержку классов обслуживания должны опять же маршрутизаторы, связывающие системы, чтобы эта задача не вылезала на уровень приложения, что приведёт опять же к усложнению и нестабильности работы.
Реализовывать эти механизмы на IPv4 дополнительно - пустая трата времени. Всё равно придётся для этого вносить изменения в весь стек TCP/IP, что в любом случае приведёт к некоторому усложнению работы, связанному с переходом на новый стандарт. Так зачем тогда при этом оставлять неустранимые пороки IPv4, если можно реализовать всё сразу с помощью IPv6?
В итоге, можно сказать, что IPv4 отслужил почти 30 лет верой и правдой и мог бы служить дальше, но не стоит терпеть устаревший протокол, содержащий неисправимые на сетевом уровне недостатки, в то время, когда на смену ему давно готова отличная альтернатива - IPv6.  

AREALIDEA Разработка сайта