Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ИС - Адресация

.pdf
Скачиваний:
15
Добавлен:
28.03.2015
Размер:
319.3 Кб
Скачать

4.2 АДРЕСАЦИЯ В ИНФОРМАЦИОННЫХ СЕТЯХ

Назначение и свойства сетевого адреса

При организации взаимодействия трех и более систем важной задачей является проблема их именования и адресации.

Согласно стандарту ISO 7498/3 под именованием понимается присвоение имен (идентификаторов), обеспечивающих идентификацию объектов в рассматриваемой об- ласти, под адресованием средства, обеспечивающие локализацию (определение ме- стонахождения) этих объектов.

Имя (name) идентификатор объекта сети.

Имя представляет собой лингвистическую конструкцию некоторого языка, соот- ветствующую определенному объекту. Имя идентифицирует объект, которому оно присвоено, но не указывает на его месторасположение.

Адрес (address) закодированное обозначение пункта отправления либо назна- чения, указывающее на его месторасположение.

Адрес объекта определяется числом, кодом, фразой; а самим объектом могут быть регистры, ячейки памяти, внешние устройства, каналы, системы, сети, процессы. Объекты получатели данных принято именовать адресатами.

Адресация (addressing) способ указания объектов в сети либо в системе. Адресация определяет пункты отправки и назначения посылаемых сообщений,

блоков данныхВ процессе адресации указывается, где расположены объекты или как их достичь, но не то, что они собой представляют.

Сетевой адрес должен обладать следующими необходимыми свойствами:

глобальная однозначность и применимость,

маршрутная независимость.

Глобальная однозначность и применимость в среде ВОС означают что:

сетевой адрес однозначно определяет некоторый объект сети;

протоколы, используемые при взаимодействии сетевых объектов, переносят информацию о сетевом адресе, в необходимом объеме.

Маршрутная независимость означает, что адрес объекта не несет никакой ин- формации о маршруте доведения блока данных от отправителя к получателю. Тем не менее, структуру адреса объекта можно использовать для упрощения маршрутизации.

Помимо основных требований к сетевому адресу объекта, выражающихся в приведенных ранее свойствах сетевого адреса, можно сформулировать дополнительные требования, в большей мере связанные с аспектами реального применения адресов:

Адрес должен иметь по возможности компактное представление, чтобы не перегружать память коммуникационной аппаратуры сетевых адаптеров, маршрутизаторов

Адрес должен быть удобным для пользователей, а это значит, что он должен иметь символьное представление.

Адрес должен быть удобен для построения больших сетей.

Рассмотрим подробнее последнее требование.

При определении сетевого адреса абонента можно было бы использовать как

простую (плоскую), так и иерархическую систему адресации.

При использовании простой адресации в адресной информации никак не учи- тывается топология межсетевых соединений (соединений подсетей), адреса присваи-

ваются независимо и в этом случае каждый маршрутизатор должен хранить огромную таблицу маршрутов до всех существующих адресатов, что практически не осуществи- мо.

Чаще используется иерархическая адресация, при которой адреса объединяют в группы, отражая ту или иную их взаимосвязь (например, страну, регион, город, пред- приятие и т.д.). Эта взаимосвязь также может отражать функциональные связи, напри- мер взаимозависимость объектов, а не их месторасположение. В этом случае адрес объ- екта состоит из идентификатора группы (подсети) и идентификатора узла в подсети. В общем случае допускается произвольное число уровней в иерархии адреса.

Нетрудно заметить, указанные требования противоречивы, – например, адрес, имеющий иерархическую структуру, скорее всего, будет менее компактным, чем пло- ский. Символьный же адрес, скорее всего, потребует больше памяти, чем адрес-число.

Поскольку удовлетворить всем перечисленным требованиям невозможно в рам- ках какой-либо одной системы адресации, то на практике обычно используется сразу несколько схем:

Аппаратные (hardware) адреса. Эти адреса назначаются портам сетевой аппаратуры (например, сетевому адаптеру) и не имеют иерархической структу- ры. Такой адрес используется только аппаратурой, поэтому его стараются сде- лать по возможности компактным. В локальных сетях с селекцией данных ис-

пользуется для доступа к разделяемой среде передаче и поэтому называется МАС-адресом. Аппаратный адрес представляют собой уникальное значение в 6 байт (например 2f-83-6a-90-d3-6e) и встраиваются в аппаратуру компанией- производителем.

Символьные адреса или имена предназначены для запоминания людьми и поэтому обычно несут смысловую нагрузку. Для работы в больших сетях сим- вольное имя может иметь сложную иерархическую структуру. Непосредствен- ное использование таких адресов при передаче не очень экономично из-за пере- менного формата и потенциально большой длины.

Числовые составные адреса имеют фиксированный компактный формат и организованы по иерархическому принципу. Типичным представителем адресов этого типа являются IP- и IPX-адреса.

При одновременном использовании нескольких схем адресации применяются

специальные процедуры преобразования адресов разрешение имен. Например в стеке TCP/IP [2] используется три типа адресов:

Локальные (иногда называемые также аппаратными),

IP-адреса,

Символьные доменные адреса

В терминологии TCP/IP под локальным адресом понимается такой тип адреса,

который используется средствами базовой технологии для доставки данных в пределах подсети, являющейся элементом составной интерсети. Если подсетью интерсети явля- ется локальная сеть, то локальный адрес это МАС-адрес. МАС-адрес назначается се- тевым адаптерам и сетевым интерфейсам маршрутизаторов.

IP-адреса представляют собой числовые составные адреса и являются основным типом адресов, на основании которых сетевой уровень передает пакеты между сетями. IP-адрес состоит из двух логических частей: номера сети и номера узла в сети, имеет длину 4 байта и обычно записывается в десятично-точечной нотации, например, 192.168.2.30. IP-адрес назначается администратором во время конфигурирования ком- пьютеров и маршрутизаторов.

Символьные доменные имена строятся по иерархическому признаку. Состав- ляющие полного символьного имени в IP-сетях разделяются точкой, например esvm.nntu.nnov.ru. Между доменным именем и IP-адресом узла нет никакого алгорит- мического соответствия.

При организации взаимодействия объектов сложилась еще одна схема класси-

фикации адресов, отличающаяся множеством адресуемых объектов:

Уникальный адрес выделяет только один объект сети.

Групповой адрес определяет множество объектов, которым предназначен блок данных.

Глобальный адрес указывает, что блок данных, сообщение либо сигнал пред- назначены всем объектам возможного взаимодействия. При использовании глобального адреса в сети осуществляется широковещание.

IP-адреса

Каждый IP-адрес содержит 32 бита, которые разделены на четыре поля по 8 бит, называемые октетами. IP-адрес состоит из идентификатора (ID) сети и ID узла. Каждый узел должен в пределах сети иметь уникальный адрес в пределах сети. А каждая сеть уникальный номер в интерсети. Какая часть IP-адреса относится к номеру сети, а какая к номеру узла, определяется значениями старших бит адреса, в связи с чем IP-адреса делят на несколько классов:

Рис. 4.2–1 Классы IP-адресов

Номера сетевых узлов, целиком состоящие из октетов 000 или 256, зарезервиро- ваны для специального использования:

Если все биты IP-адреса – 1, то сообщение будет доставлено для всех узлов сети, где расположен источник т.н. ограниченное широковещательное со-

общение (limited broadcast);

Если в поле узла все биты равны 1, то всем узлам указанной сети будет дос- тавлено широковещательное сообщение (broadcast);

Если в поле узла все биты равны 0 – это адрес узла, который сгенерировал этот пакет (используется в ICMP)

Если поле номера сети заполнено 0, то узел назначения в той же сети, что и

источник

Адреса 127.х.y.z – используется для петлевого (loop back) тестирования и связи между процессами на локальном компьютере. Например, при передаче сообщения по адресу закольцовки 127.0.0.1, данные не передаются по сети, а возвращаются модулям верхнего уровня, как только что принятые.

Ограниченная разрядность IP-адреса (32 бита для IPv4) и жесткое деление на классы на фоне резкого увеличения пользователей сети создало потенциальную опас- ность исчерпания IP-адресов. Для решения этой проблемы был разработан ряд подхо- дов:

Переход на новую версию IPv6 в котором резко расширяется адресное про- странство за счет использования 16-байтных адресов;

Экономное расходование адресов средствами IPv4:

а) применение маски позволяет гибко устанавливать границу между но- мером сети и номером узла;

б) технология бесклассовой междоменной маршрутизации (Classless In- ter-Domain Routing, CIDR) не использует классы, поставщикам про-

сто предоставляется диапазон адресов из которых они предоставляют адреса применяя маску переменной длины;

в) трансляция адресов (Network Address Translation, NAT) внутренние адреса сети транслируются во внешние IP-адреса, согласованные с поставщиком.

Система доменных имен (DNS)

В IP-сетях адрес представляет собой 32-битное число. Однако человеку сложно запоминать такие адреса, поэтому сетевые узлы обычно называют информативными символьными именами. Таким образом, чтобы осуществить пересылку данных через сеть, необходимо, исходя из символьного имени, определить соответствующий IP-

адрес. Этот процесс называется разрешением имен сетевых узлов (host name resolution).

В небольших сетях поддерживать таблицы соответствия символьных имен узлов IP-адресам вручную не сложно создаются так называемые hosts-файлы на всех ком- пьютерах сети. Если в сети присутствует большое количество узлов, то модификация hosts-файлов становится очень трудоемкой. Поэтому ранее в ЛВС для хранения подоб- ной информации использовались специальные ЭВМ. Но при распространении Internet это оказалось не эффективным (нагрузка на компьютеры, хранящие hosts-файлы сильно возрастала). Кроме того, присвоение каждому новому узлу уникального имени также стало серьезной проблемой. Для решения этих проблем в 1984 году была принята новая схема разрешения имен DNS (Domain Name System) – система доменных имен.

Система доменных имен (Domain Name System, DNS) распределенная служба,

используемая в IP-сетях для установления соответствия между доменным (ие- рархическим символьным) именем и IP-адресом узла на основе распределенной базы данных.

Пространство имен домена (domain namespace) организовано по иерархическо- му принципу. Домен представляет собой узел в древовидной структуре DNS и является разделом базы данных DNS. Домен объединяет несколько узлов, в некотором смысле связанных между собой.

Рис. 4.2–2 Иерархическая структура пространства имен домена

Корневая вершина этого дерева, обозначенная символом точки (.), называется корневым доменом (root domain). Корневой домен включает в себя все остальные доме- ны. В большинстве случаев имя домена верхнего уровня определяет имя национального домена, например, Финляндия использует домен fi, Франция домен fr, Германия домен de, Австралия домен аu, Россия домен ru. Для США национальный домен по

традиции опускается, там самыми крупными объединениями являются сети образова- тельных (edu), коммерческих (com), государственных (gov), военных (mil) и т.д. учреж- дений.

Благодаря введению подобной иерархической организации доменных имен про- блема уникальности имен узлов в рамках Internet была фактически решена. DNS реша- ет не только эту проблему. Она позволяет значительно упростить процедуры поддерж- ки сети, перепоручая обязанности по администрированию субдоменов их администра- торам. При этом администраторы подсети могут назначать входящим в него компьюте- рам любые имена.

В Internet корневой домен управляется центром InterNIC. Домены верхнего уровня назначаются для каждой страны, а также на организационной основе. Имена этих доменов должны следовать международному стандарту ISO 3166.

Каждый домен администрируется отдельной организацией, которая обычно раз- бивает свой домен на поддомены и передает функции администрирования этих поддо- менов другим организациям. Чтобы получить доменное имя, необходимо зарегистри- роваться в какой-либо организации, которой InterNIC делегировал свои полномочия по распределению имен доменов. В России такой организацией является РосНИИРОС, ко- торая отвечает за делегирование имен поддоменов в домене ru.

Если один домен входит в другой домен как его составная часть, то такой домен могут называть поддоменом (subdomain), хотя название домен за ним также остается. Обычно поддомен называют по имени той его старшей составляющей, которая отлича- ет его от других поддоменов. Например, поддомен mmt.ru обычно называют поддоме- ном (или доменом) mmt. Имя поддомену назначает администратор вышестоящего до- мена. Хорошей аналогией домена является каталог файловой системы.

Если в каждом домене и поддомене обеспечивается уникальность имен следую- щего уровня иерархии, то и вся система имен будет состоять из уникальных имен.

По аналогии с файловой системой, в доменной системе имен различают краткие

имена, относительные имена и полные доменные имена.

Краткое имя - это имя конечного узла сети: хоста или порта маршрутизатора. Краткое имя - это лист дерева имен.

Относительное имя - это составное имя, начинающееся с некоторого уровня ие- рархии, но не самого верхнего. Например, wwwi.zil - это относительное имя.

Полное доменное имя (fully qualified domain name, FQDN) включает составляю- щие всех уровней иерархии, начиная от краткого имени и кончая корневой точкой: wwwl.zil.mmt.ru.

Распределение и отображение адресов

Распределение IP-адресов

Номера сетей назначаются либо централизованно, если сеть является частью Internet, либо произвольно, если сеть работает автономно. Номера узлов и в том и в другом случае администратор волен назначать по своему усмотрению, не выходя, ра- зумеется, из разрешенного для этого класса сети диапазона.

Координирующую роль в централизованном распределении IP-адресов до неко- торого времени играла организация InterNIC, однако с ростом сети задача распределе- ния адресов стала слишком сложной, и InterNIC делегировала часть своих функций другим организациям и крупным поставщикам услуг Internet.

Назначение IP-адресов узлам сети даже при не очень большом размере сети мо- жет представлять для администратора утомительную процедуру. Протокол Dynamic Host Configuration Protocol (DHCP) освобождает администратора от этих проблем, ав- томатизируя процесс назначения IP-адресов.

Протокол DHCP работает в соответствии с моделью клиент-сервер. Во время старта системы компьютер, являющийся DHCP-клиентом, посылает в сеть широкове- щательный запрос на получение IP-адреса. DHCP - cepвер откликается и посылает со- общение-ответ, содержащее IP-адрес. Предполагается, что DHCP-клиент и DHCP- сервер находятся в одной IP-сети.

IP-адрес может быть назначен:

1.динамически (на время аренды - lease duration)

2.вручную (указывается пара: IP-адрес физический адрес, и DHCP-сервер всегда использует его)

3.автоматическое статическое назначение (IP-адрес физический адрес назнача- ется автоматически, из числа адресов, задаваемых администратором, на неогра- ниченное время аренды)

DHCP-сервер может назначить клиенту не только IP-адрес клиента, но и другие параметры стека TCP/IP, необходимые для его эффективной работы, например, маску, IP-адрес маршрутизатора по умолчанию, IP-адрес сервера DNS, доменное имя компью- тера и т. п.

Отображение IP-адреса на локальный адрес

Выполняется уровнем межсетевых интерфейсов стека IP/TCP. Для этого исполь- зуется протокол разрешения адресов ARP (Address Resolution Protocol). Есть протокол RARP (реверсивный ARP), он позволяет по локальному адресу узнать свой IP-адрес, используется на бездисковых рабочих станциях.

Для определения локального адреса по IP-адресу используется протокол разре- шения адреса (Address Resolution Protocol, ARP). Протокол ARP работает различным образом в зависимости от того, какой протокол канального уровня работает в данной сети - протокол локальной сети (Ethernet, Token Ring, FDDI) с возможностью широко-

вещательного доступа одновременно ко всем узлам сети или же протокол глобальной сети (Х.25, frame relay), как правило не поддерживающий широковещательный доступ. Существует также протокол, решающий обратную задачу - нахождение IP-адреса по известному локальному адресу. Он называется реверсивным ARP (Reverse Address Resolution Protocol, RARP) и используется при старте бездисковых станций, не знаю- щих в начальный момент своего IP-адреса, но знающих адрес своего сетевого адаптера.

Необходимость в обращении к протоколу ARP возникает каждый раз, когда мо- дуль IP передает пакет на уровень сетевых интерфейсов, например драйверу Ethernet. IP-адрес узла назначения известен модулю IP. Требуется на его основе найти МАС - адрес узла назначения.

Работа протокола ARP начинается с просмотра так называемой АRP-таблицы (табл. 5.5). Каждая строка таблицы устанавливает соответствие между IP-адресом и МАС - адресом. Для каждой сети, подключенной к сетевому адаптеру компьютера или к порту маршрутизатора, строится отдельная ARP-таблица.

Поле «Тип записи» может содержать одно из двух значений - «динамический» или «статический». Статические записи создаются вручную с помощью утилиты агр и не имеют срока устаревания, точнее, они существуют до тех пор, пока компьютер или маршрутизатор не будут выключены. Динамические же записи создаются модулем протокола ARP, использующим широковещательные возможности локальных сетевых технологий. Динамические записи должны периодически обновляться. Если запись не обновлялась в течение определенного времени (порядка нескольких минут), то она ис- ключается из таблицы. Таким образом, в ARP - таблице содержатся записи не обо всех узлах сети, а только о тех, которые активно участвуют в сетевых операциях. Поскольку такой способ хранения информации называют кэшированием, ARP-таблицы иногда на- зывают ARP-кэш.

В глобальных сетях администратору сети чаще всего приходится вручную фор- мировать ARP-таблицы, в которых он задает, например, соответствие IP-адреса адресу узла сети Х.25, который имеет для протокола IP смысл локального адреса. В последнее время наметилась тенденция автоматизации работы протокола ARP и в глобальных се- тях. Для этой цели среди всех маршрутизаторов, подключенных к какой-либо глобаль- ной сети, выделяется специальный маршрутизатор, который ведет ARP-таблицу для всех остальных узлов и маршрутизаторов этой сети. При таком централизованном под- ходе для всех узлов и маршрутизаторов вручную нужно задать только IP-адрес и ло- кальный адрес выделенного маршрутизатора. Затем каждый узел и маршрутизатор ре- гистрирует свои адреса в выделенном маршрутизаторе, а при необходимости установ- ления соответствия между IP-адресом и локальным адресом узел обращается к выде- ленному маршрутизатору с запросом и автоматически получает ответ без участия ад- министратора. Работающий таким образом маршрутизатор называют ARP-сервером.

Итак, после того как модуль IP обратился к модулю ARP с запросом на разре- шение адреса, происходит поиск в ARP-таблице указанного в запросе IP-адреса. Если таковой адрес в ARP-таблице отсутствует, то исходящий IP-пакет, для которого нужно было определить локальный адрес, ставится в очередь. Далее протокол ARP формирует свой запрос (ARP-запрос), вкладывает его в кадр протокола канального уровня и рас- сылает запрос широковещательно.