набор интернет-протоколов |
---|
Уровень приложений |
Транспортный уровень |
Интернет-слой |
Связующий слой |
TCP Vegas — это алгоритм предотвращения перегрузки TCP , который делает акцент на задержке пакетов , а не на потере пакетов, как на сигнале, помогающем определить скорость отправки пакетов. Он был разработан в Университете Аризоны Лоуренсом Бракмо и Ларри Л. Петерсоном и представлен в 1994 году. [1] [2]
TCP Vegas обнаруживает перегрузку на начальной стадии на основе увеличения значений Round-Trip Time (RTT) пакетов в соединении в отличие от других разновидностей, таких как Reno , New Reno и т. д., которые обнаруживают перегрузку только после того, как она фактически произошла из-за потери пакетов . Алгоритм в значительной степени зависит от точного расчета базового значения RTT. Если оно слишком мало, то пропускная способность соединения будет меньше доступной полосы пропускания, а если значение слишком велико, то соединение будет переполнено.
Проводится много исследований относительно справедливости, обеспечиваемой линейным механизмом увеличения/уменьшения для контроля перегрузки в Vegas. Интересный момент возникает, когда Vegas взаимодействует с другими версиями, такими как Reno. В этом случае производительность Vegas ухудшается, поскольку Vegas снижает свою скорость отправки до Reno, поскольку он обнаруживает перегрузку заранее и, следовательно, предоставляет большую пропускную способность для сосуществующих потоков TCP Reno. [3] [4] [5] [6]
TCP Vegas — один из нескольких «разновидностей» алгоритмов предотвращения перегрузки TCP. Это одна из серии попыток настройки TCP , которая адаптирует контроль перегрузки и поведение системы к новым проблемам, с которыми сталкиваются при увеличении доступной полосы пропускания в компонентах Интернета в сетях, таких как Internet2 . [7] [8]
TCP Vegas был реализован в ядре Linux , [9] в FreeBSD , [10] в Solaris [11] и, возможно, также в других операционных системах . [ необходима ссылка ]