Экстернат |
Протоколы маршрутизации (RIP, OSPF и BGP)
Типы пакетов
BGP использует четыре различных типа сообщений: открытия, обновления, дежурные и уведомления.
Сообщение "открытие"
Для того чтобы создать информацию об окружении, маршрутизатор, выполняющий протокол BGP, устанавливает TCP-соединение с соседями и посылает сообщение "открытие". Если сосед согласно политике принимает отношения соседства, он отвечает дежурным сообщением, которое означает, что отношения между двумя маршрутизаторами установлены. Описание формата "открытие" см. на рис. 8.28
Поля сообщения "открытие" приведены ниже.
Версия. Это поле 1 байт, определяющее версию BGP. Текущая версия — 4.
Моя автономная система. Это поле 2 байта, определяющее номер автономной системы.
Время удержания. Это поле 2 байта, определяющее максимальное число секунд, которые могут пройти, прежде чем одна из сторон получит дежурное сообщение или сообщение обновления от другой стороны. Если маршрутизатор не получает одно из этих сообщений в период времени удержания, он решает, что вторая сторона вышла из строя.
BGP-идентификатор. Это поле 4 байта, определяющее маршрутизатор, который прислал сообщения "открытие". Маршрутизатор обычно использует для этой цели один из своих адресов IP (потому что он уникален).
Длина параметра опции. Сообщение "открытие" может содержать некоторые параметры опции. Если это так, то здесь содержится 1 байт, определяющий длину всех параметров опции. Если параметров опции нет, значение этого поля — ноль.
Параметры опции. Если значение длины параметров опции не равно нулю, это означает, что имеются некоторые параметры опций. Каждый параметр опции сам имеет два подполя: длина параметра и значение параметра.
Единственный параметр опции, определенный до сих пор, — аутентификация.
Сообщение "обновление"
Сообщение "обновление" — основа протокола BGP — используется маршрутизатором для изменения пункта назначения, который был заявлен раньше, объявления маршрута к новому конечному пункту или замены обоих пунктов назначения. Заметим, что BGP может отозвать несколько пунктов назначений, которые были переданы раньше, но может известить только один новый пункт назначения в одном сообщении. Формат обновленного сообщения показан на рис. 8.29.
Поля сообщения обновления перечислены ниже.
Длина отзываемых маршрутов. Это поле определяет длину следующего за ним поля.
Отзываемый маршрут. Это поле — список всех маршрутов, которые должны быть удалены из предыдущего объявленного списка.
Длина атрибутов пути. Это поле 2 байта определяет длину следующего поля.
Атрибуты пути. Это поле определяет атрибуты пути (маршрута) к сети, которая достижима и объявлена в этом маршруте.
Информация достижимости сетевого уровня. Это поле определяет сеть, которая заявлена этим сообщением. Оно имеет длину поля и префикс IP-адреса. Длина определяет число бит в префиксе. Префикс определяет общую часть сетевого адреса. Например, 153.18.7.0/24.
Префикс 153.18.7, длина префикса – это 24 бита. Это означает, что BGP4 поддерживает классическую адресацию и CIDR (Classes InterDomain Routing – бесклассовая междоменная маршрутизация).
Дежурное сообщение
Маршрутизатор (называемый равный – peers на языке BGP), выполняющий BGP-протоколы, обменивается регулярно с соседями дежурными сообщениями (прежде чем истечет время удержания) для того, чтобы сказать друг другу, что они в режиме ожидания. Дежурные сообщения, с типом сообщений 3 (поле Тип = 3), содержат только общий заголовок, показанный на рисунке 8.28.
Сообщение уведомления
Сообщение уведомления посылается маршрутизатором всегда, когда обнаружены признаки ошибки или маршрутизатор завершает соединение. Формат сообщения показан на рис. 8.30
Поля, содержащиеся в поле извещения, следующие:
Код ошибки. Это поле 1 байт, определяющее категорию ошибки ( табл. 8.5.).
Подкод ошибки. Это поле 1 байт дополнительно определяет тип ошибки в каждой категории.
Данные об ошибке. Это поле может быть использовано, чтобы дать больше диагностической информации об ошибке.
BGP инкапсулируются в TCP-сегменты, использующие закрепленный порт 179. Это означает, что не нужен контроль ошибок и управление потоком. Когда TCP-соединение открывается, обмен сообщениями обновления, дежурными и уведомления продолжается до тех пор, пока не будет послано сообщение уведомления.