Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Center
Section
Column
width30%

Table 2a - The R1 routing table example

Column
width30%

Table 2b - The R2 routing table example

Column
width30%

Table 2c - The R3 routing table example

Route sourceDistance
directly connected networks0
static route1
External BGP20
OSPF110
RIP120
ODR160

Table 3 - Distance values depending on route source

Использование таблицы маршрутизации

На пути следования пакета каждый из маршрутизаторов применяет алгоритм использования таблицы маршрутизации. Этот алгоритм выглядит следующим образом:

  • Этап 1: адрес получателя проверяется на принадлежность сетям, записи о которых присутствуют в таблице маршрутизации.
  • Этап 2: среди записей, удовлетворяющих требованию этапа 1, выбирается "наиболее узкий маршрут", т.е. запись с максимальным значением маски сети. Например, маска /24 уже, чем /8.
  • Этап 3: если на этапе 2 отобрано несколько записей таблицы маршрутизации с одинаковыми масками сети, выполняется сравнение параметра Distance. Чем меньше значение этого параметра, тем выше приоритет маршрута.
  • Этап 4: если на этапе 3 отобрано несколько записей таблицы маршрутизации с одинаковыми значениями Distance, выполняется сравнение метрик. Чем меньше значение метрики, тем выше приоритет маршрута.
  • Этап 5: если ни одна из записей таблицы маршрутизации не удовлетворяет требованиям этапа 1 и отсутствует маршрут по умолчанию, то пакет отбрасывается.
Примеры использования таблицы маршрутизации

Рассмотрим примеры использования таблицы маршрутизации в различных сценариях (рис. 6а-в).

...

Routing table management

Each router along the packet path has the routing table management algorithm. The algorithm is following:

  • Step 1: the destination address is checked for belonging to networks, which entries are in the routing table.
  • Step 2: if few records satisfy the requirement of step 1, the "narrowest route" is selected, i.e. entry with maximum netmask value. For example, mask /24 is narrower than /8.
  • Step 3: if at the step 2 there are several routing table entries with the same network masks, the Distance parameter is compared. The lower the value of this parameter, the higher the route priority.
  • Step 4: if at the step 3 there are several entries in the routing table with the same Distance values, the metrics are compared. The lower the metric value, the higher the route priority.
  • Step 5: if there is no entry in the routing table that meets the requirements of step 1 and there is no default route, the packet is dropped.
Routing tables management examples

Let's look at the examples of the routing table management in various scenarios (Figure 6a-c).

Scenario 1 - connecting PC1 to an FTP server running on PC2 (source - 192.168.1.10, получатель destination - 192.168.1.20)

  • Этап 1а: ПК1 формирует пакет с адресом получателя ПК2 и передаёт его на обработку канальному уровню сетевого интерфейса.
  • Этап 1б: Канальный уровень сетевого интерфейса ПК1 проверяет принадлежность получателя к сети источника. Поскольку ПК1 и ПК2 принадлежат одной сети, то в заголовке Ethernet устанавливается MAC-адрес сетевого интерфейса ПК2. Сформированный кадр отправляется Коммутатору1.
  • Этап 1в: Коммутатор передаёт кадр ПК2 в соответствии с таблицей коммутации.

...

  • Step 1a: PC1 generates a packet with the destination address of PC2 and transfers it for processing to the L2 layer of the network interface.
  • Step 1b: The L2 layer of the PC1 network interface verifies that the destination belongs to the source network. Since PC1 and PC2 belong to the same network, the the PC2 network interface MAC address is set in the Ethernet header. The generated frame is sent to Switch1.
  • Step 1c: The switch transmits the PC2 frame according to the switching table.

Data are transmitted within the same network using switching technologies, router R1 does not participate in this process.

Center

Рисунок 6а - Передача пакета от ПК1 к ПК2

...

Figure 6a - Packet transmission from PC1 to PC2


Scenario 2 - checking the availability of PC3 from PC1 (source - 192.168.1.10, получатель destination - 172.16.3.2)

  • Этап 1а: ПК1 формирует пакет с адресом получателя ПК3 и передаёт его на обработку канальному уровню сетевого интерфейса.
  • Этап 1б: Канальный уровень сетевого интерфейса ПК1 принадлежность получателя к сети источника. ПК1 и ПК3 принадлежат разным сетям, поэтому в качестве MAC-адреса получателя в заголовке Ethernet указывается MAC-адрес маршрутизатора R1. Сформированный кадр отправляется Коммутатору 1.
  • Этап 1в: Коммутатор1 передаёт кадр R1 в соответствии с таблицей коммутации.
  • Этап 2а: Маршрутизатор R1 анализирует таблицу маршрутизации: адресу получателя удовлетворяют две записиStep 1a: PC1 generates a packet with the PC3 destination address and sends it for processing to the L2 layer of the network interface.
  • Step 1b: The L2 layer of the PC1 network interface verifies that the destination belongs to the source network. PC1 and PC3 belong to different networks, so the R1 router MAC address is set in the Ethernet header as the destination MAC address. The generated frame is sent to Switch1.
  • Step 1c: Switch1 transmits frame to R1 in accordance with the switching table.
  • Step 2a: Router R1 goes through the routing table: two entries match the destination address, 172.16.3.0/28 и and 172.16.3.0/30. Т.к. маска Since mask /30 уже, чем is narrower than /28, то R1 будет перенаправлять пакет в сеть R1 will redirect the packet to the 172.16.3.0/30 . Обратите внимание, если бы получателем пакета было устройство ПК4, то использовалась бы другая запись в таблице маршрутизации, несмотря на то, что ПК3 и ПК4 относятся к одной сети.
  • Этап 2б: Маршрутизатор R1 передаёт кадр Ethernet маршрутизатору R3. IP-адреса источника и получателя остаются без изменений, MAC-адрес источника устанавливается равным MAC-адресу интерфейса eth2 R1, MAC-адрес получателя - MAC-адресу интерфейса eth3 R3.
  • Этап 2в: Коммутатор передаёт полученный Ethernet-кадр маршрутизатору R3.
  • Этап 3а: Маршрутизатор R3 анализирует таблицу маршрутизации: адресу получателя удовлетворяет сеть 172network. Note that if the packet destination were PC4, a different entry in the routing table would be used, even though PC3 and PC4 belong to the same network.
  • Step 2b: R1 router forwards the Ethernet frame to R3 router. Source and destination IP addresses remain unchanged, as a source MAC address is set the eth2 R1 MAC address, as destination MAC address - the eth3 R3 MAC address.
  • Step 2c: The switch forwards the received Ethernet frame to router R3.
  • Step 3a: Router R3 goes through the routing table: the destination address matches the 172.16.3.0/28 network.
  • Этап 3бStep 3b: Маршрутизатор Router R3 отправляет Ethernet-кадр в направлении Коммутатора3. IP-адреса источника и получателя остаются без изменений, MAC-адрес источника устанавливается равным MAC-адресу интерфейса eth1 R3, MAC-адрес получателя - MAC-адресу интерфейса сетевого интерфейса ПК3sends an Ethernet frame to Switch3.The source and destination IP addresses remain unchanged, as a source MAC address is set the eth1 R3 interface MAC address, as the destination MAC address - the PC3 network interface MAC address.
Center

Рисунок 6б - Передача пакета от ПК1 к ПК3

Figure 6b - Packet transmission from PC1 to PC3

Section
Column
width30%

Таблица

4а - Пример таблицы маршрутизации маршрутизатора R1Table 4a - The R1 router routing table example

Column
width30%

Таблица

4б - Пример таблицы маршрутизации маршрутизатора R2Table 4b - The R2 router routing table example

Column
width30%

Таблица 4в - Пример таблицы маршрутизации маршрутизатора R3

...

Table 4c - The R3 router routing table example

Scenario 3 - connection with the "infinetwireless.com" from PC1 (source - 192.168.1.10, получатель destination - 82.151.200.119)

  • Этап Step 1: ПК1 формирует пакет с адресом получателя PC1 generates a packet with the destination address 82.151.200.119 , что соответствует IP-адресу сервера, по которому доступен сайт infinet.ru. Пакет отправляется маршрутизатору R1.
  • Этап 2: Маршрутизатор R1 анализирует таблицу маршрутизации: в таблице отсутствуют сети, удовлетворяющие адресу получателя, поэтому необходимо использовать маршрут по умолчанию. Маршрутизатор отправляет пакет в направлении R2.
  • Этап 3: Маршрутизатор R2 анализирует таблицу маршрутизации: нет записей, удовлетворяющих адресу получателя, поэтому используется маршрут по умолчанию и пакет отправляется на маршрутизатор, находящийся за пределами локальной сети (в сеть (the IP address of the server where the infinetwireless.com website is available). The packet is sent to router R1.
  • Step 2: R1 router goes through the routing table: there are no networks in the table that match the destination address, so the default route should be used. The router sends the packet to R2.
  • Step 3: R2 router goes through the routing table: there are no entries matching the destination address, so the default route is used and the packet is sent to a router outside the local network (WAN).
Center

Рисунок 6в - Передача пакета от ПК1 к серверу infinet.ru

Figure 6c - The packet transmission from PC1 to infinetwireless.com server


Section
Column
width30%

Таблица

4а - Пример таблицы маршрутизации маршрутизатора R1Table 4a - The R1 router routing table example

Column
width30%

Таблица

4б - Пример таблицы маршрутизации маршрутизатора R2Table 4b - The R2 router routing table example

Column
width30%

Таблица

4в - Пример таблицы маршрутизации маршрутизатора R3Table 4c - The R3 router routing table example

Anchor
route_source
route_source

...

Filling the routing table

Speaking about the mechanisms for filling the routing table, two terms should be added:

  • RIB (routing information base - база данных о маршрутизации) - совокупность маршрутной информации, полученной из всех источников) - routing information data obtained from all sources.
  • FIB (forwarding information base - база данных о перенаправлении) - таблица перенаправления данных, используемая для обработки транзитного трафика. FIB формируется из RIB путём фильтрации и объединения маршрутной информации (рис. 7).

Источниками маршрутной информации, формирующих RIB, являются:

  • Маршруты операционной системы: служебные сети, используемые операционной системой устройства. Например, к таким сетям относится сеть петлевых интерфейсов ) - data forwarding table used to handle transit traffic. FIB is generated from RIB by filtering and combining routing information (Figure 7).

The sources routing information are:

  • Operating system routes: service networks used by the device operating system. For example, the loopback interface network 127.0.0.0/8.
  • Непосредственно присоединённые сети: сети, к которым устройство подключено непосредственно, т.е. интерфейсы устройства ассоциированы с IP-адресами, которые принадлежат этим сетям. Distance маршрутов такого типа минимальный и равен 0 (таблица 2а-в).
  • Статические маршруты: маршруты, добавленные в таблицу вручную. Distance маршрутов такого типа равен 1 (таблица 2а).
  • Протоколы динамической маршрутизации: маршруты, полученные с помощью протоколов динамической маршрутизации. За каждым из протоколов динамической маршрутизации закреплено значение Distance, примеры которых представлены в таблице Directly connected networks: networks to which the device is connected directly, i.e. device interfaces are associated with IP addresses that belong to these networks. A Distance parameter of such routes is minimal and equals to 0 (Table 2a-c).
  • Static routes: routes added to the table manually. Distance of such routes is equal to 1 (Table 2a).
  • Dynamic routing protocols: routes obtained using dynamic routing protocols. A Distance value is assigned to each dynamic routing protocol, examples are shown in Table 3.
Center

Рисунок 7 - Источники маршрутной информации

...