Участники ИТ-сообщества уже долгое время спорят, что делать с IPv4 и IPv6. Одни призывают внедрить протокол нового поколения как можно скорее. Другие считают, что решением проблемы нехватки адресов станет NAT. Но в пылу дискуссий на тематических площадках иногда можно встретить справедливый вопрос: куда пропал IPv5?

/ Unsplash.com / Possessed Photography
/ Unsplash.com / Possessed Photography

Под другим именем

Протокол IPv5 существует, хотя известен под иным названием – Internet Stream Protocol (ST). Впервые его представили в 1979 году в формате технической заметки IEN 119. В отличие от IPv6, он должен был не заменить IPv4, но расширить его возможности по работе с потоковым аудио. Можно сказать, что спецификация ST положила начало таким концепциям, как пакетная передача речи и речевой поток (talkspurt).

Согласно документации Internet Stream Protocol, клиенты должны сформировать требования к пропускной способности и задержкам до передачи данных. На эту информацию опираются так называемые ST-агенты – хост-процессы и шлюзы. Они определяют необходимое количество ресурсов для межсетевого взаимодействия.

Сообщения, пересылаемые между ST-агентами, представляют собой «конверты» с пакетами. Каждый из них содержит заголовок конверта (envelope header), за которым следуют один или несколько пакетных заголовков (packet headers). Уже после них записаны кусочки данных в аналогичном порядке. В общем случае структуру конверта можно представить следующим образом:

EH, PH1, PH2, . . .PHn, DATA1, DATA2, . . . DATAn

Что интересно, в 1990 году была опубликована вторая версия Internet Stream Protocol – ST-II или ST2. В документацию RFC 1190 включили новые механизмы, повышающие надежность соединения на случай, если сеть или отдельный агент выходят из строя. Финальную версию ST2, также известную как ST2+, рабочая группа IETF опубликовала в 1995 году (RFC 1819).

Судьба протокола

Официально название IPv5 так и не получило распространения. Хотя поле Version в структуре IP-пакета протокола ST содержало номер пятой версии. В то же время от Internet Stream Protocol решили отказаться в пользу стриминговых протоколов на базе UDP.

Однако IPv5 все же заложил основу для современной технологии VoIP. Еще тридцать лет назад протокол реализовали в рамках экспериментальной сети Terrestrial Wideband Network, которую DARPA использовали для симуляций и видеоконференций. Позже на протоколе построили систему цифровой связи Iris, которой пользовались канадские военные.

/ Unsplash.com / Alina Grubnyak
/ Unsplash.com / Alina Grubnyak

Многие концепции, заложенные в Internet Stream Protocol, сегодня применяют для асинхронной передачи данных (ATM) и используют в Multiprotocol Label Switching (MPLS).

Другие цифры

В 1990-х развивались и альтернативные разработки. Например, в 1993 был опубликован RFC 1475 с описанием протокола TP/IX, которому был присвоен номер IPv7. Он расширил адресное пространство до 64 бит, а также предложил forward route identifier для ускорения маршрутизации в масштабных сетях.

Свое решение для расширения адресного пространства предложили инженеры IANA в RFC 1347. Их проекту TUBA была назначена версия IP под номером девять. Однако оба этих протокола более не актуальны. Их затмил IPv6, который медленно, но верно продолжает завоевывать долю рынка.


Больше о протоколах в нашем блоге на Хабре:

И в корпоративном блоге на сайте:

Комментарии (14)


  1. Exchan-ge
    07.09.2022 01:13

    Участники ИТ-сообщества уже долгое время спорят, что делать с IPv4 и IPv6


    Какие есть шансы на появление IPv7 в обозримом будущем?

    (да, этот вопрос содержит и мое отношение к протоколам IPv4 и IPv6 :)


    1. onix74
      07.09.2022 08:25
      +2

      В обозримом будущем шансов нет, т.к. уже вышел в 1993 г. (см. раздел Другие цифры)


      1. Exchan-ge
        07.09.2022 13:18

        т.к. уже вышел в 1993 г. (см. раздел Другие цифры)


        Это не принципиально, пусть будет IPv10.
        Дело в том, что срок внедрения IPv6 слишком затянулся, что довольно объективно свидетельствует о наличии у него крупных недостатков.
        (про недостатки IPv4, думаю, все в курсе)

        Как бы уже назрела необходимость создания нового протокола, возможно, принципиально иного.


        1. Evengard
          07.09.2022 14:19

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

          И если IPv6 таки потихоньку, но всё же внедряется в нашу жизнь, то с новым условным IPv8/IPv10 (особенно с "принципиально иным") будет всё то же самое, только с самого начала...


          1. alex_www
            07.09.2022 15:03

            Роутеры без поддержки IPv6 не делают уже лет 20. IPv6 не внедряют потому что лень и раздолбайство.


            1. qw1
              08.09.2022 10:31

              ок, пусть будет не «куча устройств», а «куча программ».

              Если писать на C++ на голых сокетах, или на WinAPI, то IPv6 нужно делать отдельной веткой в коде. Мало кто заморачивается, ведь IPv4 — обязательное требование, а v6 — это «задача со звёздочкой» (её ведь и оттестировать надо хорошо, на реальных юзерах, у которых нет IPv6 в массе).


            1. iCpu
              08.09.2022 13:23

              Не знаю, что там про лень и раздолбайство, но вот реализация широковещательных сообщений без подписки (то, что в IPv4 называют broadcast, а в IPv6 multicast) в IPv6 настолько геморрная, что лично я её не осилил.

              В IPv4 достаточно сделать socket.ip | socket.network_mask
              В IPv6 нужно себе в куче мест прострелить ноги. Выставить флаг мультикаста, выставить иные флаги, выставить маску сети, которая ещё и не самым простым образом вычисляется, и потом ещё бодаться с роутерами, которые могут требовать маски сети не по стандарту, а кратные собственному значению - и вообще пох, как ты об этом должен узнать.

              И я бы не был так предвзят, если бы для IPv6 был где-нибудь репозиторий с простыми примерами "был вот такой механизм на IPv4, на IPv6 его можно делать вот так или вот эдак". Новотхер!

              ЗЫ. Да, пока не забыл. FF02::1 не работал в моей сети. Почему? Спросим об этом TP-Link


          1. Exchan-ge
            07.09.2022 18:58

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


            Это все именно так и называется — «проблемы с внедрением»

            будет всё то же самое, только с самого начала...


            В случае удачного варианта реализации — максимум года три.
            Особенно если это не затронет современное железо.


    1. rogoz
      08.09.2022 13:57

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

      Как я вижу, сейчас у провайдеров варианты:
      1. Ничего не делать, так и садить всех за NAT, и продавать белые IPv4 за 100-150р.
      2. Что-то делать, вводить IPv6, и не продавать белые IPv4 за 100-150р.

      Очевидно что выбирается 1 вариант.
      Возможно, если подсчитать всё, NAT более вычислительно затратная операция, чем маршрутизация, можно сэкономить на оборудовании, выбросив NAT. Как я понимаю, такое провела мобильная часть МТС, и они в выигрыше. Но это, опять таки, надо считать, думать, делать, и не факт, что для провайдера поменьше будет какой-то профит.

      Разумеется все рассказы про отсутствие оборудования и сложность запоминания IP-адресов (!) — это или сказки для хомячков, или проблемы админов мелких локалок.


      1. Exchan-ge
        08.09.2022 14:25

        Очевидно что выбирается 1 вариант.


        Как долго он сможет так существовать?
        (про второй вопросов нет :)


  1. victor_1212
    07.09.2022 02:03
    +10

    > Однако IPv5 все же заложил основу для современной технологии VoIP.

    интересную тему Вы затронули, поэтому небольшое дополнение:

    примерно в то время когда обсуждались ST/ST2 (ST2 = ip 5 ) основные линки Terrestrial Wideband Network были на основе T1, т.е.около 1.5 Mbps, плюс нормальных router еще не было в природе, поэтому для voip и video необходимую bandwidth было трудно обеспечить в реальном времени, пришлось преодолевать эти трудности на уровне протоколов, чем занималась bbn начиная около 1980, они также сделали для этой цели довольно интересные проекты router (Butterfly) которые сильно опережали свое время, использовали мультипроцессоры и пр., но в дальнейшем простое увеличение пропускной способности современных линков в общем позволили все сильно упростить и использовать обычный ip v4/v6 в том числе для voip, позже уже в 90х та же команда bbn (Milliken, Carvey, и др.) сделала первый 50Gbit/s router, архитектура которого (combined router+switch) легла в основу практически всех современных interconnect этого класса


    1. victor_1212
      07.09.2022 02:41
      +1

      ps

      экспериментальная Terrestrial Wideband Network было построена bbn по контракту darpa именно для отработки передачи данных в реальном времени (voip и пр.), естественно сотрудники bbn принимали участие в создании практически всех упомянутых протоколов


  1. Dark_Purple
    07.09.2022 12:55
    +6

    Я то наивно думал что название по количеству байт в IP адресе)))


    1. Videoman
      07.09.2022 23:34
      +1

      Да, только байт в адресе IPv6 — 16 ;)