Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технологии корпоративных сетей. Энциклопедия.doc
Скачиваний:
210
Добавлен:
15.08.2019
Размер:
51.83 Mб
Скачать

Методы отбрасывания пакетов

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

Сеть ATM обрабатывает перегрузки с помощью механизма отбрасывания ячеек. При этом отбрасываемые ячейки могут быть частью различных пакетов (AAL PDU). В некоторых случаях при отбрасывании ячеек протоколы верхних уровней, например TCP, выполнят повторную передачу всего пакета со всеми его ячейками. Это может привести к возникновению перегрузок в сети. Механизм отбрасывания пакетов отбрасывает только те ячейки, которые принадлежат одному пакету. Поясним это подробнее. Если отбрасывается одна ячейка в пакете, то коммутатор ATM после этого отбросит все ячейки данного пакета. Коммутатор будет продолжать отбрасывать ячейки до тех пор, пока не увидит указатель конца пакета в заголовке очередной ячейки.

Существует два основных механизма извлечения из сети поврежденных пакетов: ранний сброс пакета (Early Packet Discard, EPD – см. выше) и сброс остатков пакета (Tail Packet Discard, TPD). Остановимся на методе сброса остатка пакета. Он удаляет остатки пакета при обнаружении потери хотя бы одной ячейки. Этот метод применяется как при перегрузке, так и в ситуации, когда ячейки не укладываются в отведенный им временной интервал, например, при передаче видеоинформации – это делается для того, чтобы избежать искажения. Принадлежность ячейки к определенному пакету коммутатор определяет с помощью поля РТ в ее заголовке.

При необходимости коммутатор может производить выборочный сброс ячеек с использованием механизма раннего сброса пакета EPD (рис. 15.12). Этот механизм используется в критической ситуации для предотвращения перегрузок. При этом строго регламентированы пакеты, ячейки которых отбрасываются. Этот метод позволяет избежать случайного отбрасывания ячеек. Механизмы EPD и TPD позволяют заметно повысить эффективность сети.

Адаптивное управление буферами в коммутаторах

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

Обобщенно службы ATM можно разделить на два основных класса: службы с гарантией (CBR, nrtVBR и rtVBR) и службы, доставляющие трафик с «максимальным усилием» (ABR и UBR). Для служб первого класса требуется необходимое количество сетевых ресурсов и свободной буферной памяти в коммутаторах. С другой стороны, они не будут «просить лишнего». Службы второго класса, поддерживающие доставку с «максимальным усилием» (best effort), получают ресурсы по остаточному принципу, но, с другой стороны, они жестко конкурируют между собой за общий пул буферного пространства и свободную часть полосы пропускания.

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

Большинство коммутаторов ATM реализует статический алгоритм отбрасывания ячеек, в основе которого лежат фиксированные граничные условия (рис. 15.13). Суть метода состоит в том, что в зависимости от размера всего буфера жестко определяется максимальное число ячеек одного соединения, которое может находиться в буфере. По его достижении ячейки этого соединения начинаются отбрасываться. Однако такой алгоритм не способен обеспечить равномерное распределение ресурсов между соединениями, а буферное пространство используется неэффективно. Ячейки отбрасываются коммутатором без учета сервиса потока, к которому они принадлежат, и без учета занятости буфера.

Но может использоваться и другой алгоритм сброса ячеек – адаптивный. Если возвращаться к графическому представлению, то его можно изобразить в виде некоторой кривой. Форма этой кривой выбирается для каждого виртуального соединения в отдельности для оптимизации производительности и обеспечения трафик-контракта. При использовании адаптивного метода решение о сбросе ячеек учитывает текущие условия и основывается на рассмотрении двух факторов: количестве ячеек, находящихся в буфере для каждого соединения, и количестве ячеек, отведенном под соответствующую службу (рис. 15.14).

При построении адаптивной кривой сброса различают четыре службы – CBR, nrtVBR, rtVBR и ABR/UBR (рис. 15.15). Это помогает управлять сбросом как на уровне ячеек, так и на уровне пакетов. Кроме того, могут формироваться кривые, которые влияют на индикацию EFCI для службы ABR.

Для того чтобы продемонстрировать, как адаптивные кривые сброса ячеек обеспечивают разделение ресурсов для отдельных виртуальных соединений, рассмотрим пример с тремя виртуальными соединениями службы UBR. Предположим, все три соединения имеют одинаковые требования к качеству обслуживания (рис. 15.16).

Хотя все виртуальные соединения одной службы используют единую адаптивную кривую, каждое из них работает в своей области графика, и решения о сбросе для них принимаются независимо. Эти области определяются с учетом задействованного буферного пространства. В рассматриваемом примере ячейки в виртуальном соединении 3 передаются на малой скорости и занимают совсем немного буферной памяти. В результате соединение «попало» в ту область кривой, в которой поступающие ячейки сохраняются в буфере. Виртуальные соединения 1 и 2 работают на более высоких скоростях и каждое из них занимает достаточно много буферного пространства, что приводит к их смещению в такую область кривой, в которой все входящие ячейки отбрасываются коммутатором. Таким образом достигается индивидуальный подход к каждому виртуальному соединению.