Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
os7.doc
Скачиваний:
0
Добавлен:
20.06.2023
Размер:
217.09 Кб
Скачать

7.1.3. Соответствие между моделями tcp/ip и iso osi

TCP/IP

ISO OSI

Уровень приложения

Уровень приложений

Уровень представления

Уровень сеанса

Транспортный уровень

Транспортный уровень

Уровень Интернет

Сетевой уровень

Уровень сетевого интерфейса

Уровень канала

Физический уровень

7.2. Протокол ip

7.2.1. Структура заголовка ip-пакета

Протокол IP обеспечивает доставку фрагмента данных от источника к получателю.

Протокол IP выполняет три основных функции:

  1. Адресацию;

  1. Фрагментацию;

  1. Маршрутизацию.

Данные, формат которых понятен протоколу IP, называются дейтаграммой.

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

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

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

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

0 - 3

4 - 7

8 - 11

12 - 15

16 - 19

20 - 23

24 - 27

28 – 31

Version

IHL

Type of service

Total length

Identification

Flags

Fragment Offset

TTL

Protocol

Header Checksum

Source address

Destination address

Options

Padding

Data

Структура заголовка IP-датаграммы

Заголовок занимает минимум 20 байтов и содержит следующие поля:

Version – определяет версию протокола. Обычно, 4.

IHL – internet header length – длина заголовка в 32-битных словах. При 20 байтах IHL = 5.

Type of service - битовое поле:

  1. 0 – 2 - Precedence – относительная значимость дейтаграммы. Большее значение соответствует большему приоритету;

  1. 3 – Delay – 0 – нормальная задержка при обработке, 1 – низкое значение задержки;

  1. 4 – Throughput. Скорость передачи. 0 – нормальная, 1 – высокая скорость;

  1. 5 – Reliability. Надежность. 0 – нормальная, 1 – высокая надежность;

  1. 6 – 7 – резерв.

Это поле определяет правила обработки дейтаграммы при передаче через сети. Иногда правила противоречат друг другу. Например, низкая задержка противоречит высокой надежности. Стандарты разрешают эти противоречия.

Total length – размер дейтаграммы. Размер ограничен 65535 байтами.

Identification – поле, используемое при фрагментации. Это поле одинаково для всех фрагментов одной дейтаграммы.

Flags – битовое поле, тоже используется при фрагментации:

  1. 0 – резерв;

  1. 1 – DF – 0 – можно фрагментировать, 1 – нельзя фрагментировать;

  1. 2 – MF – 0 – последний фрагмент, 1 – не последний фрагмент.

Fragment offset – номер фрагмента.

Объединяются дейтаграммы с одинаковыми полями Identification, Source address, Destination address, protocol.

TTL – time to live – время жизни дейтаграммы. Если 0, то дейтаграмма уничтожается. Каждый модуль протокола уменьшает значение этого поля на число секунд, затраченных на обработку. Цель этого поля – уничтожать «заблудившиеся» дейтаграммы.

Protocol – номер протокола верхнего уровня. Для TCP – 6, для UDP – 17.

Header checksum – контрольная сумма.

Source address и destination address – IP-адреса источника и получателя.

Options – содержит дополнительные параметры протокола.

Padding – выравнивает заголовок до границы 32-битного слова.

7.2.2. IP-адресация

Каждый IP-адрес состоит из двух частей: адреса сети и адреса хоста в этой сети. Существует 5 форматов адреса, отличающихся по числу битов, отводимых для адреса сети и хоста. Эти форматы определяют классы адресов отA до D.

Класс определяют первые три бита.

0

7 - сеть

24 – хост

Класс A

1

0

14 – сеть

16 - хост

Класс B

1

1

0

21 – сеть

8 – хост

Класс С

1

1

1

0

28 – групповой адрес

Класс D

1

1

1

1

0

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

Класс Е

Уникальность адресов обеспечивается их централизованным назначением.

В классе А число сетей ограничено126 (0 и 127 – зарезервированы). Это устаревшая структура.

В классе В число сетей 16 382. Адреса сетей такого класса также сейчас не предоставляются.

В классе С число сетей равно 2 097 150. При этом число хостов может быть не более 254. Самый распространенный в настоящее время класс сетей. Но и он истощается.

Поэтому введена дополнительная иерархия – адрес хоста может быть разделен на адрес подсети и адрес хоста в подсети.

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

Посмотрим, как используется маска подсети.

Предположим, что есть сеть класса В (190 = 10111110) с адресом 190.50.0.0 и маска подсети равна 255.255.255.0.

190.50.0.0

190.50.1.4

Н1

190.50.1.1

Н2

190.50.1.2

Н3

190.50.2.1

Н4

190.50.2.2

190.50.2.3

Пусть, например, хосту Н1 надо обратиться к хосту Н3. Н1 берет адрес Н3 190.50.2.1 и накладывает на него маску подсети 255.255.255.0, получая результат 190.50.2.0. Поскольку Н1 находится в подсети 190.50.1.0, то Н3 напрямую недоступен. Сверившись со своей маршрутной таблицей Н1 обнаруживает, что следующий адрес на пути к Н3 – это R1.

Н1 отображает IP-адрес R1 на его физический адрес и посылает R1 дейтаграмму. R1 ищет адрес назначения в своей маршрутной таблице, пользуясь той же маской подсети, и определяет местонахождение Н3 в подсети, соединенной с его интерфейсом 190.50.2.3.

R1 доставляет дейтаграмму хосту Н3, получив предварительно его физический адрес по IP-адресу.

Пусть теперь хост Е из внешней сети хочет отправить дейтаграмму Н3. Поскольку 190.50.2.1 – адрес класса В, то маршрутизатору сети, где находится этот хост Е, известно, что Н3 находится в сети 190.50.0.0. Т. к. шлюзом в эту сеть является R2, то дейтаграмма от Е в конце концов дойдет до R2.

R2 получив дейтаграмму, накладывает маску, выделяет адрес подсети 190.50.2.0, определяет R1 в качестве следующего узла на пути к Н3 и посылает R1 дейтаграмму, которую R1 отправляет Н3.

Хосту Е неизвестна внутренняя топология сети 190.50.0.0. Он просто отсылает дейтаграмму шлюзу R2. Только R2 и другие хосты внутри сети определяют существование подсетей и маршруты доступа к ним.

Соседние файлы в предмете Операционные системы