Изучение протокола TCP/IP. Процесс связи. Определение приложений. Служебные программы протокола TCP/IP, страница 10

При выборе протокола TCP выполняется:

·  назначение последовательного номера каждому сегменту;

·  добавление информации о подтверждении для передачи, ориентированной на подключение;

·  добавление номера портов TCP для исходного и конечного приложений.

При выборе протокола UDP выполняется:

·  добавление номера портов UDP для исходного и конечного приложений.

Уровень Интернета

После добавления информации на уровне транспорта пакет данных передается на уровень Интернета. На этом уровне протокол IP добавляет следующую информацию:

·  IP-адрес источника;

·  IP-адрес назначения;

·  Транспортный протокол;

·  Значение контрольной суммы;

·  Информацию о TTL.

Помимо этой информации, уровень Интернета также отвечает за разрешение IP-адреса в MAC-адрес. Такое разрешение выполняется ARP. К заголовку пакета добавляется MAC-адрес, и пакет передается на уровень сетевого интерфейса.

Уровень сетевого интерфейса

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

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

Конечный компьютер

Когда кадры достигают конечного компьютера, на уровне сетевого интерфейса отбрасывается преамбула и заново вычисляется значение CRC. Если это значение совпадает со значением, вычисленным до пересылки, то в кадре рассматривается MAC-адрес назначения.

Если MAC-адрес является широковещательным адресом или совпадает с адресом конечного компьютера, то кадр передается протоколу IP на вышерасположенный уровень Интернета, в противном случае кадр игнорируется. На уровне протокола IP заново вычисляется контрольная сумма и ее значение сравнивается с вычисленным до передачи значением, что позволяет определить сохранность пакета. Затем протокол IP передает пакет транспортному протоколу, определенному в заголовке протокола IP.

Если пакет получен протоколом TCP, то проверяется последовательный номер пакета и посылается подтверждение протоколу TCP на исходном компьютере. Затем используется информация о порте TCP, и пакет передается соответствующему приложению на уровень приложения.

Если протокол UDP получает пакет с уровня Интернета, то он использует информацию о порте UDP для направления информации на уровень приложения, не посылая при этом подтверждения исходному компьютеру.

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

Маршрутизация данных

Поток данных в сети, состоящей из одного сегмента, является достаточно простым. Каждый компьютер, посылающий данные, может направить широковещательное сообщение для поиска конечного компьютера с нужным MAC-адресом, и послать ему данные. Однако в сетях, состоящих из нескольких сегментов, процесс передачи данных является более сложным. В такой среде протокол TCP/IP создает множественные связи между компьютерами и предотвращает излишнюю связь через границы сегмента.

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

IP-маршрутизация