Протоколы с установлением соединения разработаны так, чтобы способствовать установлению соединений между системами. То есть когда две системы используют протоколы с установлением соединений, то прежде чем передавать информацию, они устанавливают между собой соединение.
Протоколы с установлением соединения, такие как TCP (Transmission Control Protocol — протокол управления передачей), работают на транспортном уровне модели OSI. Так как многие маршрутизаторы работают на сетевом уровне (которому внутренне присуще отсутствие соединений), протоколы с установлением соединения не являются маршрутизируемыми. Но мы все же поговорим о них, так как у них имеется ряд полезных свойств, к тому же, они тесно связаны со многими дружественными маршрутизатору протоколами без установления соединений, с которыми мы их и сравним.
Когда одна система хочет отправить информацию в соседнюю, получателю отправляется запрос на установление соединения. Система-отправитель ждет уведомление о готовности к соединению. Получив его, система-отправитель устанавливает соединение, и две системы могут свободно обмениваться данными. По завершении соединения инициировавшая его система отправляет пакет «tear-down», который показывает, что соединение закончено и используемые для его поддержания ресурсы должны быть освобождены. Процесс установления соединения представлен на рис. 3.9.
Сам процесс (инициирование соединений перед обменом информацией) не создает особых проблем; в действительности это один из наиболее привлекательных аспектов данной категории протоколов. Проблемы для некоторых сетей может вызвать тот способ, которым соединение поддерживается.
Когда инициатор запроса посылает пакет установления соединения, к пакету добавляется запись о пути, который он проходит. Таким образом пакет создает маршрут, по которому будет происходить обмен информацией между двумя устройствами. Получающая пакет система отправляет свое уведомление (acknowledgment — ACK) по тому же пути, который прошел пакет установления соединения. И после открытия сеанса связи между двумя системами все пересылаемые ими пакеты следуют по тому же самому маршруту, в результате чего между устройствами возникает гарантированный канал связи.
Но установление соединения и поддержание назначенного пути требуют значительных ресурсов. Накладные расходы протоколов с установлением соединения выше, чем у протоколов без установления соединений. К тому же, из-за того что в основе работы маршрутизатора лежит случайность, он не может поддерживать назначенные пути.
Маршрутизаторы не могут гарантировать, что два пакета будут отправлены по одному и тому же пути. Маршрутизатор всегда пытается выбрать «лучший путь» для отправки информации. А так как на этот выбор влияет множество связанных с состоянием сети обстоятельств, то от пакета к пакету маршрут может меняться.
Протоколы с установлением соединения имеют и ряд преимуществ для сетевого окружения. Так как прием любого пакета, отправленного той или иной системой, подтверждается, то доставка данных гарантирована. Когда две системы участвуют в сеансе обмена информацией, то пакет-подтверждение посылается, чтобы сообщить об успешном прибытии каждой порции данных. Поэтому первым очень приятным свойством протоколов с установлением соединения является гарантированная доставка информации.
Кроме того, протоколы с установлением соединения работают по заданному пути. То есть каждый пакет отправляется по тому же пути, что и предыдущий, что облегчает поиск неисправностей в случае проблем с соединением. Используя такие средства, как пакетные анализаторы или модули проверки текущего состояния LAN, специалист легко может определить маршрут, по которому взаимодействовали два устройства, и диагностировать возможные проблемы.
Протоколы без установления соединений, такие как IP, работают (за редким исключением) на сетевом уровне модели OSI. Маршрутизаторы Cisco (и все остальные маршрутизаторы, присутствующие на рынке) также работают на сетевом уровне. Из чего можно сделать логический вывод о том, что все маршрутизируемые протоколы относятся к протоколам без установления соединений и что маршрутизаторы поддерживают обмен информацией только без установления соединений.
Протоколы без установления соединений используют при доставке данных принцип «наибольших усилий». Когда устройство пытается отправить информацию другой системе, между ними не устанавливается специальное соединение. Использование протоколов без установления соединений несколько рискованно. С ними связаны такие возможные опасности, как:
Так как между устройствами нет выделенного соединения, каждый отправленный ими пакет может перемещаться по пути, не совпадающему с остальными. Поэтому вероятность того, что пакеты прибудут не в том порядке, в котором были отправлены (если вообще прибудут), гораздо больше, чем при использовании протоколов с установлением соединений.
Главным недостатком протоколов без установления соединений является неминуемая потеря данных, находящихся в недоставленных пакетах. И хотя в большинстве случаев потери минимальны и едва заметны, но риск все-таки есть.
Еще одним неудобством, вызванным отказом от использования выделенного пути, является то, что сложность поиска и устранения неисправностей возрастает экспоненциально при увеличении количества маршрутизаторов в сети. Так как пакеты могут использовать различные пути, чтобы попасть в один и тот же пункт назначения, то чрезвычайно сложно предсказать, где же может возникнуть проблема.
Один из способов контроля маршрутизатора Cisco за доставкой данных из одной системы в другую — это использование статических маршрутов (когда возможно). Хотя статические маршруты, конечно же, подходят не для каждого случая (на самом деле они в большей или меньшей степени лишают маршрутизацию смысла), они могут помочь в особенно ненадежных системах.
Есть и явные преимущества использования протоколов без установления соединений. Обычно они быстрее и требуют меньших ресурсов, чем протоколы с установлением соединений. Именно поэтому они идеально подходят для маршрутизации. В условиях полиморфной природы маршрутизации протоколы без установления соединения предоставляют возможность быстро перемещать данные из системы в систему.
Так как протоколы без установления соединения не требуют установления сеанса связи, они могут быть быстрыми. Время, необходимое для установления и завершения соединения, на отправку уведомлений и ответы на них, в больших сетях накапливается. Поэтому для современных маршрутизируемых сетей так важно быстродействие протоколов без установления соединения.
Типы и классы протоколов | Классовые и бесклассовые протоколы |