“Перечислимость” IP-адресов

В продолжение темы про IPv6. У этого нового протокола есть интересное математическое (вычислительное, если хотите) отличие от IPv4. Так, в старом протоколе есть не более 232=4294967296 (около 4 млрд) потенциально различимых адресов. Предположим, что мы задумали каждому возможному адресу сопоставить один байт с некоторой информацией. Массив займёт примерно 4 гигабайта. Это объём ОЗУ обычного современного настольного компьютера. То есть, подобные таблицы, “перечисляющие” некоторым образом всё пространство IPv4, можно “ворочать” без особых вычислительных затрат. Не важно, для чего используются такие массивы-таблицы, для обозначения каналов доставки пакетов, для подсчёта обращений к некоторым узлам, для балансировки нагрузки глобально доступных сервисов или для чего-то ещё. Главное, что возможен простой, “прямой” способ работы со всем множеством адресов.

Реализовать подобное для IPv6 – не выйдет. 2128 элементов невозможно уместить в память никакого существующего суперкомпьютера. Хуже того, их невозможно даже перебрать за разумное время ни на каком суперкомпьютере. Другими словами, множество адресов IPv6, перечислимое математически, не “перечислимо” в суровой программистской реальности, потому как “нет таких компьютеров”. Казалось бы – ну и ладно, кому нужны эти гигантские таблицы?

Но, похоже, эта особенность IPv6 громко аукнется. Так, блоки IPv6-адресов уже нарезают многочисленными кусочками (мощность позволяет же), для которых нужно будет строить не только маршруты доставки пакетов, но и всякие сопутствующие элементы, типа обратных зон DNS для серверов, попавших в данный блок адресов, или записей в “инфраструктурных” базах данных (спам-фильтры, справочники по обмену трафиком, списки “проксей”, геолокационная привязка – можно ещё много придумать). И если раньше, с IPv4, рост объёмов “сопутствующей” информации был ограничен вполне себе обозримым пределом, то IPv6 даёт разгуляться так, что и поддержка обратных зон, как задача, может легко подобраться к границе практической разрешимости.

Хотя, понятно, конечно, что “на свободе” не должно ходить IPv6-адресов сильно больше, чем существует устройств, способных такие адреса использовать.

()

Похожие записки:



Далее - мнения и дискуссии

(Сообщения ниже добавляются читателями сайта, через форму, расположенную в конце страницы.)

Комментарии читателей блога: 8

  • 1. 14th June 2011, 12:04 // Читатель sarin написал:

    IPv6 даёт разгуляться

  • 2. 14th June 2011, 12:28 // Читатель Bogdanul написал:

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

  • 3. 14th June 2011, 15:57 // Читатель kaschey написал:

    Главное выпросить побольше диапазон, а потом DOS-ить и спамить с него :-)
    Его потом целиком “зарежут” и он уйдёт в небытие, так как разбираться с новым количеством будет уже совсем вломы. Так годами будут расти чёрные и белые списки :-) в десятки и сотни раз перекрывающие реальный объём :-)

    DOS Атака “всех компьютеров Китая” станет повседневной рутиной :-)

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

  • 4. 17th June 2011, 09:01 // Читатель anonymous написал:

    Кто как, а мы УЖЕ столкнулись с проблемами при реализации геотаргетинга по IPv6. При существующих темпах роста уже лет через пять потребуется ставить отдельную железку с гигабайтами памяти только для геотаргетинга.

  • 5. 17th June 2011, 18:34 // Читатель jno написал:

    > столкнулись с проблемами при реализации геотаргетинга по IPv6

    может, наконец, реклама загнётся? :)

  • 6. 17th June 2011, 22:12 // Читатель kaschey написал:

    Реклама не загнётся, Гуглю железа хватит, а он поставщик контекстной рекламы.

  • 7. 10th June 2012, 01:37 // Читатель Kostya написал:

    Не соглашусь – в IPv6, насколько я помню, всего 64 бита отводится под адреса пользователей, а остальное – “прибито гвоздями” для маршрутизации.
    Получим примерно 1.8 × 10^19 адресов, т.е. 18 миллионов терабайт, если хранить “побайтно”.
    Не то, чтобы в каждом маршрутизаторе был такой объем памяти, но за месяц сейчас выпускается порядка 50 миллионов HDD, размером, понятно, больше терабайта.
    Т.е., сохранить такое количество данных уже вполне реально.
    Да и перечислить тоже. Хотя бы и с помощью облака.

  • 8. 10th June 2012, 12:32 // Александр Венедюхин ответил:

    Так-то оно так, но есть проблема: без других 64 битов – перечисление адресов имеет крайне мало смысла.