Читайте также:
|
|
Протокол TCP использует интервалы ожидания и повторные передачи для решения проблем потерянных сегментов.
Оценка времени оборота: Под выборочным временем оборота (SampleRTT) - время, проходящее с момента передачи сегмента протоколу сетевого уровня передающей стороны до получения квитанции для этого сегмента, измеряется для 1 из переданных, но не квитированных сегментов, с периодичность в 1 время оборота меняется, не измеряется для повторно переданных сегментов. Для получения типичного значения необходимо некоторым способом усреднить величину SampleRTT - величина EstimatedRTT.
EstimatedRTT = (1-a)*EstimatedRTT + a*SampleRTT (а = 0,125)
- является весовым средним значением SampleRTT - экспоненциалоьное весовое скользящее среднее.
DevRTT - приближенное отклонение SampleRTT от EstimatedRTT.
DevRTT = (1-b)*DevRTT + b*|SampleRTT - EstimatedRTT|
b = 0.25
Определение и управление величиной интервала ожидания:
TimeoutInterval = EstimatedRTT + 4*DevRTT.
Удвоение интервала ожидания: По истечении интервала ожидания TCP осуществляет повторную передачу неподтвержденного сегмента с наименьшим порядковым номером. При этом вместо нового расчета EstimatedRTT и DevRTT TCP удваивает текущее значение интервала ожидания. ТО увеличение интервала происходит экспоненциально при каждой новой повторной передаче (при получении квитанции или данных от верхнего уровня расчет заново).
Ускоренная повторная передача: механизм дублирования подтверждения позволяет передающей стороне обнаружить потери пакетов до истечения интервала ожидания - это копия положительной квитанции предыдущего сегмента, отправляемая в ответ на получение следующего сегмента, если порядковый номер последнего превышает ожидаемый. Если на передачу одного и того де сегмента приходит 3 дублирующих подтверждения, передающая сторона воспринимает это как указание на потерю следующего за ним сегмента. в этом случае TCP осуществляет ускоренную передачу пропущенного сегмента не дожидаясь истечения интервала ожидания.
Возвращение на N шагов назад или выборочное повторение: TCP использует общее квитирование и для неискаженных сегментов, полученных с нарушением порядка следования, не формируется отдельной квитанции. ТО передающей стороне лишь необходимо хранить наименьший порядковый номер отправленного неподтвержденного байта и порядковый номер следующего передаваемого байта. В TCP предусмотрена буферизация пакетов, полученных с нарушением порядка следования. TCP использует механизм выборочного подтверждения, позволяющий принимающей стороне индивидуально квитировать сегменты, нарушающие порядок следования, а не выдавать общую квитанцию для последнего корректно принятого сегмента.
Удвоение интервала ожидания: истечение интервала ожидания свидетельствует о наличии перегрузок в сети, т.е. скоплению большого числа пакетов на одном или нескольких марш-рах, что приводит к значительным задержкам и потерям данных. Увеличение интервала ожидания приводит к тому, что повторные передачи осуществляются через возрастающее промежутки времени.
Ускоренная повторная передача: механизм дублирования подтверждения позволяет передающей стороне обнаружить потери пакетов до истечения интервала ожидания - это копия положительной квитанции предыдущего сегмента, отправляемая в ответ на получение следующего сегмента, если порядковый номер последнего превышает ожидаемый. Если на передачу одного и того де сегмента приходит 3 дублирующих подтверждения, передающая сторона воспринимает это как указание на потерю следующего за ним сегмента. в этом случае TCP осуществляет ускоренную передачу пропущенного сегмента не дожидаясь истечения интервала ожидания.
Возвращение на N шагов назад или выборочное повторение: TCP использует общее квитирование и для неискаженных сегментов, полученных с нарушением порядка следования, не формируется отдельной квитанции. ТО передающей стороне лишь необходимо хранить наименьший порядковый номер отправленного неподтвержденного байта и порядковый номер следующего передаваемого байта. В TCP предусмотрена буферизация пакетов, полученных с нарушением порядка следования. TCP использует механизм выборочного подтверждения, позволяющий принимающей стороне индивидуально квитировать сегменты, нарушающие порядок следования, а не выдавать общую квитанцию для последнего корректно принятого сегмента.
Контроль потока: На обоих хостах между которыми установлено TCP-соединение, имеются приемные буферы. Приложение считывает из них данные в произвольный момент времени. Если частота поступления данных в буфер превышает частоту их считывания приложением, то через некоторый интервал времени возникает угроза переполнения буфера. Для избежания этого TCP предоставляет приложениям службу контроля потока, призванную контролировать, чтобы частота передачи данных соответствовала частоте из считывания принимающим приложением. Скорость передачи может быть принудительно снижена - механизм контроля перегрузок. TCP обеспечивает контроль приема с помощью переменной, называемой окном приема, поддерживается обеими сторонами.
Дата добавления: 2015-08-05; просмотров: 80 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Установление и разрыв соединения, состояния TCP. | | | Сервисы, предоставляемые функциями сетевого уровня. |