Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Часть 4.doc
Скачиваний:
29
Добавлен:
24.09.2019
Размер:
714.24 Кб
Скачать

4.10.3. Формат сообщений tcp

Сообщения протокола TCP называются сегментами и состоят из заголовка и блока данных (Рис.4.7.).

Рис.4.7.

Заголовок сегмента имеет следующие поля:

Source Port (16 бит). Порт отправителя.

Destination Port (16 бит). Порт получателя.

Sequence Number (32 бита). Номер кадра. Номер кадра первого байта дан­ных в этом сегменте (за исключением пакета, где присутствует флаг SYN). Если в пакете присутствует флаг SYN, то номер данного пакета становится номером начала последовательности (ISN) и номером первого байта дан­ных становится номер ISN+1.

Acknowledgment Number (32 бита). Поле номера кадра подтвержденного по­лучения. Если пакет содержит установленный контрольный бит АСК, то это поле содержит номер следующего пакета данных отправителя, который ожидает получатель. При установленном соединении пакет подтверждения отправляется всегда.

Data Offset (4 бита). Поле величины смещения данных. Оно содержит коли­чество 32-битных слов заголовка TCP-пакета. Это число определяет смеще­ние расположения данных в пакете.

Reserved (6 бит). Резервное поле. Поле зарезервировано.

Флаги управления (слева направо):

URG: Флаг срочности

АСК: Флаг пакета, содержащего подтверждение получения

PSH: Флаг форсированной отправки

RST: Переустановка соединения

SYN: Синхронизация чисел последовательности

FIN: Флаг окончания передачи со стороны отправителя

Window (16 бит). Окно. Это поле содержит количество байт данных, которое отправитель данного сегмента может принять, отсчитанное от номера байта, указанного в поле Acknowledgment Number.

Checksum (16 бит). Поле контрольной суммы. Это поле содержит 16 бит суммы побитных дополнений 16-битных слов заголовка и данных. Если сег­мент содержит нечетное число байт заголовка и данных, последний байт до­полняется справа нулями. При вычислении контрольной суммы поле кон­трольной суммы полагается равным нулю.

Urgent Pointer (16 бит). Поле указателя срочных данных. Это поле содержит значение счетчика пакетов, начиная с которого следуют пакеты повышен­ной срочности. Это поле принимается во внимание только в сегментах с установленным флагом URG.

Options. Поле дополнительных параметров: может быть переменной длины.

Padding. Заполнение: переменная длина. Заполнение (нулями) TCP-заго­ловка используется для выравнивания его по 32-битному слову. 

4.11. Протокол dns

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

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

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

Корень базы данных DNS управляется центром Internet Network Information Center. Домены верхнего уровня назначаются для каждой страны, а также на организационной основе. Имена этих доменов должны следовать международному стандарту ISO 3166. Для обозначения стран используются трехбуквенные и двухбуквенные аббревиатуры, а для различных типов организаций используются следующие аббревиатуры:

  • com - коммерческие организации (например, microsoft.com);

  • edu - образовательные (например, mit.edu);

  • gov - правительственные организации (например, nsf.gov);

  • org - некоммерческие организации (например, fidonet.org);

  • net - организации, поддерживающие сети (например, nsf.net).

Каждый домен DNS администрируется отдельной организацией, которая обычно разбивает свой домен на поддомены и передает функции администрирования этих поддоменов другим организациям. Каждый домен имеет уникальное имя, а каждый из поддоменов имеет уникальное имя внутри своего домена. Имя домена может содержать до 63 символов. Каждый хост в сети Internet однозначно определяется своим полным доменным именем (fully qualified domain name, FQDN), которое включает имена всех доменов по направлению от хоста к корню. Пример полного DNS-имени : citint.dol.ru.

В сетях TCP/IP компьютеры для общения между собой используют IP-адреса. Однако то, что удобно машинам, неудобно людям. Сама человеческая натура протестует против запоминания чисел типа 192.120.18.34. К тому же IP-адреса совсем не информативны. По IP-адресу невозможно понять, что это: сервер, ПК, маршрутизатор или сетевой принтер. Приятней работать с осмысленными именами, такими как sales-server. Тем не менее сетевые устройства обращаются друг к другу, используя IP-адрес, а не имена.

Решает эту проблему система именования сетевых объектов, которая отвечает за преобразование символьных имен в IP-адреса. Системе передается имя (например archie.univie.ac.at), а она возвращает IP-адрес (140.78.3.8).

Система имен доменов (Domain Name System, DNS) появилась середине 80-х годов. DNS реализует иерархическое пространство имен. Единицей измерения является домен (территория, область). Понятие домена DNS не надо путать с доменом Windows NT или доменом NIS. Они не имеют друг к другу никакого отношения. На Рисунке 4.7. приведена часть иерархической структуры DNS сети Internet.

Вся сеть представляется в виде единого иерархического дерева. На вершине располагается корневой домен (обозначается символом "●"). Ниже находятся домены первого уровня. Поскольку Internet развивался в первую очередь в США, это вызвало некоторый крен при формировании доменов первого уровня: Internet как бы оказался поделенным между США и всем остальным миром.

Наиболее известные домены первого уровня:

com - коммерческие организации (главным образом в США);

edu - учебные заведения США;

gov - правительственные учреждения США;

mil - военные учреждения США;

net - различные сетевые агентства и Internet-провайдеры;

int - международные организации;

org - некоммерческие учреждения;

код страны - двухбуквенный код для обозначения государства (ru - для России).

Ниже доменов первого уровня располагаются домены второго уровня и так далее вплоть до хостов. Для доменов первого уровня, обозначающих государства, доменами второго уровня часто бывают города (например, msk - для Москвы), а доменами третьего уровня - предприятия и организации.

Любой хост или домен в Internet однозначно идентифицируется так называемым полным доменным именем (Fully Qualified Domain Name, FQDN). Его иногда еще называют абсолютным доменным адресом.

Так, для сетевого устройства host1 полное доменное имя будет host1.company1.msk.ru. а для домена company1 - company1.msk.ru.

Домены в FQDN записываются справа налево в порядке подчинения и разделяются точками. Каждая отдельная составляющая FQDN называется меткой (label). Длина метки не должна превышать 63 символа, а полная длина FQDN - 255 символов. Допустимыми символами являются буквы английского языка, цифры и знак дефиса "-" (знак дефиса не может стоять в начале или конце метки). Регистр букв значения не имеет, т. е. company1.msk.ru. и COMPANY1.MSK.RU. обозначают один и тот же домен.

Конечная точка в полном доменном имени обозначает, во-первых, корневой домен, и, во-вторых, что используется абсолютная адресация.

Кроме абсолютной применяется и относительная доменная адресация. Когда два устройства находятся в одном и том же домене, они могут обращаться друг к другу по имени, не указывая полного доменного пути. Так, host2 обращается к host1 двумя способами:

  • по полному доменному имени host1.company1.msk.ru.

  • по относительному доменному адресу host1

В полном доменном имени конечную точку можно не ставить, поскольку обычно программное обеспечение TCP/IP подразумевает, что составное доменное имя (т. е. когда присутствует более двух меток) обозначает FQDN. Таким образом,

company1.msk.ru. и company.msk.ru.

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

Понятие домена достаточно емкое и в то же время гибкое. Оно не ограничивается какими-то физическими границами, например границами IP-сети или сегмента Ethernet. Доменом DNS может быть и страна, и предприятие, и отдел банка. Один домен может включать как множество сетей, так и только часть одной сети или даже подсети.

Основное назначение DNS состоит в преобразовании имени хоста в его IP-адрес. На самом деле DNS является системой, не зависимой от протокола сетевого уровня, т. е. она может быть реализована не только в среде TCP/IP. Однако функции DNS этим не ограничиваются. DNS позволяет получить следующую информацию: IP-адрес хоста; доменное имя хоста по его IP-адресу; псевдонимы хоста, тип центрального процессора и операционной системы хоста; сетевые протоколы, поддерживаемые хостом; почтовый шлюз; почтовый ящик: почтовую группу; IP-адрес и доменное имя сервера имен доменов. Существует и ряд других, реже используемых параметров.