- •6.4. Внешние коммуникации
- •6.4.1. Протоколы тср/ip
- •6.4.1.1. Определение и достоинства протокола tcp/ip
- •6.4.1.2. Архитектура tcp/ip
- •6.4.1.3. Соответствие между моделями tcp/ip и iso osi
- •6.4.2. Протокол ip
- •6.4.2.1. Структура заголовка ip-пакета
- •Ip-датаграмма
- •6.4.2.2. Ip-адресация
- •190.50.1.1
- •190.50.1.2
- •190.50.2.1
- •190.50.2.2
- •6.4.3. Протокол udp
- •6.4.4. Протокол tcp
- •6.4.4.1. Структура tcp-сегмента
- •6.4.4.2. Этапы tcp-сеанса
- •6.4.5. Программные средства поддержки сетей
- •6.4.5.1. Состав программных средств поддержки сетей
- •1. Почтовые ящики
- •2. Именованные каналы
- •3. Удаленные вызовы процедур
- •4. Протокол NetBios
- •6.4.5.2. Программные средства работы с сокетами
- •6.4.6. Сетевое программное обеспечение уровня приложений
- •6.4.6.1. Протокол ftp
- •6.4.6.2. Протокол smtp
- •Заключение
6.4.1.3. Соответствие между моделями tcp/ip и iso osi
TCP/IP |
ISO OSI |
Уровень приложения |
Уровень приложений |
Уровень представления | |
Уровень сеанса | |
Транспортный уровень |
Транспортный уровень |
Уровень Интернет |
Сетевой уровень |
Уровень сетевого интерфейса |
Уровень канала |
Физический уровень |
6.4.2. Протокол ip
6.4.2.1. Структура заголовка ip-пакета
Протокол IP обеспечивает доставку фрагмента данных от источника к получателю.
Протокол IP выполняет три основных функции:
адресацию
фрагментацию
маршрутизацию
Данные, формат которых понятен протоколу IP, называются датаграммой. Датаграмма состоит из заголовка и данных, полученных от протоколов верхних уровней.
Ip-датаграмма
Протокол обрабатывает каждую датаграмму как самостоятельный объект, не зависящий от других передаваемых датаграмм.
Модули IP производят передачу датаграммы по направлению к получателю на основании адреса, расположенного в заголовке IP-датаграммы. Выбор пути называется маршрутизацией.
В процессе обработки датаграммы протокол иногда вынужден выполнять ее фрагментацию. Это необходимо делать, когда сети, через которые вынуждена проходить датаграмма, используют разные размеры кадра. Например, есть сети с размером кадра до 4470, а есть (Ethernet) с размером до 1500.
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 - ,битовое поле
0 – 2 - Precedence – относительная значимость датаграммы. Большее значение соответствует большему приоритету.
3 – Delay – 0 – нормальная задержка при обработке, 1 – низкое значение задержки.
4 – Throughput. Скорость передачи. 0 – нормальная, 1 – высокая скорость.
5 – Reliability. Надежность. 0 – нормальная, 1 – высокая надежность.
6 – 7 – резерв.
Это поле определяет правила обработки датаграммы при передаче через сети. Иногда правила противоречат друг другу. Например, низкая задержка противоречит высокой надежности. Стандарты разрешают эти противоречия.
Total length – размер датаграммы. Ограничен 65535 байтами.
Identification – поле, используемое при фрагментации. Это поле одинаково для всех фрагментов одной датаграммы.
Flags – битовое поле, тоже используется при фрагментации.
0 – резерв
1 – DF – 0 – можно фрагментировать, 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-битного слова.