Примеры таблиц для маршрутизаторов различных типов
Структура таблицы маршрутизации стека TCP/IP соответствует общим принципам построения таблиц маршрутизации, рассмотренным выше. Однако важно отметить, что вид таблицы IP-маршрутизации зависит от конкретной реализации стека TCP/IP. Приведем пример трех вариантов таблицы маршрутизации, с которыми мог бы работать маршрутизатор M1 всети, представленной на рисунке 21.
Рисунок 21 – Пример маршрутизируемой сети
10.1.1Назначение полей таблицы маршрутизации
Несмотря на достаточно заметные внешние различия, во всех трех таблицах есть все ключевые параметры, необходимые для работы маршрутизатора и рассмотренные ранее при обсуждении концепции маршрутизации.
К таким параметрам, во-первых, относится адрес сети назначения (столбцы «Destination» в маршрутизаторах NetBuilder и UNIX или «Network Address» в маршрутизаторе MPR). Заметим, что в некоторых случаях, когда маршрут к одному из узлов сети отличается от маршрута ко всем остальным узлам данной сети, в этом столбце указывается адрес данного конкретного узла назначения.
Вторым обязательным полем таблицы маршрутизации является адрес следующего маршрутизатора (столбцы «Gateway» в маршрутизаторах NetBuilder и UNIX или «Gateway Address» в маршрутизаторе MPR).
Третий ключевой параметр – адрес порта, на который нужно направить пакет, в некоторых таблицах указывается прямо (поле «Interface» в таблице Windows NT), а в некоторых — косвенно. Так, в таблице UNIX-маршрутизатора вместо адреса порта задается его условное наименование – lе0 для порта с адресом 198.21.17.5, le1 для порта с адресом 213.34.12.3 и lo0 для внутреннего порта с адресом 127.0.0.1.
В маршрутизаторе NetBuilder II поле, обозначающее выходной порт в какой-либо форме, вообще отсутствует. Это объясняется тем, что адрес выходного порта всегда можно косвенно определить по адресу следующего маршрутизатора.
Наличие или отсутствие поля маски в таблице говорит о том, насколько современен данный маршрутизатор. Стандартным решением сегодня является использование поля маски в каждой записи таблицы, как это сделано в таблицах маршрутизаторов MPR Windows NT (поле «Netmask») и NetBuilder (поле «Mask»). Обработка масок при принятии решения маршрутизаторами будет рассмотрена ниже. Отсутствие поля маски говорит о том, что либо маршрутизатор рассчитан на работу только с тремя стандартными классами адресов, либо он использует для всех записей одну и ту же маску, что снижает гибкость маршрутизации.
10.1.2Маршрутизация без использования масок
Рассмотрим на примере IP-сети алгоритм работы средств сетевого уровня по продвижению пакета в составной сети (рисунок 22). При этом будем считать, что все узлы сети, рассматриваемой в примере, имеют адреса, основанные на классах, а маски не используются. Особое внимание будет уделено взаимодействию протокола IP с протоколами разрешения адресов ARP и DNS.
Рисунок 22 – Пример взаимодействия компьютеров через сеть
1. Итак, пусть пользователь компьютера cit.dol.ru, находящегося в сети Ethernet и имеющего IP-адрес 194.87.23.17 (адрес класса С), обращается по протоколу FTP к компьютеру s1.msk.su, принадлежащему другой сети Ethernet и имеющему IP-адрес 142.06.13.14 (адрес класса В):
> ftp s1.msk.su.
2. Модуль FTP упаковывает свое сообщение в сегмент транспортного протокола TCP который, в cвою очередь, помещает свой сегмент в пакет протокола IP. В заголовке IP-пакета должен быть указан IP-адрес узла назначения. Так как пользователь компьютера cit.dol.ru указывает символьное имя компьютера s1.msk.su, то стек TCP/IP должен определить IP-адрес узла назначения самостоятельно.
3. При конфигурировании стека TCP/IP в компьютере cit.dol.fu был задан его собственный IP-адрес, IP-адрес маршрутизатора по умолчанию и IP-адрес DNS-сервера. Модуль IP может сделать запрос к серверу DNS, но обычно сначала просматривается локальная таблица соответствия символьных имен и IP-адресов. Такая таблица хранится чаще всего в виде, текстового файла простой структуры – каждая его строка содержит запись об одном символьном имени и его IP-адресе. В ОС UNIX такой файл традиционно носит имя hosts и находится в каталоге /etc.
4. Будем считать, что компьютер cit.dol.ru имеет файл hosts, а в нем есть строка:
142.06.13.14 s1.msk.su.
5. Таким образом, разрешение имени выполняется локально, и протокол IP может теперь формировать IP-пакеты с адресом назначения 142,06,13.14 для взаимодействия с компьютеров s1.msk.su.
6. Модуль IP компьютера cit.dol.ru проверяет, нужно ли маршрутизировать пакеты с адресом 142.06.13.14. Так как адрес сети назначения (142.06.0.0) не совпадает с адресом (194.87.23.0) сети, которой принадлежит компьютер-отправитель, то маршрутизация необходима.
7. Компьютер cit.dol.ru начинает формировать кадр Ethernet для отправки IP-пакета маршрутизатору по умолчанию, IP-адрес которого известен – 194.87.23.1, но неизвестен MAC-адрес, необходимый для перемещения кадра в локальной сети. Для определения MAC-адреса маршрутизатора протокол IP обращается к протоколу ARP, который просматривает ARP-таблицу. Если в последнее время компьютер cit.dol.ru выполнял какие-либо межсетевые обмены, то скорее всего искомая запись, содержащая соответствие между IP- и MAC-адресами маршрутизатора по умолчанию, уже находится в кэш-таблице протокола ARP. Пусть в данном случае нужная запись была найдена именно в кэш-таблице:
194.87.23.1 008048ЕВ7Е60.
8. Обозначим найденный MAC-адрес 008048ЕВ7Е60 в соответствии сномером маршрутизатора и его порты через MAC11.
9. В результате компьютер cit.dol.ru отправляет по локальной сети пакет, упакованный в кадр Ethernet.
10. Кадр принимается портом 1 маршрутизатора 1 в соответствии с протоколом Ethernet, так как MAC-узел этого порта распознает свой адрес МАС11. Протокол Ethernet извлекает из этого кадра IP-пакет и передает его программному обеспечению маршрутизатора, реализующему протокол IP. Протокол IP извлекает из пакета адрес назначения 142.06.13.14 и просматривает записи своей таблицы маршрутизации. Пусть маршрутизатор 1 имеет в своей таблице маршрутизации следующую запись:
142.06.0.0 135.12.0.11 2.
11. Эта запись говорит о том, что пакеты для сети 142.06.0.0 нужно передавать маршрутизатору 135.12.0.11, находящемуся в сети, подключенной к порту 2 маршрутизатора 1.
12. Маршрутизатор 1 просматривает параметры порта 2 и находит, что к нему подключена сеть FDDI. Так как сеть FDDI имеет значение MTU большее,
чем сеть Ethernet, то фрагментация IP-пакета не требуется.
Поэтому маршрутизатор 1 формирует кадр формата FDDI. На этом этапе модуль IP должен определить MAC-адрес следующего маршрутизатора по известному IP-адресу 135.12.0.11. Для этого он обращается к протоколу ARP. Допустим, что нужной записи в кэш-таблице не оказалось, тогда в сеть FDDI отправляется широковещательный ARP-запрос, содержащий наряду с прочей следующую информацию:
-порт 1 маршрутизатора 2 распознает свой IP-адрес и посылает ARP-ответ по адресу запросившего узла;
-теперь, зная MAC-адрес следующего маршрутизатора 00E0F77F51A0, маршрутизатор 1, отсылает кадр FDDI по направлению к маршрутизатору 2.
13. Аналогично действует модуль IP на маршрутизаторе 2. Получив кадр FDDI, он отбрасывает его заголовок, а из заголовка IP извлекает IP-адрес сети назначения и просматривает свою таблицу маршрутизации. Там он может найти запись о конкретной сети назначения:
142.06.0.0 203.21.4.12 216.
14. При отсутствии такой записи будет использована запись о маршрутизаторе по умолчанию:
default 203.21.4.12 2.
15. Определив IP-адрес следующего маршрутизатора 203.21.4.12, модуль IP формирует кадр Ethernet для передачи пакета маршрутизатору 3 по сети Ethernet. С помощью протокола АКР он находит МАС-адрес этого маршрутизатора и помещает его в заголовок кадра. IP-адрес узла назначения, естественно, остается неизменным.:
16. Наконец, после того, как пакет поступит в маршрутизатор сети назначения (маршрутизатор 3), появляется возможность передачи этого пакета компьютеру назначения. Маршрутизатор 3 определяет, что пакет нужно передать в сеть 142.06.0.0, которая непосредственно подключена к его первому порту. Поэтому он посылает ARP-запрос по сети Ethernet с IP-адресом компьютера s1.msk.su. ARP-ответ содержит MAC-адрес конечного узла, который модуль IP передает канальному протоколу для формирования кадра Ethernet.
17. Сетевой адаптер компьютера s1.msk.su захватывает кадр Ethernet, обнаруживает совпадение MAC-адреса, содержащегося в заголовке, со своим собственным адресом и направляет его модулю IP. После анализа полей IP-заголовка из пакета извлекаются данные, которые в свою очередь, содержат сообщение вышележащего протокола. Поскольку в данном примере рассматривается обмен данными по протоколу FTP, который использует в качестве транспортного протокола TCP, то в поле данных IP-пакета находится TCP-сегмент, определив из TCP-заголовка номерпорта, модуль IP переправляет сегмент в соответствующую очередь, из которой данный сегмент попадет программному модулю FTP-сервера.
Дата добавления: 2018-05-10; просмотров: 578;