Лекция. Принципы объединения сетей на основе протоколов сетевого уровня

 

 

Вопросы лекции

1. Объединение сетей на основе протоколов сетевого уровня. 

2. Принципы маршрутизации

3. Протоколы и алгоритмы маршрутизации.

 

 

1. Объединение сетей на основе протоколов сетевого уровня

 

Для объединения нескольких сетей в единую систему, способную передавать данные между любыми узлами объединенной сети, служит сетевой уровень.

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

Компонентами составной сети могут являться как локальные, так и глобальные сети.

Основная идея введения сетевого уровня состоит в том, чтобы оставить технологии, используемые в объединяемых сетях в неизменном в виде, но добавить в кадры всех сетей дополнительную информацию - заголовок сетевого уровня, который позволил бы находить на основании этой информации адресата в сети любого типа. Заголовок пакета сетевого уровня имеет унифицированный формат, не зависящий от форматов кадров канального уровня тех сетей, которые могут входить в интерсеть.

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

В функции сетевого уровня входит:

                    передача пакетов между конечными узлами в составных сетях;

                    выбор маршрута передачи пакетов, наилучшего по некоторому критерию;

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

На сетевом уровне необходима собственная система адресации, не зависящая от способов адресации узлов в отдельных подсетях.

Сетевой адрес формируется как пара: номер сети (подсети) и номера узла.

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

 

2. Принципы маршрутизации

 

Важнейшей задачей сетевого уровня является маршрутизация – организация доставки пакетов по назначению.

Рассмотрим принципы маршрутизации на примере составной сети, изображенной на рис.1.

Маршрутизаторы имеют по несколько портов (не менее двух), к которым присоединяются сети. Каждый порт маршрутизатора можно рассматривать как отдельный узел сети: он имеет собственный сетевой адрес и собственный локальный адрес в той подсети, которая к нему подключена. Например, маршрутизатор номер 1 имеет три порта:

S1, S2, S3 – сети, подключенные к портам;

М1(1), М1(2), М1(3) – сетевые адреса этих портов;

Порт М1(1) имеет локальный адрес в сети S1;

Порт М1(2) имеет локальный адрес в сети S2;

Порт М1(3) имеет локальный адрес в сети S3;

 

 

 S1, S2, … S5 – номера сетей, соединенных маршрутизаторами.

 

Рис. 1. Принцип маршрутизация в составной сети

 

Маршрутизатор можно рассматривать как совокупность нескольких узлов, каждый из которых входит в свою сеть. Как единое устройство маршрутизатор не имеет отдельного сетевого или локального адреса.

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

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

Табл.1 иллюстрирует пример таблицы маршрутизации для маршрутизатора 4.

 

Табл. 1.           Таблица маршрутизации маршрутизатора 4.

 

Номер сети

Адрес следующего маршрутизатора

Адрес выходного порта

Расстояние до сети

S1

M1(2)

M4(1)

1

S2

-

M4(1)

0 (подс.)

S3

M1(2)

M4(1)

1

S4

M2(1)

M4(1)

1

S5

-

M4(2)

0 (подс.)

Умолчание

M5(1)

M4(2)

-

 

 

Описание таблицы маршрутизации по столбцам слева направо:

·                    номер сети назначения;

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

·                    сетевой адрес выходного порта – на какой из собственных портов маршрутизатор должен направить пакет;

·                    расстояние до сети назначения – используется, если в таблице маршрутизации есть несколько строк, соответствующих некоторому адресу сети назначения.

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

Если марщрутизатор поддерживает несколько классов сервиса пакетов, то таблица маршрутов составляется и применяется  отдельно для каждого вида сервиса (критерия).

Если таблица маршрутизации в случае кркпной сети имеет слишком большой объем, то для сокращения числа записей в таблице используют специальную запись «маршрутизатор по умолчанию» (default). Маршрутизаторы в этом случае хранят строки для соседних сетей. Обо всех остальных сетях в таблице делают одну запись, указывающую на маршрутизатор, через который пролегает путь ко всем остальным сетям. В нашем примере таким маршрутизатором для четвертого маршрутизатора  является маршрутизатор 5 ( порт М5(1)).То есть путь ко всем остальным сетям большой сети проходит через этот порт  маршрутизатора.

Таблица маршрутизации строят также и для конечных узлов. Особенности таблиц маршрутизации на конечных узлах:

                    они аналогичны по структуре таблицам, хранящимся в маршрутизаторах;

                    используются для оределения того, направляется ли пакет в другую сеть или он адресован какому-либо узлу данной сети;

                    эти таблицы маршрутизации чаще строятся вручную.

Табл. 2 содержит пример таблицы маршрутизации для  узла А.

 

Табл2. Таблица маршрутизации конечного узла А.

 

Номер сети

Адрес следующего маршрутизатора

Адрес выходного порта

Расстояние до сети

S4

-

MA

0

S3

M3(2)

MA

1

Умолчание

M2(2)

MA

-

 

 

3.  Протоколы и алгоритмы маршрутизации

 

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

Алгоритмы маршрутизации включают процедуры:

                    измерение и оценивание параметров сети;

                    принятие решения о рассылке служебной информации;

                    построение таблиц маршрутизации;

                    реализация принятых маршрутных решений.

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

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

 

Табл 3. Сравнение маршрутизаторов и коммутаторов (мостов).

 

Коммутаторы

Маршрутизаторы

Локальные таблицы соответствия IP – адресов МАС – адресам (физическим).

Таблицы маршрутизации с номерами сетей.

Построение таблиц путем пассивного просмотра проходящих кадров.

Обмен служебными пакетами с данными о сетях и маршрутизаторах.

Учитывается только топология сети.

Учет не только топологии, но и пропускной способности и состояния маршрутизаторов.

Простое определение нужного порта по таблице (скорость).

Реализация сложных алгоритмов маршрутизации.

Подвержены широковещательному шторму, проблема с управлением трафиком.

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

 

 

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

 

Одношаговые алгоритмы маршрутизации

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

Одношаговые алгоритмы, в зависимости от способа формирования таблиц маршрутизации делятся на три класса:

§           алгоритмы фиксированной (статической) маршрутизации;

§           алгоритмы простой маршрутизации;

§           алгоритмы адаптивной (динамической) маршрутизации.

Алгоритмы фиксированной маршрутизации:

§         все записи в таблице маршрутизации являются статическими;

§         таблица обычно создается при загрузке и используется без изменений, пока ее не отредактируют вручную (если, например, отказал какой-нибудь маршрутизатор);

§         виды таблиц

          одномаршрутные таблицы, в которых для каждого адресата задан один путь;

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

§         приемлем в небольших сетях с простой топологией или для работы на магистралях крупных сетей (с простой структурой).

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

                    случайная маршрутизация, когда прибывший пакет посылается в случайном направлении, кроме исходного;

                    лавинная маршрутизация, когда пакет широковещательно посылается по всем возможным направлениям, кроме исходного;

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

 

Алгоритмы адаптивной (динамической) являются самыми распространенными и обладают следующими свойствами:

                    автоматическое обновление таблиц маршрутизации после изменения конфигурации сети;

                    обычно задается интервал времени, в течение которого данный маршрут будет оставаться действительным. Это время называется временем жизни маршрута;

                    сбор топологической информации распределен между всеми маршрутизаторами, хотя наметилась тенденция использования сервера маршрутов – протокол NHRP.

                    обеспечение достаточно рационального маршрута;

                    простые алгоритмы без использования большого объема сетевых ресурсов;

                    обладание свойством сходимости – получение однозначного результата за приемлемое время.

Два типа алгоритмов адаптивной маршрутизации:

                   дистанционно – векторные алгоритмы;

                   алгоритмы состояния связей.

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

Недостатки дистанционно – векторных алгоритмов:

                   хорошо работают только в небольших сетях, в больших сетях генерируют интенсивный широковещательный трафик;

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

Наиболее распространенным протоколом, основанным на  дистанционно – векторном алгоритме, является RIP (Routing Internet Protocol).

Алгоритмы состояния связей обеспечивают маршрутизатор информацией, достаточной для построения точного графа связей сети. Все маршрутизаторы работают с одинаковыми графами. Вершинами графа являются как маршрутизаторы, так и объединяемые ими сети, Имеется широковещательный трафик, но только при изменении состояния связей и пакетами меньшего объема, чем для алгоритма RIP. В надежных сетях связи изменяются не часто.Одним из протоколов, основанным на алгоритме состояния связей является протокол OSPF (Open Shortest Path First) стека TCP/IP.

Функции маршрутизатора

Функции маршрутизатора могут быть разбиты на 3 группы в соответствии с уровнями модели OSI (рис. 5.3, с. 358).

 

1. Уровень интерфейсов

На нижнем уровне маршрутизатор обеспечивает физические интерфейсы для подсоединения локальных и глобальных сетей. Каждый интерфейс (порт) для подключения локальной сети соответствует определенному протоколу канального уровня (FDDI, Ethernet, Token Ring). Интерфейс с глобальной сетью обычно определяет только некоторый стандарт физического уровня, над которым в маршрутизаторе могут работать различные протоколы канального уровня. Например, с интерфейсом V.35 могут работать протоколы: LAP-B (X.25), LAP-F (frame relay), LAP-D (ISDN).

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

 

2. Уровень сетевого протокола

Сетевой протокол анализирует содержимое полей заголовка пакета.

 

 

Рис.5..3.Функциональная модель маршрутизатора

 

Пакет отбрасывается, если у него неверная контрольная сумма (пакет поврежден) или превышено допустимое время пребывания пакета в сети (пакет устарел, либо является копией другого пакета).

Корректируется содержимое некоторых полей, например, наращивается время жизни пакета, корректируется контрольная сумма.

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

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

             "первым пришел – первым вышел" (FIFO);

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

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

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

С сетевого уровня вниз, канальному уровню передаются:

             пакет;

             локальный адрес следующего маршрутизатора;

             номер порта маршрутизатора.

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

 

3. Уровень протоколов маршрутизации

 

Сетевые протоколы активно используют в своей работе таблицу маршрутизации, но ни ее построением, ни поддержанием ее содержимого не занимаются. Эти функции выполняют протоколы маршрутизации. Протоколы маршрутизации реализуются маршрутизаторами. Маршрутизаторы могут выполнять и другую работу, например, фрагментирование пакетов.

 

 

 

Hosted by uCoz