Лекции 4. Лекция 4 Функциональность протоколов tcp и udp
Скачать 0.5 Mb.
|
IPRFC 791 http://www.cis.ohio-state.edu/htbin/rfc/rfc791.html (перевод на русский язык - PDF ) RFC 1853 http://www.cis.ohio-state.edu/htbin/rfc/rfc1853.html IP (Internet Protocol) представляет собой протокол уровня маршрутизируемых дейтаграмм в стеке TCP/IP. Все другие протоколы стека TCP/IP (кроме ARP и RARP) используют протокол IP для маршрутизации кадров между хостами. Заголовок кадров IP содержит маршрутную и управляющую информацию, связанную с доставкой дейтаграмм. Структура заголовков IP показана на рисунке.
Структура заголовка IP. ВерсияПоле версии определяет формат заголовка Internet. IHLInternet Header Length - размер заголовка Internet указывает размер заголовка в 32-битовых словах, задавая смещение данных от начала пакета. Минимальный размер заголовка составляет 5 слов (160 битов). Тип сервисаПоказывает желаемый уровень качества обслуживания. Сети могут обеспечивать различный уровень преимуществ при доставке, играющий важную роль при условиях высокой загрузки сети. Поддерживаются также три опции качества обслуживания - малая задержка, высокая надежность и высокая пропускная способность. Биты 0 - 2 - преимущественная доставка 111 сетевое управление 110 межсетевое управление 101 CRITIC/ECP 100 Flash override 011 Flash 010 немедленная доставка 001 приоритетная доставка 000 Routine (нормальный режим) Бит 3 - задержка 0 Нормальная 1 Малая Бит 4 - пропускная способность 0 Нормальная 1 Высокая Бит 5 - надежность доставки 0 Нормальная 1 Высокая Биты 6 - 7 - зарезервированы для использования в будущем Общий размерРазмер дейтаграммы в байтах с учетом заголовка и данных. Размер поля позволяет использовать дейтаграммы длиной до 65535 байтов, хотя такой размер нежелателен для многих сетей и хостов. Все хосты должны быть готовы к приему дейтаграмм размером до 576 байтов, независимо от того как они доставляются - целиком или фрагментами. Рекомендуется передавать дейтаграммы, размер которых превышает 576 байтов только в тех случаях, когда адресат готов принять такие дейтаграммы. ИдентификацияЗначение идентификатора, которое отправитель задает для обеспечения корректного порядка сборки фрагментов дейтаграммы на приемной стороне. ФлагиТрехбитовое поле флагов управления: Бит 0 - зарезервирован и должен иметь нулевое значение Бит 1 - возможность фрагментирования 0 Можно фрагментировать 1 Не фрагментировать Бит 2 - наличие дополнительных фрагментов 0 Последний фрагмент 1 Есть последующие фрагменты Смещение фрагмента13-битовое значение, задающее смещение фрагмента от начала целой дейтаграммы. Смещение фрагмента измеряется в 8-байтовых (64 бита) словах. Первый фрагмент имеет нулевое смещение. Время жизниПоказывает максимальное время существования дейтаграммы в сети Internet. При нулевом значении этого поля дейтаграмма должна быть уничтожена. Время жизни дейтаграмм измеряется в секундах. Однако, поскольку каждый модуль, работающий с дейтаграммой, должен уменьшать значение поля TTL (time-to-life) по крайней мере на 1 (даже в тех случаях, когда обработка дейтаграммы занимает меньше секунды), значение этого поля должно быть не меньше желаемого времени жизни дейтаграммы. Дейтаграммы с истекшим в процессе доставки временем жизни не попадают к получателю. ПротоколУказывает протокол следующего уровня, содержащийся в поле данных дейтаграммы IP. Контрольная сумма заголовкаКонтрольная сумма, рассчитанная с учетом только полей заголовка дейтаграммы. Поскольку некоторые поля заголовка (например, время жизни) могут меняться в процессе доставки, значение контрольной суммы заново вычисляется и проверяется в каждой точке обработки заголовков. Адрес отправителя/ получателя32-битовые значения адресов отправителя и получателя дейтаграммы. Следует четко различать имена, адреса и маршруты. Имя показывает название объекта, адрес говорит о его местоположении в сети, а маршрут - показывает путь к объекту. Протокол IP имеет дело преимущественно с адресами. Связь между адресами и именами реализуется протоколами вышележащих уровней. Модуль Internet отображает адреса IP на локальные сетевые адреса. Связь локальных сетевых адресов с маршрутами обеспечивается протоколами нижележащих уровней. ОпцииЭто поле содержит необязательные опции дейтаграммы. Используемые опции должны быть реализованы во всех модулях IP (хосты и шлюзы). В некоторых опции безопасности являются обязательными для всех дейтаграмм. Поле опций имеет переменную длину и может содержать различное число опций. Существуют два формата опций: Однооктетные опции Многооктетные опции, содержащие поля типа опции (1 октет), ее размера (1 октет) и собственно опций. Поле длины опции учитывает все субполя опции - тип, размер и сами опции. Октет типа опции имеет три поля: 1 бит - флаг копирования показывает, что должна ли данная опция копироваться во все фрагменты дейтаграммы: 0 опция копируется 1 опция не копируется. 2 бита - класс опции: 0 управление 1 зарезервировано 2 отладка и измерение 3 зарезервировано 5 битов - номер опции ДанныеДанные IP или протоколов вышележащих уровней. http://www.protocols.ru/modules.php?name=Content&pa=showpage&pid=21 |