Главная страница

Учебник для вузов в. Олифер Н. Олифер Компьютерные Принципы, технологии, протоколы


Скачать 22.28 Mb.
НазваниеУчебник для вузов в. Олифер Н. Олифер Компьютерные Принципы, технологии, протоколы
АнкорOlifer_V_G__Olifer_N_A_-_Kompyuternye_seti_-_2010.pdf
Дата12.03.2017
Размер22.28 Mb.
Формат файлаpdf
Имя файлаOlifer_V_G__Olifer_N_A_-_Kompyuternye_seti_-_2010.pdf
ТипУчебник
#3698
страница50 из 99
1   ...   46   47   48   49   50   51   52   53   ...   99

Пограничные маршрутизаторы
Рис. 15.4. Нерациональное использование пространства ІР-адресов
Для смягчения проблемы дефицита адресов разработчики стека T C P /IP предлагают разные подходы. Принципиальным решением является переход на новую версию про­
токола IP — протокол IPv6, в котором резко расширяется адресное пространство. Однако и текущая версия протокола IP (IPv4) поддерживает технологии, направленные на более экономное расходование ІР-адресов, такие, например, как NAT и CIDR.
Адресация и технология CIDR
Технология бесклассовой междоменной маршрутизации (Classless Inter-Domain Routing,
CIDR), которая описана в документах RFC 1517, RFC 1518, RFC 1519, RFC 1520 и о кото­
рой впервые было официально объявлено в 1993 году, позволяет центрам распределения адресов избежать выдачи абонентам излишних адресов.

Порядок назначения ІР-адресов
495
Деление ІР-адреса на номера сети и узла в технологии CIDR происходит на основе маски переменной длины, назначаемой поставщиком услуг. Непременным условием примени­
мости CIDR является наличие у организации, распоряжающейся адресами, непрерыв­
ных диапазонов адресов. Такие адреса имеют одинаковый префикс, то есть одинаковую цифровую последовательность в нескольких старших разрядах. Пусть в распоряжении некоторого поставщика услуг имеется непрерывное пространство ІР-адресов в количестве
2п (рис. 15.5). Отсюда следует, что префикс имеет длину (32 - п) разрядов. Оставшиеся
п разрядов играют роль счетчика последовательных номеров.
Префикс пула S1 (32-4)
.4 разр.і
г
Адресный пул
поставщика
т
J
2П Д
V
і
Префикс пула S21(32-9)
^ , 9 разрядов
і
і
і
іі
і
1
і
---------------
і
L..
..і
-------
I
|=g-—


Г.1
" '
1
fe-- г--', т-v------
--- ^“ 1-----------------------
1
-- Щ
^ Префикс пула S3! (32-10)
w ■ H E S S
^
і
і
і
і
і
і
і
г
1 у — ■

>
"•1


1
------------
Щ

1
|
■ ---------------^
Префикс
поставщика (32-п)

w
п разрядов для переменной
части адресов
^
W .
Пул адресов S1
размером Z4 = 16
Пул адресов S2
размером 29 = 512
Пул адресов S3
размером 210 = 1024
Рис. 15.5. Распределение адресов на основе технологии CIDR
Когда потребитель обращается к поставщику услуг с просьбой о выделении ему некоторого числа адресов, то в имеющемся пуле адресов «вырезается» непрерывная область 51,52 или
53, в зависимости от требуемого количества адресов. При этом должны быть выполнены следующие условия:
□ количество адресов в выделяемой области должно быть равно степени двойки;
□ начальная граница выделяемого пула адресов должна быть кратна требуемому коли­
честву узлов.
Очевидно, что префикс каждой из показанных на рисунке областей имеет собственную длину — чем меньше количество адресов в данной области, тем длиннее ее префикс.
ПРИМЕР
Пусть поставщик услуг Интернета располагает пулом адресов в диапа­
зоне
1 9 3 .2 0 .0 .0 -1 9 3 .2 3 .2 5 5 .2 5 5
(1 1 0 0 0001.0001 010 0 .0 0 0 0 0 0 0 0 .0 0 0 0 0 0 0 0 -
1100 0001.0001 0111.1111 1111.1111 1111), то есть количество адресов равно 2 18. Соот­

496
Глава 15. Адресация в стеке протоколов TCP/IP
ветственно префикс поставщика услуг имеет длину 14 разрядов — 1100 0001.0001 01, или
в другом виде — 193.20/14.
Если абоненту этого поставщика услуг требуется совсем немного адресов, например 13, то по­
ставщик мог бы предложить ему различные варианты: сеть 193.20.30.0/28, сеть 193.20.30.16/28
или сеть 193.21.204.48/28. Во всех случаях в распоряжении абонента для нумерации узлов
имеются 4 младших бита. Таким образом, наименьшее число, удовлетворяющее потребностям
абонента (13), которое можно представить степенью двойки (24), является 16. Префикс для
каждого из выделяемых пулов во всех этих случаях играет роль номера сети, он имеет длину
32 - 4 = 28 разрядов.
Рассмотрим другой вариант, когда к поставщику услуг обратился крупный заказчик, сам, воз­
можно, собирающийся оказывать услуги по доступу в Интернет. Ему требуется блок адресов
в 4000 узлов. На нумерацию такого количества узлов пойдет 12 двоичных разрядов, следова­
тельно, размер выделенного пула адресов оказывается несколько больше требуемого — 4096.
Граница, с которой должен начинаться выделяемый участок, должна быть кратна размеру
участка, то есть это могут быть любые адреса из следующих: 193.20.0.0,193.20.16.0,193.20.32.0,
193.20.48.0 и другие числа оканчивающиеся на 12 нулей. Пусть поставщик услуг предложил
потребителю диапазон адресов 193.20.16.0-193.20.31.255. Для этого диапазона агрегированный
номер сети (префикс) имеет длину 20 двоичных разрядов и равен 193.20.16.0/20.
Благодаря CIDR поставщик услуг получает возможность «нарезать» блоки из выделенного ему адресного пространства в соответствии с действительными требованиями каждого клиента.
Мы еще вернемся к технологии CIDR в главе 16, чтобы обсудить, каким образом эта технология помогает не только экономно расходовать адреса, но и более эффективно осу­
ществлять маршрутизацию.
Отображение ІР-адресов
на локальные адреса
Одной из главных задач, которая ставилась при создании протокола IP, являлось обеспе­
чение совместной согласованной работы в сети, состоящей из подсетей, в общем случае использующих разные сетевые технологии. Взаимодействие технологии TC P/IP с локаль­
ными технологиями подсетей происходит многократно при перемещении IP-пакета по составной сети. На каждом маршрутизаторе протокол IP определяет, какому следующему маршрутизатору в этой сети надо направить пакет. В результате решения этой задачи про­
токолу IP становится известен IP-адрес интерфейса следующего маршрутизатора (или конечного узла, если эта сеть является сетью назначения). Чтобы локальная технология сети смогла доставить пакет на следующий маршрутизатор, необходимо:
□ упаковать пакет в кадр соответствующего для данной сети формата (например,
Ethernet);
□ снабдить данный кадр локальным адресом следующего маршрутизатора.
Решением этих задач, как уже отмечалось1, занимается уровень сетевых интерфейсов стека
TCP/IP.
1 См. раздел «Стек протоколов TCP/IP» в главе 5.

Отображение ІР-адресов на локальные адреса
497
Протокол разрешения адресов
Как уже было сказано, никакой функциональной зависимости между локальным адресом и его ІР-адресом не существует, следовательно, единственный способ установления соот­
ветствия — ведение таблиц. В результате конфигурирования сети каждый интерфейс «зна­
ет» свои IP-адрес и локальный адрес, что можно рассматривать как таблицу, состоящую из одной строки. Проблема состоит в том, как организовать обмен имеющейся информацией между узлами сети.
Для определения локального адреса по IP-адресу используется протокол разрешения адресов (Address Resolution Protocol, ARP). Протокол разрешения адресов реализуется различным образом в зависимости от того, работает ли в данной сети протокол локальной сети (Ethernet, Token Ring, FDDI) с возможностью широковещания или же какой-либо из протоколов глобальной сети (Frame Relay, ATM), которые, как правило, не поддерживают широковещательный доступ.
Рассмотрим работу протокола ARP в локальных сетях с широковещанием.
На рис. 15.6 показан фрагмент IP-сети, включающий две сети — Ethernetl (из трех конеч­
ных узлов А, В и С) и Ethernet2 (из двух конечных узлов D и Е). Сети подключены соответ­
ственно к интерфейсам 1 и 2 маршрутизатора. Каждый сетевой интерфейс имеет IP-адрес и
МAC-адрес. Пусть в какой-то момент IP-модуль узла С направляет пакет узлу D. Протокол
IP узла С определил IP-адрес интерфейса следующего маршрутизатора — это ІРі. Теперь, прежде чем упаковать пакет в кадр Ethernet и направить его маршрутизатору, необходимо определить соответствующий МАС-адрес. Для решения этой задачи протокол IP обращает­
ся к протоколу ARP. Протокол ARP поддерживает на каждом интерфейсе сетевого адаптера или маршрутизатора отдельную ARP-таблицу, в которой в ходе функционирования сети накапливается информация о соответствии между ІР-адресами и МAC-адресами других интерфейсов данной сети. Первоначально, при включении компьютера или маршрутиза­
тора в сеть все его ARP-таблицы пусты.
1. На первом шаге происходит передача от протокола IP протоколу ARP примерно такого сообщения: «Какой МАС-адрес имеет интерфейс с адресом ІРі?»
2. Работа протокола ARP начинается с просмотра собственной ARP-таблицы. Предполо­
жим, что среди содержащихся в ней записей отсутствует запрашиваемый 1Р-адрес.
3. В этом случае исходящий IP-пакет, для которого оказалось невозможным определить локальный адрес из ARP-таблицы, запоминается в буфере, а протокол ARP формирует
ARP-запрос, вкладывает его в кадр протокола Ethernet и широковещательно рас­
сылает.
4. Все интерфейсы сети Ethernetl получают ARP-запрос и направляют его «своему» про­
токолу ARP. ARP сравнивает указанный в запросе адрес ІРі с ІР-адресом интерфейса, на который поступил этот запрос. Протокол ARP, который констатировал совпадение
(в данном случае 3
to
‘ARP маршрутизатора 1), формирует ARP-ответ.
В ARP-ответе маршрутизатор указывает локальный адрес МАС і своего интерфейса и от­
правляет его запрашивающему узлу (в данном примере узлу С), используя его локальный адрес. Широковещательный ответ в этом случае не требуется, так как формат ARP-запроса предусматривает поля локального и сетевого адресов отправителя. Заметим, что зона распространения ARP-запросов ограничивается сетью Ethernetl, так как на пути широко­
вещательных кадров барьером стоит маршрутизатор.

498
Глава 15. Адресация в стеке протоколов TCP/IP
Маршрутизатор
IP
ARP
Eth
ARP-
таблица
ІРрТМАСр
IP
ARP
Eth
ARP-
таблица
IP
ARP
Eth
ARP-
таблица
IP
e
J
ma
C
e
Ethernet
(
1
)
IP
- ARP^l
Eth
ARP- A
і таблица!
(2)
Ethemetl
Рис. 15.6. Схема работы протокола ARP
На рис. 15.7 показан кадр Ethernet с вложенным в него ARP-сообщением. ARP-запросы и ARP-ответы имеют один и тот же формат. В табл. 15.2 в качестве примера приведены значения полей реального ARP-запроса, переданного по сети Ethernet1.
Кадр Ethernet
r
Заголовок Ethernet
ARP-запрос или ARP-ответ
Рис. 15.7. Инкапсуляция ARP-сообщений в кадр Ethernet
В поле типа сети для сетей Ethernet указывается значение 1. Поле типа протокола по­
зволяет использовать протокол ARP не только с протоколом IP, но и с другими сетевыми протоколами. Для IP значение этого поля равно 0x0800. Длина локального адреса для протокола Ethernet равна б байт, а длина IP-адреса — 4 байта. В поле операции для ARP- запросов указывается Значение 1, для ARP-ответов — значение 2.
Из этого запроса видно, что в сети Ethernet узел с ІР-адресом 194.85.135.75 пытается определить, какой МАС-адрес имеет другой узел той же сети, сетевой адрес которого
194.85.135.65. Поле искомого локального адреса заполнено нулями.
1 Символы Ох означают, что за ними следует число, записанное в шестнадцатеричном формате.

Отображение ІР-адресов на локальные адреса
499
Таблица 15.2. Пример ARP-запроса
Поле
Значение
Тип сети
1 (0x1)
Тип протокола
2048 (0x800)
Длина локального адреса
6(0x6)
Длина сетевого адреса
4 (0x4)
Операция
1 (0x1)
Локальный адрес отправителя
008048ЕВ7Е60
Сетевой адрес отправителя
194.85.135.75
Локальный (искомый) адрес получателя
000000000000
Сетевой адрес получателя
194.85.135.65
Ответ присылает узел, опознавший свой IP-адрес. Если в сети нет машины с искомым ІР- адресом, то ARP-ответа не будет. Протокол IP уничтожает IP-пакеты, направляемые по этому адресу В табл. 15.3 показаны значения полей ARP-ответа, который мог бы поступить на приведенный в табл. 15.2 ARP-запрос.
Таблица 15.3. Пример ARP-ответа
Поле
Значение
Тип сети
1 (0x1)
Тип протокола
2048 (0x800)
Длина локального адреса
6 (0x6)
Длина сетевого адреса
4 (0x4)
Операция
2 (0x1)
Локальный адрес отправителя
00E0F77F1920
Сетевой адрес отправителя
194.85.135.65
Локальный (искомый) адрес получателя
008048ЕВ7Е60
Сетевой адрес получателя
194.85.135.75
В результате обмена ARP-сообщениями модуль IP, пославший запрос с интерфейса, имею­
щего адрес 194.85.135.75, определил, что 1Р-адресу 194.85.135.65 соответствует МАС-адрес
00EOF77F192O. Этот адрес затем помещается в заголовок кадра Ethernet, ожидавшего от­
правления 1Р-пакета.
Чтобы уменьшить число ARP-обращений в сети, найденное соответствие между ІР-адресом и МАС-адресом сохраняется в ARP-таблице соответствующего интерфейса, в данном случае — это запись:
194.85.135.65 - 00E0F77F1920
Данная запись в ARP-таблице появляется автоматически, спустя несколько миллисекунд после того, как модуль ARP проанализирует ARP-ответ. Теперь, если вдруг вновь воз­
никнет необходимость послать пакет по адресу 194.85.135.65, то протокол IP прежде, чем посылать широковещательный запрос, проверит, нет ли уже такого адреса в ARP-таблице.

500
Глава 15. Адресация в стеке протоколов TCP/IP
ARP-таблица пополняется не только за счет поступающих на данный интерфейс ARP-
ответов, но и в результате извлечения полезной информации из широковещательных
ARP-запросов. Действительно, в каждом запросе, как это видно из табл. 15.2 и 15.3, содер­
жатся ІР-адрес и МАС-адрес отправителя. Все интерфейсы, получившие этот запрос, могут поместить информацию о соответствии локального и сетевого адресов отправителя в соб­
ственную ARP-таблицу. В частности, все узлы, получившие ARP-запрос (см. табл. 15.2), могут пополнить свою ARP-таблицу записью:
194.85.135.75 - 008048ЕВ7Е60
Таким образом, вид ARP-таблицы, в которую в ходе работы сети были добавлены две упо­
мянутые нами записи, иллюстрирует табл. 15.4.
Таблица 15.4. Пример ARP-таблицы
1Р-адрес
МАС-адрес
Тип записи
194.85.135.65
00E0F77F1920
Динамический
194.85.135.75
008048ЕВ7Е60
Динамический
194.85.60.21
008048ЕВ7567
Статический
В ARP-таблицах существует два типа записей: динамические и статические. Статические записи создаются вручную с помощью утилиты агр и не имеют срока устаревания, точнее, они существуют до тех пор, пока компьютер или маршрутизатор остается включенным.
Динамические записи должны периодически обновляться. Если запись не обновлялась в течение определенного времени (порядка нескольких минут), то она исключается из та­
блицы. Таким образом, в ARP-таблице содержатся записи не обо всех узлах сети, а только о тех, которые активно участвуют в сетевых операциях. Поскольку такой способ хранения информации называют кэшированием, ARP-таблицы иногда называют ARP-кэшем.
П Р И М Е Ч А Н И Е---------------------------------------------------------------------------------------------------------------
Некоторые реализации протоколов IP и ARP не ставят IP-пакеты в очередь на время ожидания ARP-
ответов. Вместо этого IP-пакет просто уничтожается, а его восстановление возлагается на модуль
TCP или прикладной процесс, работающий через протокол UDP. Такое восстановление выполняется
за счет тайм-аутов и повторных передач. Повторная передача сообщения проходит успешно, так как
первая попытка уже вызвала заполнение ARP-таблицы.
Совсем другой способ разрешения адресов используется в глобальных сетях, в которых не поддерживается широковещательная рассылка. Здесь администратору сети чаще всего при­
ходится вручную формировать и помещать на какой-либо сервер ARP-таблицы, в которых он задает, например, соответствие ІР-адресов адресам Х.25, имеющих для протокола IP смысл локальных адресов. В то же время сегодня наметилась тенденция автоматизации работы протокола ARP и в глобальных сетях. Для этой цели среди всех маршрутизаторов, подключенных к ка£кой-либо глобальной сети, выделяется специальный маршрутизатор, который ведет ARP-таблицу для всех остальных узлов и маршрутизаторов этой сети.
При таком централизованном подходе вручную нужно задать для всех узлов и маршрути­
заторов только ІР-адрес и локальный адрес выделенного для этих целей маршрутизатора.
При включении каждый узел и маршрутизатор регистрирует свои адреса в выделенном маршрутизаторе. Всякий раз, когда возникает необходимость определения по 1Р-адресу локального адреса, модуль ARP обращается к выделенному маршрутизатору с запросом

Отображение ІР-адресов на локальные адреса
501
и автоматически получает ответ без участия администратора. Работающий таким образом маршрутизатор называют ARP-сервером.
В некоторых случаях возникает обратная задача — нахождение IP-адреса по известному локальному адресу. Тогда в действие вступает реверсивный протокол разрешения адресов
(Reverse Address Resolution Protocol, RARP). Этот протокол используется, например, при старте бездисковых станций, не знающих в начальный момент времени своего 1Р-адреса, но знающих МАС-адрес своего сетевого адаптера.
1   ...   46   47   48   49   50   51   52   53   ...   99


написать администратору сайта