Министерство образования и науки РФ Федеральное государственное бюджетное образовательное учреждение

реклама
Министерство образования и науки РФ
Федеральное государственное бюджетное образовательное учреждение
Высшего профессионального образования
Тольяттинский государственный университет
Институт финансов, экономики и управления
Кафедра «Менеджмент организации»
Реферат
По дисциплине: «Сети ЭВМ и средства коммуникаций»
На тему: «Маршрутизация в сетях TCP/IP»
Выполнил студент группы УК-201
Вяцков А.А.
Преподаватель Сенько В.В.
Тольятти 2011
1
Содержание
1 Введение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Процесс IP маршрутизации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1 IP маршрутизаторы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Таблица маршрутизации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Статическая маршрутизация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4 Динамическая маршрутизация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3 Протокол маршрутизации RIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Протокол маршрутизации OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5 Заключение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6 Список использованных источников. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7 Глоссарий. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2
1 Введение
До тех пор пока вся локальная сеть представляет из себя простой сегмент
сети Ethernet, не возникает проблем с приемом и передачей сообщений в
рамках этой сети. Однако, стоит сеть разбить на несколько сегментов и
установить шлюзы между ними, как сразу возникает проблема маршрутизации
сообщений в этой сети.
Здесь уместно остановиться на том факте, что сеть Internet - это сеть
коммутации пакетов. Это значит, что прежде чем отправить сообщение по сети,
это сообщение "нарезается" на более мелкие части, которые называются
пакетами, и вот эти самые пакеты и отправляются по сети. Сеть Internet
интересна тем, что информацию о месте назначения каждый пакет несет в себе
самом. Решение о том, в какую сторону направлять пакет принимается шлюзом
в момент прохождения пакета через этот шлюз. Если в один момент времени
некоторый путь от места отправления к месту назначения существует, то шлюз
отправит пакет, который в этот момент времени через него проходит по этому
пути. Если в следующий момент времени путь по какой-либо причине исчезнет,
то шлюз отправит пакет по другому пути. При этом оба пакета могут
принадлежат одному и тому же сообщению. В месте назначения пакетов не
имеет значения последовательность получения пакетов, т.к. пакеты в себе несут
также и информацию о своем месте внутри сообщения.
Такое свойство Internet обеспечивает надежную доставку сообщений в
любую точку сети даже при ее неустойчивой работе. Однако, все это
достигается не просто так, а за счет специального механизма, который
называется маршрутизация. Основа маршрутизации - это таблица маршрутов на
каждом из компьютеров в сети и правила изменения этой таблицы в случае
изменения состояния самой сети.
Маршрутизация - это средство не только прокладки маршрутов, но и
средство блокирования маршрутов пересылки пакетов по сети. Если таблицы
настроены неправильно, то в лучшем случае пакеты будут доставляться
3
медленно, а в худшем случае они будут доставляться не туда куда следует, что
может привести к нарушению безопасности сети передачи данных. Очень часто
средства маршрутизации используют для атак на системы, включенные в
Internet.
Известны,
так
называемые,
ICMP-штормы,
когда
пакеты
определенного вида могут блокировать прием/передачу информации по сети.
Если администратор по тем или иным причинам должен закрыть часть своей
сети от доступа с других машин Internet, то в этом случае также можно
использовать таблицу маршрутов, удаляя из нее определенные пути, или
блокируя их другими средствами контроля сетевого трафика.
И последнее замечание о проблемах маршрутизации связано с тем, что
если администратор хочет, чтобы его система была видна из Internet, т.е. чтобы
информационными ресурсами данной сети можно было пользоваться как
внутри сети, так и за ее пределами, он должен данную сеть прописать в
таблицах маршрутов провайдеров, к которым данная сеть подключена. Это
взаимодействие носит не столько технический, сколько организационный
характер и может занимать гораздо больше времени, чем доставка пакета из
Москвы в Нью-Йорк[1].
4
2 Процесс IP маршрутизации
Общими словами маршрутизацию можно описать как процесс передачи
пакетов между соединенными сетями. В TCP/IP-сетях маршрутизация является
частью протокола IP (Internet Protocol) и используется в сочетании с другими
службами сетевых протоколов для обеспечения передачи данных между
узлами, расположенными в разных сегментах более крупной TCP/IP-сети.
IP —
это
своего
рода
«почтовая
система»
протокола
TCP/IP,
выполняющая сортировку и доставку IP-данных. Каждый входящий или
исходящий пакет называется IP-датаграммой. Датаграмма IP содержит два IPадреса:
адрес
источника
(отправляющего
узла)
и
адрес
назначения
(принимающего узла). В отличие от аппаратных адресов, IP-адреса в
датаграмме в процессе передачи ее по TCP/IP-сети остаются постоянными.
Маршрутизация является основной функцией IP. Обмен IP-датаграммами
и их обработка на каждом узле выполняются протоколом IP, работающим на
межсетевом уровне.
Над этим уровнем транспортные службы узла-источника передают
данные уровню IP в виде TCP-сегментов или UDP-сообщений. Уровень IP
помещает в IP-датаграммы информацию об адресах отправителя и получателя,
которая используется для маршрутизации данных в сети. Затем уровень IP
передает датаграммы уровню сетевого интерфейса. На этом уровне канальные
службы преобразовывают IP-датаграммы в кадры для передачи по физическим
носителям сети. На узле-получателе эти действия выполняются в обратном
порядке.
Каждая IP-датаграмма содержит IP-адреса источника и назначения.
Службы уровня IP (межсетевого уровня) на каждом узле анализируют адрес
назначения каждой датаграммы, ищут этот адрес в локальной таблице
маршрутизации и выбирают действие по ее дальнейшему перенаправлению. IPмаршрутизаторы подключаются к двум или нескольким сегментам IP-сети,
5
между которыми требуется обеспечить перенаправление пакетов. В следующих
разделах более подробно рассказывается об IP-маршрутизаторах и об
использовании таблиц маршрутизации.
2.1 IP маршрутизаторы
Сегменты
TCP/IP-сети
соединяются
между
собой
с
помощью
IP-
маршрутизаторов — устройств для передачи IP-датаграмм из одного сегмента
сети в другой.
IP-маршрутизаторы являются основным средством объединения нескольких
физически раздельных сегментов IP-сети. Все IP-маршрутизаторы обладают
двумя существенными общими характеристиками.

IP-маршрутизаторы
являются
узлами
с
несколькими
сетевыми
интерфейсами.
Узел с несколькими
сетевыми
интерфейсами —
это
узел сети,
использующий два или более сетевых интерфейсов для подключения к
физически раздельным сегментам сети.

IP-маршрутизаторы обеспечивают перенаправление пакетов для других
узлов
TCP/IP.
IP-маршрутизаторы отличаются от других узлов с несколькими сетевыми
интерфейсами одной важной особенностью: IP-маршрутизатор должен
уметь перенаправлять между сетями данные, передаваемые по протоколу
IP другими узлами IP-сети.
IP-маршрутизатор можно реализовать, используя множество различных
аппаратных
и
программных
продуктов.
Часто
применяются
специализированные аппаратные устройства, использующие специальное
программное обеспечение. Можно также использовать и программные
решения, такие как служба маршрутизации и удаленного доступа.
6
Независимо от типа задействованных IP-маршрутизаторов, система IPмаршрутизации основана на использовании таблиц маршрутизации для связи
между сегментами сети.
2.2 Таблица маршрутизации
Узлы TCP/IP используют таблицу маршрутизации, содержащую сведения
о других IP-сетях и IP-узлах. Сети и узлы идентифицируются с помощью IPадресов и масок подсети. Таблицы маршрутизации важны потому, что они
предоставляют каждому локальному узлу необходимую информацию о том, как
связаться с удаленными сетями и узлами.
Для любого компьютера IP-сети можно создать и поддерживать таблицу
маршрутизации, содержащую сведения обо всех остальных компьютерах и
сетях, с которыми он поддерживает связь. Обычно такой подход не
используется, а вместо него применяется основной шлюз (IP-маршрутизатор).
Когда компьютер готовится к отправке IP-датаграммы, он помещает свой IPадрес (адрес источника) и IP-адрес получателя (адрес назначения) в IPзаголовок. Затем компьютер анализирует IP-адрес получателя, ищет его в
локальной таблице IP-маршрутизации и на основе результатов этого поиска
выполняет соответствующее действие. На этом этапе выполняется одно из трех
возможных действий:

Датаграмма
передается
уровню
протоколов
локального
узла,
расположенному над межсетевым уровнем (уровнем IP).

Датаграмма перенаправляется через один из сетевых интерфейсов
данного компьютера.

Датаграмма отбрасывается.
Протокол IP просматривает таблицу маршрутизации в поисках маршрута,
позволяющего наиболее близко подойти к IP-адресу назначения. Поиск
7
маршрутов (от наиболее точного к наименее точному) выполняется в
следующем порядке:

маршрут до самого IP-адреса назначения (маршрут к узлу);

маршрут до сети, имеющей тот же идентификатор сети, что и IP-адрес
назначения (маршрут к сети);

маршрут по умолчанию.
Если подходящий маршрут найден не был, датаграмма отбрасывается.
2.3 Статическая маршрутизация
Сеть Internet с ее протоколами изначально задумывалась как протяженная
(WAN - Wide Area Network), состоящая из большого количества машин,
соединенных с помощью разных сред обмена данными (как локальных сетей,
так и глобальных соединений). Теоретически в Internet могут напрямую
работать друг с другом около четырех миллиардов машин (2^32 за вычетом
некоторых специальных номеров), а через proxy и того больше.
В силу этих причин Internet - сегментированная сеть. Сегментом является
либо прозрачный участок широковещательной (Ethernet) или маркерной
(TokenRing) сети, либо соединение точка-точка (модемное).
Теперь - обозначения. IP-номер - четырехбайтное число, записываемое
либо в шестнадцатеричном виде типа 0xC0A80E05, либо в десятичном виде, где
байты разделены точками типа 192.168.14.5 (в качестве примера в обоих
случаях использовался один и тот же номер).
Маска - тоже четырехбайтное число, но все старшие биты, начиная с
некоторого, всегда установлены в единицу, а все младшие - в ноль. Примеры:
255.255.255.0 - маска сети класса C на 256 номеров; 255.255.255.192 - маска
маленькой сети на 64 номера (192=256-64). Если мне надо указать сочетание
номера
и
маски,
я
буду
8
использовать
запись
номер/число_установленных_битов_в_маске
-
так
сочетание
номера
192.168.14.5 и маски 255.255.255.0 будет записано в виде 192.168.14.5/24.
Номером сети называют число, получаемое из номера интерфейса
применением побитовой операции AND с маской, т.е. в номере интерфейса
обнуляются биты на тех местах, на которых стоят нулевые биты в маске.
Следует помнить, что IP-номер присваивается не компьютеру, а
интерфейсу (сетевому выходу либо последовательному порту). В принципе
можно дать нескольким интерфейсам один номер, но это может вызвать
сложности. Можно также присвоить несколько адресов одному интерфейсу.
В сегменте сети все машины имеют IP-номера с одинаковым номером сети и
одинаковой маской. В одной локальной сети можно совместить две и больше
разных IP-сетей, они даже могут знать друг о друге и нормально общаться, но
это все-таки будут две разные сети.
Принято следующее деление в зависимости от значения старшего байта IPадреса:

0..127 - сети класса A по 2^24 адресов с маской 0xFF000000;

128..191 - сети класса B по 2^16 адресов с маской 0xFFFF0000;

192..223 - сети класса C по 2^8 адресов с маской 0xFFFFFF00;

224..239 - сети класса D для multicast (групповой) рассылки;
остальные пока зарезервированы.
Многие программы по адресу автоматически определяют класс сети, хотя
это можно поправить вручную. В принципе никто не мешает разбить сеть на
две или больше подсетей с любыми масками, но организациям как правило
выделяют адреса блоками, соответствующими классам A, B и C - это связано с
системой DNS, позволяющей узнать доменное имя машины по ее IP-адресу.
Сеть класса A с номером 127 - loopback, т.е. предназначена для общения
компьютера с собой. В любой сети номер (IP-номер AND маска) является
номером всей сети и не может быть присвоен никому конкретно. Номер (IPномер OR NOT маска), являющийся последним номером в сети, предназначен
для broadcasting (широковещательных) сообщений, которые доставляются всем
9
машинам сегмента сети. Соответственно, при выделении группы адресов в сеть
два адреса становятся недоступны[3].
Дейтаграмма (англ. datagram), также датаграмма — блок информации,
посланный как пакет сетевого уровня через передающую среду без
предварительного установления соединения и создания виртуального канала.
Датаграмма представляет собой единицу информации в протоколе (protocol data
unit, PDU) для обмена информацией на сетевом (в случае протокола IP, IPдатаграммы) и транспортном (в случае протокола UDP, UDP-датаграммы)
уровнях эталонной модели OSI. Название «датаграмма» было выбрано по
аналогии со словом телеграммах[4].
2.4 Динамическая маршрутизация
Прежде чем вникать в подробности и особенности динамической
маршрутизации обратим внимание на двухуровневую модель, в рамках которой
рассматривается все множество машин Internet. В рамках этой модели весь
Internet рассматривают как множество автономных систем (autonomous system AS). Автономная система - это множество компьютеров, которые образуют
довольно плотное сообщество, где существует множество маршрутов между
двумя компьютерами, принадлежащими этому сообществу. В рамках этого
сообщества можно говорить об оптимизации маршрутов с целью достижения
максимальной скорости передачи информации. В противоположность этому
плотному конгломерату, автономные системы связаны между собой не так
тесно как компьютеры внутри автономной системы. При этом и выбор
маршрута из одной автономной системы может основываться не на скорости
обмена информацией, а надежности, безотказности и т.п.
10
Рисунок 1 - Схема взаимодействия автономных систем
Сама идеология автономных систем возникла в тот период, когда
ARPANET представляла иерархическую систему. В то время было ядро
системы,
к
которому
подключались
внешние
автономные
системы.
Информация из одной автономной системы в другую могла попасть только
через маршрутизаторы ядра. Такая структура до сих пор сохраняется в
MILNET.
На рисунке 1 автономные системы связаны только одной линией связи,
что больше соответствует тому, как российский сектор подключен к Internet. В
классических публикациях по Internet взаимодействие автономных частей чаще
обозначают пересекающимися кругами, подчеркивая тот факт, что маршрутов
из одной автономной системы в другую может быть несколько.
Обсуждение этой модели Internet необходимо только для того, чтобы
объяснить наличие двух типов протоколов динамической маршрутизации:
внешних и внутренних.
Внешние протоколы служат для обмена информацией о маршрутах
между автономными системами.
Внутренние протоколы служат для обмена информацией о маршрутах
внутри автономной системы.
11
В реальной практике построения локальных сетей, корпоративных сетей
и их подключения к провайдерам нужно знать, главным образом, только
внутренние протоколы динамической маршрутизации. Внешние протоколы
динамической маршрутизации необходимы только тогда, когда следует
построить закрытую большую систему, которая с внешним миром будет
соединена только небольшим числом защищенных каналов данных.
К внешним протоколам относятся Exterior Gateway Protocol (EGP) и <=""
i="">.
EGP предназначен для анонсирования сетей, которые доступны для
автономных систем за пределами данной автономной системы. По данному
протоколу шлюз одной AS передает шлюзу другой AS информацию о сетях из
которых состоит его AS. EGP не используется для оптимизации маршрутов.
Считается,
что
этим
должны
заниматься
протоколы
внутренней
маршрутизации.
BGP - это другой протокол внешней маршрутизации, который появился
позже EGP. В своих сообщениях он уже позволяет указать различные веса для
маршрутов, и, таким образом, способствовать выбору наилучшего маршрута.
Однако, назначение этих весов не определяется какими-то независимыми
факторами типа времени доступа к ресурсу или числом шлюзов на пути к
ресурсу. Предпочтения устанавливаются администратором и потому иногда
такую
маршрутизацию
называют
политической
маршрутизацией,
подразумевая, что она отражает техническую политику администрации данной
автономной системы при доступе из других автономных систем к ее
информационным ресурсам. Протокол BGP используют практически все
российские крупные IP-провайдеры, например крупные узлы сети Relcom.
К внутренним протоколам относятся протоколы Routing Information
Protocol (RIP), HELLO, Intermediate System to Intermediate System (ISIS), Shortest
Path First (SPF) и Open Shortest Path First (OSPF).
Протокол
RIP
(Routing
Information
Protocol)
предназначен
для
автоматического обновления таблицы маршрутов. При этом используется
12
информация о состоянии сети, которая рассылается маршрутизаторами
(routers). В соответствии с протоколом RIP любая машина может быть
маршрутизатором. При этом, все маршрутизаторы делятся на активные и
пассивные. Активные маршрутизаторы сообщают о маршрутах, которые они
поддерживают
в
сети.
Пассивные
маршрутизаторы
читают
эти
широковещательные сообщения и исправляют свои таблицы маршрутов, но
сами при этом информации в сеть не предоставляют. Обычно в качестве
активных маршрутизаторов выступают шлюзы, а в качестве пассивных обычные машины (hosts).
В основу алгоритма маршрутизации по протоколу RIP положена простая
идея: чем больше шлюзов надо пройти пакету, тем больше времени требуется
для прохождения маршрута. При обмене сообщениями маршрутизаторы
сообщают в сеть IP-номер сети и число "прыжков" (hops), которое надо
совершить, пользуясь данным маршрутом. Надо сразу заметить, что такой
алгоритм справедлив только для сетей, которые имеют одинаковую скорость
передачи по любому сегменту сети. Часто в реальной жизни оказывается, что
гораздо выгоднее воспользоваться оптоволокном с 3-мя шлюзами, чем одним
медленным коммутируемым телефонным каналом.
Другая идея, которая призвана решить проблемы RIP, - это учет не числа
hop'ов, а учет времени отклика. На этом принципе построен, например,
протокол OSPF. Кроме этого OSPF реализует еще и идею лавинной
маршрутизации. В RIP каждый маршрутизатор обменивается информацией
только с соседями. В результате, информации о потере маршрута в сети,
отстоящей на несколько hop'ов от локальной сети, будет получена с
опозданием. Лавинная маршрутизация позволяет решить эту проблему за счет
оповещения всех известных шлюзов об изменениях локального участка сети.
К сожалению, многовариантную маршрутизацию поддерживает не очень
много систем. Различные клоны Unix и NT, главным образом ориентированы на
протокол
RIP.
Достаточно
посмотреть
на
программное
обеспечение
динамической маршрутизации, чтобы убедится в этом. Программа routed
13
поддерживает только RIP, программа gated поддерживает RIP, HELLO, OSPF,
EGP и BGP, в Windows NT поддерживается только RIP[5].
3 Протокол маршрутизации RIP
Этот протокол (RFC-1388, -1582, -1721, -1722 (std0057), -2453, -1724, 2080, -2082, -2092, -2453) маршрутизации предназначен для сравнительно
небольших и относительно однородных сетей (алгоритм Белмана-Форда).
Протокол разработан в университете Калифорнии (Беркли), базируется на
разработках фирмы Ксерокс и реализует те же принципы, что и программа
маршрутизации routed, используемая в ОC UNIX (4BSD). Маршрут здесь
характеризуется вектором расстояния до места назначения. Предполагается, что
каждый маршрутизатор является отправной точкой нескольких маршрутов до
сетей, с которыми он связан.
Описания этих маршрутов хранится в специальной таблице, называемой
маршрутной. Таблица маршрутизации RIP содержит по записи на каждую
обслуживаемую машину (на каждый маршрут). Запись должна включать в себя:
IP-адрес места назначения. Метрика маршрута (от 1 до 15; число шагов
до места назначения). IP-адрес ближайшего маршрутизатора (gateway) по пути
к месту назначения. Таймеры маршрута.
Первым двум полям записи мы обязаны появлению термина вектор
расстояния (место назначение - направление; метрика - модуль вектора).
Периодически
(раз
широковещательно
в
копию
30
сек)
своей
каждый
маршрутной
маршрутизатор
таблицы
всем
посылает
соседям-
маршрутизаторам, с которыми связан непосредственно. Маршрутизаторполучатель просматривает таблицу. Если в таблице присутствует новый путь
или сообщение о более коротком маршруте, или произошли изменения длин
пути, эти изменения фиксируются получателем в своей маршрутной таблице.
Протокол RIP должен быть способен обрабатывать три типа ошибок:
14
1. Циклические маршруты. Так как в протоколе нет механизмов выявления
замкнутых маршрутов, необходимо либо слепо верить партнерам, либо
принимать меры для блокировки такой возможности.
2. Для подавления нестабильностей RIP должен использовать малое
значение максимально возможного числа шагов (<16).
3. Медленное распространение маршрутной информации по сети создает
проблемы при динамичном изменении маршрутной ситуации (система не
поспевает за изменениями). Малое предельное значение метрики
улучшает сходимость, но не устраняет проблему.
Несоответствие маршрутной таблицы реальной ситуации типично не только
для RIP, но характерно для всех протоколов, базирующихся на векторе
расстояния, где информационные сообщения актуализации несут в себе только
пары кодов: адрес места назначение и расстояние до него. Пояснение проблемы
дано на рис. 2 ниже.
Рисунок 2 - Иллюстрация, поясняющее возникновение циклических
маршрутов при использовании вектора расстояния.
На верхней части рисунка показана ситуация, когда маршрутизаторы
указывают маршрут до сети <a> в соответствии со стрелками. На нижней части
связь на участке GW1 <Cеть a> оборвана, а GW2 по-прежнему продолжает
оповещать о ее доступности с числом шагов, равным 2. При этом GW1,
восприняв эту информацию (если GW2 успел передать свою маршрутную
информацию раньше GW1), может перенаправить пакеты, адресованные сети
А, на GW2, а в своей маршрутной таблице будет характеризовать путь до сети
А метрикой 3. При этом формируется замкнутая петля маршрутов.
Последующая широковещательная передача маршрутных данных GW1 и GW2
не решит эту проблему быстро. Так после очередного обмена путь от gw2 до
15
сети А будет характеризоваться метрикой 5. Этот процесс будет продолжаться
до тех пор, пока метрика не станет равной 16, а это займет слишком много
циклов обмена маршрутной информацией.
Проблема может быть решена следующим образом. Маршрутизатор
запоминает, через какой интерфейс получена маршрутная информация, и через
этот интерфейс эту информацию уже не передает. В рассмотренном выше
примере GW2 не станет посылать информацию о пути к сети А
маршрутизатору GW1, от которого он получил эти данные. В этом случае в
маршрутной
таблице
GW1
путь
до
А
исчезнет
сразу.
Остальные
маршрутизаторы узнают о недостижимости сети А через несколько циклов.
Существуют и другие пути преодоления медленных переходных процессов.
Если производится оповещение о коротком пути, все узлы-получатели
воспринимают эти данные немедленно. Если же маршрутизатор закрывает
какой-то путь, его отмена фиксируется остальными лишь по тайм-ауту.
Универсальным методом исключения ошибок при маршрутизации является
использование достаточно большой выдержки, перед тем как использовать
информацию об изменении маршрутов. В этом случае к моменту изменения
маршрута эта информация станет доступной всем участникам процесса
маршрутизации. Но все перечисленные методы и некоторые другие известные
алгоритмы, решая одну проблему, часто вносят другие. Многие из этих методов
могут при определенных условиях вызвать лавину широковещательных
сообщений,
что
также
дезорганизует
сеть.
Именно
малая
скорость
установления маршрутов в RIP (и других протоколах, ориентированных на
вектор расстояния) и является причиной их постепенного вытеснения другими
протоколами.
Но даже усовершенствование, изложенное выше, не всегда срабатывает.
На рис.3 приведен пример, когда переходной процесс, несмотря на
усовершенствование будет идти долго. При обрыве связи В-Г узлы А и Б
сообщают узлу В, что они потеряли связь с узлом Г. Узел В делает вывод, что Г
16
не достижим, о чем и сообщает узлам А и Б. К сожалению А знает, что Б имеет
проход к Г длиной 2, из чего он делает вывод о достижимости Г за три шага.
Аналогично рассуждает Б о возможности достижимости Г через А. Далее при
последующих рассылках
метрика доступности Г, характеризуется
все
большими значениями, до тех пор пока не станет равной "бесконечности".
Рисунок 3 - Пример топологии, где переходной процесс осуществляется
медленно, даже при усовершенствовании алгоритма.
В RIP сообщения инкапсулируются в udp-дейтограммы, при этом
передача осуществляется через порт 520. В качестве метрики RIP использует
число шагов до цели. Если между отправителем и приемником расположено
три маршрутизатора (gateway), считается, что между ними 4 шага. Такой вид
метрики не учитывает различий в пропускной способности или загруженности
отдельных сегментов сети. Применение вектора расстояния не может
гарантировать оптимальность выбора маршрута, ведь, например, два шага по
сегментам сети ethernet обеспечат большую пропускную способность, чем один
шаг через последовательный канал на основе интерфейса RS-232.
Маршрут по умолчанию имеет адрес 0.0.0.0 (это верно и для других
протоколов маршрутизации). Каждому маршруту ставится в соответствие
таймер тайм-аута и "сборщика мусора". Тайм-аут-таймер сбрасывается каждый
раз, когда маршрут инициализируется или корректируется. Если со времени
последней коррекции прошло 3 минуты или получено сообщение о том, что
вектор расстояния равен 16, маршрут считается закрытым. Но запись о нем не
стирается, пока не истечет время "уборки мусора" (2мин). При появлении
эквивалентного маршрута переключения на него не происходит, таким образом,
блокируется возможность осцилляции между двумя или более равноценными
17
маршрутами. Формат сообщения протокола RIP имеет вид, показанный на рис.
4. Поле команда определяет выбор согласно следующей таблице:
Таблица 1 - Значения кодов поля команда
Команда
1
2
Значение
Запрос на получение частичной или полной маршрутной
информации;
Отклик, содержащий информацию о расстояниях из маршрутной
таблицы отправителя;
3
Включение режима трассировки (устарело);
4
Выключение режима трассировки (устарело);
5-6
Зарезервированы для внутренних целей sun microsystem.
Поле версия для RIP равно 1 (для RIP-2 двум). Поле набор протоколов
сети i определяет набор протоколов, которые используются в соответствующей
сети (для Интернет это поле имеет значение 2). Поле расстояние до сети i
содержит целое число шагов (от 1 до 15) до данной сети. В одном сообщении
может присутствовать информация о 25 маршрутах. При реализации RIP можно
выделить следующие режимы:
Инициализация, определение всех "живых" интерфейсов путем посылки
запросов, получение таблиц маршрутизации от других маршрутизаторов. Часто
используются широковещательные запросы.
Получен запрос. В зависимости от типа запроса высылается адресату полная
таблица маршрутизации, или проводится индивидуальная обработка.
Получен отклик. Проводится коррекция таблицы маршрутизации (удаление,
исправление, добавление)[6].
18
Рисунок 4 - Формат сообщения RIP
19
4 Протокол маршрутизации OSPF
Протокол OSPF является стандартным протоколом маршрутизации для
использования в сетях IP. Основные принципы организации современной
версии протокола маршрутизации OSPF изложены в RFC 2328. Протокол OSPF
представляет собой классический протокол маршрутизации класса Link–State,
который обеспечивает:
• отсутствие ограничений на размер сети;
• поддержку внеклассовых сетей;
• передачу обновлений маршрутов с использованием адресов типа multicast;
• достаточно большую скорость установления маршрута;
•
использование процедуры authentication при передаче и получении
обновлений маршрутов.
Использование иерархической маршрутизации позволяет существенно
повысить эффективность использования каналов передачи данных за счет
сокращения доли передаваемого по ним служебного трафика.
Рисунок 5 - Информационный обмен, который осуществляют маршрутизаторы
Информационный обмен, который осуществляют маршрутизаторы для
определения маршрута передачи данных внутри области, показан на рисунке
20
зелеными стрелками. Определение маршрута и информационный обмен между
областями в данном случае производится через специальную центральную
область - AREA 0. Использование такой схемы логического построения сети
позволяет существенно уменьшить долю неинформативного трафика, который
передается по каналам передачи данных между областями. В частности в этом
случае по каналам, используемых для передачи данных между областями,
(красный цвет) не будет передаваться информация о сетях, которые имеют
чисто локальное значение.
При использовании протокола маршрутизации OSPF допускается
существование нескольких маршрутов в направлении некоторого узла сети. В
том случае, если эти маршруты обеспечивают одинаковое качество передачи
данных, информационный поток в адрес данного узла может быть направлен по
всем этим каналам одновременно, что обеспечит существенное увеличение
скорости передачи данных. Динамическое перераспределение трафика между
параллельными каналами, которое выполняется пропорционально степени
загруженности этих каналов, называется Load balancing .
Использование процедуры установления подлинности целесообразно в
тех информационных системах, в которых большое внимание уделяется
информационной безопасности. В таких системах маршрутизаторы, которые
участвуют в процессе определения маршрута, должны выполнить совокупность
действий, которая необходима для установления приемником подлинности
источника передаваемых данных ( authentication procedure ). Только в том
случае, если источник передаваемых данных успешно выполнил процедуру
аутентификации, те данные о маршрутах, которые были от него получены,
принимаются для обработки.
Примечательной особенностью протокола маршрутизации OSPF является
использование адресов типа multicast для информационного обмена между
маршрутизаторами в процессе определения маршрута. Использование таких
адресов позволяет отказаться от использования адресов типа broadcast, что в
21
свою
очередь
приводит
к
повышению
эффективности
использования
вычислительных ресурсов сети.
Еще
одной
важной
особенностью
процесса
организации
информационного обмена у протокола маршрутизации OSPF является также
использование аппарата « назначенных » ( designated ) маршрутизаторов .
Использование этой возможности позволяет существенно сократить объем
служебного трафика в том случае, когда несколько маршрутизаторов
подключены к одной сети.
В отличие от протокола маршрутизации RIP, который для сравнения
маршрутов может использовать только их длину, выраженную в числе
переходов, протокол маршрутизации OSPF использует для этой – же цели
специальный критерий, который называется метрика . Метрика маршрута в
протоколе OSPF формируется по специальному алгоритму и учитывает
следующие параметры:
• пропускная способность канала;
• величина задержки распространения сигнала в канале;
• надежность канала;
• загруженность канала;
• размер максимального блока данных, который может быть передан через
данный канал.
Использование такой метрики позволяет более объективно оценивать
маршруты и, при наличии выбора, принимать эффективное и целесообразное
решение.
Построение дерева кратчайших путей. Для обеспечения формирования и
обслуживания этих баз данных маршрутизаторы OSPF должны обмениваться
специальными сообщениями. В частности такие сообщения формируются в том
случае, если в сети появился новый маршрутизатор или изменилось состояние
канала передачи данных. При получении сообщения об изменениях в структуре
сети, каждый маршрутизатор вносит соответствующие изменения в свою
копию базы данных. Таким образом, в каждый момент времени все базы
22
данных маршрутизаторов, которые находятся внутри одной автономной
системы,
являются
идентичными
и
адекватно
отображают
структуру
информационного взаимодействия внутри автономной системы. Для того,
чтобы определить маршрут по которому должен быть передана дейтаграмма,
каждый маршрутизатор, на основании своей копии базы данных, строит дерево
кратчайших путей. В вершине своего дерева каждый из маршрутизаторов
размещает себя самого.
При описании алгоритма OSPF используются несколько специальных
терминов и понятий:
Автономной системой (AS - Autonomous System ) называется группа
маршрутизаторов, которая для обеспечения взаимного обмена информацией о
маршрутах использует единый протокол маршрутизации.
Маршрутизаторы, которые подключены к одной и той же сети
называются соседними маршрутизаторами ( Neighboring Routers ).
Два маршрутизатора из числа соседних могут быть выбраны для
установления близких отношений, которые предполагают обмен информацией
о маршрутах (Adjacency) . Близкие отношения устанавливаются не в каждой
паре соседствующих маршрутизаторов.
Блок
данных,
который
содержит
информацию
о
состоянии
маршрутизатора или сети называется объявлением о состоянии канала Link
State Advertisement (LSA) . В том случае, если данное объявление представляет
состояние маршрутизатора, оно должно содержать информацию о статусе его
интерфейсов и близких ему маршрутизаторов. Каждое такое объявление
распространяется по всей автономной системе. Совокупность таких LSA
формирует базу данных маршрутизации в каждом из маршрутизаторов.
Процесс
распространения
LSA
в
пределах
автономной
системы
называется затоплением ( Flooding ).
Одним из компонентов протокола OSPF является Hello протокол , с
помощью которого маршрутизаторы устанавливают и обслуживают соседские
23
отношения. С помощью этого протокола, в частности производится выбор
назначенного маршрутизатора для некоторых сетей.
Возможно возникновение ситуации, когда к одной сети типа broadcast
окажутся подключенными несколько входящих в один домен маршрутизации
OSPF
маршрутизаторов.
Для
того,
чтобы
избежать
дублирования
представления сети типа broadcast несколькими маршрутизаторами в протоколе
OSPF используется специальный алгоритм, с помощью которого выбирается
Designated Router (назначенный маршрутизатор) . В этом случае только один
маршрутизатор обеспечивает передачу информации о маршрутах в сегменте
сети.
Протокол OSPF относится к протоколам, которые обеспечивают
иерархическую маршрутизацию. При использовании протоколов данного типа
информационная
система
разбивается
на
независимые
области
по
функциональному принципу. Как уже было выше отмечено, область №0 играет
роль
backbone
и
используется
для
обеспечения
информационного
взаимодействия между остальными областями. В зависимости от того, к какой
области принадлежит маршрутизатор, и какие информационные потоки через
него проходят, различают четыре типа маршрутизаторов OSPF:
• Internal Router – IR;
• Area Border Router – ABR;
• Backbone Router – BR;
• AS Boundary Router- ASBR.
24
Рисунок 6 - На рисунке представлены различные типы маршрутизаторов OSPF.
Маршрутизаторы типа Internal Router – внутренний маршрутизатор –
размещаются внутри автономной системы и не имеют интерфейсов, которые
выходят за пределы этой автономной системы. На приведенном рисунке
маршрутизаторы этого типа обозначены буквами IR.
К типу Backbone Router относятся все маршрутизаторы, которые имеют
интерфейсы в нулевую область. На приведенном рисунке маршрутизаторы
Backbone Router обозначены символами BR.
Маршрутизаторы типа Area Border Router (пограничный маршрутизатор
области ) – размещаются на границе между несколькими областями в пределах
автономной системы. Такие маршрутизаторы имеют интерфейсы, которые
связывают их с маршрутизаторами, находящимися в других областях.
Маршрутизаторы данного типа обозначены на рисунке ABR и предназначены
для того, чтобы передавать информацию о маршрутах между различными
областями.
25
Маршрутизаторы типа AS Boundary Router (пограничный маршрутизатор
Автономной
системы)
обеспечивают
информационный
обмен
с
маршрутизаторами, которые расположены в других автономных системах. На
рисунке маршрутизатор AS Boundary Router обозначен символами ASBR.
База данных Link-State Database отображает текущую структуру
информационных связей в рассматриваемой области маршрутизации. Эти базы
данных должны быть идентичными у всех маршрутизаторов, которые
расположены в пределах одной области. Базы данных состоят из сообщений,
которые называются Link – State Advertisement и формируются всеми
активными маршрутизаторами данной области. Активным в данном случае
считается маршрутизатор, который имеет хотя бы один подключенный канал в
данной области.
Сообщения, в которых содержатся LSA, формируются при каждом
изменении состояния канала и передаются всеми маршрутизаторами данной
области методом затопления. Для формирования базы данных используются
различные типы LSA:
• LSA типа 1 – router link advertisement;
• LSA типа 2 – network link advertisement;
• LSA типа 3,4 – summary link advertisement;
• LSA типа 5 – external link advertisement.
Сообщения LSA типа 1. Сообщения типа router link advertisement
(состояния каналов маршрутизатора) формируются каждым маршрутизатором
для каждой области, в которой он имеет активные интерфейсы. Сообщения
LSA типа 1 содержат объединенную информацию о состоянии каналов,
которые имеет маршрутизатор в данной области. Сообщения этого типа
распространяются только в пределах одной области.
Сообщения LSA типа 2. Сообщения LSA типа network link advertisement
(состояние сети) формируется только в сетях, которые могут быть отнесены к
классу broadcast (Ethernet) или NBMA (Non Broadcast Multi Access). В
сообщении LSA типа 2 указываются идентификаторы всех маршрутизаторов,
26
подключенных к данной сети. Формирование сообщений данного типа
выполняется маршрутизатором, который называется Designated Router. Выбор
этого маршрутизатора выполняется по специальному алгоритму среди всех
маршрутизаторов, которые подключены к данной сети.
Сообщения LSA типа 3, 4. Сообщения LSA типа – summary link
advertisement формируются Area Border Router – маршрутизаторами и
направляются за пределы области, в которой они сформированы. Каждое
сообщение данного типа содержит маршрут, который может быть использован
для информационного обмена между различными областями в пределах одной
автономной системы. В частности, LSA типа 3 описывают маршруты к сетям,
LSA типа 4 описывают маршруты к AS Boundary Router – маршрутизаторам.
Сообщения LSA типа 5. Сообщения LSA типа external link advertisement
формируются AS Boundary Router- маршрутизаторами и содержат информацию
о маршрутах, которые являются внешними по отношению к данной автономной
системе. Сообщения данного типа распространяются по всем областям
автономной
системы
за
исключением
отдельных
специально
сконфигурированных областей, которые называются stub-areas.
Протокол Hello. Помимо установления партнерских отношений данный
протокол используется для регулярного подтверждения наличия двустороннего
обмена между маршрутизаторами. Для этого пакеты Hello периодически
отправляются через все интерфейсы маршрутизатора. В пакете Hello
маршрутизатор размещает IP адреса соседей, от которых он получил
сообщения Hello. Двусторонний характер обмена заключается в том, что
маршрутизатор должен обнаружить в принятом от партнера пакете Hello свой
собственный идентификатор.
В broadcast и NBMA сетях данный протокол используется для выбора
назначенного маршрутизатора. Процедуры, которые маршрутизатор выполняет
в рамках протокола Hello, являются различными в сетях различного типа[7].
27
5 Заключение
Общими словами маршрутизацию можно описать как процесс передачи
пакетов между соединенными сетями. В TCP/IP-сетях маршрутизация является
частью протокола IP (Internet Protocol) и используется в сочетании с другими
службами сетевых протоколов для обеспечения передачи данных между
узлами, расположенными в разных сегментах более крупной TCP/IP-сети.
IP — это своего рода «почтовая система» протокола TCP/IP, выполняющая
сортировку и доставку IP-данных. Каждый входящий или исходящий пакет
называется IP-датаграммой. Датаграмма IP содержит два IP-адреса: адрес
источника (отправляющего узла) и адрес назначения (принимающего узла). В
отличие от аппаратных адресов, IP-адреса в датаграмме в процессе передачи ее
по TCP/IP-сети остаются постоянными. Маршрутизация является основной
функцией IP. Обмен IP-датаграммами и их обработка на каждом узле
выполняются протоколом IP, работающим на межсетевом уровне. Над этим
уровнем транспортные службы узла-источника передают данные уровню IP в
виде TCP-сегментов или UDP-сообщений. Уровень IP помещает в IPдатаграммы информацию об адресах отправителя и получателя, которая
используется для маршрутизации данных в сети. Затем уровень IP передает
датаграммы уровню сетевого интерфейса. На этом уровне канальные службы
преобразовывают IP-датаграммы в кадры для передачи по физическим
носителям сети. На узле-получателе эти действия выполняются в обратном
порядке. Каждая IP-датаграмма содержит IP-адреса источника и назначения.
Службы уровня IP (межсетевого уровня) на каждом узле анализируют адрес
назначения каждой датаграммы, ищут этот адрес в локальной таблице
маршрутизации и выбирают действие по ее дальнейшему перенаправлению. IPмаршрутизаторы подключаются к двум или нескольким сегментам IP-сети,
между которыми требуется обеспечить перенаправление пакетов.
28
6 Список использованных источников
1.
Маршрутизация
в
сетях
–
TCP/IP
[Электронный
ресурс]
–
http://citforum.ru/internet/services/services01.shtml#13
2.
Процесс
маршрутизации
IP
–
[Электронный
ресурс]
–
http://technet.microsoft.com/ru-ru/library/cc785246%28WS.10%29.aspx
3.
Статическая
маршрутизация
–
[Электронный
ресурс]
–
http://citforum.ru/internet/tifamily/iproutng.shtml
4.
Дейтаграмма
–
[Электронный
ресурс]
–
http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D0%B9%D1%82%D0%B0%D0%
B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0
5.
Динамическая
маршрутизация
–
[Электронный
ресурс]
–
[Электронный
ресурс]
–
[Электронный
ресурс]
–
http://citforum.ru/nets/services/services023.shtml
6.
Протокол
маршрутизации
RIP
–
http://book.itep.ru/4/44/rip44111.htm
7.
Протокол
маршрутизации
OSPF
http://dmtsoft.ru/bn/467/as/oneaticleshablon/
29
–
7 Глоссарий
Дейтаграмма (англ. datagram), также датаграмма — блок информации,
посланный как пакет сетевого уровня через передающую среду без
предварительного установления соединения и создания виртуального канала.
Internet
Protocol
(IP) —
межсетевой
протокол.
Относится
к
маршрутизируемым протоколам сетевого уровня семейства TCP/IP.
Протокол IP используется для негарантированной доставки данных,
разделяемых на так называемые пакеты от одного узла сети к другому. Это
означает, что на уровне этого протокола (третий уровень сетевой модели OSI)
не даётся гарантий надёжной доставки пакета до адресата.
Transmission Control Protocol (TCP) (протокол управления передачей) —
один из основных сетевых протоколов Интернета, предназначенный для
управления передачей данных в сетях и подсетях TCP/IP.
Выполняет функции протокола транспортного уровня модели OSI.
TCP — это транспортный механизм, предоставляющий поток данных, с
предварительной установкой соединения, за счёт этого дающий уверенность в
достоверности получаемых данных, осуществляет повторный запрос данных в
случае потери данных и устраняет дублирование при получении двух копий
одного пакета (см. также T/TCP). В отличие от UDP гарантирует целостность
передаваемых данных и уведомление отправителя о результатах передачи.
Сетевая модель OSI (англ. open systems interconnection basic reference
model — базовая эталонная модель взаимодействия открытых систем, сокр.
ЭМВОС; 1978 г.) — абстрактная сетевая модель для коммуникаций и
разработки сетевых протоколов. Предлагает взгляд на компьютерную сеть с
точки зрения измерений. Каждое измерение обслуживает свою часть процесса
взаимодействия. Благодаря такой структуре совместная работа сетевого
30
оборудования и программного обеспечения становится гораздо проще и
прозрачнее.
Ethernet — пакетная технология передачи данных преимущественно
локальных компьютерных сетей.
Стандарты Ethernet определяют проводные соединения и электрические
сигналы на физическом уровне, формат кадров и протоколы управления
доступом к среде — на канальном уровне модели OSI. Ethernet в основном
описывается стандартами IEEE группы 802.3.
31
Скачать