Лекции 2010-го года (1130544), страница 25
Текст из файла (страница 25)
Каждая волоконно-оптическая линиясоединяет либо компьютер с АТМ-переключателем, либо два АТМ-переключателя. АТМлинии – это соединения типа «точка-точка». На одной линии не может находиться болееодного источника ячеек. По каждой линии передача возможна только в одномнаправлении, поэтому для обеспечения полного дуплекса нужны две АТМ-линии. Спомощью АТМ-переключателей возможно дублирование одной и той же ячейки дляпередачи этой ячейки по нескольким линиям.
Так реализуют режим вещания, т.е.передачу от одного ко многим.Подуровень сопряжения с физической средой (PMD) в стандарте АТМ обеспечивает съембитов с линии и передачу их на линию. Для физически разных линий (коаксиал,оптоволокно и т.п.) используют разное оборудование. Подуровень преобразования припередаче (TC) обеспечивает единый интерфейс с АТМ-уровнем при передаче ячеек вобоих направлениях. Именно ТС-подуровень обеспечивает сопряжение АТМ-уровня спротоколом передачи в выбранной среде, например, в случае SONET это будет интерфейсSTS-3, поддерживающий скорость 155,52 Мбит/сек. АТМ-уровень обеспечивает потокячеек, а PMD-подуровень преобразует их в поток битов в физической среде.При входящем потоке PMD-подуровень передает поток битов на ТС-подуровень. ЗадачаТС-подуровня - определить, где кончается одна ячейка, а где начинается другая.Поскольку в поступающем потоке битов нет никаких признаков деления между ячейками,то это весьма сложная задача.
Как она решается, мы рассмотрим в разделе, посвященномканальному уровню, поскольку именно канальный уровень отвечает за преобразованиепотока битов в поток кадров или ячеек.2.5.9.1. АТМ-переключателиЗдесь мы рассмотрим основные принципы организации АТМ переключателей и ихфункционирования.На рисунке 2-65 показана общая схема организации АТМ-переключателя.
Есть наборвходных линий, по которым ячейки поступают в переключатель, и, как правило, такое жечисло выходных линий, по которым ячейки двигаются после коммутации. Обычнопереключатель работает синхронно: длительность цикла строго фиксирована. В течениекаждого цикла просматриваются все входные линии и, если на линию к этому моментуцеликом поступила ячейка, то она считывается и передается в центр коммутации, а затемна выходную линию.Рисунок 2-65. Общая схема организации АТМ-переключателя87Переключатель может быть конвейерным, т.е. обработка одной ячейки может заниматьболее одного цикла. Ячейки поступают асинхронно, т.е.
таймер переключателя отмечаетмомент начала очередного цикла. Если ячейка не поступила целиком за один цикл, то онадолжна ожидать начала следующего цикла.Ячейки поступают со скоростью 155 Mбит/сек. Учитывая размер ячейки в 53 байта,получаем около 360 000 ячеек/сек. Таким образом, на обработку одной ячейки приходитсяоколо 2,7 мксек. Выпускаемые на сегодня переключатели имеют от 16 до 1024 входныхлиний, т.е. переключатель должен быть в состоянии обрабатывать за 2,7 мксек от 16 до1024 ячеек. При скорости 622 Mбит/сек.
переключающий центр должен обрабатыватьочередную порцию ячеек за 700 нсек. Благодаря тому, что ячейки фиксированной длины инебольшого размера (53 байта), коммутация на таких скоростях становится возможной.При переменной длине и большем размере ячейки задача создания АТМ-переключателябыла бы намного сложнее.Все АТМ-переключатели должны удовлетворять следующим требованиям:• терять как можно меньше ячеек• никогда не менять порядок поступления ячеек по каждому виртуальномусоединениюПервое требование означает, что АТМ-переключатель должен обеспечивать достаточнобольшую скорость переключения, но так, чтобы не терять ячейки.
Считается допустимойпотеря 1 ячейки на каждые 1012. В больших переключателях считается допустимойпотеря 1-2 ячеек за час работы. Второе требование - сохранять порядок поступления ячеекнеизменным - существенно усложняет конструкцию переключателя, но таково требованиеАТМ-стандарта.Одна из ключевых проблем конструкции АТМ-переключателей состоит в следующем: чтоделать, когда сразу по нескольким линиям пришли ячейки, которые должны бытьотправлены по одной и той же выходной линии? Напрашивается решение: взять однуячейку, обработать ее, а другую сбросить. Но в силу требования 1 оно не годится.88Возможно другое решение: буферизовать ячейки на входе. Идея этого решения показанана рисунке 2-66.
Пусть в начале цикла 1 (рисунок 2-66(а)) поступило четыре ячейки, двеиз которых должны быть отправлены по линии 2. Поскольку из-за линии 2 возникконфликт, то только три ячейки передаются на выходные линии. Поэтому к началу цикла2 (рисунок 2-66(b)) на выходе переключателя появятся три ячейки, но на вход поступятновые.
К началу цикла 3 (рисунок 2-66(с)) на входе останется только одна ячейка, иочередь рассосется только на четвертом цикле. В случае буферизации на входе надоследить за тем, чтобы дисциплина обслуживания возникающих очередей была бысправедливой и равномерно обслуживала очереди на всех линиях.Рисунок 2-66. Буферизация ячеек на входеНедостаток этого решения в том, что очередь на входе может блокировать даже те ячейки,которые должны быть перекоммутированы на линии, на которых нет конфликтов.Поэтому по соответствующему виртуальному соединению скорость упадет. Этот эффектназывается блокировкой на входе.
Кроме этого, буферизация ячейки на входе требуетдополнительной логики в схемах, что усложняет конструкцию АТМ-переключателя.Альтернативным решением может быть буферизация на выходе. Это решение показано нарисунке 2-67. Если несколько ячеек должны уйти по одной и той же линии, то онипередаются на выход и буферизуются там.
Это требует меньше циклов, в нашем примеретолько 3. В общем случае Karol 1987 показал, что буферизация на выходе эффективнее,чем буферизация на входе.Рисунок 2-67. Буферизация на выходе89Рассмотрим конструкцию АТМ-переключателя, использующего буферизацию на выходе.Этот тип переключателей называется переключатель выталкивающего типа. Он показанна рисунке 2-68 для конфигурации 8х8 линий. Здесь каждая входная линия соединена сшиной, к которой подключены все выходные линии.
Каждая входная шина имеет своймеханизм управления, не зависящий от других, что существенно упрощает конструкцию.Рисунок 2-68. Переключатель выталкивающего типаУ каждой поступающей ячейки аппаратно анализируется заголовок, чтобы определить,какому виртуальному соединению она принадлежит. Затем, с помощью таблицыкоммутации, определяется выходная линия, через которую эта ячейка должна покинутьпереключатель. Пересечение с соответствующей выходной линией активизируется, и,когда ячейка доходит до этого пересечения, она попадает в буфер. Ресурсовпереключателя достаточно, чтобы буферизовать на одном выходе ячейки со всех входов,если это потребуется, или размножить ячейки, если их надо разослать по несколькимвиртуальным соединениям.Естественно было бы буферизовать все конфликтующие ячейки в выходном буфере.Однако для переключателей, например, на 1024 линий, нам потребовалось бы 1024буферов по 1024х53 байтов.
Слишком много! Выход из этой ситуации - выделение лишь nбайтов на буфер, где n – параметр настройки. Если конфликтующих ячеек больше, тоячейки, не попавшие в буфер, сбрасываются. Здесь опять-таки надо быть осторожным,определяя на каких входных линиях сбрасывать ячейки, из каких выходных буфероввыталкивать ячейки на очередном цикле так, чтобы не было дискриминации. Регулируяпараметр n, можно варьировать стоимость и число сбрасываемых ячеек, что влияет нацену переключателя.2.5.9.2. Переключатели Батчера-БаньянаОсновным недостатком переключателей выталкивающего типа является то, что центркоммутации - простой коммутатор, а это означает, что его сложность растет квадратичноот числа коммутируемых линий.
Из рассмотрения принципов построения коммутаторовдля коммутации каналов мы уже знаем, что одно из решений - каскадные коммутаторы.Аналогичное решение возможно и для коммутации пакетов.90Это решение называют переключателем Батчера-Баньяна.
Как и переключателивыталкивающего типа, переключатель Батчера-Баньяна синхронный, т.е. за один цикл онможет обрабатывать несколько входных линий. На рисунке 2-69(а) показантрехступенчатый 8х8 переключатель Баньяна. Он называется так, поскольку похож накорни баньянового дерева. В баньяновых переключателях для каждого входа существуетровно один путь к любому из выходов. Маршрутизация пакета происходит в каждом узлена основе адреса выходной линии, которой должен достичь пакет. Адрес выходной линииопределяют на входе по номеру виртуального соединения. В данном случае трехбитовыйномер впереди ячейки используется в каждом узле для маршрутизации.Рисунок 2-69. Трехступенчатый 8х8 переключатель БаньянаВ каждом из 12 переключающих элементов есть два входа и два выхода.
В зависимости отзначения соответствующего разряда ячейка направляется либо в порт 0, либо в порт 1.Если обе ячейки, поступившие на вход одного и того же коммутирующего элемента,должны быть направлены на один и тот же порт, то направляется одна, а втораясбрасывается.Итак, адрес выходной линии анализируется в каждом элементе слева направо. Например,код 001 означает, что соответствующая ячейка будет направлена на верхний, потом ещераз на верхний, а затем на нижний порты. Коллизии в баньяновской сети возникают, когдав одном и том же элементе в одно и тоже время надо использовать один и тот же порт. Нарисунке 2-70 (а) показаны коллизии.
На рисунке 2-70 (b) те же 8 ячеек коммутируют безколлизий. Вывод: в зависимости от распределения ячеек на входе баньяновская сеть либобудет терять ячейки, либо нет.Рисунок 2-70. Пример коллизий и способ их разрешения91Идея Батчера состояла в том, чтобы переставить ячейки на входах так, чтобы вбаньяновской сети конфликтов не возникало.
Такая перестановка показана на рисунке 262 (b).Для сортировки входов Батчер в 1968 году предложил специальный переключатель.Подобно баньяновскому переключателю, переключатель Батчера строится из элементов2х2, работает синхронно и дискретно. В каждом элементе выходные адреса ячеексравниваются. Больший направляется по стрелке, а меньший - в противоположномнаправлении. Если ячейка одна, то против стрелки.