Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
part4.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
224.26 Кб
Скачать

3.4. Управления потоками

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

3.4.1. Перегрузки – источники возникновения и следствия

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

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

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

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

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

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

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

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

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

  • ограничить входные потоки уровнями, не создающими перегрузок локальных узлов коммутации сети, или

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

Именно эти операции (ограничение входных потоков, генерация сигнала перегрузки и реакция на него источника) являются содержанием процедур управления потоками.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]