Введение
В компьютерных сетях таблица маршрутизации, или база маршрутной информации (RIB), — это таблица данных, хранящаяся в маршрутизаторе или сетевом узле, содержащая перечень маршрутов к конкретным сетевым адресам назначения, а в некоторых случаях — метрики (расстояния), связанные с этими маршрутами. Таблица маршрутизации содержит информацию о топологии сети, непосредственно прилегающей к данному узлу. Построение таблиц маршрутизации является основной задачей протоколов маршрутизации. Статические маршруты — это записи, заданные вручную, а не полученные в результате работы протоколов маршрутизации и процедур обнаружения топологии сети.
In computer networking, a routing table, or routing information base (RIB), is a data table stored in a router or a network host that lists the routes to particular network destinations, and in some cases, metrics (distances) associated with those routes. The routing table contains information about the topology of the network immediately around it. The construction of routing tables is the primary goal of routing protocols. Static routes are entries that are fixed, rather than resulting from routing protocols and network topology discovery procedures.
Обзор
Таблица маршрутизации аналогична карте доставки при доставке посылок. Каждый раз, когда узлу необходимо отправить данные другому узлу в сети, он должен сначала знать, куда их отправить. Если узел не может напрямую соединиться с узлом назначения, он должен отправить данные через другие узлы по маршруту к узлу назначения. Каждый узел должен отслеживать, каким образом доставлять различные пакеты данных, и для этого он использует таблицу маршрутизации. Таблица маршрутов — это база данных, которая отслеживает пути, подобно карте, и использует их для определения направления пересылки трафика. Таблица маршрутизации — это файл данных в оперативной памяти, используемый для хранения информации о маршрутах к непосредственно подключенным и удаленным сетям. Узлы также могут обмениваться содержимым своих таблиц маршрутизации с другими узлами. Основная функция маршрутизатора — пересылать пакет в направлении его сети назначения, то есть целевого IP-адреса пакета. Для этого маршрутизатору необходимо искать информацию о маршрутизации, хранящуюся в его таблице маршрутизации. Таблица маршрутизации содержит соответствия между сетью и следующим узлом (next hop). Эти соответствия сообщают маршрутизатору, что до определенного пункта назначения можно оптимально добраться, отправив пакет конкретному маршрутизатору, который является следующим узлом на пути к конечному пункту назначения. Соответствие следующему узлу также может быть исходящим или выходным интерфейсом к конечному пункту назначения. При маршрутизации по принципу «от узла к узлу» (hop-by-hop routing) каждая таблица маршрутизации содержит список адресов следующего устройства на пути к каждому доступному пункту назначения: следующего узла. При условии, что таблицы маршрутизации согласованы, простого алгоритма пересылки пакетов следующему узлу назначения достаточно для доставки данных в любую точку сети. Маршрутизация по принципу «от узла к узлу» является фундаментальной характеристикой IP-уровня Интернета и сетевого уровня OSI. Когда интерфейс маршрутизатора конфигурируется с IP-адресом и маской подсети, этот интерфейс становится хостом в подключенной сети. Прямо подключенная сеть — это сеть, к которой непосредственно подключен один из интерфейсов маршрутизатора. Сетевой адрес и маска подсети интерфейса, а также тип и номер интерфейса, заносятся в таблицу маршрутизации как непосредственно подключенная сеть. Удаленная сеть — это сеть, до которой можно добраться только путем отправки пакета другому маршрутизатору. Записи в таблице маршрутизации для удаленных сетей могут быть динамическими или статическими. Динамические маршруты — это маршруты к удаленным сетям, которые маршрутизатор изучил автоматически с помощью протокола динамической маршрутизации. Статические маршруты — это маршруты, которые администратор сети настроил вручную. Таблицы маршрутизации также являются ключевым аспектом определенных операций безопасности, таких как unicast reverse path forwarding (uRPF). В этой технике, которая имеет несколько вариантов, маршрутизатор также ищет в таблице маршрутизации исходный адрес пакета. Если обратного маршрута к исходному адресу не существует, пакет считается поврежденным или участвующим в сетевой атаке и отбрасывается.
Трудности
Необходимость записи маршрутов к большому количеству устройств при ограниченном объеме памяти хранения является серьезной проблемой при построении таблицы маршрутизации. В Интернете в настоящее время доминирующей технологией агрегации адресов является схема сопоставления префиксов на основе побитового анализа, известная как маршрутизация между доменами без классов (CIDR). Для контроля размера таблицы маршрутизации также могут использоваться суперсети.
Таблица пересылки
Таблицы маршрутизации обычно не используются напрямую для пересылки пакетов в современных архитектурах маршрутизаторов; вместо этого они служат для генерации информации, необходимой для создания более простой таблицы пересылки. Эта таблица пересылки содержит только те маршруты, которые алгоритм маршрутизации выбрал как предпочтительные для пересылки пакетов. Она часто представлена в сжатом или предварительно скомпилированном формате, оптимизированном для аппаратного хранения и поиска. Такая архитектура маршрутизатора разделяет функцию управления, реализуемую таблицей маршрутизации, и функцию пересылки, реализуемую таблицей пересылки. Это разделение плоскостей управления и пересылки обеспечивает непрерывную высокопроизводительную пересылку.