Чтобы объединить достоинства предыдущих двух методов и преодолеть их недостатки, применяют общую буферизацию, при которой один буфер хранит все входящие пакеты и из которого они выходят не в порядке общей очереди, а по мере освобождения требуемого порта. Недостаток метода — сложность коммутаторов с общим буфером и, как следствие, их дороговизна.
Хотя метод коммутации пакетов гибок и эффективен, он имеет проблему задержки при передачи данных по сети межсоединений даже при свободных каналах и коммутаторах. Предположим, что пересылка пакета по одному каналу занимает время , а путь проходит через каналов. При коммутации пакетов пакет не начнёт выходить из коммутатора до тех пор, пока целиком не войдёт в него. Поэтому время передачи по сети будет равно .
Для решения этой проблемы используется комбинированный метод, который сочетает в себе и коммутацию каналов, и коммутацию пакетов. Пакет начинает выходить из коммутатора, как только освобождается выходной порт, даже если часть пакета ещё не пришла в коммутатор. Существует разновидность данного метода, по-английски называемая «wormhole routing», используемая при недостаточном размере буфера. Если уже пришедшая часть пакета не может двигаться дальше, и буфер полон, в исходный пункт передаётся сигнал остановить передачу. Пакет останавливается, будучи «растянутым» на несколько коммутаторов. Когда канал освобождается, пакет возобновляет движение.
Часто существует множество путей, ведущих из одного узла, в другой. Алгоритм выбора маршрута должен:
— полностью использовать имеющуюся в наличии пропускную способность,
— исключать взаимоблокировку.
Взаимоблокировкой называется ситуация, когда несколько процессов заняли ресурсы таким образом, что ни один процесс не может продолжать выполнение, и работа останавливается навечно. Простой пример тупиковой ситуации с коммутацией каналов приведён на рисунке.
Рис. 12.2. Взаимоблокировка окружности — коммутаторы, квадраты — процессоры
Алгоритмы выбора маршрута подразделяют на две категории: маршрутизация от источника и распределённая маршрутизация.
При маршрутизации от источника источник определяет весь путь заранее. Этот путь выражается последовательностью номеров выходных портов, которые должен пройти пакет по пути следования через коммутаторы. Если путь проходит через коммутаторов, то в каждом пакете первые байт представляют собой номера портов. Когда порт проходит коммутатор, первый байт отсекается и используется для определения выходного порта. Оставшаяся часть пакета через этот порт выходит к следующему коммутатору. После каждого коммутатора пакет становится на один байт короче, показывая новый номер порта, который нужно выбрать в следующий раз.
При распределённой маршрутизации каждый коммутатор сам решает, куда отправить пришедший пакет.
Если выбор маршрута одинаков для всех пакетов с одними и теми же исходным и конечным пунктом, маршрутизация называется статической. Если при выборе маршрута учитывается текущая загрузка сети межсоединений, маршрутизация называется адаптивной.
13.1. Быстродействие с точки зрения аппаратного обеспечения
13.2. Быстродействие с точки зрения программного обеспечения
Быстродействие аппаратного обеспечения в целом зависит от быстродействия процессоров, памяти, устройств ввода-вывода и сети межсоединений. Быстродействие первых трёх компонент одинаково в одно- и многопроцессорных системах и поэтому обсуждаться сейчас не будет.
Быстродействие сети межсоединений характеризуется временем ожидания и пропускной способностью.
Время ожидания — это время, которое проходит с момента запроса на выполнение операции до её завершения.
Для сетей с коммутацией каналов время ожидания равно сумме времени установки сети и времени передачи пакета. Практически установка выполняется путём посылки от источника так называемого пробного пакета и возвращения назад источнику сообщения о готовности. По получению этого сообщения предварительно собранный пакет данных передаётся по сети на полной скорости и без помех. Время ожидания равно
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.