ZuboLom.ru

Протокол IP

Это межсетевой протокол в сетях TCP/IP, обеспечивающий доставку пакета между двумя хостами без установления соединения. Протоколы транспортного уровня (TCP, UDP) используют IP для транспортировки данных, то есть данные этих протоколов инкапсулируются в IP пакете (датаграме). Структура пакета выглядит следующим образом:

1. Версия VERS4 бита
2. Длина заголовка NLEN4 бита
3. Тип службы TOS8 бит
4. Общая длина пакета в байтах LENGTH16 бит
5. Идентификатор фрагментов16 бит
6. Флаги3 бита
7. Смещение фрагмента13 бит
8. Время существования TTL8 бит
9. Протокол8 бит
10. Контрольная сумма заголовка16 бит
11. IP адрес источника32 бита
12. IP адрес получателя32 бита
13. Опции
14. Заполнение
15. Данные


Назначение полей заголовка:
  1. Номер версии 0100;
  2. Длина заголовка в словах (32 бита) 0101;
  3. TOS определяет важность пакета в сети.

Структура поля:

Структура поля

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

4. Длина IP пакета включает заголовок в байтах. 216 = 64 Кбайт – max длина пакета. Так как при передачи в сети Ethernet Lmax=1,5 Кбайт, то при передачи IP датаграм происходит фрагментация пакетов. Поэтому поля 5,6,7 служат для сборки пакета из отдельных фрагментов.

Интерфейс сокетов – Это условное название Api для сетевых приложений. Первоначально сокеты были разаработаны BSOUnix в 80г для поддержки TCP/IP. Позднее поддержка сокетов была добавлена в WinSock32.dll и поддерживалось TCP/IP. Socket – это абстрактный объект обозначающий конечную точку сетевого соединения. Для обмена данными необходимо что бы каждая сетевая программа открыла свой сокет. Они могут использоваться для обмена с помощью датаграмм и сессий.