- •Аутентификация
- •Протоколы состояния каналов связи
- •Описание работы протокола
- •Протокол ospf
- •Принцип работы
- •Пример маршрутизации по алгоритму ospf
- •Распределение ip-адресов
- •[Править]Опции dhcp
- •[Править]Устройство протокола
- •Файл конфигурации
- •1. Сервер. Необходимый минимум
- •2. Сервер. Дополнительно.
Принцип работы
Алгоритм маршрутизации SPF является основой для операций OSPF. В каждой области работает отдельная копия алгоритма маршрутизации. Маршрутизаторы, которые имеют интерфейсы к нескольким областям, работают с несколькими копиями алгоритма SPF.
Когда на какой-нибудь роутер SPF подается питание, он инициализирует свои структуры данных о протоколе маршрутизации, а затем ожидает уведомления от протоколов низшего уровня о том, что его интерфейсы работоспособны.
После получения подтверждения о работоспособности своих интерфейсов, роутер использует приветственный протокол (hello protocol) OSPF, чтобы приобрести соседей (neighbor). Соседи — это объекты сети с интерфейсами, предназначенными для работы в общей с данным маршрутизатором сети. Описываемый маршрутизатор отправляет своим соседям приветственные пакеты и получает от них такие же пакеты. Помимо оказания помощи в приобретении соседей, приветственные пакеты также действуют как подтверждение дееспособности, позволяя другим роутерам узнавать о том, что другие роутеры функционируют.
Каждый роутер периодически, в зависимости от настройки системы, отправляет сообщение о состоянии канала (LSA — messages). Эти сообщения содержат информацию о состоянии интерфейса маршрутизатора данного маршрутизатора и смежных с ним объектов сети. Каждое такое сообщение рассылается маршрутизаторам всей области. Из LSA-сообщений всех объектов формируется топологическая база данных (дерево маршрутов). Сообщения LSA также отправляются в том случае, когда изменяется состояние какого-нибудь роутера.
После построения дерева маршрутов внутри AS, протокол проверяет информацию внешних маршрутов по отношению к данной AS. Эта информация может быть получена с помощью протоколов, обеспечивающих взаимодействие OSPF с другими областями или другими типами сетей, например, с помощью протоколов EGP или ВОР.
Все маршрутизаторы данной AS используют один и тот же алгоритм построения маршрута на основе топологической базы данных. Маршрутизатор строит граф оптимальных маршрутов, в котором он сам является корнем. На основании этого графа маршрутизаторы и производят свои расчеты для каждого маршрута информационного пакета. В свою очередь, по дереву оптимальных маршрутов строится маршрутная таблица, которая служит основой оценок и выбора маршрутов.
В зависимости от того, какую функцию выполняет тот или иной маршрутизатор (т. е. относится к области backbone, смежной области, периферии или внутренней области), он выполняет те или иные функции (инициализации, согласования, корректировки и т. п.) с одной или несколькими топологическими базами данных, находящихся под его контролем.
Пример маршрутизации по алгоритму ospf
Представим себе один день из жизни транзитной локальной сети. Пусть у нас имеется сеть Ethernet, в которой есть три маршрутизатора - Джон, Фред и Роб (имена членов рабочей группы Internet, разработавшей протокол OSPF). Эти маршрутизаторы связаны с сетями в других городах с помощью выделенных линий.
Пусть произошло восстановление сетевого питания после сбоя. Маршрутизаторы и компьютеры перезагружаются и начинают работать по сети Ethernet. После того, как маршрутизаторы обнаруживают, что порты Ethernet работают нормально, они начинают генерировать сообщения HELLO, которые говорят о их присутствии в сети и их конфигурации. Однако маршрутизация пакетов начинает осуществляться не сразу - сначала маршрутизаторы должны синхронизировать свои маршрутные базы.
Гипотетическая сеть с OSPF маршрутизаторами
На протяжении интервала отказа маршрутизаторы продолжают посылать сообщения HELLO. Когда какой-либо маршрутизатор посылает такое сообщение, другие его получают и отмечают, что в локальной сети есть другой маршрутизатор. Когда они посылают следующее HELLO, они перечисляют там и своего нового соседа.
Когда период отказа маршрутизатора истекает, то маршрутизатор с наивысшим приоритетом и наибольшим идентификатором объявляет себя выделенным (а следующий за ним по приоритету маршрутизатор объявляет себя резервным выделенным маршрутизатором) и начинает синхронизировать свою базу данных с другими маршрутизаторами.
С этого момента времени база данных маршрутных объявлений каждого маршрутизатора может содержать информацию, полученную от маршрутизаторов других локальных сетей или из выделенных линий. Роб, например, вероятно получил информацию от Мило и Робина об их сетях, и он может передавать туда пакеты данных. Они содержат информацию о собственных связях маршрутизатора и объявления о связях сети.
Базы данных теперь синхронизированы с выделенным маршрутизатором, которым является Джон. Джон суммирует свою базу данных с каждой базой данных своих соседей - базами Фреда, Роба и Джеффа - индивидуально. В каждой синхронизирующейся паре объявления, найденные только в какой-либо одной базе, копируются в другую. Выделенный маршрутизатор, Джон, распространяет новые объявления среди других маршрутизаторов своей локальной сети. Например, объявления Мило и Робина передаются Джону Робом, а Джон в свою очередь передает их Фреду и Джеффри. Обмен информацией между базами продолжается некоторое время, и пока он не завершится, маршрутизаторы не будут считать себя работоспособными. После этого они себя таковыми считают, потому что имеют всю доступную информацию о сети.
Посмотрим теперь, как Робин вычисляет маршрут через сеть. Две из связей, присоединенных к его портам, представляют линии T-1, а одна - линию 56 Кб/c. Робин сначала обнаруживает двух соседей - Роба с метрикой 65 и Мило с метрикой 1785. Из объявления о связях Роба Робин обнаружил наилучший путь к Мило со стоимостью 130, поэтому он отверг непосредственный путь к Мило, поскольку он связан с большей задержкой, так как проходит через линии с меньшей пропускной способностью. Робин также обнаруживает транзитную локальную сеть с выделенным маршрутизатором Джоном. Из объявлений о связях Джона Робин узнает о пути к Фреду и, наконец, узнает о пути к маршрутизаторам Келли и Джеффу и к их тупиковым сетям.
После того, как маршрутизаторы полностью входят в рабочий режим, интенсивность обмена сообщениями резко падает. Обычно они посылают сообщение HELLO по своим подсетям каждые 10 секунд и делают объявления о состоянии связей каждые 30 минут (если обнаруживаются изменения в состоянии связей, то объявление передается, естественно, немедленно). Обновленные объявления о связях служат гарантией того, что маршрутизатор работает в сети. Старые объявления удаляются из базы через определенное время.
Представим, однако, что какая-либо выделенная линия сети отказала. Присоединенные к ней маршрутизаторы распространяют свои объявления, в которых они уже не упоминают друг друга. Эта информация распространяется по сети, включая маршрутизаторы транзитной локальной сети. Каждый маршрутизатор в сети пересчитывает свои маршруты, находя, может быть, новые пути для восстановления утраченного взаимодействия
Алгоритм Дейкстры для поиска кратчайшего пути в графе (используется в ospf)
Каждой вершине из V сопоставим метку — минимальное известное расстояние от этой вершины до a. Алгоритм работает пошагово — на каждом шаге он «посещает» одну вершину и пытается уменьшать метки. Работа алгоритма завершается, когда все вершины посещены.
Инициализация. Метка самой вершины a полагается равной 0, метки остальных вершин — бесконечности. Это отражает то, что расстояния от a до других вершин пока неизвестны. Все вершины графа помечаются как непосещённые.
Шаг алгоритма. Если все вершины посещены, алгоритм завершается. В противном случае, из ещё не посещённых вершин выбирается вершина u, имеющая минимальную метку. Мы рассматриваем всевозможные маршруты, в которых uявляется предпоследним пунктом. Вершины, в которые ведут рёбра из u, назовем соседями этой вершины. Для каждого соседа вершины u, кроме отмеченных как посещённые, рассмотрим новую длину пути, равную сумме значений текущей метки u и длины ребра, соединяющего u с этим соседом. Если полученное значение длины меньше значения метки соседа, заменим значение метки полученным значением длины. Рассмотрев всех соседей, пометим вершину u как посещенную и повторим шаг алгоритма.
Алгоритм работы протокола EIGRP. Метрики маршрута в EIGRP
Алгоритм работы протокола EIGRP. Восстановление после нарушений связи.
Метрика EIGRP
Метрика EIGRP основана на таких 5 компонентах (по умолчанию используются только два):
Bandwidth — наименьшая bandwidth между source и destination (используется по умолчанию);
Delay — cumulative interface delay всего пути;
Reliability — наихудший показатель надежности на всем пути, на основании keepalive;
Loading — наихудший показатель загрузки линка на всем пути, на основании packet rate и настроенной bandwidth на интерфейсе;
MTU — наименьшее MTU на всем пути. MTU включается в обновления EIGRP, но фактически не используется для подсчета метрики.
По умолчанию для подсчета метрики используются bandwidth и delay. Остальные критерии не рекомендуется использовать, так как это приведет к частым пересчетам маршрутов.
[править]Вычисление метрики маршрута
EIGRP подсчитывает метрику с использованием коэффициентов. По умолчанию значения коэффициентов такие: K1 = K3 = 1, K2 = K4 = K5 = 0.
Общая метрика вычисляется при помощи значений bandwidth (пропускной способности) и delay (задержки). Используется следующая формула для вычисления значения bandwidth :
bandwidth = (10000000/bandwidth(i)) * 256
Где bandwidth(i) является наименьшей пропускной способностью (bandwidth) из всех исходящих интерфейсов по пути в сеть назначения представленная в килобитах.
Формула для вычисления значения delay:
delay = delay(i) * 256
где delay(i) является суммой всех задержек (delays) сконфигурированных на исходящих интерфейсах по пути в сеть назначения в десятках микросекунд (microseconds). Задержка (delay) показываемая командой ip eigrp topology или show interface указана в микросекундах, соответственно это значение нужно поделить на 10 перед использованием в этой формуле.
EIGRP использует полученные значения при подсчете общей метрики.
При вычислении метрики, когда K5 = 0 (значение по умолчанию), используется такая формула:
Metric = (K1 * bandwidth) + [(K2 * bandwidth) / (256 - load)] + (K3 * delay)
Если значения коэффициентов K1, K2, K3 равны значениям по умолчанию, то формула превращается в такую:
Metric = bandwidth + delay
Если K5 не равно 0, то дополнительно выполняется такая операция:
Metric = metric * [K5 / (reliability + K4)]
Значения K-коэффициентов передаются в hello-пакетах. Обычно не рекомендуется изменять эти коэффициенты.
В протоколе EIGRP есть три основных этапа работы
Обнаружение соседних устройств. EIGRP-маршрутизаторы рассылают Hello-сообщения, чтобы обнаружить соседние маршрутизаторы и проверить их основные конфигурационные параметры
Обмен топологической информацией. Соседние (часто называемые смежными) устройства обмениваются полной информацией о топологии сети при включении, а впоследствии пересылают друг другу только частичные анонсы, содержащие информацию об изменениях в сетевой топологии
Выбор оптимальных маршрутов. Каждый EIGRP-маршрутизатор анализирует топологическую таблицу и выбирает из нее маршруты с наименьшей метрикой к каждой подсети
Протокол DHCP.
DHCP (англ. Dynamic Host Configuration Protocol — протокол динамической конфигурации узла) — это сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Данный протокол работает по модели «клиент-сервер». Для автоматической конфигурации компьютер-клиент на этапе конфигурации сетевого устройства обращается к так называемому серверу DHCP, и получает от него нужные параметры.Сетевой администратор может задать диапазон адресов, распределяемых сервером среди компьютеров. Это позволяет избежать ручной настройки компьютеров сети и уменьшает количество ошибок. Протокол DHCP используется в большинстве сетей TCP/IP.
DHCP является расширением протокола BOOTP, использовавшегося ранее для обеспечения бездисковых рабочих станций IP-адресами при их загрузке. DHCP сохраняет обратную совместимость с BOOTP.