Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GEK / Перечень вопросов 2014_ВКСС.docx
Скачиваний:
87
Добавлен:
18.05.2015
Размер:
2.66 Mб
Скачать

Формат пакета ip

Стандартом IP определен формат пакета:

0                   3

4                   7

8                15

16                                         31

Версия

Длина заголовка пакета

Тип сервиса

Длина полного пакета (в байтах)

Идентификатор пакета

Поле управления флагов

Смещение фрагмента

Время жизни дейтаграммы

Идентификатор протокола верхнего уровня

Контрольная сумма заголовка

Адрес источника

Адрес получателя

Дополнительные услуги / заполнитель

Текст межсетевой дейтаграммы

Длина заголовка в кол-ве 32-разрядных слов. Тип сервиса:

0

1

2

3

4

5

6

7

Приоритет

D

T

R

0

0

Приоритет:  111 – сетевая управляющая информация;                      110 – межсетевая управляющая информация;                      101 – критическая информация;                      100 – сверхмолния;                      011 – молния;                      010 – срочная информация;                      001 – приоритетная информация;                      000 – обычная информация. Д – бит задержки: 0 – нормальная, 1 – низкая. Т – требуемая производительность: 1 – высокая, 0 – нормальная. R – требуемая надёжность: 1 – высокая, 0 – нормальная.

Идентификатор пакета используется при фрагментации.

Поле управляющих флагов:

0

DF

MF

MF – признак продолжения фрагментации; DF – признак разрешения фрагментации.

Пакет IP состоит из заголовка и поля данных. Заголовок пакета имеет следующие поля:

  1. Поле Номер версии (VERS) указывает версию протокола IP. Сейчас повсеместно используется версия 4 и готовится переход на версию 6, называемую также IPng (IP next generation).

  2. Поле Длина заголовка (HLEN) пакета IP занимает 4 бита и указывает значение длины заголовка, измеренное в 32-битовых словах. Обычно заголовок имеет длину в 20 байт (пять 32-битовых слов), но при увеличении объема служебной информации эта длина может быть увеличена за счет использования дополнительных байт в поле Резерв (IP OPTIONS).

  3. Поле Тип сервиса (SERVICE TYPE) занимает 1 байт и задает приоритетность пакета и вид критерия выбора маршрута. Первые три бита этого поля образуют подполе приоритета пакета (PRECEDENCE). Приоритет может иметь значения от 0 (нормальный пакет) до 7 (пакет управляющей информации). Маршрутизаторы и компьютеры могут принимать во внимание приоритет пакета и обрабатывать более важные пакеты в первую очередь. Поле Тип сервисасодержит также три бита, определяющие критерий выбора маршрута. Установленный бит D (delay) говорит о том, что маршрут должен выбираться для минимизации задержки доставки данного пакета, бит T - для максимизации пропускной способности, а бит R - для максимизации надежности доставки.

  4. Поле Общая длина (TOTAL LENGTH) занимает 2 байта и указывает общую длину пакета с учетом заголовка и поля данных.

  5. Поле Идентификатор пакета (IDENTIFICATION) занимает 2 байта и используется для распознавания пакетов, образовавшихся путем фрагментации исходного пакета. Все фрагменты должны иметь одинаковое значение этого поля.

  6. Поле Флаги (FLAGS) занимает 3 бита, оно указывает на возможность фрагментации пакета (установленный бит Do not Fragment - DF - запрещает маршрутизатору фрагментировать данный пакет), а также на то, является ли данный пакет промежуточным или последним фрагментом исходного пакета (установленный бит More Fragments - MF - говорит о том пакет переносит промежуточный фрагмент).

  7. Поле Смещение фрагмента (FRAGMENT OFFSET) занимает 13 бит, оно используется для указания в байтах смещения поля данных этого пакета от начала общего поля данных исходного пакета, подвергнутого фрагментации. Используется при сборке/разборке фрагментов пакетов при передачах их между сетями с различными величинами максимальной длины пакета.

  8. Поле Время жизни (TIME TO LIVE) занимает 1 байт и указывает предельный срок, в течение которого пакет может перемещаться по сети. Время жизни данного пакета измеряется в секундах и задается источником передачи средствами протокола IP. На шлюзах и в других узлах сети по истечении каждой секунды из текущего времени жизни вычитается единица; единица вычитается также при каждой транзитной передаче (даже если не прошла секунда). При истечении времени жизни пакет аннулируется.

  9. Идентификатор Протокола верхнего уровня (PROTOCOL) занимает 1 байт и указывает, какому протоколу верхнего уровня принадлежит пакет (например, это могут быть протоколы TCP, UDP или RIP).

  10. Контрольная сумма (HEADER CHECKSUM) занимает 2 байта, она рассчитывается по всему заголовку.

  11. Поля Адрес источника (SOURCE IP ADDRESS) и Адрес назначения (DESTINATION IP ADDRESS) имеют одинаковую длину - 32 бита, и одинаковую структуру.

  12. Поле Резерв (IP OPTIONS) является необязательным и используется обычно только при отладке сети. Это поле состоит из нескольких подполей, каждое из которых может быть одного из восьми предопределенных типов. В этих подполях можно указывать точный маршрут прохождения маршрутизаторов, регистрировать проходимые пакетом маршрутизаторы, помещать данные системы безопасности, а также временные отметки. Так как число подполей может быть произвольным, то в конце поля Резерв должно быть добавлено несколько байт для выравнивания заголовка пакета по 32-битной границе.

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

  1. Адресация в IP-сетях. Особенности протокола IP.V6.

Каждый компьютер в сети TCP/IP имеет адреса трех уровней:

  • Локальный адрес узла, определяемый технологией, с помощью которой построена отдельная сеть, в которую входит данный узел. Для узлов, входящих в локальные сети - это МАС-адрес сетевого адаптера или порта маршрутизатора, например, 11-А0-17-3D-BC-01. Эти адреса назначаются производителями оборудования и являются уникальными адресами, так как управляются централизовано. Для всех существующих технологий локальных сетей МАС-адрес имеет формат 6 байтов: старшие 3 байта - идентификатор фирмы производителя, а младшие 3 байта назначаются уникальным образом самим производителем. Для узлов, входящих в глобальные сети, такие как Х.25 или frame relay, локальный адрес назначается администратором глобальной сети.

  • IP-адрес, состоящий из 4 байт, например, 109.26.17.100. Этот адрес используется на сетевом уровне. Он назначается администратором во время конфигурирования компьютеров и маршрутизаторов. IP-адрес состоит из двух частей: номера сети и номера узла. Номер сети может быть выбран администратором произвольно, либо назначен по рекомендации специального подразделения Internet NIC (Network Information Center), если сеть должна работать как составная часть Internet. Обычно провайдеры услуг Internet получают диапазоны адресов у подразделений INIC, а затем распределяют их между своими абонентами.

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

  • Символьный идентификатор-имя, например, SERV1.IBM.COM. Этот адрес назначается администратором и состоит из нескольких частей, например, имени машины, имени организации, имени домена. Такой адрес, называемый также DNS-именем, используется на прикладном уровне, например, в протоколах FTP или telnet.

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

128.10.2.30 - традиционная десятичная форма представления адреса,  10000000 00001010 00000010 00011110 - двоичная форма представления этого же адреса.

В таблице 4 представлена структура IP-адреса.

Табл.4. Структура IP-адреса.

Класс А

0

N сети

N узла

Класс В

1 0

N сети

N узла

Класс С

1 1 0

N сети

N узла

Класс D

1 1 1 0

адрес группы multicast

Класс Е

1 1 1 1 0

зарезервирован

Адрес состоит из двух логических частей - номера сети и номера узла в сети. Какая часть адреса относится к номеру сети, а какая к номеру узла, определяется значениями первых битов адреса:

  • Если адрес начинается с 0, то сеть относят к классу А, и номер сети занимает один байт, остальные 3 байта интерпретируются как номер узла в сети. Сети класса А имеют номера в диапазоне от 1 до 126. (Номер 0 не используется, а номер 127 зарезервирован для специальных целей, о чем будет сказано ниже.) В сетях класса А количество узлов должно быть больше 216 , но не превышать 224.

  • Если первые два бита адреса равны 10, то сеть относится к классу В и является сетью средних размеров с числом узлов 28 - 216. В сетях класса В под адрес сети и под адрес узла отводится по 16 битов, то есть по 2 байта.

  • Если адрес начинается с последовательности 110, то это сеть класса С с числом узлов не больше 28. Под адрес сети отводится 24 бита, а под адрес узла - 8 битов.

  • Если адрес начинается с последовательности 1110, то он является адресом класса D и обозначает особый, групповой адрес - multicast. Если в пакете в качестве адреса назначения указан адрес класса D, то такой пакет должны получить все узлы, которым присвоен данный адрес.

  • Если адрес начинается с последовательности 11110, то это адрес класса Е, он зарезервирован для будущих применений.

В следующей таблице приведены диапазоны номеров сетей, соответствующих каждому классу сетей.

Табл.5. Диапазоны номеров в классах A-E.

Класс

Наименьший адрес

Наибольший адрес

A

01.0.0.0

126.0.0.0

B

128.0.0.0

191.255.0.0

C

192.0.1.0

223.255.255.0

D

224.0.0.0

239.255.255.255

E

240.0.0.0

247.255.255.255

В протоколе IP существует несколько соглашений об особой интерпретации некоторых IP-адресов:

  • если IР-адрес состоит только из двоичных нулей, 

    0 0 0 0 ..................................... 0

  • то он обозначает адрес того узла, который сгенерировал этот пакет;

  • если в поле номера сети стоят 0, 

    0 0 0 0 ................. 0

    Номер узла

  • то по умолчанию считается, что этот узел принадлежит той же самой сети, что и узел, который отправил пакет;

  • если все двоичные разряды IP-адреса равны 1, 

    1 1 1 1 ..................................... 1

  • то пакет с таким адресом назначения должен рассылаться всем узлам, находящимся в той же сети, что и источник этого пакета. Такая рассылка называется ограниченным широковещательным сообщением (limited broadcast);

  • если в поле адреса назначения стоят сплошные 1, 

    Номер сети

    1 1 1 1 ................ 1

  • то пакет, имеющий такой адрес рассылается всем узлам сети с заданным номером. Такая рассылка называется широковещательным сообщением (broadcast);

  • адрес 127.0.0.1 зарезервирован для организации обратной связи при тестировании работы программного обеспечения узла без реальной отправки пакета по сети. Этот адрес имеет название loopback.

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

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

Маршрутизация пакетов с помощью IP-адресов.

Рассмотрим теперь принципы, на основании которых в сетях IP происходит выбор маршрута передачи пакета между сетями.

В стеке TCP/IP маршрутизаторы и конечные узлы принимают решения о том, кому передавать пакет для его успешной доставки узлу назначения, на основании так называемых таблиц маршрутизации (routing tables).

Следующая таблица представляет собой типичный пример таблицы маршрутов, использующей IP-адреса сетей:

Табл.8. Пример таблицы маршрутов.

Адрес сети назначения

Адрес следующего маршрутизатора

Номер выходного порта

Расстояние до сети назначения

56.0.0.0

198.21.17.7

1

20

56.0.0.0

213.34.12.4

2

130

116.0.0.0

213.34.12.4

2

1450

129.13.0.0

198.21.17.6

1

50

198.21.17.0

-

2

0

213.34.12.0

-

1

0

default

198.21.17.7

1

-

В этой таблице в столбце "Адрес сети назначения" указываются адреса всех сетей, которым данный маршрутизатор может передавать пакеты. В стеке TCP/IP принят так называемый одношаговый подход к оптимизации маршрута продвижения пакета (next-hop routing) - каждый маршрутизатор и конечный узел принимает участие в выборе только одного шага передачи пакета. Поэтому в каждой строке таблицы маршрутизации указывается не весь маршрут в виде последовательности IP-адресов маршрутизаторов, через которые должен пройти пакет, а только один IP-адрес - адрес следующего маршрутизатора, которому нужно передать пакет. Вместе с пакетом следующему маршрутизатору передается ответственность за выбор следующего шага маршрутизации. Одношаговый подход к маршрутизации означает распределенное решение задачи выбора маршрута. Это снимает ограничение на максимальное количество транзитных маршрутизаторов на пути пакета.

(Альтернативой одношаговому подходу является указание в пакете всей последовательности маршрутизаторов, которые пакет должен пройти на своем пути. Такой подход называется маршрутизацией от источника - Source Routing. В этом случае выбор маршрута производится конечным узлом или первым маршрутизатором на пути пакета, а все остальные маршрутизаторы только отрабатывают выбранный маршрут, осуществляя коммутацию пакетов, то есть передачу их с одного порта на другой. Алгоритм Source Routing применяется в сетях IP только для отладки, когда маршрут задается в поле Резерв (IP OPTIONS) пакета.)

В случае, если в таблице маршрутов имеется более одной строки, соответствующей одному и тому же адресу сети назначения, то при принятии решения о передаче пакета используется та строка, в которой указано наименьшее значение в поле "Расстояние до сети назначения".

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

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

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

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

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

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

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

Записи в таблице маршрутизации, относящиеся к сетям, непосредственно подключенным к маршрутизатору, в поле "Расстояние до сети назначения" содержат нули.

Особенности протокола IP.V6.

Интернет-протокол версии 6 (IPv6) представляет сетевой слой пакетной передачи данных между сетями. Он разрабатывается в качестве преемника IPv4, текущей версии интернет-протокола для общего использования в Интернете.

Основным отличием IPv6 является гораздо большее адресное пространство, что добавляет большую гибкость при распределении адресов. Увеличенная длина адреса позволяет отказаться от использования NAT (network address translation), что позволяет избежать нехватки интернет-адресов, а также упрощает назначения адресов и нумерации при смене интернет-провайдера.

Адресное пространство IPv6 по настоящему огромно. IPv6 поддерживает 2128 (примерно 3,4x1038 адресов). Таким образом на каждого из 6,5 миллиардов жителей Земли приходится по 5x1028 (около 295) адресов. Т.е. более чем в десять миллиардов миллиардов миллиардов раз больше адресов, чем поддерживает IPv4.

Большое число адресов позволяет использовать иерархическое распределение адресов, упрощая маршрутизацию. В IPv6 изменение нумерации осуществляется практически автоматически, поскольку идентификатор узла (хоста) отделен от идентификатора сети провайдера. Разделение адресных пространств провайдеров и узлов добавляет "неэффективные" биты в адресное пространство, однако чрезвычайно эффективно для решения оперативных вопросов, таких как изменение сервис-провайдера.

Главное отличие IPv6 от IPv4 - длина сетевых адресов. IPv6-адреса имеют длину128 (так определено в RFC 4291), в то время IPv4-адреса всего 32 бита. Таким образом адресное пространство IPv4 содержит около 4 млрд. адресов, IPv6имеет 3,4 × 10^38 уникальных адресов.

Как правило адрес IPv6 состоит из двух логических частей: 64-битного префикса (под-)сети и 64-битного адреса узла, который либо автоматически генерируется на основе MAC-адреса или устанавливается вручную. Так как уникальный во всем мире MAC-адрес позволяет отслеживать пользователей оборудования, то в IPv6 были внесены изменения (RFC 3041) с возможности отключения постоянной привязки оборудования к IPv6 адресу. Таким образом, удалось восстановить некоторые возможности анонимности, существующие в IPv4. RFC 3041 определяет механизм, с помощью которого, вместо MAC-адресов могут быть использованы случайные битовые строки.

Адреса IPv6, как правило, записываются в виде восьми групп по четыре шестнадцатеричные цифры, где каждая группа разделяется двоеточием (:). Например, 2001:0db8:85a3:08d3:1319:8a2e:0370:7334 является IPv6-адресом.

Если одна или несколько из четырех групп цифр нули (0000), они могут быть опущены и заменены двумя двоеточиями (::). Например, 2001:0db8:0000:0000:0000:0000:1428:57ab может быть сокращен до 2001:0db8::1428:57. В соответствии с этим правилом, любое число последовательных 0000-групп может быть сокращены до двух двоеточий, до тех пор, пока существует только одно двойное двоеточие. Ведущие нули в группе могут быть опущены (например ::1 для localhost). Таким образом, следующие адреса правильны и идентичны:

  • 2001:0db8:0000:0000:0000:0000:1428:57ab

  • 2001:0db8:0000:0000:0000::1428:57ab

  • 2001:0db8:0:0:0:0:1428:57ab

  • 2001:0db8:0:0::1428:57ab

  • 2001:0db8::1428:57ab

  • 2001:db8::1428:57ab

Адрес с двумя двойными двоеточиями является недействительным, поскольку создает двусмысленность в нотации. Например, сократив 2001:0000:0000:FFD3:0000:0000:0000:57ab до 2001::FFD3::57ab мы получим возможные комбинации: 2001:0000:0000:0000:0000:FFD3:0000:57ab, 2001:0000:FFD3:0000:0000:0000:0000:57ab и т.д.

Последовательность из 4 байт в конце IPv6-адреса может быть записана в десятичной форме, используя в качестве разделителя точки. Эта нотация часто используется для совместимости с адресами. Кроме того, это решение удобно, когда речь идет о смешанной среде IPv4 и IPv6-адресов. Общее обозначение имеет форму х:х:х:х:х:х:d.d.d.d, где х - 6 групп шестнадцатеричных цифр верхнего октета, а d соответствует десятичным цифрам нижнего октета адреса, поскольку он в формате IPv4. Так, например, ::ffff:12.34.56.78 соответствует ::ffff:0c22:384e или 0:0:0:0:0:ffff:0c22:384e. Следует помнить, что использование данной нотации не рекомендуется и не поддерживается многими приложениями.

IPv6-пакет, состоит из двух основных частей: заголовка и "полезной нагрузки".

Заголовок находится в первых 40 октетах (320 бит) в пакете и содержит поля:

  • Версия - версии IP (4 бита).

  • Класс трафика – приоритет пакета (8-бит). Существует два класса: где источник обеспечивает контроль и где источник не обеспечивает контроль трафика.

  • Метка потока – QoS-менеджмент (20 бит). Первоначально был создан для предоставления специальных сервисов в реальном времени, но в настоящее время не используется.

  • Длина полезной нагрузки - длина полезной нагрузки в байтах (16 бит). Если заполнена нулями, значит используется Jumbo payload.

  • Следующий заголовок - определяет следующий инкапсулированный протокол. Значения, совместимы с теми, что определенны для протокола IPv4 (8 бит).

  • Лимит скачков - заменяет поле time to live в IPv4 (8 бит).

  • Источник и адрес назначения - 128 бит каждый.

Полезная нагрузка может быть размером до 64 Kб в стандартном режиме, или большего размера в Jumbo payload режиме.

Фрагментация производится только в отправляющем узле IPv6: маршрутизаторы никогда не фрагментируют пакеты, и ожидается, что узлы будут использовать PMTU.

Поле "Протокол" из IPv4 заменяется на поле "Следующий заголовок". Это поле, как правило, определяет уровень транспортного протокола, используемого в "полезной нагрузке".

  1. Отображение IP-адресов на локальные адреса и автоматизация процесса назначения IP-адресов.

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

Функциональ­ность протокола ARP сводится к решению двух задач. Одна часть протокола опре­деляет физические адреса при посылке дейтаграммы, другая отвечает на запросы устройств в сети. Протокол ARP предполагает, что каждое устройство «знает» как свой IP -адрес, так и свой физический адрес.

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

В ARP -таблице могут содержаться как статические, так и динамические записи. Динамические записи добавляются и удаляются автоматически, статические заносятся вручную.

Так как большинство устройств в сети поддерживает динамическое разреше­ние адресов, то администратору, как правило, нет необходимости собственноруч­но указывать записи протокола ARP в таблице адресов.

Кроме того, ARP -таблица всегда содержит запись с физическим широко­вещательным адресом ( OxFFFFFFFFFFFF ) для локальной сети. Эта запись позволяет устройству принимать широковещательные ARP -запросы. Каждая запись в ARP -таблице имеет свое время жизни, например для операционной системы Microsoft Windows 2000 оно составляет 10 минут. При добавлении записи для нее активируется таймер. Если запись не востребована в первые две минуты, она удаляется. Если используется — будет существовать на протяжении 10 минут. В некоторых реализациях протокола ARP новый таймер устанавливается после каждого обращения к записи в ARP -таблице.

Сообщения протокола ARP при передаче по сети инкапсулируются в поле данных кадра. Они не содержат IP -заголовка. В отличие от сообщений большинства протоколов, сообщения ARP не имеют фиксированного формата заголовка. Это объясняется тем, что протокол был разработан таким образом, чтобы он был применим для разрешения адресов в различных сетях. Фактически протокол способен работать с произвольными физическими адресами и сетевыми протоколами.

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

Рис. 15.1. Структура пакета ARP.

Обычно IP-адреса хранятся на диске (в конфигурационных файлах), откуда они считываются при загрузке системы. Проблема возникает тогда, когда необходимо инициализировать рабочую станцию, не имеющую диска. Бездисковые системы часто используют операции типа TFTP для переноса из сервера в память образа операционной системы, а это нельзя сделать, не зная IP-адресов сервера и ЭВМ-клиента. Записывать эти адреса в ПЗУ не представляется целесообразным, так как их значения зависят от точки подключения ЭВМ и могут меняться. Для решения данной проблемы был разработан протокол обратной трансляции адресов (RARP – Reverse Address Resolution Protocol, RFC-0903, смотри также ниже описание протокола BOOTP). Форматы сообщений RARP сходны с ARP (см. рис. 5.10), хотя сами протоколы принципиально различны. Протокол RARP предполагает наличие специального сервера, обслуживающего RARPзапросы и хранящего базу данных о соответствии аппаратных адресов протокольным. Этот протокол работает с любой транспортной средой, в случае же кадра Ethernet в поле тип будет записан код 803516.

Рис. 15.2. Структура пакета RARP.

Автоматизация процесса назначения IP-адресов (протокол DHCP).

Протокол динамической конфигурации ЭВМ DHCP (Dynamic Host Configuration Protocol) служит для предоставления конфигурационных параметров ЭВМ, подключенных к Интернет. DHCP имеет два компонента: протокол предоставления специфических для ЭВМ конфигурационных параметров со стороны DHCP-сервера и механизм предоставления ЭВМ сетевых адресов.

DHCP построен по схеме клиентсервер, где DHCP-сервер выделяет сетевые адреса и доставляет конфигурационные параметры динамически конфигурируемым ЭВМ.

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

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

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

Протокол DHCP предназначен для предоставления клиентам конфигурационных параметров, описанных в RFC Host Requirements. После получения через DHCP необходимых параметров, клиент должен быть готов к обмену пакетами с любой другой ЭВМ в Интернет. Не все эти параметры необходимы для первичной инициализации клиента. Клиент и сервер могут согласовывать список необходимых параметров.

Протокол DHCP позволяет, но не требует конфигурации параметров клиента, не имеющих прямого отношения к IP-протоколу. DHCP не обращается к системе DNS для регистрации адреса. DHCP не может использоваться для конфигурации маршрутизаторов.

DHCP должен:

  • гарантировать, что любой специфический сетевой адрес не будет использоваться более чем одним клиентом одновременно

  • поддерживать DHCP конфигурацию клиента при стартовой перезагрузке DHCP-клиента. Клиенту DHCP должен, при каждом запросе по мере возможности, присваиваться один и тот же набор конфигурационных параметров (например, сетевой адрес)

  • поддерживать конфигурацию DHCP-клиента при перезагрузке сервера, и, по мере возможности, DHCP-клиенту должен присваиваться один и тот же набор конфигурационных параметров

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

  • поддерживать фиксированное или постоянное присвоение конфигурационных параметров для заданного клиента

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

Например, ключ может представлять собой пару (номер IP-субсети, аппаратный адрес), чтобы допустить повторное или даже одновременное применение одних и тех же аппаратных адресов в различных субсетях. Заметим, что должен быть определен тип аппаратного адреса, чтобы можно было решить проблему возможного дублирования при изменении порядка бит в случае смешения типов оборудования. В качестве альтернативы ключ может представлять собой пару (номер IP-субсети, имя ЭВМ), позволяя серверу присвоить параметры DHCPклиенту, который переместился в другую субсеть или сменил свой аппаратный адрес (возможно, изза выхода из строя и замены сетевого интерфейса). Протокол определяет то, что ключ представляет собой (номер IP-субсети, аппаратный адрес), если только клиент не предлагает идентификатор в явном виде, используя опцию client identifier. Клиент может запросить DHCPсервис, чтобы получить свои конфигурационные параметры. Интерфейс клиента к депозитарию конфигурационных параметров реализуется с помощью протокольных сообщений запроса и откликов серверов, несущих в себе конфигурационные параметры.

Вторым видом сервиса, предоставляемым DHCP, является временное или постоянное выделение клиенту сетевого (IP) адреса. Основной механизм для динамического присвоения сетевых адресов достаточно прост: клиент запрашивает использование адреса на определенный период времени. Механизм выделения адреса (ассоциация DHCPсерверов) гарантирует, что адрес в течение оговоренного времени не будет использован для других целей, и пытается прислать тот же сетевой адрес всякий раз, когда клиент его запрашивает. Клиент может расширить это время последующими запросами. Клиент может послать серверу сообщение об освобождении адреса, когда клиент более не нуждается в этом адресе. Клиент может запросить постоянное присвоение адреса, потребовав бесконечное значение времени выделения адреса. Даже при постоянном выделении адресов сервер может определить большой, но не бесконечный срок аренды адреса — тогда будет возможно детектировать факт, что клиент перестал работать.

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

При использовании DHCP применяется следующая процедура:

  1. Клиент широковещательно пересылает сообщение DHCPDISCOVER по локальной физической субсети. Сообщение DHCPDISCOVER может включать опции, которые предлагают значения для сетевого адреса и длительности его использования. Агент транспортировки BOOTP может передать сообщение DHCP-серверам, которые размещены за пределами данной физической субсети

  2. Каждый сервер может откликнуться сообщением DHCPOFFER, которое содержит сетевой адрес в поле yiaddr (и другие конфигурационные параметры в опциях DHCP). При выделении нового адреса серверы должны проверять, чтобы предлагаемый сетевой адрес не использовался где­то еще; например, сервер может протестировать предлагаемый адрес с помощью эхозапроса ICMP. Сервер отправляет клиенту сообщение DHCPOFFER.

  3. Клиент получает одно или более сообщений DHCPOFFER от одного или более серверов. Клиент выбирает один сервер, которому пошлет запрос конфигурационных параметров, согласно предложению, содержащемуся в сообщении DHCPOFFER. Клиент широковещательно отправляет сообщение DHCPREQUEST, которое должно содержать опцию server identifier, чтобы указать, какой сервер им выбран, и которое может включать в себя другие опции, специфицирующие желательные конфигурационные значения. Клиент реализует таймаут и повторно посылает сообщение DHCPDISCOVER, если не получает сообщений DHCPOFFER

  4. Серверы получают широковещательное сообщение DHCPREQUEST от клиента. Серверы, не выбранные сообщением DHCPREQUEST, используют сообщение как уведомления о том, что клиент отверг предложение сервера. Сервер, выбранный сообщением DHCPREQUEST, осуществляет запись конфигурационного набора клиента в постоянную память и реагирует сообщением DHCPACK, содержащим конфигурационные параметры для клиента, приславшего запрос. Если выбранный сервер не может адекватно реагировать на сообщение DHCPREQUEST (например, запрошенный сетевой адрес уже выделен), сервер должен ответить посылкой сообщения DHCPNAK. Сервер должен пометить адрес, предложенный клиенту в сообщении DHCPOFFER, как доступный, если сервер не получил от клиента никакого сообщения DHCPREQUEST.

  5. Клиент получает сообщение DHCPACK, содержащее конфигурационные параметры. Клиент должен выполнить окончательную проверку параметров (например, запустить ARP для выделенного сетевого адреса) и фиксировать длительность предоставления конфигурационных параметров, прописанную в сообщении DHCPACK. Клиент окончательно сконфигурирован. Если клиент обнаруживает, что адрес уже используется (например, с помощью ARP), он должен послать серверу сообщение DHCPDECLINE и повторно запустить процесс конфигурации. Клиент должен подождать как минимум 10 секунд, прежде чем заново начинать конфигурационную процедуру, чтобы избежать возникновения лишнего сетевого трафика. Если клиент получает сообщение DHCPNAK, он перезапускает конфигурационный процесс.

  6. Клиент реализует таймаут и повторно посылает сообщение DHCPREQUEST, если он не получает ни сообщения DHCPACK ни DHCPNAK. Клиент повторно посылает DHCPREQUEST согласно алгоритму повторной пересылки. Клиент должен выбрать число повторных передач сообщения DHCPREQUEST адекватным, чтобы обеспечить достаточную вероятность доступа к серверу, не заставляя клиента (и пользователя этого клиента) ждать слишком долго; например, клиент может повторно послать сообщение DHCPREQUEST четыре раза, при полной задержке 60 секунд, прежде чем повторно запустит процедуру инициализации. Если клиент не получает ни сообщения DHCPACK ни DHCPNAK после применения алгоритма повторной пересылки, клиент возвращается в исходное состояние и перезапускает процесс инициализации. Клиент должен уведомить пользователя о том, что процесс инициализации не прошел и делается повторная попытка.

  7. Клиент может решить отказаться от аренды сетевого адреса путем посылки серверу сообщения DHCPRELEASE. Клиент идентифицирует набор параметров, от которого он отказывается, с помощью своего идентификатора, или chaddr и сетевого адреса в сообщении DHCPRELEASE. Если клиент использовал идентификатор клиента, когда он получил набор конфигурационных параметров, клиент должен использовать тот же идентификатор клиента (client identifier) в сообщении DHCPRELEASE.

  1. Беспроводные компьютерные сети. Стандарт IEEE 802.11.

До недавнего времени беспроводная связь в локальных сетях практически не применялась. Однако с конца 90-х годов 20 века наблюдается настоящий бум беспроводных локальных сетей (WLAN – Wireless LAN). Это связано в первую очередь с успехами технологии и с теми удобствами, которые способны предоставить беспроводные сети. По имеющимся прогнозам, число пользователей беспроводных сетей в 2005 году достигнет 44 миллионов, а 80% всех мобильных компьютеров будут оснащены встроенными средствами доступа к таким сетям.

С увеличением числа мобильных пользователей возникает острая необходимость в оперативном создании коммуникаций между ними, в обмене данными, в быстром получении информации. Поэтому естественным образом происходит интенсивное развитие технологий беспроводных коммуникаций. Особенно это актуально в отношении беспроводных сетей, или так называемых WLAN-сетей (Wireless Local Area Network). Сети Wireless LAN - это беспроводные сети (вместо обычных проводов в них используются радиоволны). Установка таких сетей рекомендуется там, где развертывание кабельной системы невозможно или экономически нецелесообразно.

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

Благодаря функции роуминга между точками доступа пользователи могут перемещаться по территории покрытия сети Wi-Fi без разрыва соединения.

WLAN-сети имеют ряд преимуществ перед обычными кабельными сетями:

  • WLAN-сеть можно очень быстро развернуть, что очень удобно при проведении презентаций или в условиях работы вне офиса;

  • пользователи мобильных устройств при подключении к локальным беспроводным сетям могут легко перемещаться в рамках действующих зон сети;

  • скорость современных сетей довольно высока (до 300 Мб/с), что позволяет использовать их для решения очень широкого спектра задач;

  • WLAN-сеть может оказаться единственным выходом, если невозможна прокладка кабеля для обычной сети.

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

Сегмент Wi-Fi сети может использоваться как самостоятельная сеть, либо в составе более сложной сети, содержащей как беспроводные, так и обычные проводные сегменты. Wi-Fi сеть может использоваться:

  • для беспроводного подключения пользователей к сети;

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

  • для подключения к сетям провайдера Internet-услуги вместо использования выделенной проводной линии или обычного модемного соединения.

В 1997 году был принят стандарт для беспроводных сетей IEEE 802.11. Сейчас этот стандарт активно развивается и включает в себя уже несколько разделов, в том числе три локальные сети (802.11a, 802.11b и 802.11g). Стандарт содержит следующие спецификации:

  • 802.11 – первоначальный стандарт WLAN. Поддерживает передачу данных со скоростями от 1 до 2 Мбит/с.

  • 802.11a – высокоскоростной стандарт WLAN для частоты 5 ГГц. Поддерживает скорость передачи данных 54 Мбит/с.

  • 802.11b – стандарт WLAN для частоты 2,4 ГГц. Поддерживает скорость передачи данных 11 Мбит/с.

  • 802.11e – устанавливает требования качества запроса, необходимое для всех радио интерфейсов IEEE WLAN.

  • 802.11f – описывает порядок связи между равнозначными точками доступа.

  • 802.11g – устанавливает дополнительную технику модуляции для частоты 2,4 ГГц. Предназначен для обеспечения скоростей передачи данных до 54 Мбит/с.

  • v802.11h – описывает управление спектром частоты 5 ГГц для использования в Европе и Азии.

  • 802.11i – исправляет существующие проблемы безопасности в областях аутентификации и протоколов шифрования.

Разработкой и поддержкой стандарта IEEE 802.11 занимается комитет Wi-Fi Alliance. Термин Wi-Fi (wireless fidelity) используется в качестве общего имени для стандартов 802.11a и 802.11b, а также всех последующих, относящихся к беспроводным локальным сетям (WLAN).

Оборудование беспроводных сетей включает в себя точки беспроводного доступа (Access Point) и беспроводные адаптеры для каждого абонента.

Точки доступа выполняют роль концентраторов, обеспечивающих связь между абонентами и между собой, а также функцию мостов, осуществляющих связь с кабельной локальной сетью и с Интернет. Несколько близкорасположенных точек доступа образуют зону доступа Wi-Fi, в пределах которой все абоненты, снабженные беспроводными адаптерами, получают доступ к сети. Такие зоны доступа (Hotspot) создаются в местах массового скопления людей: в аэропортах, студенческих городках, библиотеках, магазинах, бизнес-центрах и т.д.

Каждая точка доступа может обслуживать несколько абонентов, но чем больше абонентов, тем меньше эффективная скорость передачи для каждого из них. Метод доступа к сети – CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance). Сеть строится по сотовому принципу. В сети предусмотрен механизм роуминга, то есть поддерживается автоматическое подключение к точке доступа и переключение между точками доступа при перемещении абонентов, хотя строгих правил роуминга стандарт не устанавливает.

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

Стандарт IEEE 802.11b был принят в 1999 г. и благодаря ориентации на освоенный диапазон 2,4 ГГц завоевал наибольшую популярность у производителей оборудования. В качестве базовой радиотехнологии в нем используется метод DSSS (Direct Sequence Spread Spectrum), который отличается высокой устойчивостью к искажению данных, помехам, в том числе преднамеренным, а также к обнаружению. Поскольку оборудование 802.11b, работающее на максимальной скорости 11 Мбит/с, имеет меньший радиус действия, чем на более низких скоростях, то стандартом 802.11b предусмотрено автоматическое понижение скорости при ухудшении качества сигнала. Пропускная способность (теоретическая 11 Мбит/с, реальная – от 1 до 6 Мбит/с) отвечает требованиям большинства приложений. Расстояния – до 300 метров, но обычно – до 160 метров.

Стандарт IEEE 802.11a рассчитан на работу в частотном диапазоне 5 ГГц. Скорость передачи данных до 54 Мбит/с, то есть примерно в пять раз быстрее сетей 802.11b. Это наиболее широкополосный из семейства стандартов 802.11. Определены три обязательные скорости – 6, 12 и 24 Мбит/с и пять необязательных – 9, 18, 36, 48 и 54 Мбит/с. В качестве метода модуляции сигнала принято ортогональное частотное мультиплексирование (OFDM). Его наиболее существенное отличие от методов DSSS заключается в том, что OFDM предполагает параллельную передачу полезного сигнала одновременно по нескольким частотам диапазона, в то время как технологии расширения спектра передают сигналы последовательно. В результате повышается пропускная способность канала и качество сигнала. К недостаткам 802.11а относятся большая потребляемая мощность радиопередатчиков для частот 5 ГГц, а также меньший радиус действия (около 100 м). Кроме того, устройства для 802.11а дороже, но со временем ценовой разрыв между продуктами 802.11b и 802.11a будет уменьшаться.

Стандарт IEEE 802.11g является новым стандартом, регламентирующим метод построения WLAN, функционирующих в нелицензируемом частотном диапазоне 2,4 ГГц. Благодаря применению технологии ортогонального частотного мультиплексирования (OFDM) максимальная скорость передачи данных в беспроводных сетях IEEE 802.11g составляет 54 Мбит/с. Оборудование, поддерживающее стандарт IEEE 802.11g, например точки доступа беспроводных сетей, обеспечивает одновременное подключение к сети беспроводных устройств стандартов IEEE 802.11g и IEEE 802.11b. Стандарт 802.11g представляет собой развитие 802.11b и обратно совместим с 802.11b. Теоретически 802.11g обладает достоинствами двух своих предшественников. В числе преимуществ 802.11g надо отметить низкую потребляемую мощность, большие расстояния (до 300 м) и высокую проникающую способность сигнала.

Спецификация IEEE 802.11d. устанавливает универсальные требования к физическому уровню (процедуры формирования каналов, псевдослучайные последовательности частот и т. д.). Стандарт 802.11d пока находится в стадии разработки.

Спецификация IEEE 802.11e позволит создавать мультисервисные беспроводные сети для корпораций и индивидуальных потребителей. При сохранении полной совместимости с действующими стандартами 802.11а и b она расширит их функциональность за счет обслуживания потоковых мультимедиа-данных и гарантированного качества услуг. Пока утвержден предварительный вариант спецификаций 802.11е.

Спецификация IEEE 802.11f описывает протокол обмена служебной информацией между точками доступа (Inter-Access Point Protocol, IAPP), что необходимо для построения распределенных беспроводных сетей передачи данных. Находится в стадии разработки.

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

Стек протоколов IEEE 802.11.

Cтек протоколов стандарта IEEE 802.11 соответствует общей структуре стандартов комитета 802, то есть состоит из физического уровня и канального уровня с подуровнями управления доступом к среде MAC (Media Access Control) и логической передачи данных LLC (Logical Link Control). Как и у всех технологий семейства 802, технология 802.11 определяется двумя нижними уровнями, то есть физическим уровнем и уровнем MAC, а уровень LLC выполняет свои стандартные общие для всех технологий LAN функции.

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

Рис. 8.1. Стек протоколов IEEE 802.11

Режимы доступа к среде.

В сетях 802.11 уровень MAC обеспечивает два режима доступа к разделяемой среде:

  • распределенный режим DCF (Distributed Coordination Function);

  • централизованный режим PCF (Point Coordination Function).