Смагин М.С. Вычислительные машины, системы и сети (1088253), страница 38
Текст из файла (страница 38)
Предназначен для адресации наиболее крупных поставщиков интернет-услуг, раздающих IP-адресаболее мелким. Данное поле имеет длину 13 бит и позволяет адресовать 8196сегментов сети. Столь небольшая длина этого поля позволяет снизить нагрузку на маршрутизаторы магистральных сетей, которые обеспечивают передачу данных между крупными сетями, и, соответственно, обрабатываютбольшой объем адресной информации.• 8-битное поле.Зарезервировано для будущего использования, в первую очередь дляувеличения длины полей TLA и NLA, если в этом возникнет необходимость.• NLA ID (Next Level Aggregation Identifier).Идентификатор вторичного поставщика услуг среднего или низкогоуровня, подключённого к одному из крупных поставщиков, которому присвоен идентификатор TLA. Имеет длину 24 бита, которые напрямую адресуют вторичного поставщика или могут быть, в свою очередь, разбиты на несколько полей, каждое из которых будет адресовать поставщика определённого уровня иерархии.Поля FP, TLA и NLA образуют группу префиксов провайдеров.• SLA ID (Site Level Aggregation Identifier).Идентификатор подсети в рамках корпоративной сети, принадлежащейодной организации.
Данное поле имеет длину 16 бит и позволяет адресоватьдо 65 535 подсетей.• Interface ID. Идентификатор интерфейса.Индивидуальный адрес узла в формате, предусмотренном спецификациями той локальной сети, к которой этот узел подключён. Например для сетей стандарта Ethernet в поле Interface ID будет хранится MAC-адрес адаптера узла, а для сетей, построенных на основе IPv4, – 4-байтовые IP-адреса узлов.253Формат IP-пакетаПротокол IP формирует единицу передачи данных сетевого уровня, называемую IP-пакетом.
IP-пакет, в свою очередь, закладывается в поле данныхкадра канального уровня. В начале IP-пакета ставится заголовок. Концевик,согласно стандартам протокола IP, в IP-пакете отсутствует.Формат заголовка IP-пакета представлен на рисунке.03Номерверсии715ДлинаЗаголовкаТип сервиса3247Идентификатор пакета6471Время жизни31Общая длина5063ФлагиСмещение фрагмента79Протоколверхнего уровня95Контрольная сумма96127IP-адрес источника128159IP-адрес назначенияРис.98 Формат заголовка IP-пакета.В нём предусмотрены следующие поля:1.
Номер версии (4 бита).О версиях протокола IP мы уже говорили выше. Сейчас, в основномиспользуется протокол IP 4-й версии или IPv4.2. Длина заголовка (4 бита).Значение длины заголовка измеряется в 32-битовых словах. Обычно заголовок имеет длину 20 байт или 5 32-битовых слов.3. Тип сервиса (8 бит).В этом поле задаются особенности обработки пакета – приоритет пакета и параметры выбора маршрута его продвижения по сети.2544. Общая длина (2 байта).В данном поле задаётся общая длина пакета с учётом заголовка и поляданных. Максимальная длина IP-пакета ограничена пределами разрядностиданного поля и может составлять 65535 байт, однако пакеты такого размераиспользуются редко.
В зависимости от типа локальной сети, по которой передаются пакеты, длина IP-пакета выбирается такой, чтобы соответствоватьтребованиям её протоколов канального уровня. Например, для сетей Ethernetвыбираются пакеты максимальной длиной 1500 байт, так чтобы они помещались в поле данных кадра LLC.5. Идентификатор пакета (2 байта).Используется в тех случаях, когда кадр канального уровня в сети отправителя оказался слишком велик для упаковки в один IP-пакет при передаче по промежуточной сети или сети получателя. В этом случае его разбиваюти упаковывают в несколько отдельных IP-пакетов. Этот процесс называетсяфрагментацией.
Все пакеты, содержащие фрагменты одного кадра, будутиметь одинаковые значения этого идентификатора.6. Флаги (3 бита).Содержание этого поля также имеет отношение к организации фрагментации и содержит три битовых флага. Один флаг запрещает фрагментацию. Другой – наоборот, устанавливается в случае фрагментации исходногопакета. Третий зарезервирован для будущего использования.7. Смещение фрагмента (13 бит).В случае, если в поле данных данного IP пакета передаётся фрагменткадра канального уровня, данное поле задаёт смещение передаваемого фрагмента в байтах относительно начала поля данных исходного фрагментированного кадра канального уровня.8. Время жизни пакета (1 байт).В данном поле задаётся предельный срок, в течение которого пакетможет прибывать в сети.
Согласно стандартам протокола IP время жизниуказывается в секундах. Это поле заполняется узлом-отправителем пакета255при его создании. Все узлы сети, через которые проходит пакет, уменьшаютзначение в этом поле на величину, равную времени обработки пакета. Когдазначение в этом поле становится равным нулю, пакет уничтожается.9. Идентификатор протокола верхнего уровня (1 байт).В этом поле содержится информация о протоколе более транспортногоуровня, которому принадлежит информация, записанная в поле данных пакета. Каждый протокол имеет свой собственный цифровой номер.
Например,протоколу TCP присвоен номер 6, а UDP – 17.10. Контрольная сумма заголовка (2 байта).Функция этого поля очевидно вытекает из названия. Принципиальныймомент состоит в том, что значение данного поля вычисляется только для заголовка. Поле данных, при этом, не учитывается. Поскольку, как мы уже говорили, значения некоторых полей меняются в процессе продвижения пакетапо сети, контрольную сумму заголовка необходимо заново рассчитывать после каждого такого изменения.
Эта вычислительная работа ложится на маршрутизаторы, через которые пакет проходит в процессе следования по сети.11.IP-адрес отправителя (4 байта).12.IP-адрес получателя (4 байта).Службы, поддерживающие работу протокола IPИз описания формата IP-пакета вытекают три важных вопроса.1. Каким образом IP-адреса присваиваются отдельным узлам сети?2. Как маршрутизаторы определяют MAC-адреса, соответствующиеопределённым IP-адресам?3.
Как маршрутизаторы определяют адреса узлов, с которыми они неимеют прямого подключения, а связаны через другие маршрутизаторы?Рассмотрим последовательно каждый из них.Присвоение IP-адресов отдельным узлам сети может осуществлятьсявручную администратором сети или автоматически.
Автоматическое присвоение IP-адресов осуществляется с помощью специального протокола, ко256торый называется DHCP. DHCP расшифровывается как Dynamic Host Configuration Protocol – динамический протокол конфигурирования узла. Протокол DHCP может работать в трёх режимах:1. Ручного распределения статических адресов.2.
Автоматического распределения статических адресов.3. Автоматического распределения динамических адресов.В первом случае администратор вручную распределяет разрешённые киспользованию IP-адреса между узлами сети, но делает это не путём настройки каждого узла по отдельности, а путём настройки одной единственной ЭВМ, играющей роль DHCP-сервера.Во втором случае, администратор задаёт список, или, как ещё говорят,«пул», IP-адресов, допустимых для данной сети, а DHCP-сервер автоматически распределяет его между узлами, подключёнными к сети.В третьем случае, DHCP-сервер осуществляет непрерывный мониторинг сети и на ограниченный срок, называемый «сроком аренды», выдаёт IPадрес каждому узлу сети.
Когда узел отключается от сети, его IP-адрес автоматически освобождается и может быть присвоен другому узлу, подключившемуся к сети после освобождения адреса.Разберёмся теперь со вторым вопросом. Предположим, имеется автономная локальная сеть, построенная по технологии Ethernet. Адресация в нейвыполняется на основе MAC-адресов. Ее необходимо подключить к Интернету. Мы взяли маршрутизатор, подключили его к Интернету, получили диапазон IP-адресов, выделили из него адреса для каждого из узлов и подключили всю эту систему к сети. Из сети поступают данные для отдельных узлов,направляемые по их IP-адресам.
Маршрутизатор принимает эти данные, поспециальной таблице определяет МАС-адрес, соответствующий нужному IPадресу, и отправляет данные нужному узлу в подключённой к нему сети. Такие таблицы называют «таблицами разрешения адресов» или ARPтаблицами. Возникает вопрос: как формируется ARP-таблица.257IP-адресаСоответствующиеMAC-адреса192.168.10.111-СА-19-В3-EF-01192.168.10.21С-12-97-21-EA-19192.168.10.7FF-09-78-AC-21-00154.097.15.1D0-96-51-FA-14-70197.132.97.1076-09-CF-A0-9D-14Рис.99 Пример ARP-таблицыОна может формироваться двумя способами. Во-первых, заполнятьсявручную администратором сети. Это самый простой способ, однако, самыйтрудоёмкий. К тому же, при любом изменении структуры сети, например приподключении новых машин, необходимо будет вручную добавлять записи втаблицы всех маршрутизаторов, работающих в сети.Во-вторых, ARP-таблицы могут формироваться автоматически с помощью специальных протоколов разрешения адресов.
Одним из наиболеераспространённых протоколов, давшим имя ARP-таблицам является протокол ARP. Аббревиатура ARP расшифровывается как Address Resolution Protocol, что переводится на русский язык как «Протокол разрешения адресов».В основу его работы положен метод так называемых ARP-запросов.Механизм их работы следующий. Предположим, имеется некая сеть,один узел которой желает отправить сообщение другому узлу. Программа,генерирующая сообщение, передаёт его протоколу прикладного уровня, далее оно последовательно передаётся от протокола к протоколу, с уровня науровень, пока не достигает сетевого уровня, на котором работает протоколIP. Протокол IP создаёт IP-пакет, в поле данных которого содержит ячейкупередачи данных, сформированную на верхних уровнях, и содержащую передаваемое сообщение.Этот IP-пакет передаётся протоколу канального уровня, который должен сформировать кадр канального уровня.
В заголовке кадра будет указан258аппаратный адрес получателя пакета, сформированный в соответствии с сетевой технологией, на которой построен данный сегмент составной сети. Дляполучения этого адреса канальный протокол обращается в ARP-таблицу. Если в этой таблице есть соответствующая запись, то по IP-адресу устанавливается аппаратный адрес, который записывается в заголовок кадра канальногоуровня, после чего он отправляется на передачу.Если же такой записи в ARP-таблице нет, то управление передаётсяпротоколу ARP. Он формирует ARP-запрос, − кадр с широковещательнымадресом, в поле данных которого будут храниться его IP-, и MAC-адреса, IPадрес получателя и, кроме того, поле для MAC-адреса получаеля, заполненное нулями.