В. Столлингс - Современные компьютерные сети (2-е издание, 2003) (1114681), страница 80
Текст из файла (страница 80)
Управление потоком представляет собой проблему, решение которой возможно в целом на уровне обычной или обьединенной сети. Однако меры по избежанию или облегчению перегрузки могут приниматься и индивидуальными ТСР-сущностями. Эти меры обсуждаются в разделе 12.2, Стратегия повторных передач Как и протоколы уровня передачи даннь1х, протокол ТСР должен включать схемы контроля ошибок и управления потоком. В протоколе ТСР не используются явные отрицательные подтвержден1и, такие как КЕ) и БКЕ), которые можно встретить в протоколах уровня передачи данных. Вместо этого протокол ТСР полагается исключительно на положительные подтверждения н повторную передачу в случае, если подтверждение не пришло в течение определенного интервала времени, Повторная передача сегмента может быть вызвана двумя событиями.
Во-первых, сегмент может быть поврежден при передаче, но, тем не менее, достичь получателя, Контрольная сумма, входящая в состав сегмента, позволяет получающей транспортной сущности обнаружить ошибку и отбросить сегмент. Более распространенный случай заключается в том, что сегменту вообще не удается достичь получателя. В любом случае передающая транспортная сущность не знает о том, что передача сегмента была неуспешной. Если сегмент пе был успешно принят получателем, подтверждение в ответ не посылается, в результате требуется повторная передача сегмента. Для принятия решения о повторной передаче у отправителя должен быть таймер, ассоциированный с каждым посылаемым сегментом.
Если время ожидания истекает прежде, чем подтверждается получение сегмента, отправитель должен повторить передачу. Ключевой вопрос проектирования протокола ТСР состоит в том, какой должна быть величина времени ожидания. Слишком малое значение приведет к слишком большому числу повторных передач, то есть к расходованию пропускной способности сети. Если установить слишком большое значение периода ожиданги, протокол будет медленно реагировать на потерю сегментов. В таймере следует устанавливать значение несколько большее, чем длительность задержки распространенги сигнала в оба конца (между отправкой сегмента и получением подтверждения). Разумеется, величина этой задержки будет меняться при изменении состояния объединенной сети. Что еще хуже, статистические параметры задержки также будут меняться при изменении состояния объединенной сети.
Соответственно, предлагаются две стратегии. Может применяться фиксированный таймер, основанный на понимании типичного поведения объединенной сети. Недостаток такой стратегии заключается в неспособности реагированги на изменение состояния сети. Если установить значение таймера слишком большим, обслуживание всегда будет мелленным.
Если установить его слишком маленьким. может возникнуть положительная обратная связь, то есть перегрузка объединенной сети будет приводить к увеличению числа повторных передач, усугубляющих перегрузку. А аптивный таймер повторной передачи При изменении состояния о ычнон 6 " или объединенной сети интервал статическо- го таймера повторнои пе . редачи, скорее всего, окажется ли слишком коротким, инпым. Соответственно, практически во всех вариантах реализа- либо слишком ллинпым.
а ТСР и едпринимаются попытки оцепить значение текущего ции протокола пред аблю ения за интервалом ни задержки распростра ржк ространения сигнала в оба конца путем н ~юдения за ш тов. Значение таймера устанавливается задержки для недавно переданных сегментов. на основании этих наблюдений с небольшим запасом. О дин из методо дов заключается в том, чтобы просто взять с еднее значение Р оба сего а кон а для некоторого количества задержки распространения сигнала в о а ц б не значения задержки, ментов.
сли с е . Е и среднеезначениеточно предсказывает удущ ной пе едачи позволит мое в результате значение таймера повторнои пере тогда получаемо добиться хорошей производительности сети. Простои метод усре ~ выразить следующей формулой: 1 ЛКТТ(К + 1) = ~ КТТ(() . К+1,, (12.2) Здесь КТТ(1) представляет собой время распространения сигнала в о а конца (Косой-Тп' Т(п1е, КТТ)„наблюдаемое для (-го передаваемого сегм 1 ьКоип - пр (п1е, „а а конца Ачегайе Коцпг(- является средним ним временем распространенги сигнала в оба к ( Тг)р Типе, АКТТ) для первых К сегментов. Это выражение может быть записано следующим образом: 1 АКТТ(К + 1) = — АКТТ(К) + КТТ(К + 1).
К+1 К+1 (12.3) Адаптивная схема о ладает со б - бственными проблемами. Предположим, что Ср- ущность отслеживает инте рвал времени треб) ющиися для подтверждения Т -су ег значение таймера повторной передачи на осногмента данных, и устанавливает з сегмен б аемых задержех Этому значению нельзя доверять ве уср среднения величины на людаем х по трем причинам: г ~.Р- ущность может подтвердить получение сегмента не + Одноранговая -сущное сразу, Вспомним, что мы п ед ы предоставили ей привилегию кумулятивных подтверждении см.
л. ( м. далее описание параметров политики). + В случае повторнои передач сдачи сегмента отправитель не может определить, является ли полученное им и м подтверждение ответом на оригинальную или на повторную передачу, + Состояние объединенной сети может измениться внезапно. У этих про лем нетпросто го решения. Всегда будет существовать определентимального значения таймера повторной переда- вая неуверенность по поводу оптим чи. В следующем подразделе мы асс ,,ассмотрим„как вычисляется значение этого вреи КЕС 793. В разделе 12.2 исследуются более менного интервала в рекомендации сложные стратегии вы а бон значения интервала периода ожидания. 0,4 е е 0„2 0,1 360 Глава 12. Управление трафн ком в протоколе ТСР При такой формулировке нет необходимости выполнять полн нее суммированн каждый раз.
Обратите внимание на то, что каждому слагаемому придан рави авныи вес, то есть кагкдое слагаемое умножено на одну и ту же константу 1/(К-ь 1), К ак правило, больший вес следует придавать более поздним измеренным значе г чениям, так как они с большей вероятностью отражают будущее поведение сети. Раен и. аснространенный метод предсказания следующего значения на основании последов следовательности пре дыдущих значений описан в спецификации КРС 793. Э10 метод э то метод экспоненциального усреднения: ВКТТ(К+ 1) = а ° ВКТТ(К) + (1 — ц) КТТ(К+ 1), (12 А) Здесь 8 КТТ(К) называется сглаженной оценкой времени распрос аспростраиения сигнала в оба конца (51поо1ггег) Коцпд-Тпр Типе езт1шаье, 5КТТ).
Сравните фо равците эту формулу с формулой (12.3). При помощи постоянной величины а (О < а с1), независимой от числа наблюдений, мы получаем формулу, в которой учитываются все прошлые значения, но более отдаленные учитываются с меньшим в . Ч 6 им весом. Чтобы лучше понять это, рассмотрим формулу (12.4) в развернугом виде: ВКТТ(К+ 1) = (1 — гг)КТТ(К+ 1) + сг(1 — гх)КТТ(К) + се(1 — сг)КТТ(К вЂ” 1) + + ... е ах(1 — а)КТТ(1) Поскольку как а, так и (1 — а) меньше единицы, каждое последующее слагаемое меньше предыдушего. Например, при а = 0,8 предыдущая формула принимает вид 12.1.
Управление потоком в протоколе ТСР 361 ЯКТТ(к + 1) = 0,2 КТТ(К + 1) + 0,16 КТТ(К) + 0,128 КТТ(К -1) + ... Чем раныпе было наблюдение, тем меньше вес, с которым оно учитывается прн вычислении среднего значения. График зависимости величины коаффициента от положения в формуле показан на ис. 12А. Че р .
А. Чем меньше значение а, тем с большим весом учитываготся наиболее поздние результаты измерений. Для а = 0,5 практически весь вес приходится на первые четыре-лять элементов суммы, тогда как при а= 0,875 средняя величина распределяется примерно по десятку наблюдений. Преимущество использования небольшой величины коэффициента а заключается в том, что среднее значение отражает быстрые изменения наблюдаемой величины.
Недостаток такого подхода состоит в том, что в случае кратковременного отклонения наблюдаемой величины использование небольшого значения коэффициента а вызовет резкое изменение среднего значения. На ис. 12.5 р ..5 сравниваются методы простого и экспоненциального (для двух значений а) усреднения.
На рис. 12.5, а наблюдаемая величина начинается в 1, затем линейно растет до 10 и остается на атом уровне. На рис. 12.5, 6 наблюдаемая величина начинается на уровне 20, затем линейно убывает до 10 и остается па этом уровне. В обоих случаях мы начинаем с оценки 5КТТ(О) = О. Обратите внимание на то, что экспоненциальный метод быстрее отслеживает изменения процесса, чем простое усреднение, и при небольших значенггях коэффициента а реак ия та реакция усредненной величины быстрее. 0,0 2 3 4 6 6 7 8 9 10 В озраст наблюдения Рно. 12.4. Коэффициенты экспоненциального сглюкизаннл Для оценки текущего времени задержки распространения сигнала в оба конца в рекомендапиях КЕС 793 используется формула (12.4).
Как уже говорилось, таймер повторной передачи следует установить несколько большим, чем оцениваемое время задержки распространения сигнала в оба конца. Одна из возможностей сделать это заключается в использовании постоянной величины КТО(К+ 1) = 5КТТ(к+ 1) + Ь. Здесь КТΠ— тайм-аут повторной передачи (Кетгапзпйзз1ог1 ТппеОШ), а Ь вЂ” постоянная величина. Недостаток заключается в том, что величина Ь не пропорциональна ЯКТТ. При больших значегшях 5КТТ величина Ь оказывается относительно малой, и флуктуации фактических значений КТТ являются причиной лишних повторных передач. При небольших значениях ЯКТТ величина Ь оказывается относительно большой, что приводит к избыточным задержкам нри повторнои передаче потерянных сегментов.
Соответственно, в КГС 793 предписывается использовать тайм-аут со значением, пропорциональным ВКТГ и вычисляемым по следуюШей формуле: КТО(К+ ц = МщПВОПМЭ, МЛХ((.ВОПЛО, 6 5КТТ(К+ 1))). (125) 362 Глава 12. Управление графиком в протоколе ТСР 10 чина 0 1 2 3 4 5 8 7 8 9 1011121314151617181920 Время 20 е а15 ~ ~10 5 Здесь ПВОПгчО и г.ВОПЛО представляют собой выбранные заранее фиксированные значения верхней и нижней границ, а 0 — константа. В ВЕС 793 нс указываются конкретные значения, но приводится список «примерных значеннйге а между 0,3 и 0,9, а В между 1,3 н 2,0. Параметры политики реализации протокола ТСР Стандартом ТСР предоставляется точная спецификация протокола, которая долж- на использоваться ТСР-сушностями при взаимодействии друг с другом.