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

31. Методы работы протокола tcp. Алгоритм медленного запуска .

TCP предлагает два механизма работы - медленного запуска и предотвращения перегрузок. При возникновении перегрузки ТСР должен уменьшить скорость передачи пакетов в сеть, а затем с помощью механизма медленного запуска и/или управления нагрузкой восстановить ее. На практике эти механизмы используются совместно.

Алгоритм медленного запуска при работе постоянно следит, чтобы скорость передачи пакетов в сеть была равна скорости возвращения подтверждений. Механизм медленного запуска добавляет к окну ТСР отправителя окно перегрузки. Когда устанавливается новое соединение, инициализируется окно перегрузки, равное одному сегменту.

Каждый раз, когда приходит подтверждение, окно перегрузки увеличивается на один сегмент. Максимальное количество сегментов, которые может передать отправитель, равно минимуму из окна перегрузки и окна передачи. Окном перегрузки, как механизмом управления потоком, пользуется отправитель, а передаваемым окном - получатель.

Отправитель начинает с передачи одного сегмента и ожидания его подтверждения. При получении подтверждения окно перегрузки увеличивается с 1 до 2, и теперь могут быть посланы два сегмента. После подтверждения каждого из этих двух сегментов окно перегрузки возрастает до 4. Это значение продолжает расти по экспоненте, пока не будет достигнут размер окна передачи.

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

В условиях перегрузки размеры окна перегрузки и окна передачи ТСР совпадают. Меньшее значение затем делится пополам и сохраняется в переменной, называемой порогом медленного запуска.

Это значение должно быть равно, по крайней мере, двум сегментам, если только перегрузка не была причиной тайм-аута тогда размер окна перегрузки устанавливается в 1 (медленный запуск).

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

32. Методы работы протокола tcp .Алгоритм предотвращения перегрузок

TCP прелагает два механизма работы - медленного запуска (slow start) и предотвращения перегрузок (congestion avoidance).

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

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

При возникновении перегрузки ТСР должен уменьшить скорость передачи пакетов в сеть, а затем с помощью механизма медленного запуска и/или управления нагрузкой восстановить ее. На практике эти механизмы используются совместно.

Алгоритм медленного запуска при работе постоянно следит, чтобы скорость передачи пакетов в сеть была равна скорости возвращения подтверждений. Механизм медленного запуска добавляет к окну ТСР отправителя окно перегрузки (congestion) . Оно не указывается в заголовке ТСР, но предполагается. Когда устанавливается новое соединение, инициализируется окно перегрузки, равное одному сегменту.

Как только размер окна перегрузок сравняется со значением порога медленного запуска, алгоритм медленного запуска останавливается, и начинает работу алгоритм предотвращения перегрузок. Он более гибко управлять увеличением объемов передачи.

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