Разница между таблицей маршрутизации и пересылки

Ответы:

16

Маршрутизация - это решение, по какому интерфейсу должен быть отправлен пакет. Это решение должно быть принято и для локально созданных пакетов. Таблицы маршрутизации содержат сетевые адреса и связанный интерфейс или nexthop. Это относится ip routeи к ip rule(в контексте Linux).

Пересылка относится к пакетам, которые достигают системы, но не предназначены для этой системы. Пересылка - это решение системы: «Я беру пакет и пытаюсь доставить его к месту назначения». Вместо того, чтобы просто уронить его. «пересылка» - это общий термин в контексте фильтров пакетов. Netfilter в Linux имеет три цепочки в своей базовой таблице: INPUT, OUTPUT и FORWARD. Эта цепочка просто принимает решение "Должен ли этот пакет быть переслан или отброшен?" (если пересылка обычно включена в системе; снова Linux: / proc / sys / net / ipv4 / ip_forward).

Хауке Лагинг
источник
Что из: cat / proc / sys / net / ipv4 / ip_forward против cat / proc / sys / net / ipv4 / conf / eth0 / forwarding?
JohnyTex
10

На большинстве систем - с одним сетевым подключением - они будут одинаковыми. Однако на маршрутизаторе они будут отличаться.

Таблица маршрутизации содержит все маршруты, которые маршрутизатор узнает от своих коллег и соседей, используя протокол динамической маршрутизации, такой как OSPF или BGP. Каждый маршрут сортируется и оценивается на основе параметров используемого протокола маршрутизации, а подмножество записей таблицы маршрутизации, которые являются «лучшими», заносятся в таблицу пересылки. Когда маршрутизатор получает пакет, он ищет адрес назначения в таблице переадресации, чтобы решить, через какой интерфейс отправить пакет и каким должен быть адрес следующего перехода. По мере изучения новых маршрутов, включения или выключения интерфейсов или изменений политики, вносимых в схему ранжирования, таблица маршрутизации переоценивается и таблица пересылки обновляется.

Таблицы маршрутизации обычно хранятся в оперативной памяти; Таблицы пересылки на высокопроизводительном оборудовании будут распределены по линейным картам (в модульных системах) и хранятся в высокоскоростной TCAM. Обычно в TCAM может быть ограничено число маршрутов; когда таблица пересылки превышает емкость TCAM, пакеты могут быть отброшены или маршрутизированы в программном обеспечении (что значительно медленнее).

techieb0y
источник
4

Прежде всего, с моей точки зрения, я думаю, что вы должны сначала четко понять различие между пересылкой и маршрутизацией , которой часто пренебрегают. Согласно книге « Компьютерные сети на странице 240» Лэри Л. Петерсона , переадресация - это последовательность действий, которые маршрутизатор предпримет после получения пакета, включая просмотр его адреса назначения, просмотр таблицы и отправку пакета в направлении, определяемом этот стол. Однако под маршрутизацией здесь понимается процесс, с помощью которого создаются таблицы пересылки.

Возвращаясь к исходному вопросу, мы можем сделать вывод, что, хотя мы можем сохранить таблицу пересылки и таблицу маршрутизации в одних и тех же структурах, существует много причин для их разделения. Таблица пересылки , как правило , должна быть построена так, чтобы оптимизировать процесс поиска до адреса при пересылке пакета, который содержит больше информации , такие как MAC - адрес. Напротив, таблица маршрутизации обычно фокусируется на вычислении изменений в топологии, и записи в таблице маршрутизации обычно более кратки, включая только IP следующего перехода.

AaronChen
источник
-1

Таблица маршрутизации содержит весь путь к другому назначению (один и тот же пункт назначения может иметь 2 или более различных путей)

но

Таблица пересылки содержит только лучший путь к каждому пункту назначения (только один путь для каждого пункта назначения)

Souhaieb
источник
Я не думаю, что этот ответ что-то добавляет к ответам уже здесь. Я тоже не уверен, что это правильно.
MadHatter