Hello! Кто здесь?
Первое. При подключении сети, маршрутизатор первым делом должен "познакомиться" со своими соседями. Для этого он рассылает через все свои физические интерфейсы специальные пакеты с приветствием HELLO. Получив такой пакет, соседний узел должен ответить, сообщив данные о себе.
Второе. Узнав данные о соседях, маршрутизатор принимается за второй пункт программы - тестирование каналов связи с целью выяснения метрики каждого канала. Под метрикой может пониматься пропускная способность, время задержки, надежность, загрузка канала.
Пропускная способность – аппаратная характеристика (теоретическая скорость).
Надежность - количество ошибок на единицу переданной информации.
Задержку канала можно определить, послав специальный ECHO-пакет, который принимающая сторона должна немедленно отправить обратно. Разделив время отклика пополам, маршрутизатор вычисляет приблизительную величину задержки канала.
Загрузку канала также несложно измерить. Однако ответ на вопрос о том, как использовать показатель загруженности канала при вычислении метрики, отнюдь не однозначен. Рассмотрим небольшой пример. При наличии нескольких альтернативных путей до точки назначения маршрутизатор, оценив загруженность каждого из них, переключает трафик на канал с меньшей загрузкой. Тем самым он максимально использует свободный канал, что вполне логично. Во время следующего измерения метрик предпочтение может быть отдано уже другому каналу, через который трафик уже не идет и который, следовательно, теперь менее загружен. В результате трафик будет переключен на него. Это приводит к тому, что трафик постоянно переводится с одного канала на другой, что, естественно, не способствует стабильности в работе сети.
Хороший протокол должен уметь распределять нагрузку по нескольким каналам. Современные протоколы маршрутизации успешно справляются с этой задачей.
Рисунок 4. Обмен пакетами с объявлениями о состоянии каналов.
Третье. Шаг номер три в программе маршрутизатора состоит в сообщении полученных знаний остальным. Информация о каналах должна быть разослана соседям. Однако пакеты с объявлениями о состоянии каналов (Link State Advertisement, LSA) могут затеряться при транспортировке или прибыть в ином порядке. Для того чтобы получатель мог разобраться в пришедшей информации, каждый пакет с объявлением о состоянии каналов снабжается полями:
source (адрес отправителя),
sequence number (номер пакета в последовательности отправленных сообщений)
age (возраст) (см. Рисунок 4).
Получив пакет LSA, маршрутизатор проверяет пару (source, sequence), что позволяет отбросить устаревшие и дублированные объявления. Поле age задает время, по истечении которого не приславший новых объявлений узел считается недоступным.
В процессе работы маршрутизатора пакеты с объявлениями маршрутов рассылаются обычно лишь в случае каких-либо изменений в сети. В остальное же время протоколы состояния канала молчат и не загружают каналы служебной информацией, лишь изредка обмениваясь небольшими HELLO-пакетами.
Четвертое. Обмен информацией осуществляется с помощью веерной рассылки (flooding), т. е., получив пакет, маршрутизатор сохраняет копию в своей базе данных и посылает пакет дальше всем остальным соседям. В итоге пакет, отправленный одним из узлов сети, обязательно получат все остальные маршрутизаторы. В этом ключевое отличие данного алгоритма от алгоритма вектора расстояния, в котором каждый узел мог общаться только с непосредственно подключенными к нему маршрутизаторами, что часто приводит к эффекту "испорченного телефона", когда, не разобравшись в топологии, маршрутизатор сбивает с толку соседей.
Протокол состояния канала дает возможность каждому узлу самостоятельно обменяться информацией со всеми маршрутизаторами и получить представление о топологии сети. Именно поэтому данному алгоритму не свойственны проблемы возрастания до бесконечности, а жесткие ограничения на диаметр сети отсутствуют.
Узким местом такого подхода является необходимость обязательной синхронизации баз данных всех маршрутизаторов в пределах автономной системы. Если разные узлы будут по-разному представлять себе топологию сети, с которой они работают, то это приведет к образованию петель и к другим проблемам.
В конкретных протоколах данные поля могут носить другие названия, в протоколе OSPF (из стека TCP/IP), например, поля age и sequence носят названия DeadInt и DD Sequence, а протокол IS-IS даже использует специальный тип пакета - порядковый пакет. Однако, независимо от протокола, наличие подобной информации обязательно для надежной работы алгоритма предпочтения кратчайшего пути.
Пятое. После получения информации от всех узлов маршрутизатор может построить "карту" сети. Для этого он создает ориентированный граф, отражающий топологию сети. Соединение "точка-точка" между узлами представляется на графе парой дуг (по одной в каждом направлении), причем стоимости этих дуг могут отличаться друг от друга. Сети с множественным доступом (например, локальные сети) отображаются вершинами для каждого узла сети и дополнительной вершиной - "центром" этой сети. Дуги графа от "центра" до узлов сети не отображаются (см. Рисунок 5).
Имея в памяти такой граф, маршрутизатор применяет алгоритм Дейкстры для выбора пути с наименьшей суммарной стоимостью до каждой из вершин графа (т. е. до каждого узла сети). По результатам этих вычислений и строится таблица маршрутизации, используемая далее при переключении трафика.
Рисунок 5. Сеть и ее представление в виде графа.
- Вопросы к предварительной сдаче экзамена.
- Тема 1.Основные понятия.
- Соединения и каналы.
- Типы связи
- Протоколы и службы.
- Уровни модели osi
- Разделение каналов. Мультиплексирование.
- Стек протоколов tcp/ip. История и перспективы стека tcp/ip
- Структура стека tcp/ip. Краткая характеристика протоколов
- Тема 3.Каким образом tcp обеспечивает надежную и быструю доставку. Сегменты tcp
- Организация клиент-серверной связи
- Порты и установление tcp-соединений
- Концепция квитирования
- Реализация скользящего окна в протоколе tcp
- Только положительные квитанции
- Нумерация байт, а не сегментов
- Выбор тайм-аута
- Реакция на перегрузку сети
- Формат сообщений tcp (для ознакомительного чтения)
- Тема 4.Адресация в ip-сетях. Типы адресов: физический (mac-адрес), сетевой (ip-адрес) и символьный (dns-имя).
- Три основных класса ip-адресов. Дополнительные классы.
- Соглашения о специальных адресах: broadcast, multicast, loopback
- Выбор адреса
- Тема 5.Dns и dhcp - серверы. Отображение физических адресов на ip-адреса: протоколы arp и rarp
- Отображение символьных адресов на ip-адреса: служба dns
- Автоматизация процесса назначения ip-адресов узлам сети - протокол dhcp
- Тема 6.Развитие стека tcp/ip: протокол iPv.6
- Адресация в iPv6
- Тема 7.Топологии сетей. Базовые сетевые технологии. Ethernet. Типы сетей
- Топологии сетей.
- Шинная топология.
- Кольцевая топология.
- Топология звезды.
- Гибридная топология.
- Ячеистая топология.
- Архитектуры сетей.
- Адресация Ethernet'а
- Формат кадра Ethernet'а
- Arp, rarp – протоколы. Чем отличаются?
- Подсети
- Как назначать номера сетей и подсетей. Маска подсети.
- Тема 8.Базовые сетевые технологии. Token Ring.
- Скоростные сетевые архитектуры.
- Ethernet 100 Мбит/с.
- Тема 9.Сетевая среда. Кабельные системы. Кабели. Витая пара. Коаксиальный кабель. Оптоволоконный кабель.
- Кабельные системы локальных вычислительных сетей
- Рекомендации по применению кабелей
- Проблемы монтажа кабельных систем
- Тема 10.Основные типы сетевых устройств. Сетевые адаптеры
- Репитеры
- Концентраторы
- Правило «5-4-3-2-1».
- Коммутаторы
- Известны четыре способа коммутации в локальных сетях:
- Три типа функциональной структуры коммутаторов
- Механизмы снижения интенсивности трафика
- Коммутаторы делятся на 4 категории:
- Мосты. Виды (по алгоритму работы). Подвиды «прозрачных» мостов.
- Маршрутизаторы
- Брандмауэры (сетевые фильтры).
- Заключение. Продвижение кадров, пакетов через сетевые устройства.
- Тема 11.Современные протоколы маршрути-зации
- Протоколы вектора расстояния
- Метод расщепления горизонта
- Метод временного отказа от приема сообщений
- Механизм принудительных объявлений
- Метод корректировки отмены маршрута
- Алгоритм диффузионного обновления
- Что такое хорошо и что такое плохо?
- Протокол состояния канала
- Hello! Кто здесь?
- Алгоритм Дейкстры
- Ненавязчивый сервис
- Тема 12.Неоднородные сети. Методика расчета конфигурации сети Ethernet
- Расчет pdv
- Расчет pvv
- Тема 13.Сетевые операционные системы Структура сетевой операционной системы
- Одноранговые сетевые ос и ос с выделенными серверами
- Прикладные протоколы. Ftp
- Прикладные протоколы. Telnet
- Прикладные протоколы. Snmp
- Прикладные протоколы. Smtp, pop. Nntp
- Прикладные протоколы. Icmp.
- Что такое url?
- Url образуют подмножество более общей схемы наименования uri.
- Тема 14.Требования к сети. Архитектура сети. Выбор технологии. Требования к сети.
- Критерии выбора технологии:
- Архитектура сети.
- Оценка трафика сети. Разделение на подсети.
- Подсети
- Как назначать номера сетей и подсетей. Маска подсети.
- Проект сети.
- Непрерывность работы сети. Архивы, запасные серверы, …
- Логическая структура сети. Сетевые ос. Сетевые протоколы
- Размер пакета, ячейки, кадры
- Раут - маршрутизация в подсетях.
- Тема 15.Php и другие серверные технологии.
- Динамические технологии на стороне клиента.
- Динамические технологии на стороне сервера.
- Тема 16.Распределенная обработка. Безопасность. Эффективность. Модель распределенной обработки информации.
- Безопасность информации. Базовые функциональные профили. Полные функциональные профили. Методы оценки эффективности информационных сетей.
- Сетевые программные и технические средства информационных сетей.