Сделай Сам Свою Работу на 5

CIDR — бесклассовая междоменная маршрутизация





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

1987 году некоторые дальновидные люди предсказывали, что настанет день, когда в Интернете будет 100 000 сетей. Большинство экспертов посмеивались над этим и говорили, что если такое когда-нибудь и произойдет, то не раньше, чем через много десятков лет. Стотысячная сеть была подключена к Интернету в 1996 году. И, как уже было сказано, нависла угроза выхода за пределы пространства IP-адресов. В принципе, существует 2 миллиарда адресов, но на практике благодаря иерархической организации адресного пространства это число сократилось на миллионы. В частности, одним из виновников этого является класс сетей В. Для большинства организаций класс А с 16 миллионами адресов — это слишком много, а класс С с 256 адреса­ми — слишком мало. Класс В с 65 536 адресами — это то, что нужно.

На самом деле и класс В слишком велик для большинства контор, которые устанавливают у себя сети. Исследования показали, что более чем в половине случаев сети класса В включают в себя менее 50 хостов. Безо всяких сомнений, всем этим организациям хватило бы и сетей класса С, однако почему-то все уве­рены, что в один прекрасный день маленькое предприятие вдруг разрастется на­столько, что сеть выйдет за пределы 8-битного адресного пространства хостов. Сейчас, оглядываясь назад, кажется, что лучше было бы использовать в классе С 10-битную адресацию (до 1022 хостов в сети). Если бы это было так, то, возмож­но, большинство организаций приняло бы разумное решение устанавливать у себя сети класса С, а не В. Таких сетей могло бы быть полмиллиона, а не 16 384, как в случае сетей класса В.



Даже если выделить 20 бит под адрес сети класса В, возникнет другая проблема: разрастание таблиц маршрутизации. Физическое хранение полумиллиона строк таблицы, вероятно, выполнимо, хотя и дорого для маршрутизаторов, хранящих таблицы в статической памяти плат ввода-вывода. Более серьезная проблема состоит в том, что сложность об­работки этих таблиц растет быстрее, чем сами таблицы, то есть зависимость ме­жду ними не линейная. Кроме того, большая часть имеющихся программных и программно-аппаратных средств маршрутизаторов разрабатывалась в те време­на, когда Интернет объединял 1000 сетей, а 10 000 сетей казались отдаленным будущим. Методы реализации тех лет в настоящее время далеки от оптималь­ных.



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

Проблема таблиц маршрутизаторов может быть решена при помощи увеличения числа уровней иерархии. Одним из решений, реализуемым в настоящий момент, является алгоритм маршрутизации CIDR (бесклассовая междоменная маршрутизация). Идея маршрутизации состоит в объединении оставшихся адресов в блоки переменного размера, независимо от класса. Если кому-нибудь требуется, скажем, 2000 адресов, ему выделяется блок из 2048 адресов на границе, кратной 2048 байтам.

Отказ от классов усложнил процесс маршрутизации.

NАТ — трансляция сетевого адреса

IP-адреса являются дефицитным ресурсом. Проблему частично решают динамические адреса, которые выделяются только на время соединения. Но корпоративные клиенты предпочитают иметь постоянное соединение с Интернетом. Для решения проблемы дефицита адресов используют NAT - трансляцию сетевого адреса.

Основная идея трансляции сетевого адреса состоит в присвоении каждой фирме одного IP-адреса. Внутри фирмы каждый компьютер получает уникальный IP-адрес, используемый для маршрутизации внутреннего трафика. Однако как только пакет покидает пределы здания фирмы и направляется к провайдеру, выполняется трансляция адреса. Для реализации этой схемы было создано три диапазона так называемых частных IP-адресов. Они могут использоваться внутри компании по ее усмотрению. Единственное ограничение заключается в том, что пакеты с такими адресами ни в коем случае не должны появляться в самом Интернете. Вот эти три зарезервированных диапазона:



10.0.0.0 -10.255.255.255/8 (16 777 216 хостов)

172.16.0.0 -172.31.255.255/12 (1 048 576 хостов)

192.168.0.0 -192.168.255.255/16 (65 536 хостов)

Трансляция сетевого адреса нарушает основной принцип протокола IP – уникальность адресов. Поэтому существует и другое решение дефицита адресов – переход к другой адресации. В 6-й версии IP-адрес (IPv6) имеет 128-битовое представление. Адреса разделяются двоеточиями (напр. fe80:0:0:0:200:f8ff:fe21:67cf). Большое количество нулевых групп может быть пропущено с помощью двойного двоеточия (fe80::200:f8ff:fe21:67cf). Такой пропуск может быть единственным в адресе.


 

Мобильный IP

Для портативной техники адресация по принципу «адрес сети - адрес хоста» вызывает проблемы, поэтому, когда потребность в мобильных хостах значительно возросла, основными целями были признаны следующие:

1. Каждый мобильный хост должен иметь возможность использовать свой домашний IP-адрес где угодно.

2. Изменения программного обеспечения фиксированных хостов недопустимы.

3. Изменения программного обеспечения и таблиц маршрутизаторов недопустимы.

4. Большая часть пакетов, направляемых мобильным хостам, должны доставляться напрямую.

5. Не должно быть никаких дополнительных расходов, когда мобильный хост находится дома.

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

Когда пакет прибывает в домашнюю локальную сеть пользователя, его получает маршрутизатор, соединенный с этой локальной сетью. При этом маршрутизатор пытается определить расположение хоста обычным способом, с помощью широковещательной рассылки, спрашивая, например: «Каков Ethernet-адрес хоста 160.80.40.20?» Внутренний агент отвечает на этот запрос, выли­вая свой собственный Ethernet-адрес. Маршрутизатор пересылает пакеты для 160.80.40.20 внутреннему агенту. Тот, в свою очередь, упаковывает их в поле данных IP-пакета, который туннелирует пакеты внешнему агенту. Внешний агент извлекает их и отсылает по адресу уровня передачи данных мобильного хоста. Внутренний агент также сообщает отправителю новый адрес мобильного хоста, так что последующие пакеты могут быть туннелированы напрямую внешнему агенту.

Как обнаружить агента? Для этого агент периодически рассылает широковещательным способом свой адрес и тип услуг, которые он предоставляет (то есть пишет о том, кто он: внутренний агент, внешний агент или и то, и другое). Прибыв на новое место, хост может просто подождать рассылки этих широковещательных пакетов, называемых рекламными объявлениями. В качестве альтернативы он может сам разослать методом широковещания пакет с объявлением о своем прибытии и надеяться, что местный внешний агент на него отзовется.

Еще одна проблема состоит в том, что делать мобильными хостами, которые уходят не без сообщения о разрыве связи. Для решения этой проблемы регистрация хоста считается действительной только в течение ограниченного интервала времени. Если она периодически не обновляется, то считается устаревшей, после чего внешний агент может удалить запись о прибывшем хосте из своих таблиц.

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

 

Протокол IPv6

Хотя системы адресации CIDR и NАТ помогают решать проблему дефицита адресов, но полностью ее не решают. В 1990 году начались работы над новой версией протокола IP, в которой не должна возникнуть проблема нехватки адресов, а также будут решены многие другие проблемы. Были сформулированы следующие ос­новные цели:

1. Поддержка миллиардов хостов даже при неэффективном использовании адресного пространства.

2. Уменьшение размера таблиц маршрутизации.

3. Упрощение протокола для ускорения обработки пакетов маршрутизаторами

4. Более надежное обеспечение безопасности (аутентификации и конфиденциальности), чем в нынешнем варианте IP.

5. Необходимость обращать больше внимания на тип сервиса, в частности, при передаче данных реального времени.

6. Упрощение работы многоадресных рассылок с помощью указания обладателя рассылки.

7. Возможность изменения положения хоста без необходимости изменять его адрес.

8. Возможность дальнейшего развития протокола в будущем.

9. Возможность сосуществования старого и нового протоколов в течение нескольких лет.

Протокол IPv6 прекрасно справляется с поставленными задачами. Он обладает достоинствами протокола IP и лишен некоторых его, к тому же наделен некоторыми новыми особенностями. В общем случае протокол IPv6 несовместим с протоколом IРv4, но зато совместим со всеми остальными протоколами Интернета.

У протокола IPv6 поля адресов длиннее, чем у IРv4. Они имеют длину 16 байт, что решает основную проблему, поставленную при разработке протокола, — обеспечить практически неограниченный запас интернет-адресов.

Второе заметное улучшение протокола IPv6 по сравнению с IPv4 состоит в более простом заголовке пакета. Он состоит всего из 7 полей (вместо 13 у протокола IPv4). Таким образом, маршрутизаторы могут быстрее обрабатывать пакеты, что повышает производительность.

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

В-четвертых, протокол IPv6 лучше обеспечивает безопасность.

Основной заголовок IPv6

32 бита

                                                           
Версия Приоритет Метка потока
Длина полезной нагрузки Следующий заголовок Максимальное число транзитных участков
Адрес отправителя (16 байт)
Адрес получателя (16 байт)

Поле Версия содержит число 6 для IPv6 и 4 для IPv4. На период перехода с IPv4 на IPv6 маршрутизаторы по значению этого поля смогут различать пакеты нового и старого стандарта.

Поле Метка потока пока является экспериментальным, но будет применяться для установки между отправителем и получателем псевдосоединения : определенными свойствами и требованиями. Например, поток пакетов между двумя процессами на разных хостах может обладать строгими требованиями к задержкам, что потребует резервирования пропускной способности. Поток устанавливается заранее и получает идентификатор. Когда прибывает пакет с отличным от нуля содержимым поля Метка потока, все маршрутизаторы смотрят в свои таблицы, чтобы определить, какого рода особая обработка ему требуется.

Каждый поток описывается адресом источника, адресом назначения и номером потока, так что для каждой пары IP-адресов можно создать много активных потоков. Два потока с одинаковыми номерами, но различными адресами отправителя или получателя считаются разными потоками и различаются маршрутизаторами по адресам. Ожидается, что номера каналов будут выбираться случайным образом, а не назначаться подряд начиная с 1, что облегчит маршрутизаторам их распознавание.

Поле Длина полезной нагрузки сообщает, сколько байт следует за 40-байтовым заголовком. В заголовке IPv4 аналогичное поле называ­лось Полная длина и определяло весь размер пакета. В новом протоколе 40 байт заголовка учитываются отдельно.

Поле Следующий заголовок раскрывает секрет возможности использования упрощенного заголовка. Дело в том, что после обычного 40-байтового заголовка могут идти дополнительные (необязательные) расширенные заголовки. Это поле сообщает, какой из шести дополнительных заголовков (на текущий момент) следует за основным. В последнем IP-заголовке поле Следующий заголовок сообщает, какой обрабатывающей программе протокола транспортного уровня (то есть ТСР или UDP) передать пакет.

Поле Максимальное число транзитных участков не дает пакетам вечно блуждать по сети. Оно имеет практически то же назначение, что и поле Время жизни в заголовке протокола IPv4. Это поле уменьшается на единицу на каждом транзитном участке.

Адрес отправителя и Адрес получателя. Для написания 16-байтовых адресов была выработана новая нотация. Адреса в IPv6 записываются в виде восьми групп по четыре шестнадцатеричных цифры: разделенных двоеточиями, например:

8000:0000:0000:0000:0123:4567:89 АВ:СВЕР

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

8000::123:4567:89АВ:СОЕР

Наконец, адреса IPv4 могут записываться как пара двоеточий, после которое пишется адрес в старом десятичном формате, например:

::192.31.20.46

Количество всех возможных 16-байтовых адресов очень велико — 2128, что приблизитель­но равно 3 • 1038. Если покрыть компьютерами всю планету, включая сушу и океаны, то протокол IPv6 позволит иметь около 7 • 1023 IP-адресов на квадратный метр. Это число больше числа Авогадро, хотя в планы разработчиков не входило предоставление собственного I?-адреса каждой молекуле на поверхности Земли, они оказались не так уж далек: от обеспечения такой услуги.

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

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

Были удалены все поля, относящиеся к фрагментации, так как в протоколе IPv6 используется другой подход к фрагментации. Во-первых, все ХОСТЫ, поддерживающие протокол IPv6, должны динамически определять нужный размер дейтаграммы. Это правило делает фрагментацию маловероятной. Во-вторых, минимальный размер пакета был увеличен с 576 до 1280, чтобы можно было передавать 1024 байт данных, плюс множество заголовков. Кроме того, когда хост посылает слишком большой IPv6-пакет вместо того, чтобы его фрагментировать, то маршрутизатор, не способный переслать пакет дальше, посылает обратно сообщение об ошибке.

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

Дополнительные заголовки

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

Дополнительный заголовок Описание
Параметры маршрутизации Разнообразная информация для маршрутизаторов
Параметры получателя Дополнительная информация для получателя
Маршрутизация Частичный список транзитных маршрутизаторов на пути пакета
Фрагментация Управление фрагментацией дейтаграмм
Аутентификация Проверка подлинности отправителя
Шифрованные данные Информация о зашифрованном содержимом

У некоторых заголовков формат фиксированный, другие содержат переменное количество полей переменной длины. Для них каждый пункт кодируется в виде тройки (Тип, Длина, Значение).

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

Поле Длина также имеет размер 1 байт. Оно сообщает, насколько велико значение (от 0 до 255 байт).

Поле Значение содержит необходимую информации размером до 255 байт.


 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.