Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСТВПД / ОСТ__ИТ_ЗФ_2013 / Лекции / Обзор TCP-IP_4.doc
Скачиваний:
59
Добавлен:
27.12.2015
Размер:
837.63 Кб
Скачать

Протокол udp (протокол пользовательских дейтаграмм), rfc 768

UDP – это протокол без установления соединения. Он не гарантирует доставку, правильную очередность выдачи пакетов прикладному уровню на приемной стороне, защиту от дублирования. Другими словами протокол не дает возможности отправителю убедиться, что данные корректно получены адресатом. Для приложений UDP важно, чтобы данные были переданы в максимально короткий срок с допустимыми потерями.

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

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

Формат UDP-дейтаграммы

Source Port

Destination Port

Length

Checksum

DATA

Source Port– Порт отправителя указывает порт приложения, отправившего дейтаграмму. Необязательное поле, может содержать ноль.

Destination Port– Порт получателя указывает порт приложения, которое должно обработать дейтаграмму у получателя.

Length– Длина дейтаграммы в байтах, включая заголовок.

Cheksum– Контрольная сумма дейтаграммы, поле может содержать ноль, тогда получатель не проверяет целостность дейтаграммы. Контрольная сумма вычисляется по псевдо заголовкуUDP:

SourceIPaddress(IPадрес отправителя, см.ниже)

Destination IP address (IP адрес получателя, см.ниже)

Ноль

Protocol (код протокола UDP, равный 17)

UDP Length

Идентичность контрольных сумм, принятой и вычисленной получателем, гарантирует доставку пакета (дейтаграммы UDP) по правильному адресу.

Межсетевой уровень, протокол IP, RFC 791

Уровень Internet является основным в архитектуре TCP/IP. На этом уровне работает протокол IP. Протокол IP специально создавался для передачи информации в распределенных сетях со сложной топологией. Протокол IP работает на конечных узлах и IP-маршрутизаторах.

В настоящее время применяется протокол IP версии 4 (IPv4), определенный в RFC 791. Существует стандарт IPv6, использующий иную структуру адреса, но широкого распространения в действующих сетях пока шестая версия не нашла.

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

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

Кроме протокола IP, на этом уровне работают протоколы маршрутизации RIP, OSPF, BGP и др, протокол передачи управляющих сообщений ICMP (управление потоком от источника, обнаружение недостижимых адресатов, перенаправление маршрутов, проверка работоспособности протокола IP удаленного узла), ARP (протокол преобразования адреса IP в аппаратный MAC-адрес), протокол обратного преобразования адреса RARP (Reverse ARP).

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

Формат IP-дейтаграммы (IP-пакета).

Дейтаграмма представляет собой слова по 32 бита (для версии протокола IPv4).

32 бита

Version (0-3)

IHL (4-7)

Type of Service (8-15)

Total Length (16-31)

ID

Flags (2)

Fragment Offset

TTL

Protocol

CRC (Header Checksum)

Source Address

DestinationAddress

Options (+padding)

DATA

Здесь:

Version(версия) – номер версии протокола (например, IPv4 или IPv6)

IHL–InternetHeader Length (длина заголовка), указывает число 32-битных слов, использованных в заголовке.

TypeofService, ToS(тип сервиса) – указывает степень приоритетности пакета. Поле имеет сложную структуру и используется для механизма обеспечения качества обслуживания вIР сети с помощьюпротоколаRSVP(ResourceReservationProtocol, протокол резервирования ресурсов,RFC 791) или с помощью технологии дифференцируемого обслуживанияDSCP(DifferentiatedServicesCodePoint, значения кода дифференцированного обслуживания,RFC2474). Например, поле может содержать указание на возможность задержки пакета, на требование пересылки по каналам с максимальной пропускной способностью, на возможность сбрасывания пакета маршрутизатором в случае перегрузки и т.д.

TotalLength(длина пакета) – информация о длине всегоIPпакета вбайтах.

ID(Identification) – идентификатор (целая переменная), присваиваемый исходной фрагментированной дейтаграмме, для того, чтобы на приеме собрать части этой дейтаграммы согласно смещениюOffset. ВсеIP-пакеты, переносящие исходную дейтаграмму, имеют одинаковый идентификатор.

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

Offset(смещение разбиения) – указатель того, какое смещение относительно начала исходной дейтаграммы имеет данная его часть (в байтах). Согласно смещению собирается исходная дейтаграмма и, если один из фрагментов не достиг назначения, отбрасывается весь пакет.

TTL(Time to Live, время жизниIPпакета (в секундах)) – это счетчик, значение которого уменьшается на единицу или на время простоя в очереди маршрутизатора при прохождении дейтаграммы через него. Таким образом, определена максимальная длина пути, которую может пройти пакет от источника до получателя сообщения. Когда значение счетчика становится равным 0, дейтаграмма отбрасывается. Так реализуется защита от возможных петель маршрутизации.

Protocol(протокол) – указывает протокол верхнего уровня, которому следует передать полезную нагрузкуIР пакета. Основным протоколам (например, TCP) присвоены номера в RFC.

Header Checksum, CRC(cyclicredundancycheck) – контрольная последовательность, помогающая обнаружить ошибки взаголовкеIPпакета при приеме.

SourceAddress,DestinationAddress–IP-адрес источника иIP-адрес получателя сообщения.

Options+padding(опции + выравнивание размера пакета до 32-х битной границы) – для дополнительных сервисов. Например, для поддержки маршрутов SR, доступа к оборудованию с ограниченным доступом.

IP-адрес–это 32 – битный адрес, назначаемый устройствам, которые имеют доступ в Интернет. Это может быть рабочая станция, сервер, роутер. Любой, кто хочет иметь доступ в Интернет, должен получить такой уникальный адрес (или пул адресов) для своего устройства или своей сети. Адреса ведет InterNIC (Network Information Senter – сетевой информационный центр). В России этим занимается «Региональный сетевой информационный центр RUCENTER и еще 12 регистраторов. Практически его выдает ваш провайдер Интернет.

IPv4 –адрес – 32-битное поле, состоящее из двух частей: адрес сети (net-id) и адрес устройства, а точнее адрес сетевого интерфейса (host-id). Адрес сети всегда предшествует адресу интерфейса. Подробнее об адресации в IP сети смотрите в следующем разделе.

Уровень сетевого интерфейса отвечает за прием дейтаграмм с межсетевого уровня и передачу их по конкретной физической сети. Используемое на этом уровне, программное обеспечение зависит от типа подсети и называется «протокол доступа к сети». Часто используется выражение – «протокол инкапсуляции» IP пакета в кадры конкретной технологии.

Уровень сетевых интерфейсов в TCP/IP поддерживает все популярные технологии канального и физического уровня – Ethernet, FDDI, ATM, SONET/SDH, PPP и др. Обычно при появлении новой технологии глобальных или локальных сетей, она быстро включается в стек TCP/IP путем разработки соответствующего документа RFC, который определяет метод инкапсуляции IP пакетов в ее кадры.