<<
>>

Коммутируемые виртуальные каналы

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

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

Рисунок иллюстрирует процесс прокладки виртуального канала между узлами N1, А1 и N2, А2 через сеть, представленную здесь двумя коммутаторами S1 и S2. На рисунке помечены три описанных ниже этапа выполнения этой процедуры.

1. Установление виртуального канала начинается с того, что узел-инициатор N1, А1 генерирует специальный пакет — запрос на установление логического соединения с узлом N2, А2.

В нашем обобщенном примере этот запрос назван Call Setup (такое же название он носит и в некоторых конкретных сиг наль- ных протоколах, например в Q.933 для Frame Relay и Q.2931 для ATM). Упрощенно можно сказать, что запрос содержит пару: многоразрядный адрес

узла назначения и начальное значение идентификатора виртуального канала (VCI). Пусть в нашем примере в самом начале запрос Call Setup имеет следующий начальный вид:

(102, 132456.8112).

Здесь 102 — начальное значение VCI, а 132456.8112 — адрес узла назначения, старшая часть которого — номер подсети, младшая часть — номер узла[46].

Рис.

21.1. Установление виртуального канала

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

Узел-инициатор должен выбрать коммутатор сети, которому целесообразно передать запрос на установление канала. Такой выбор может происходить на

основе таблицы маршрутизации узла-отправителя, но если узел соединен с сетью единственным портом, как в приведенном примере, то таблица маршрутизации узлу, естественно, не требуется. Попав в буфер порта 1 коммутатора S1, пакет Call Setup обрабатывается в соответствии со своим адресом назначения и значениями таблицы маршрутизации. Запись с адресом 132456 говорит, что пакет нужно передать на порт 3.

ПРИМЕЧАНИЕ ----------------------------------------------------------------------------------------------------

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

2. После определения для пакета Call Setup выходного порта коммутатор S1 генерирует для него новое значение номера виртуального канала, а именно 106. Этот номер был выбран потому, что на участке сети от порта 3 коммутатора S1 до порта 1 коммутатора S2 он однозначно идентифицирует устанавливаемый виртуальный канал. Именно это обстоятельство имелось в виду, когда ранее отмечалось, что идентификаторы виртуальных каналов имеют локальный характер.

После изменения значения идентификатора виртуального канала пакет Call Setup приобретает вид (106, 132456.8112) и передается через выходной порт 3 коммутатора S1 на входной порт 1 коммутатора S2.

Одновременно с продвижением пакета коммутатор создает таблицу коммутации (не путайте с упомянутой выше таблицей маршрутизации). Таблица коммутации потребуется впоследствии, когда виртуальный канал будет установлен и по нему начнут передаваться пользовательские данные, причем уже без адресов узлов назначения. Каждая запись таблицы коммутации состоит из четырех основных полей:

О номера входного порта;

О входной метки (SVC) в поступающих на входной порт пакетах;

О номера выходного порта;

О выходной метки (SVC) в передаваемых через выходной порт пакетах.

В таблице коммутации запись 1-102-3-106 означает, что все пакеты, которые поступят на порт 1 с идентификатором виртуального канала 102, будут продвигаться на порт 3, а в поле идентификатора виртуального канала появится новое значение — 106.

Виртуальные каналы могут быть однонаправленными и двунаправленными. В рассматриваемом примере создается двунаправленный канал, поэтому коммутатор создает еще одну запись в таблице коммутации — для продвижения пакетов в обратном направлении, от узла N2, А2 к узлу N1, А1. Эта запись является зеркальной по отношению к первой записи, так что пакет, имеющий метку 106 и поступивший на порт 3 коммутатора S1, получит при выходе из порта 1 первоначальное значение метки, а именно 102. В результате узел N1, А1 правильно распознает принадлежность пришедшего пакета виртуальному каналу, несмотря на постоянные смены номеров в процессе путешествия пакета по сети.

3. Процедуру установления виртуального канала продолжает коммутатор S2. По адресу назначения, указанному в запросе, и по своей таблице маршрутизации (на рисунке она не показана) он определяет выходной порт и передает на него запрос, обновляя при этом поле идентификатора виртуального канала. В данном случае коммутатор назначил пакету Call Setup номер виртуального канала 108.

В результате запрос приходит в конечный узел в виде (108, 132456.8112). Конечный узел, получив запрос, может его принять или отвергнуть. О положительном решении, то есть об установлении виртуального канала, он сообщает служебным пакетом Connect, который проходит по сети в обратном направлении, используя «зеркальные» записи в таблице коммутации.

После получения подтверждения Connect конечные узлы могут начать пользоваться проложенным виртуальным каналом, посылая по нему пользовательские данные. Отправляемые узлом N1, А1 ячейки продвигаются на основе значения идентификатора виртуального канала, который обычно имеет небольшую длину, например, в технологии Х.25 он занимает всего полтора байта, в то время как длина адреса узла в сети Х.25 достигает 16 байт.

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

? При прокладке канала SVC запрос на установление соединения передается по сети в стандартном режиме маршрутизации с глобальными (для всей сети) адресами назначения и информацией о полной топологии сети. То есть протоколы установления виртуальных каналов (сигнальные протоколы) работают на сетевом уровне модели OSI.

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

<< | >>
Источник: В. Г. Олифер, Н. А. Олифер. 54 Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 3-е изд. 2006

Еще по теме Коммутируемые виртуальные каналы:

  1. 9.13. Передне-срединный канал, VC (фр.), круглосуточно, канал "инь"
  2. 9.2. Канал толстой кишки, GI (франц.), 5-7 час., канал "ян"
  3. 9.6. Канал тонкой кишки, IG (фр.), 13-15 час., канал "ян"
  4. 9.4. Канал селезенки-поджелудочной железы, RP, 9-11 час., канал "ян"
  5. Рекомендации Крайона Магнитному Каналу и всем каналам Духа
  6. 9.8. Канал почек, R (фр.), 17-19 час., канал "инь"
  7. 9.12. Канал печени, F (фр.), 1-3 час., канал "инь"
  8. 9.14. Задне-срединный канал, VG, (фр.), круглосуточно, канал "ян"
  9. Виртуальное послесловие
  10. ГЛАВА 11 ПРАВОВЫЕ ПРОБЛЕМЫ ВИРТУАЛЬНОЙ СРЕДЫ ИНТЕРНЕТ