TCP/IPРефераты >> Программирование и компьютеры >> TCP/IP
Следует отметить, что каждая машина имеет отдельную ARP-таблицу для каждого своего сетевого интерфейса
5. Межсетевой протокол IP
Модуль IP является базовым элементом технологии internet, а центральной частью IP является его таблица маршрутов. Протокол IP использует эту таблицу при принятии всех решений о маршрутизации IP-пакетов. Содержание таблицы маршрутов определяется администратором сети. Ошибки при установке маршрутов могут заблокировать передачи
Чтобы понять технику межсетевого взаимодействия, нужно понять то, как используется таблица маршрутов. Это понимание необходимо для успешного администрирования и сопровождения IP-сетей
5.1. Прямая маршрутизация
На рис 6 показана небольшая IP-сеть, состоящая из 3 машин: A, B и C
Каждая машина имеет такой же стек протоколов TCP/IP как на рис 1. Каждый сетевой адаптер этих машин имеет свой Ethernet-адрес. Менеджер сети должен присвоить машинам уникальные IP-адреса
A B C | | | --------------о------о------о------ Ethernet 1 IP-сеть “development” |
Рис.6. Простая IP-сеть
Когда A посылает IP-пакет B, то заголовок IP-пакета содержит в поле отправителя IP-адрес узла A, а заголовок Ethernet-кадра содержит в поле отправителя Ethernet-адрес A. Кроме этого, IP-заголовок содержит в поле получателя IP-адрес узла B, а Ethernet-заголовок содержит в поле получателя Ethernet-адрес B
----------------------------------------------------- | адрес отправитель получатель | ----------------------------------------------------- | IP-заголовок A B | | Ethernet-заголовок A B | ----------------------------------------------------- |
Табл.5. Адреса в Ethernet-кадре, передающем IP-пакет от A к B
В этом простом примере протокол IP является излишеством, которое мало что добавляет к услугам, предоставляемым сетью Ethernet. Однако протокол IP требует дополнительных расходов на создание, передачу и обработку IP-заголовка. Когда в машине B модуль IP получает IP-пакет от машины A, он сопоставляет IP-адрес места назначения со своим и, если адреса совпадают, то передает датаграмму протоколу верхнего уровня
В данном случае при взаимодействии A с B используется прямая маршрутизация
5.2. Косвенная маршрутизация
На рис 7 представлена более реалистичная картина сети internet. В данном случае сеть internet состоит из трех сетей Ethernet, на базе которых работают три IP-сети, объединенные шлюзом D. Каждая IP-сеть включает четыре машины; каждая машина имеет свои собственные IP- и Ethernet-адреса
----- D ------- A B C | | | E F G | | | | | | | | | ----о-----о-----о-----о-- | --о-----о-----о-----о--- Ethernet 1 | Ethernet 2 IP-сеть “development” | IP-сеть “accounting” | | H I J | | | | о----о-----о-----о---------- Ethernet 3 IP-сеть “fuctory” |
Рис.7. Сеть internet, состоящая из трех IP-сетей
За исключением D все машины имеют стек протоколов, аналогичный показанному на рис 1. Шлюз D соединяет все три сети и, следовательно, имеет три IP-адреса и три Ethernet-адреса. Машина D имеет стек протоколов TCP/IP, похожий на тот, что показан на рис 3, но вместо двух модулей ARP и двух драйверов, он содержит три модуля ARP и три драйвера Ethernet. Обратим внимание на то, что машина D имеет только один модуль IP
Менеджер сети присваивает каждой сети Ethernet уникальный номер, называемый IP-номером сети. На рис 7 IP-номера не показаны, вместо них используются имена сетей
Когда машина A посылает IP-пакет машине B, то процесс передачи идет в пределах одной сети. При всех взаимодействиях между машинами, подключенными к одной IP-сети, используется прямая маршрутизация, обсуждавшаяся в предыдущем примере
Когда машина D взаимодействует с машиной A, то это прямое взаимодействие. Когда машина D взаимодействует с машиной E, то это прямое взаимодействие. Когда машина D взаимодействует с машиной H, то это прямое взаимодействие. Это так, поскольку каждая пара этих машин принадлежит одной IP-сети
Однако, когда машина A взаимодействует с машинами, включенными в другую IP-сеть, то взаимодействие уже не будет прямым. Машина A должна использовать шлюз D для ретрансляции IP-пакетов в другую IP-сеть. Такое взаимодействие называется “косвенным”
Маршрутизация IP-пакетов выполняется модулями IP и является прозрачной для модулей TCP, UDP и прикладных процессов
Если машина A посылает машине E IP-пакет, то IP-адрес и Ethernet-адрес отправителя соответствуют адресам A. IP-адрес места назначения является адресом E, но поскольку модуль IP в A посылает IP-пакет через D, Ethernet-адрес места назначения является адресом D
---------------------------------------------------- | адрес отправитель получатель | ---------------------------------------------------- | IP-заголовок A E | | Ethernet-заголовок A D | ---------------------------------------------------- |
Табл.6. Адреса в Ethernet-кадре, содержащем IP-пакет от A к E (до шлюза D)
Модуль IP в машине D получает IP-пакет и проверяет IP-адрес места назначения. Определив, что это не его IP-адрес, шлюз D посылает этот IP-пакет прямо к E
---------------------------------------------------- | адрес отправитель получатель | ---------------------------------------------------- | IP-заголовок A E | | Ethernet-заголовок D E | ---------------------------------------------------- |
Табл.7. Адреса в Ethernet-кадре, содержащем IP-пакет от A к E (после шлюз D)
Итак, при прямой маршрутизации IP- и Ethernet-адреса отправителя
соответствуют адресам того узла, который послал IP-пакет, а IP- и Ethernet-адреса места назначения соответствуют адресам получателя. При косвенной маршрутизации IP- и Ethernet-адреса не образуют таких пар
В данном примере сеть internet является очень простой. Реальные сети могут быть гораздо сложнее, так как могут содержать несколько шлюзов и несколько типов физических сред передачи. В приведенном примере несколько сетей Ethernet объединяются шлюзом для того, чтобы локализовать широковещательный трафик в каждой сети
5.3. Правила маршрутизации в модуле IP
Выше мы показали, что происходит при передаче сообщений, а теперь рассмотрим правила или алгоритм маршрутизации
Для отправляемых IP-пакетов, поступающих от модулей верхнего уровня, модуль IP должен определить способ доставки - прямой или косвенный - и выбрать сетевой интерфейс. Этот выбор делается на основании результатов поиска в таблице маршрутов