В сетевой маршрутизации плоскость управления — это часть архитектуры маршрутизатора , которая занимается установлением топологии сети , или информация в таблице маршрутизации , определяющая, что делать с входящими пакетами . Функции плоскости управления, такие как участие в протоколах маршрутизации , выполняются в элементе управления архитектурой. [1] В большинстве случаев таблица маршрутизации содержит список адресов назначения и исходящие интерфейсы, связанные с каждым из них. Логика плоскости управления также может идентифицировать определенные пакеты, которые должны быть отброшены, а также предпочтительную обработку определенных пакетов, для которых высокое качество обслуживания определяется такими механизмами, как дифференцированные услуги .
В зависимости от конкретной реализации маршрутизатора может существовать отдельная информационная база пересылки , заполняемая плоскостью управления, но используемая высокоскоростной плоскостью пересылки для поиска пакетов и принятия решения о том, как с ними обращаться.
В вычислениях плоскость управления — это часть программного обеспечения, которая настраивает и отключает плоскость данных. [2] Напротив, плоскость данных — это часть программного обеспечения, которое обрабатывает запросы данных. [3] Плоскость данных также иногда называют плоскостью пересылки.
Это различие оказалось полезным в сетевой области, где оно возникло, поскольку оно разделяет задачи: плоскость данных оптимизирована для скорости обработки, а также для простоты и регулярности. Плоскость управления оптимизирована для обеспечения возможности настройки, обработки политик, обработки исключительных ситуаций и в целом для облегчения и упрощения обработки плоскости данных. [4] [5]
Концептуальное отделение плоскости данных от плоскости управления осуществлялось уже много лет. [6] Ранним примером является Unix , где основными операциями с файлами являются открытие, закрытие для плоскости управления и чтение-запись для плоскости данных. [7]
Основная функция плоскости управления — принятие решения о том, какие маршруты попадают в основную таблицу маршрутизации. «Основной» относится к таблице, содержащей активные одноадресные маршруты. Для многоадресной маршрутизации может потребоваться дополнительная таблица маршрутизации для многоадресных маршрутов. Некоторые протоколы маршрутизации, например IS-IS , OSPF и BGP , поддерживают внутренние базы данных возможных маршрутов, которые активируются в случае сбоя маршрута или изменения политики маршрутизации.
Несколько разных источников информации могут предоставлять информацию о маршруте к данному пункту назначения, но маршрутизатор должен выбрать «лучший» маршрут для установки в таблицу маршрутизации. В некоторых случаях может существовать несколько маршрутов одинакового «качества», и маршрутизатор может установить их все и распределить нагрузку между ними.
Существует три основных источника информации о маршрутизации:
Маршрутизаторы пересылают трафик, который поступает на входной интерфейс и уходит на выходной интерфейс, подвергаясь фильтрации и другим локальным правилам. Хотя маршрутизаторы обычно пересылают данные с одного физического интерфейса (например, Ethernet , последовательного ) на другой физический интерфейс, на физическом интерфейсе также можно определить несколько логических интерфейсов. Например, физический интерфейс Ethernet может иметь логические интерфейсы в нескольких виртуальных локальных сетях , определенных заголовками VLAN IEEE 802.1Q .
Когда интерфейс имеет адрес, настроенный в подсети , например 192.0.2.1 в подсети 192.0.2.0/24 (т. е. маска подсети 255.255.255.0), и этот интерфейс считается маршрутизатором «активным», маршрутизатор, таким образом, имеет маршрут с прямым подключением к 192.0.2.0/24. Если протокол маршрутизации предлагает маршрут другого маршрутизатора в ту же подсеть, программа установки таблицы маршрутизации обычно игнорирует динамический маршрут и предпочитает маршрут с прямым подключением.
На маршрутизаторе также могут быть программные интерфейсы, которые он обрабатывает так, как если бы они были локально подключены. Например, большинство реализаций имеют «нулевой» программно-определяемый интерфейс. Пакеты, имеющие этот интерфейс в качестве следующего перехода, будут отброшены, что может быть очень эффективным способом фильтрации трафика. Маршрутизаторы обычно могут маршрутизировать трафик быстрее, чем проверять его и сравнивать с фильтрами, поэтому, если критерием отбрасывания является адрес назначения пакета, «черная дыра» трафика будет более эффективной, чем явные фильтры.
Другие программно-определяемые интерфейсы, которые считаются напрямую подключенными, пока они активны, представляют собой интерфейсы, связанные с протоколами туннелирования , такими как инкапсуляция общей маршрутизации (GRE) или многопротокольная коммутация по меткам (MPLS). Интерфейсы Loopback — это виртуальные интерфейсы, которые считаются интерфейсами с прямым подключением.
Правила конфигурации маршрутизатора могут содержать статические маршруты. Статический маршрут как минимум имеет адрес назначения, длину префикса или маску подсети, а также определение того, куда отправлять пакеты для этого маршрута. Это определение может относиться к локальному интерфейсу маршрутизатора или к адресу следующего перехода, который может находиться на дальнем конце подсети, к которой подключен маршрутизатор. Адрес следующего перехода также может находиться в подсети, которая подключена напрямую, и прежде чем маршрутизатор сможет определить, пригоден ли статический маршрут для использования, он должен выполнить рекурсивный поиск адреса следующего перехода в локальной таблице маршрутизации. Если адрес следующего перехода достижим, статический маршрут можно использовать, но если следующий переход недоступен, маршрут игнорируется.
Статические маршруты также могут иметь факторы предпочтения, используемые для выбора лучшего статического маршрута к тому же пункту назначения. Одно приложение называется плавающим статическим маршрутом , где статический маршрут менее предпочтителен, чем маршрут из любого протокола маршрутизации. Статический маршрут, который может использовать коммутируемое соединение или другую медленную среду, активируется только тогда, когда протокол(ы) динамической маршрутизации не могут обеспечить маршрут к месту назначения.
Статические маршруты, которые более предпочтительны, чем любой динамический маршрут, также могут быть очень полезны, особенно при использовании принципов организации трафика, чтобы определенный трафик проходил по определенному пути с заданным качеством обслуживания.
См. протоколы маршрутизации . Менеджер таблицы маршрутизации в соответствии с правилами реализации и конфигурации может выбирать конкретный маршрут или маршруты из объявленных различными протоколами маршрутизации.
Различные реализации имеют разные наборы предпочтений для информации о маршрутизации, и они не стандартизированы среди IP-маршрутизаторов. Справедливости ради стоит сказать, что подсети на активных интерфейсах, подключенных напрямую, всегда предпочтительнее. Однако помимо этого будут и различия.
Разработчики обычно имеют числовое предпочтение, которое Cisco называет «административным расстоянием», при выборе маршрута. Чем ниже предпочтение, тем более желателен маршрут. Реализация Cisco IOS [8] делает внешний BGP наиболее предпочтительным источником информации о динамической маршрутизации, тогда как Nortel RS [9] делает наиболее предпочтительным внутриобластной OSPF.
Общий порядок выбора маршрутов для установки следующий:
Более подробно см. в плоскости пересылки , но каждая реализация имеет свои собственные средства обновления базы информации о пересылке (FIB) новыми маршрутами, установленными в таблице маршрутизации. Если FIB находится во взаимно однозначном соответствии с RIB, новый маршрут устанавливается в FIB после того, как он находится в RIB. Если FIB меньше, чем RIB, и FIB использует хеш-таблицу или другую структуру данных, которую нелегко обновить, существующий FIB может быть признан недействительным и заменен новым, вычисленным на основе обновленного RIB.
Многоадресная маршрутизация основана на одноадресной маршрутизации. Каждая группа многоадресной рассылки, к которой может маршрутизироваться локальный маршрутизатор, имеет запись в таблице многоадресной маршрутизации со следующим прыжком для группы, а не для конкретного пункта назначения, как при одноадресной маршрутизации.
Могут существовать статические маршруты многоадресной рассылки, а также изучение динамических маршрутов многоадресной рассылки из такого протокола, как многоадресная рассылка, независимая от протокола (PIM).