В. Столлингс - Современные компьютерные сети (2-е издание, 2003) (1114681), страница 66
Текст из файла (страница 66)
На практике с каждым портом может быль ассоциированы два буфера фиксированной длины или пул памяти, доступный для любых действий с буферами. В последнем случае мы можем считать, что у каждого порта есть два буфера переменной длины с постоянной суммарной вместимостью. В любом случае прибывшие пакеты помещаются во входной буфер соответствующего порта. Узел исследует каждый поступивший пакет, принимает решение о выборе маршрута, а затем помещает пакет в соответствующий вьгходной буфер.
Пакеты, стоящие в очереди на передачу, передаются настолько быстро, насколько зто возможно. По сути, зто статистссческое мультиплексирование с разделением времени. Если пакеты прибывают слишком быстро, а узел не успевает их обрабатывать (принимать реп)ения о выборе маршрута) или не успевает удалять пакеты из выходных буферов, тогда в конце концов поступят пакеты, для которых не найдется места в буферах. При достижении подобной точки насыщения можно воспользоваться одной или двумя обшими стратегиями. Первая стратегия заключается в том, что любой прибывающий пакет, для которого нет места, просто игнорируется.
Альтернативный подход состоит в том, что узел, испытывающий подобные трудности, может предпринять определенные действия по управлению потоком, прохогсяп!иьс через него и его соседей. Однако, как показано на рис. 10.2, каждый из соседей угьча так- ' Однако если график проявляет самоподсюиые свойсгва (см. главу 9), все может оказаться намного серьезней, и длинные оче(юди могут возникать даже при небольшоб средней загружессс~осс и сети. ' В случае коммутатора сети с комм)таю~с(с пакетов, сети ретрансляции кадров или сети АТЫ каждый порт ввода-нывода соединяется с линией перелачн, прпсоепиненвой к дрч гому узлу илп оконечвой системе.
В случае ьсаршрутиэагора обьединепной саги каждый порт авода-вывода соединяется либо непскрелсгвенно с другим узлом, либо с подсетью. 10,1. Следствия перегрузки 207 К другому коммутатору нпи маршрутизатору К другому коммутатору ипи маршрутизатору К оконечной системе К оконечной системе 1:.ьт 29б Глава 10. Борьба с перегрузкой в обычных и обьединенных сетях же управляет нескольки ми очередямн. Если узел 6 ограничивает поток пакетов узла 5, это приведет к тому, что выходной буфер узла 5 переполнится.
Таки образом, перегрузка в одной части сети может быстро распространиться, пер ° ,перекидываясь на соседей, и даже охватить всю сеть. Управление потоком является в ся весьма мощным средством, поэтому им необходимо пользоваться так, чтобы упра правлять графиком всей сети. Рис. 10.! . Входные и выходные очереди нв коммутаторе или маршрутизаторе Выходная очередь Входная очередь Рис. 10.2. Взаимодействие очередей в компьютерной сети Идеальная производительность ис. 10.3 показаны графики идеального использования сети.
На верхнем граа рис. ф е представлена зависимость пропускной способности (количества пакетов, ике п ед доставл авленных оконечным станциям-получателям) сети от предлагаемой нагрузки колич тколичество пакетов, передаваемых оконечными системами-отправителями), По обеим координатным осям графика откладываются значения, нормализованные о нные относительно максимальной теоретической пропускной способности сети.
тн. Например, если сеть состоит нз одного узла и двух линий с пропускной способностью 1 Мбит/с, тогда теоретическая пропускная способность сети составит 2 Мбнт~с. В идеальном случае суммарный график сети может увеличиваться, принимая предлагаемую нагрузку, и достигать максимальной пропускной способности сет т. ти сети.
При дальнейшем увеличении нагрузки нормализованный суммарный график остается на отметке 1,0. Однако обратите внимание на то, что происходит со сквозной задержкой среднего пакета даже в этом идеальном случае. Прн очень низкой нагрузке существует некоторая постоянная задержка, состоящая нз задержки распространения по сети от отправителя к получателю н задержки обработки на каждом узле. По мере увеличения нагрузки на сеть к этой величине также добавляются задержки ожидания в очередях на каждом узле.
Когда нагрузка превышает пропускную способность сети, задержка становится бесконечной. Вот простое интуитивно понятное объяснение того, почему задержка должна стремиться к бесконечности. Предположим, что каждый узел сети оснащен буферами бесконечного размера и что входная нагрузка превышает пропускную способность сети. В идеальных условиях сеть будет продолжать поддерживать нормализованную пропускную способность 1,0.
Поскольку нормализованная скорость тюступления пакетов в сеть превышает 1,0, размеры внутренних очередеи растут. В установившемся режиме при входе, превышающем выход, очереди растут до бесконечности, в связи с чем также до бесконечности увеличивается величина задержки. Прежде чем перейти от идеальных условий к реальным, важно понять аначение графиков. данных на рис. 10.3. На этом рисунке показана идеальная, недостижимая цель всех схем управления трафиком и борьбы с перегрузкой.
Ни одна схема не может обладать производительностью большей, чем представленный на рисунке идеал. Было показано (см. 11251), что конфигурация сети и схема борьбы с перегрузкой, обеспечивающие большую пропускную способность, как правило, также дают Гюлее высокое время задержки.
Там же было показано, что мощность представляет собой лаконичную меру сравнения различных схем. Практическая производительность Идеальный случай, представленный на рнс. 10.3, предполагает наличие бесконеч- ных буферов и отсутствие накладных расходов, связанных с передачей пакетов и борьбой с перегрузкой.
На практике буферы конечны, что приводит к их перепол- нению, а попытки борьбы с перегрузкой требуют части пропускной способности сети на обмен управляющими сигналами. 10,1, Следствия перегрузки 29м 1, .з 1,5 2,0 Нормализованная нагрузка 1,0 Нормализованная нагрузка 1,5 2,0 Нагрузка ,О 1,5 2,0 Нормализованная нагрузка Рис. 10.3. Идеальное использование сети 2.0 1,5 0,5 0,0 1,0 Нагрузка Рис. 10.4. ЭфФект пеРегРузки 298 Глава 10. Борьба с перегрузкой в обычных и обьединенных сетях Рассмотрим, что произойдет в сети с буферами конечных размеров, если не предпринимать никаких попыток борьбы с перегрузкой или ограничения графика поступающего от оконечных систем. Разумеется, детали будут отличаться в зависимости от конфигурации сети н от статистических характеристик графика Однако графики на рис.
10.4 в общих чертах демонстрируют катастрофический результат- При низкой нагрузке трафик, а вместе с ним и коэффициент использования сети растут с ростом предлагаемой нагрузки. При дальнейшем увеличении нагрузки в определенный момент достигается некая точка (точка А на графике), после которой сетевой трафик увеличивается медленнее, чем нагрузка на входе. Это вязано с тем, что сеть Входит в состояние управляемой перегрузки.
В этом районе сеть еше справляется с нагрузкой, хотя и с увеличенной задержкой. Отклонение от идеала вызвано рядом фагсгоров. Во-первых, как правило, нагрузка распределяется по сети неравномерно. Поэтому в то время, когда отдельные узлы испытывают управляемую перегрузку, другие могут быть серьезно перегружены и перестают поддерживать трафи к. Кроме тгл о, по лгере увеличения нагрузки сеть пытается сбалансировать эту нагрузку, направляя пакеты через области, испытывающие меньшую перегрузку. Чтобы изменение маршрутов было возможно, узлы должны обмениваться большим количеством управляющих сообщений, предупреждая друг друга о перегрузке.
Эти накладные расходы снижают пропускную способность, доступную для пакетов с данными. 3 '8 8 Б й 2 5 о 10,2. Борьба с перегрузкой 301 Неявная снг Риа. ! О.б. Методы борьбы с перегрузкой ЗОО Глава 1О. Борьба с перегрузкой в обычных н обьединенных сетях При дальнейшем увеличении нагрузки на сеть очереди на различных узлах п должают удлиняться. Наконец достигается точка (точка В на графике), за котМ рой с увеличением нагрузки пропускная способность сети падает.
Причина этой явления заключается в том, что буферы каждого узла ограничены в размерах. К да буферы узла наполняются, узел вынужден отбрасывать пакеты. Таким обр б амерах. о а мо разом, отправитель помимо новых пакетов вынужден передавать потерянные пакеты повторно. Это только усугубляет ситуацию. По мере того как все больше и больше пакетов передается повторно, нагрузка на систему возрастает и все большее ко личество буферов переполняется. В то время как система безнадежно пытается рассчитаться с долгами, оконечные системы продолжают закачивать в еноте с рые и новые пакеты. Даже успешно доставленные пакеты могут доставляться повторно, так как их доставка и отсылка обратно подтверждений занимает слишком много времени.
В результате отправитель полагает, что пакету не удалось дойти до получателя, и посылает пакет еше раз. Прн таких обстоятельствах эффективная пропускная способность системы стремится к нулю. 10.2. Борьба с перегрузкой Изучению различных методов борьбы с перегрузкой посвящена большая часть книги.
На рис. 10.5 даются общие пояснения к эпсхс методам. Противодавление В методе противодавления (Ьас1сргеззпге) использует эффект, сходный с противо- давлением в жидкости, текущей по трубе. Когда конец трубы закрывается (или сужается), давление в жидкости передается назад по трубе к точке истока, где поток останавливается (или замедляется). Противодавление может быть приведено в действие для каналов связи или логических соединений. Вернемся к рис. 10.2.
Если узел 6 начинает испытывать перегрузку (переполняются буферы), тогда поток всех пакетов от узла 5 (или узла 3, илн от о нх узлов бо з ов, 3 и 5) черсз узел 6 может замедлиться или остановиться. Если эта ситуация продлится, продлится, узел 5 будет вынужден замедлить или остановить потоки данных на своих входя оих входящих линиях. Это ограничение потока распространяется назад снавстречу поток да чу потоку данных) к отправителям, которылс придется ограничить подачу новых пакетов в сеть. веление может быть применено выборочно к лопсческим соединениротиводавление мо ям,такчтопотокданн х т к данных между соседними услами будет ограничен или остановлен только для нек я некоторых соединений, как правило, для тех, которые поддерживают болывую часть графика.