6.3. Слежение за маршрутизацией
Заметим, что сообщения перенаправления не могут использоваться
самими шлюзами. Перенаправление - это просто способ оповещения обычного
узла о том, что нужно использовать другой шлюз. Сами шлюзы должны иметь
полную картину о положении дел в сети internet и уметь вычислять опти-
мальные маршруты доступа к каждой подсети. Обычно они поддерживают эту
картину, обмениваясь информацией между собой. Для этой цели существуют
несколько специальных протоколов маршрутизации. Один из способов, с
помощью которого узлы могут определять действующие шлюзы, состоит в сле-
жении за обменом сообщениями между ними. Для большинства протоколов
маршрутизации существует программное обеспечение, позволяющее обычным
узлам осуществлять такое слежение. При этом на узлах поддерживается пол-
ная картина положения дел в сети internet точно также, как это делается в
шлюзах. Динамическая корректировка таблицы маршрутов позволяет посылать
IP-пакеты по оптимальным маршрутам.
Таким образом, слежение за маршрутизацией в некотором смысле
"решает" проблему поддержания корректности таблиц маршрутов. Однако
существуют несколько причин, по которым этот метод применять не рекомен-
дуется. Наиболее серьезной проблемой является то, что протоколы маршру-
тизации пока еще подвергаются частым пересмотрам и изменениям. Появля-
ются новые протоколы маршрутизации. Эти изменения должны учитываться в
программном обеспечении всех машин.
Несколько более специальная проблема связана с бездисковыми рабочими
станциями. По своей природе бездисковые машины сильно зависят от сети и
от файл-серверов, с которых они осуществляют загрузку программ, и где
располагается их область своппинга. Исполнение программ, следящих за
широковещательными передачами в сети, на бездисковых машинах связано с
большими трудностями. Протоколы маршрутизации построены в основном на
широковещательных передачах. Например, все сетевые шлюзы могут широкове-
щательно передавать содержание своих таблиц маршрутов через каждые 30
секунд. Программы, которые следят за такими передачами, должны быть заг-
ружены на бездисковые станции через сеть. На достаточно занятой машине
программы, которые не используются в течение нескольких секунд, обычно
отправляются в область своппинга. Поэтому программы, следящие за маршру-
тизацией, большую часть времени находятся в своппинге. Когда они вновь
активизируются, должна производиться подкачка из своппинга. Как только
посылается широковещательное сообщение, все машины активизируют прог-
раммы, следящие за маршрутизацией. Это приводит к тому, что многие без-
дисковые станции будут выполнять подкачку из своппинга в одно и тоже
время. Поэтому в сети возникнет временная перегрузка. Таким образом,
исполнение программ, прослушивающих широковещательные передачи, на без-
дисковых рабочих станциях очень нежелательно.
6.4. Протокол ARP с представителем
Протокол ARP с представителем является альтернативным методом, поз-
воляющим шлюзам принимать все необходимые решения о маршрутизации. Он
применяется в сетях с широковещательной передачей, где для отображения
IP-адресов в сетевые адреса используется протокол ARP или ему подобный.
Здесь мы вновь будем предполагать, что имеем дело с сетью Ethernet.
Во многом метод, реализуемый протоколом ARP с представителем, анало-
гичен использованию маршрутов по умолчанию и сообщений перенаправления.
Но протокол ARP с представителем не затрагивает таблиц маршрутов, все
делается на уровне адресов Ethernet. Протокол ARP с представителем может
использоваться либо для маршрутизации IP-пакетов ко всем сетям, либо
только в локальной сети, либо в какой-то комбинации подсетей. Проще
всего продемонстрировать его использование при работе со всеми адресами.
Чтобы использовать протокол, нужно настроить узел так, как будто все
машины в мире подключены непосредственно к вашей локальной сети Ethernet.
В ОС UNIX это делается командой "route add default 128.6.4.2 0", где
128.6.4.2 - IP-адрес вашего узла. Как уже отмечалось, метрика 0 говорит
о том, что все IP-пакеты, которым подходит данный маршрут, должны посы-
латься напрямую по локальной сети.
Когда нужно послать IP-пакет узлу в локальной сети Ethernet, ваша
машина должна определить Ethernet-адрес этого узла. Для этого она
использует ARP-таблицу. Если в ARP-таблице уже есть запись, соответству-
ющая IP-адресу места назначения, то из нее просто берется Ethernet-адрес,
и кадр, содержащий IP-пакет, отправляется. Если такой записи нет, то
посылается широковещательный ARP-запрос. Узел с искомым IP-адресом наз-
начения принимает его и в ARP-ответе сообщает свой Ethernet-адрес. Эти
действия соответствуют обычному протоколу ARP, описанному выше.
Протокол ARP с представителем основан на том, что шлюзы работают как
представители удаленных узлов. Предположим, в подсети 128.6.5 имеется
узел 128.6.5.2 (узел A на рис.12). Он желает послать IP-пакет узлу
128.6.4.194, который подключен к другой сети Ethernet (узел B в подсети
128.6.4). Существует шлюз с IP-адресом 128.6.5.1, соединяющий две под-
сети (шлюз R).
сеть 1 сеть 2
128.6.5 128.6.4
----o----------------o--- --o---------------o--------
| | | |
------------- ------------- ---------------
| 128.6.5.2 | | 128.6.5.1 | | 128.6.4.194 |
| A | | 128.6.4.1 | | B |
------------- | R | ---------------
-------------
Рис.12. Сеть, использующая протокол ARP с представителем
Если в ARP-таблице узла A нет маршрута доступа к узлу B, то узел A посы-
лает ARP-запрос узлу B. Фактически машина A спрашивает: "Если кто-нибудь
знает Ethernet-адрес узла 128.6.4.194, сообщите мне его". Узел B не
может ответить на запрос самостоятельно. Он подключен к другой сети Eth-
ernet и никогда даже не увидит этот ARP-запрос. Однако шлюз R может
работать от его имени. Шлюз R отвечает: "Я здесь, IP-адресу 128.6.4.194
соответствует Ethernet-адрес 2:7:1:0:EB:CD", где 2:7:1:0:EB:CD в действи-
тельности является Ethernet-адресом шлюза. Это создает иллюзию, что узел
... . 1. Персональные компьютеры в cетях TCP/IP 1.1 Иерархия протоколов TCP/IP Протоколы TCP/IP широко применяются во всем мире для объединения компьютеров в сеть Internet. Архитектура протоколов TCP/IP предназначена для объединенной сети, состоящей из соединенных друг с другом шлюзами отдельных разнородных компьютерных подсетей. Иерархию управления в TCP/IP – сетях обычно представляют в виде ...
... деление его функций. Однако модель TCP/IP разрабатывалась значительно позже самого комплекса протоколов, поэтому она ни как не могла быть взята за образец при проектировании протоколов. Семейство протоколов TCP/IP Семейство протоколов IP состоит из нескольких протоколов, часто обозначаемых общим термином “TCP/IP”: o IP – протокол межсетевого уровня; o TCP – протокол межхостового уровня, ...
... изменить размер окна, посылая управляющие сообщения некоторым конечным узлам, что позволяет им дифференцировано управлять интенсивностью потока данных в разных частях сети. Формат сообщений TCP Сообщения протокола TCP называются сегментами и состоят из заголовка и блока данных. Заголовок сегмента имеет следующие поля: Порт источника (SOURS PORT) занимает 2 байта, идентифицирует процесс- ...
... ISO/OSI, то, хотя он также имеет многоуровневую структуру, соответствие уровней стека TCP/IP уровням модели OSI достаточно условно. Структура протоколов TCP/IP приведена на рисунке 2.1. Протоколы TCP/IP делятся на 4 уровня. Рис. 2.1. Стек TCP/IP Самый нижний (уровень IV) соответствует физическому и канальному уровням модели OSI. Этот уровень в протоколах TCP/IP не регламентируется, но ...
0 комментариев