Множественная адресация — это практика подключения хоста или компьютерной сети к более чем одной сети. Это можно сделать для повышения надежности или производительности.
Типичная сеть хоста или конечного пользователя подключена только к одной сети. Подключение к нескольким сетям может повысить надежность, поскольку в случае сбоя одного соединения пакеты все равно могут маршрутизироваться через оставшееся соединение. Подключение к нескольким сетям также может повысить производительность, поскольку данные могут передаваться и приниматься через несколько соединений, одновременно увеличивая пропускную способность , и, в зависимости от пункта назначения, маршрутизация через одну или другую сеть может оказаться более эффективной.
Существует несколько различных способов выполнения множественной адресации.
Один хост может быть подключен к нескольким сетям. Например, мобильный телефон может быть одновременно подключен к сети Wi-Fi и сети 3G , а настольный компьютер может быть подключен как к домашней сети, так и к VPN . Многосетевому узлу обычно назначается несколько адресов, по одному на каждую подключенную сеть.
При классической множественной адресации [1] [2] сеть подключена к нескольким провайдерам и использует собственный диапазон адресов (обычно из диапазона , независимого от провайдера (PI)). Граничные маршрутизаторы сети взаимодействуют с провайдерами, используя протокол динамической маршрутизации , обычно BGP , который объявляет диапазон адресов сети всем провайдерам. Если один из каналов выходит из строя, протокол динамической маршрутизации распознает сбой в течение нескольких секунд или минут и перенастраивает свои таблицы маршрутизации для использования остальных каналов, прозрачно для хостов.
Классическая множественная адресация является дорогостоящей, поскольку требует использования адресного пространства, принимаемого всеми провайдерами, общедоступного номера автономной системы (AS) и протокола динамической маршрутизации. Поскольку многосетевое адресное пространство не может быть агрегировано, это приводит к росту глобальной таблицы маршрутизации. [3]
При таком подходе сеть подключается к нескольким провайдерам и ей назначается несколько диапазонов адресов, по одному для каждого провайдера. Хостам назначается несколько адресов, по одному для каждого провайдера. [4]
Многоадресность с несколькими адресами дешевле, чем классическая множественная адресация, и может использоваться без какого-либо сотрудничества со стороны провайдеров (например, в домашней сети), но требует дополнительных технологий для выполнения маршрутизации: [5]
Когда для повышения надежности используется множественная адресация, необходимо позаботиться о том, чтобы исключить любую единственную точку отказа (SPOF):
Увеличивая количество используемых интерфейсов и каналов и делая маршрутизацию менее детерминированной, множественная адресация усложняет администрирование сети .
Классическая множественная адресация является доминирующим методом для IPv4. Для этого необходимо, чтобы сеть имела собственный диапазон общедоступных IP-адресов и общедоступный номер AS.
Хотя для IPv4 реализована множественная адресация с несколькими адресами, [6] она обычно не используется, поскольку реализации хоста плохо справляются с несколькими адресами на интерфейс, что требует использования «виртуальных интерфейсов». [7] Также возможно реализовать множественную адресацию для IPv4 с использованием нескольких шлюзов NAT . [8]
В IPv6 можно использовать как классическую множественную адресацию, так и множественную адресацию с несколькими адресами.
Независимое от поставщика адресное пространство (PI) доступно в IPv6. [9] Преимущество этого метода заключается в том, что он работает как IPv4, поддерживает балансировку трафика между несколькими провайдерами и поддерживает существующие сеансы TCP и UDP посредством переключений. Критики говорят, что увеличенный размер таблиц маршрутизации, необходимый для такой обработки множественной адресации, приведет к перегрузке существующего оборудования маршрутизаторов. Сторонники говорят, что новое оборудование сможет справиться с увеличением благодаря удешевлению памяти, цена которой падает в соответствии с законом Мура . Сторонники также говорят, что это единственное жизнеспособное решение на данный момент, и философия «чем хуже, тем лучше» поддерживает идею о том, что лучше использовать несовершенное решение сейчас, чем идеальное решение, когда станет слишком поздно.
Поскольку многие интернет-провайдеры отфильтровывают объявления маршрутов с небольшими префиксами, для обеспечения глобальной доступности обычно требуется выделение большого IP-адреса размером с интернет-провайдера, например /32. Использование таких больших префиксов является неэффективным использованием адресного пространства IPv6; существует всего около 4 миллиардов /32 префиксов. Однако с прагматической точки зрения выделение /32 по стоимости глобального адресного пространства эквивалентно выделению одного адреса IPv4, и это может быть приемлемо, если, что вполне вероятно в обозримом будущем, количество многодомных сайтов можно будет пронумеровать. только в миллионах, в отличие от многих миллиардов односетевых конечных точек, которые, как ожидается, будут составлять подавляющее большинство конечных точек IPv6. [ нужна цитация ] Некоторые региональные интернет-реестры (RIR), такие как RIPE, начали выделять /48 из определенного префикса для этой цели. RIPE выделяет независимое от провайдера адресное пространство IPv6 /48 или короче, начиная с 2001:0678::/29.
Для IPv6 реализована множественная адресация с несколькими адресами. [6] [10] Для исходящего трафика требуется поддержка на хосте, либо независимая от протокола ( Multipath TCP , SCTP , QUIC и т. д.), либо специфичная для IPv6 (например, SHIM6 ).