ScholarGate
Ассистент

Принципы управления перегрузками

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

Найти тему в PaperMindСкороFind papers & topics
Tools & resources
Скачать слайды
Learn & explore
ВидеоСкоро

Definition

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

Scope

Эта тема охватывает принципы и практику управления перегрузками: различие между управлением перегрузками и управлением потоком, причины и издержки перегрузки, подходы «от конца к концу» (end-to-end) по сравнению с подходами с сетевой поддержкой, динамика аддитивного увеличения/мультипликативного уменьшения (AIMD) и ее свойства справедливости и стабильности, а также конкретные алгоритмы TCP — медленный старт, предотвращение перегрузок, быстрое восстановление — вместе с ролью явного уведомления о перегрузке и существованием альтернативных алгоритмов. Исключаются механизмы надежности для каждого соединения, которые касаются восстановления потерь, а не перегрузки сети.

Core questions

  • Чем управление перегрузками отличается от управления потоком?
  • Что вызывает перегрузку и что такое коллапс перегрузки?
  • Что такое динамика AIMD и почему она приводит к справедливости и стабильности?
  • Как работают фазы медленного старта, предотвращения перегрузок и быстрого восстановления TCP?
  • Как сигналы «от конца к концу» (потери/задержки) соотносятся с сигналами с сетевой поддержкой, такими как ECN?

Key concepts

  • управление перегрузками против управления потоком
  • коллапс перегрузки
  • аддитивное увеличение/мультипликативное уменьшение (AIMD)
  • медленный старт
  • предотвращение перегрузок
  • быстрая повторная передача и быстрое восстановление
  • окно перегрузки
  • явное уведомление о перегрузке (ECN)
  • справедливость и эффективность

Key theories

Аддитивное увеличение, мультипликативное уменьшение (AIMD)
Линейное увеличение окна отправки при отсутствии перегрузки и его уменьшение вдвое при сигнале перегрузки приводит конкурирующие потоки к равному, эффективному распределению пропускной способности; анализ показывает, что AIMD сходится к справедливости и эффективности, поэтому TCP его использует.
Фазы управления перегрузками TCP
TCP исследует пропускную способность с экспоненциальным медленным стартом, переключается на линейное предотвращение перегрузок вблизи расчетной пропускной способности и использует быструю повторную передачу/быстрое восстановление для реакции на изолированные потери без перезапуска, выводя о перегрузке в основном по потере пакетов.
Предотвращение коллапса перегрузки
Без контроля скорости повторные передачи во время перегрузки могут привести сеть к коллапсу перегрузки, при котором пропускная способность резко падает; введение предотвращения перегрузок в конце 1980-х годов спасло Интернет от повторяющихся коллапсов.

Clinical relevance

Управление перегрузками обеспечивает работоспособность общего Интернета при высокой нагрузке: оно предотвращает системный коллапс с конца 1980-х годов и постоянно балансирует пропускную способность, задержку и справедливость для миллиардов потоков. Его дизайн напрямую влияет на скорость загрузки, качество потокового видео и производительность центров обработки данных, а активные исследования алгоритмов, таких как CUBIC и BBR, а также управление очередями с низкой задержкой продолжают совершенствовать этот баланс.

History

После серии коллапсов перегрузки в раннем Интернете в 1986-1987 годах работа Вана Джейкобсона 1988 года представила медленный старт и предотвращение перегрузок, заложив основы современного управления перегрузками TCP. Анализ Чиу и Джейна 1989 года объяснил, почему AIMD обеспечивает справедливость и эффективность. Последующие десятилетия привели к появлению вариантов, таких как Reno, NewReno, CUBIC и модель-ориентированный BBR, а также механизмов на стороне маршрутизатора, таких как RED и ECN.

Debates

Управление перегрузками на основе потерь против управления на основе задержек и моделей
TCP на основе потерь реагирует только при переполнении буферов, что может вызывать высокую задержку (bufferbloat) и недостаточное использование быстрых дальних каналов, что мотивирует схемы на основе задержек и моделей, такие как BBR; дебаты сосредоточены на справедливости, когда они сосуществуют с традиционными потоками на основе потерь.

Key figures

  • Van Jacobson
  • Dah-Ming Chiu
  • Raj Jain
  • Sally Floyd

Related topics

Seminal works

  • jacobson1988
  • chiu1989
  • kurose2021

Frequently asked questions

В чем разница между управлением потоком и управлением перегрузками?
Управление потоком защищает получателя: оно не позволяет быстрому отправителю переполнить буфер медленного получателя. Управление перегрузками защищает сеть: оно не позволяет отправителям коллективно перегружать маршрутизаторы и каналы между ними. TCP выполняет обе функции, используя окно приема для управления потоком и окно перегрузки для управления перегрузками.
Почему TCP замедляется при обнаружении потери пакетов?
Потеря является основным сигналом TCP о том, что сеть перегружена. Резко уменьшая скорость отправки при потере и постепенно увеличивая ее в противном случае, TCP отступает, когда сеть перегружена, и исследует свободную пропускную способность, когда она не перегружена, что поддерживает совокупный трафик близким к пропускной способности и примерно справедливо распределяет полосу пропускания.

Methods for this concept

Related concepts