Типы используемых глобальных служб Многосегментные концентраторы Типы адресов стека TCP/IP Таблицы маршрутизации в IP-сетях Информационные сети

Протокол надежной доставки TCP-сообщений Использование выделенных линий для построения корпоративной сети Использование служб ISDN в корпоративных сетях Технология мобильных сетей Технология Gigabit ethernet


Учебник по информационным технологиям. Информационные сети

Протокол надежной доставки TCP-сообщений

Протокол IP является дейтаграммным протоколом и поэтому по своей природе не может гарантировать надежность передачи данных. Эту задачу - обеспечение надежного канала обмена данными между прикладными процессами в составной сети - решает протокол TCP (Transmission Control Protocol), относящийся к транспортному уровню.

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

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

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


Рис. 14.11. TCP-соединение создает надежный канал связи между конкретными узлами

Порты

Протокол TCP взаимодействует через межуровневые интерфейсы с ниже лежащим протоколом IP и с выше лежащими протоколами прикладного уровня или приложениями.

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

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

Назначение номеров портов прикладным процессам осуществляется либо централизованно, если эти процессы представляют собой популярные общедоступные службы (например, номер 21 закреплен за службой удаленного доступа к файлам FTP, a 23 - за службой удаленного управления telnet), либо локально для тех служб, которые еще не стали столь распространенными, чтобы закреплять за ними стандартные (зарезервированные) номера. Централизованное присвоение службам номеров портов выполняется организацией Internet Assigned Numbers Authority (IANA). Эти номера затем закрепляются и опубликовываются в стандартах Internet (RFC 1700).

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

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


Рис. 14.12. Функции протокола TCP по мультиплексированию и демультиплексированию потоков

Технология бесклассовой междоменной маршрутизации CIDR За последние несколько лет в сети Internet многое изменилось: резко возросло число узлов и сетей, повысилась интенсивность графика, изменился характер передаваемых данных. Из-за несовершенства протоколов маршрутизации обмен сообщениями об обновлении таблиц стал иногда приводить к сбоям магистральных маршрутизаторов из-за перегрузки при обработке большого объема служебной информации. Так, в 1994 году таблицы магистральных маршрутизаторов в Internet содержали до 70 000 маршрутов,

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

Сегменты и потоки Единицей данных протокола TCP является сегмент. Информация, поступающая к протоколу TCP в рамках логического соединения от протоколов более высокого уровня, рассматривается протоколом TCP как неструктурированный поток байтов. Поступающие данные буферизуются средствами TCP. Для передачи на сетевой уровень из буфера "вырезается" некоторая непрерывная часть данных, которая и называется сегментом. В отличие от многих других протоколов, протокол TCP подтверждает получение не пакетов, а байтов потока.

Что такое Internet? Internet - обширная, разветвленная сеть, которая  включает  в  себя компьютерные узлы,  разбросанные по всему миру. Согласно некоторым источникам,  Internet охватила более 100 стран и объединила ~ 20 тыс.  отдельных сетей,  в которых установлено порядка 4 млн.  узловых компьютеров и работают более 350 млн.  пользователей, то есть около 3% всего населения планеты. Это говорит лишь о том, что экспансия Internet только началась.

Общие принципы построения распределенных вычислительных систем Основные проблемы построения сетей: взаимодействие двух компьютеров (модель клиент-сервер), физическая передача данных по линиям связи, проблемы объединения нескольких компьютеров, топология связей, организация совместного использования линий связи, адресация. Структуризация как средство построения больших сетей. Многоуровневый подход к построению вычислительных сетей. Модель OSI. Протокол. Интерфейс. Стек протоколов. Уровни модели OSI (физический, канальный, сетевой, транспортный, сеансовый, представительский, прикладной). Сетезависимые и сетенезависимые уровни.


Логическая структуризация сети