4

Я программист, пытающийся заполнить большую дыру в моем понимании основ сети. Я читал хорошую книгу (Сетевая Библия Сосинки), но обнаружил, что в ней содержится много "предполагаемой" информации, в которой термины / понятия брошены в читателя без надлежащего ознакомления с ними.

Я понимаю, что "маршрут" - это путь через сеть. Но я борюсь с визуализацией некоторых основанных на маршрутизации концепций. А именно:

  1. Как маршруты на самом деле проявляются в оборудовании? Являются ли они просто списком IP-адресов, которые вычисляются на сетевом уровне, а затем выполняются транспортом?
  2. Какие данные существуют в так называемой таблице маршрутизации? Является ли таблица маршрутизации всего лишь механизмом для хранения этих списков IP-адресов (см. Выше)?
  3. Каковы плюсы / минусы производительности при наличии статического маршрута, в отличие от динамического маршрута?

2 ответа2

5

Маршрут не определен ни одним оборудованием. Работа маршрутизатора заключается в том, чтобы посмотреть на IP-адрес и решить, принадлежит ли пакет к его сети или другому, и отправить его по пути в зависимости от того, что он решит. Маршрутизатор на самом деле занимается только следующим шагом и ничем не прошедшим, ни одно устройство не маршрутизирует весь путь пакета.

Таблица маршрутизации содержит информацию, которую маршрутизатор должен знать, чтобы решить, принадлежит ли пакет в его собственной сети или нет, и следующий прыжок, на который нужно отправить его, если ему нужно перейти в другое место. Из википедии:

The routing table consists of at least three information fields:

 -the network id: i.e. the destination network id
 -cost: i.e. the cost or metric of the path through which the packet is to be sent
 -next hop: The next hop, or gateway, is the address of the next station to which the packet is to be sent on the way to its final destination

 Depending on the application and implementation, it can also contain
 additional values that refine path selection:

 -quality of service associated with the route. For example, the U flag indicates that an IP route is up.
 -links to filtering criteria/access lists associated with the route
 -interface: such as eth0 for the first Ethernet card, eth1 for the second Ethernet card, etc.

Выбор статического или динамического маршрута полностью зависит от приложения. Статическая маршрутизация не очень устойчива к сбоям, но может быть легче устранить неполадки в некоторых сетевых проблемах, поскольку ваш маршрут никогда не изменится.

2

"Маршрут"(при использовании в качестве существительного) в сетевой терминологии относится к списку возможных следующих переходов (IP-адреса промежуточных маршрутизаторов (устройства уровня 3)), которые можно использовать для достижения определенного пункта назначения (идентифицируемого IP-адресом). адрес). Как глагол, "маршрут" такой же, как "отправить".

Предположим, вы хотите отправить IP-пакеты с host1 на host2: host1 [20.0.0.1] ==== router1 [1.1.1.1] ==== router2 [2.2.2.2] ==== router3 [3.3.3.3] = === host2 [40.0.0.1]

Итак, ваш "маршрут" или путь к хосту 2 от хоста 1: 1.1.1.1> 2.2.2.2> 3.3.3.3

Замечания:

  1. Из данного источника может быть несколько "маршрутов" к месту назначения. Это происходит потому, что каждый маршрутизатор решает, куда отправить пакет следующим (т.е. он решает, кто будет маршрутизатором следующего перехода). И эти следующие прыжки образуют "маршрут" к месту назначения.
  2. В таблице маршрутизации "маршрут" относится к сети. Таблица маршрутизации в основном содержит "сети" и "адреса следующего перехода" для этих сетей. Он также содержит другую информацию, такую как стоимость (обычно используется, когда для данной сети доступно несколько следующих прыжков).

Ответ на вопрос 1. Маршруты "записываются" в механизмы пересылки пакетов (ASIC) устройств маршрутизации. Он хранится в форме битов, и когда пакеты поступают для маршрутизации, происходит следующее: выполняются базовые проверки различных контрольных сумм и Ethertype. b Если DMAC (MAC-адрес назначения) в принятом кадре совпадает с MAC-адресом порта, на котором он был получен, то пакет рассматривается для маршрутизации. c Таблица пересылки (такая же, как таблица маршрутизации только с одним "следующим переходом" для каждой "сети") используется для определения того, куда следует отправлять пакет. DIP (IP-адрес назначения) во входящем пакете используется для выполнения побитовой операции И над "сетевой" записью, присутствующей в таблице пересылки. [Подробнее см. Ответ на Q2]

Ответ на вопрос 2: Пример таблицы маршрутизации показан ниже:

Таблица маршрутов IPv4

Активные маршруты:

Network Destination        Netmask          Gateway      Metric

       20.0.0.0      255.255.255.0         30.0.0.1      25

Это подразумевает, что все пакеты, которые имеют свой DIP(IP-адрес назначения) в сети 20.0.0.0/24, будут пересылаться (маршрутизироваться) на маршрутизатор 30.0.0.1.

Предположим, что входящий пакет приходит с DIP: 20.0.0.2. Чтобы "направить" этот пакет, обнаружена сеть назначения:

20.0.0.2 И маска сети для первой записи таблицы маршрутизации (т. Е. 255.255.255.0)

0001 0100.0000 0000.0000 0000.0000 0010 И 1111 1111.1111 1111.1111 1111.0000 0000 = 0001 0100.0000 0000.0000 0000.0000 0000 т. Е. 20.0.0.0 [Это соответствует записи "network" в таблице маршрутизации, и пакет отправляется маршрутизатору с адресом 30.0.0.1

Ответ на вопрос 3: Статические маршруты используются, когда вы явно хотите, чтобы был предпринят конкретный следующий переход, вместо того, чтобы оставить его настроенному протоколу маршрутизации (например, ospf). Кроме того, масштабирование сети со статической маршрутизацией затруднено, так как требуются дополнительные усилия. Кроме того, как сказал MaQleod, он не отказоустойчив.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .