8.5.     КОММУТАЦИЯ

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

Соединение конечных узлов через сеть транзитных узлов называют коммутацией. Последовательность узлов, лежащих на пути от отправителя к получателю, образует маршрут. Например, в сети (рис. 8.3) узлы 2 и 4, непосредственно друг с другом не связанные, вынуждены передавать данные через транзитные узлы, в качестве которых могут использоваться, например, узлы 1 и 5. Узел 1 должен выполнить передачу данных с интерфейса A на интерфейс B, а узел 5 – с интерфейса B на F.

Рис. 8.3. Соединение конечных узлов сети через сеть транзитных узлов


[1]СВЧ-диапазон – сверхчастотный диапозон.

В самом общем виде задача коммутации – задача соединения конечных узлов через сеть транзитных узлов – может быть  представлена в виде нескольких взаимосвязанных частных задач:

1) определение информационных потоков, для которых требуется прокладывать пути;

2) определение маршрутов для потоков;

3) сообщение о найденных маршрутах узлам сети;

4) продвижение – распознавание потоков и локальная коммутация на каждом транзитном узле;

5) мультиплексирование и демультиплексирование потоков.

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

Информационным потоком (data flow, data stream) называют последовательность данных, объединенных набором общих признаков, который выделяет эти данные из общего сетевого трафика.

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

После того, как маршрут определен (вручную или автоматически), следует «сообщить» о нем всем устройствам сети. Сообщение о маршруте должно нести каждому транзитному устройству примерно такую информацию: «Если придут данные, относящиеся к потоку n, то нужно передать их на интерфейс F».

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

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

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

Прежде чем выполнить переброску данных на определенные для них интерфейсы, коммутатор должен понять, к какому потоку они относятся. Эта задача должна решаться независимо от того, поступает ли на вход коммутатора только один поток в «чистом» виде, или «смешанный» поток, который объединяет в себе несколько потоков. В последнем случае к задаче распознавания добавляется задача демультиплексирования.

Задача демультиплексирования – разделение суммарного агрегированного потока, поступающего на один интерфейс, на несколько составляющих потоков.

Как правило, операцию коммутации сопровождает также обратная операция – мультиплексирование.

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

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

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

Среди множества возможных подходов к решению задачи коммутации абонентов в сетях выделяют следующие:

· коммутация каналов;

· коммутация пакетов;

· коммутация сообщений.