Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 1-13_310608.doc
Скачиваний:
66
Добавлен:
15.09.2019
Размер:
39.63 Mб
Скачать

Продление жизни адресного пространства iPv4

Впервые описание протокола IP было предложено в RFC 760: адреса имеют фиксированную длину в четыре октета. Адрес начинается с номера сети, занимающего один октет, за которым следует трехоктетный локальный адрес. Это трехоктетное поле называется остаточным полем.

В RFC 791 было предложено разбиение адресов на классы.

В RFC 950 было предложено использование подсетей. То необходимо для обеспечения эффективности при использовании классов адресов.

RFC 1517 – 1520 познакомили нас с внеклассовой междоменной маршрутизацией, или CIDR. Внеклассовая междоменная маршрутизация, или CIDR, - механизм оповещения, позволяющий предоставлять маршрутную информацию независимо от классовой принадлежности. Маршрут может быть определен по маске суперсети или по расширенной маске подсети.

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

Присвоение IP-адреса (старый метод)

Первоначально при использовании RFC 791 без подсетей у организации со сложной сетевой топологией (более одной сети) было три варианта присвоения адреса Internet:

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

  2. Использовать один сетевой номер для всей организации, а номера узлов присваивать в соответствии с требованиями к взаимодействию с другими узлами (плоские сети, сегментированные при помощи мостов).

  3. Использовать один сетевой номер и разбить адресное пространство узлов, присвоив номера подсетей локальным сегментам сети (явные подсети). Создать свои собственные подсети, но не подключать их к сети ARPAnet. Это наиболее популярный подход.

Реализация первого варианта вызывала рост маршрутных таблиц. RFC 950 позволил применять адресацию подсетей внутри автономной системы. Это дало возможность продолжать разбиение своей автономной системы на подсети. Однако информация о подсетях никогда не заносилась в маршрутные таблицы Internet. Подсети и VLSM (маски подсети переменной длины) позволили остановить рост в экспоненциальной зависимости глобальных маршрутных таблиц, а также дали компаниям возможность управлять собственными сетями. Сетевых номеров было достаточное количество, а подсети замедлили увеличение маршрутных таблиц Internet. Так было до коммерциализации Internet в 1994 году.

Нежелательные эффекты, возникающие при использовании мостов в сложных сетях, хорошо известны. По этой причине маршрутизаторы стали основой корпоративной опорной сети. Они прекрасно работали в разделяемых средах, но технология шла вперед: сетевые подключения становились быстрее и мощнее. Мосты снова вернулись – в виде коммутаторов (теперь это называется «хаб»), к которым мог быть подключен каждый настольный компьютер через свой собственный канал 10 Мбит/с. Коммутаторы образовывали небольшую плоскую сеть и должны были использоваться с граничными маршрутизаторами, делая возможной организацию микросегментов, но не микроподсетей.

Использование подсетей для одного сетевого номера могло замедлить рост маршрутных таблиц Internet. Хорошо работали адреса класса В. Сети класса С приводили к вынужденному росту маршрутных таблиц, а адреса класса А не выдавались. К тому же 50% бизнес-предприятий были организациями мелкого и среднего уровня. Требовались адреса класса С.

Мы снова оказались в затруднительном положении.

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

Эффективное использование адреса

Быстрое увеличение количества подключенных узлов и расширение корпоративной инфраструктуры стали проблемой для Internet. IP-адреса выдавались организациям последовательно, без учета их местоположения и способа подключения к Internet. Это значит, что организация просто запрашивала адрес, и он присваивался из списка идущих подряд номеров. Подобная практика оказалась неэффективной. Система маршрутизации была переполнена короткими IP-адресами с одной стороны, и множеством маршрутизаторов – с другой. Гораздо лучше оказалось использовать длинные смежные адреса. Суперсети, CIDR и агрегация адреса дали адресам гибкость и сделали функционирование провайдеров и Internet более эффективным.

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

Агрегация адресов – возможность объединять смежные блоки IP-адресов в одно определение.

Сегодня адреса выдаются провайдерам услуг Internet блоками (или диапазонами) через отдел регистрации Internet. Например, провайдеру может быть предоставлен блок 205.24.0.0/16, что позволит выдавать адреса в диапазоне от 205.24.0.0 до 205.24.255.255. Таким образом, глобальные таблицы маршрутизации знают о том, что адреса с 205.24.0.0 по 205.24.255.255 ведут в одном направлении – к провайдеру. Все эти адреса объединены в одной записи таблицы маршрутов. При использовании старого метода на это потребовалось бы 255 записей. Элемент таблицы маршрутов будет содержать значение 205.24.0.0/16 вместо всех 255 адресов. Глобальные таблицы маршрутов не заботятся о дальнейшем распределении сетевого адреса.

Провайдер разделяет этот блок для выдачи отдельных адресов своим клиентам в качестве адресов разных классов. Полный блок присваивается не одной компании, а нескольким.

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

IP-маршрутизация

Пакеты маршрутизируются на основе заключенного в них адреса. Маршрутизаторы читают этот адрес и определяют наилучший маршрут, называемый переходом. Сеть с коммутацией пакетов (в отличие от сети с коммутацией каналов) опирается на информационные блоки (называемые датаграммами) и их способность перемещаться в сети по направлению к целевой станции. Датаграмма маршрутизируется либо локально (адресат находится в той же подсети, что и отправитель), либо с помощью перенаправляющего устройства, например маршрутизатора, если целевая станция расположена в удаленной сети (в иной, нежели отправитель). В первом случае речь идет о прямой маршрутизации. Второй вид называется косвенной маршрутизацией. Таким образом, получаем иерархическую систему маршрутизации. Отсылаемая датаграмма может подвергаться как прямой, так и косвенной маршрутизации.

Была предпринята попытка построить одну большую плоскую сеть при помощи АТМ, мостов и коммутаторов, чтобы отказаться таким образом от косвенной маршрутизации. Плоские сети находят применение в небольших сетях, в протоколах глобальных сетей, а также их используют для расширения подсетей при помощи коммутаторов или мостов. Для сегодняшнего набора протоколов большие плоские сети неэффективны (их сложно расширять). Это станет особенно очевидным, если вы представите себе миллионы станций-адресатов, подключенных к ним. К тому же, имеющиеся в настоящее время протоколы являются широковещательными по своей природе. То есть к сети может быть подключено множество станций и каждая станция «видит» все данные, рассылаемые по сети, независимо от того, кто и куда посылает их.

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

Не всем станциям необходимо «видеть» друг друга. При расширении сети следует сохранить управляемость. Чтобы сделать сеть более управляемой, ее делят на множество сетей, называемых подсетями (на самом деле сегодня любая сеть, разбитая на части или нет, называется подсетью).

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

Чтобы маршрутизаторы могли перенаправлять данные в другие сети, им нужны специальные протоколы (называемые протоколами маршрутизации), с помощью которых строится карта окружающего сетевого пространства в целях маршрутизации. Для реализации этой возможности предназначены протоколы маршрутизации двух типов: внутренние (IGP) и внешние (EGP). Внешний протокол маршрутизации, применяемый совместно с IP, называется протоколом граничной маршрутизации (BGP). Известные протоколы внутренней маршрутизации – это протокол передачи маршрутной информации (RIP) и протокол OSPF (Открой кратчайший путь первым).

Прямая маршрутизация

Каким образом сетевая станция узнает, как следует маршрутизировать пакет – прямо (локально) или косвенно (в удаленную сеть)? Для сетевой станции тут все относительно просто. Все, что нужно для маршрутизации, - это IP-адрес сети, присвоенный сетевой станции.

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

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

На рисунке видно, что станция В и узел А находятся в одной и той же сети.

Косвенная маршрутизация

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

  1. Если целевая сеть, указанная в IP-заголовке, непосредственно подключена к маршрутизатору, он сразу перенаправит пакет целевой станции.

  2. Если целевая сеть, указанная в IP-заголовке, не подсоединена непосредственно к маршрутизатору, для продвижения пакета он должен воспользоваться услугами другого маршрутизатора и дать ему определить следующий пункт маршрута.

Целевой физический адрес является адресом маршрутизатора, а не конечной станции. Такой тип маршрутизации называется косвенной маршрутизацией. IP-адрес целевой станции заключен внутри пакета.

Для доставки пакета к конечному пункту назначения можно применять и прямую, и косвенную маршрутизации. Например, если пакет должен быть передан через глобальное сетевое пространство, станция отправитель пошлет его маршрутизатору для доставки в целевую сеть. Это – косвенная маршрутизация. Отправитель иногда бывают разделены несколькими маршрутизаторами. Не имеет значения, подключена ли сеть с целевым идентификатором к первому маршрутизатору или пакету надо пройти через несколько маршрутизаторов, чтобы достичь конечного пункта. В любом случае последнему маршрутизатору на пути пакета придется воспользоваться прямой маршрутизацией для доставки его целевому узлу.

Заметим, что значения поля опций не влияют на преобразование исходной датаграммы. Исключение составляют два поля – TTL (время жизни) и CRC (циклический избыточный код). Если IP-датаграмма принята маршрутизатором и еще не достигла целевой сети, маршрутизатор уменьшит значение поля TTL. Если TTL > 0, он перенаправит пакет на основе информации из маршрутной таблицы. IP-заголовок останется прежним (кроме поля обнаружения ошибок, называемого полем циклического избыточного кода, или полем CRC). Так как поле TTL меняется, CRC будет вычисляться каждый раз при прохождении датаграммы через маршрутизатор.

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

IP-маршрутизаторы перенаправляют датаграммы без установки связи и таким образом не гарантируют доставку пакетов. Они работают на сетевом уровне, который обеспечивает оптимальную передачу данных в отсутствие соединения. Маршрутизаторы не осуществляют сеансы связи с другими маршрутизаторами в сети. Более того, IP-маршрутизаторам не известны никакие рабочие станции (которые не являются маршрутизаторами) из своих подсетей.

Эти маршрутизаторы продвигают пакеты, опираясь на сетевой адрес пакета (находящийся в IP-заголовке), а не на физический адрес конечной станции (получателя). Получив пакет, маршрутизатор ориентируется по целевому сетевому адресу (заключенному в IP-заголовке пакета) и определяет, как маршрутизировать этот пакет. Маршрутизаторы работают только с пакетами, адресуемыми непосредственно им. Они не действуют хаотично (отслеживая весь сетевой трафик) при продвижении датаграмм.