1313
правок
Irina (обсуждение | вклад) |
KVN (обсуждение | вклад) |
||
| (не показано 6 промежуточных версий 1 участника) | |||
| Строка 1: | Строка 1: | ||
== Ключевые слова и синонимы == | == Ключевые слова и синонимы == | ||
Буферизация | |||
== Постановка задачи == | == Постановка задачи == | ||
Рассмотрим систему буферизации с гарантированным качеством обслуживания (QoS), способную хранить ''B'' пакетов. Время квантовано. В начале временного отрезка поступает набор пакетов (возможно, пустой), а в конце этого отрезка один пакет может покинуть буфер для передачи. Поскольку буфер имеет ограниченный размер, в какой-то момент может возникнуть необходимость отбрасывания пакетов. Алгоритм управления буфером должен на каждом временном отрезке решать, какие из пакетов отбросить, а какие передать, учитывая ограниченную емкость буфера. Стоимость пакета обозначим за v(p). Системе присваивается стоимость пакетов, которые она отправляет, в противном случае прибавки стоимости не происходит. Цель алгоритма управления буферами заключается в максимизации совокупной стоимости переданных пакетов. | Рассмотрим систему буферизации с гарантированным качеством обслуживания (QoS), способную хранить ''B'' пакетов. Время квантовано. В начале временного отрезка в буфер поступает набор пакетов (возможно, пустой), а в конце этого отрезка один пакет может покинуть буфер для передачи. Поскольку буфер имеет ограниченный размер, в какой-то момент может возникнуть необходимость отбрасывания пакетов. Алгоритм управления буфером должен на каждом временном отрезке решать, какие из пакетов отбросить, а какие передать, учитывая ограниченную емкость буфера. Стоимость пакета p обозначим за v(p). Системе присваивается стоимость пакетов, которые она отправляет, в противном случае прибавки стоимости не происходит. Цель алгоритма управления буферами заключается в максимизации совокупной стоимости переданных пакетов. | ||
| Строка 19: | Строка 19: | ||
'''Жадный алгоритм.''' | '''Жадный алгоритм.''' | ||
При поступлении пакета стоимостью v(p): | При поступлении пакета стоимостью v(p): | ||
1. Если в буфере имеется свободное место, принять пакет p. | 1. Если в буфере имеется свободное место, принять пакет p. | ||
2. В противном случае отбросить (вытеснить) пакет | 2. В противном случае отбросить (вытеснить) пакет p', имеющий минимальную стоимость среди всех пакетов буфера и p. Если <math>p' \ne p</math>, принять p. | ||
Рисунок 1. Естественный жадный алгоритм | Рисунок 1. Естественный жадный алгоритм | ||
0. Вытеснить (отбросить) первый пакет | 0. Вытеснить (отбросить) первый пакет p' согласно порядку FIFO, такой, что <math>v(p') \le v(p) / \beta</math>, если таковой существует ''(p вытесняет p')''. | ||
Рисунок 2. Дополнительное правило для естественного жадного алгоритма | Рисунок 2. Дополнительное правило для естественного жадного алгоритма | ||
0'. Найти первый (т. е. ближайший к началу буфера) пакет | 0'. Найти первый (т. е. ближайший к началу буфера) пакет p', такой, что его стоимость ниже <math>v(p) / \beta</math> и не выше стоимости пакета, следующего за p' в буфере (если таковой существует). Отбросить найденный пакет ''(p вытесняет p')''. | ||
Рисунок 3. Модифицированный жадный алгоритм с вытеснением | Рисунок 3. Модифицированный жадный алгоритм с вытеснением | ||
В работе [7] показано, что | В работе [7] было показано, что в случае <math>\beta = 15</math> коэффициент конкурентоспособности жадного алгоритма с вытеснением (PG) составляет 1,983. Довольно сложный анализ выполняется при помощи присваивания стоимостей пакетов, обслуживаемых оффлайновым алгоритмом, пакетам, обслуживаемым алгоритмом PG. | ||
Нижняя граница для этой задачи, равная 5/4, была доказана в [9]. Она была улучшена до | Нижняя граница для этой задачи, равная 5/4, была доказана в [9]. Она была улучшена до <math>\sqrt{2}</math> в работе [2] и затем до 1,419 в [7]. | ||
== Основные результаты == | == Основные результаты == | ||
Модификацию алгоритма PG предложили Бансал, Флейшер, Кимбрел, Мадьян, Шибер и Свириденко [3]. В этой версии правило 0 заменено правилом | Модификацию алгоритма PG предложили Бансал, Флейшер, Кимбрел, Мадьян, Шибер и Свириденко [3]. В этой версии правило 0 заменено правилом 0'. | ||
Таким образом, изменение по сравнению с исходным алгоритмом PG заключается в том, что модифицированный алгоритм находит | Таким образом, изменение по сравнению с исходным алгоритмом PG заключается в том, что модифицированный алгоритм находит «локально оптимальный» пакет для исключения. Обозначим модифицированный жадный алгоритм с вытеснением как MPG. | ||
'''Теорема 1 [3]. | '''Теорема 1 [3]. При <math>\beta = 4</math> коэффициент конкурентоспособности алгоритма MPG составляет 1,75.''' | ||
Для доказательства вначале было показано, что для анализа эффективности работы MPG достаточно рассмотреть только экземпляры входных данных, у которых стоимость каждого пакета равна либо 0, либо | Для доказательства вначале было показано, что для анализа эффективности работы MPG достаточно рассмотреть только экземпляры входных данных, у которых стоимость каждого пакета равна либо 0, либо <math>\beta^i</math> для некоторого <math>i \ge 0</math>, но при этом допускается разрешение ситуаций с ничьей при помощи противника. | ||
Затем авторы определили структуру интервалов для экземпляров входных данных. Интервал I имеет тип i, если на каждом шаге t | Затем авторы определили ''структуру интервалов'' для экземпляров входных данных. Интервал I имеет тип i, если на каждом шаге <math>t \in I</math> экземпляр MPG выдает пакет стоимостью не меньше <math>\beta^i</math>, при этом I является максимальным интервалом с таким свойством. | ||
<math>\mathcal{I}_i</math> – это набор максимальных интервалов типа i, а <math>\mathcal{I}</math> – объединение всех <math>\mathcal{I}_i</math>. Оно является мультимножеством, поскольку интервал типа i также может входить в интервал одного или нескольких типов j < i. | |||
Этот подход порождает структуру интервалов, представляющую собой естественную последовательность упорядоченных корневых деревьев: корнем каждого дерева является интервал из | Этот подход порождает структуру интервалов, представляющую собой естественную последовательность упорядоченных корневых деревьев: корнем каждого дерева является интервал из <math>\mathcal{I}_0</math>, а потомками каждого интервала <math>I \in \mathcal{I}_i</math> являются все максимальные интервалы типа i + 1, содержащиеся в I. Эти потомки упорядочены слева направо по времени, также как и сами деревья. Интервалы типа i (и представляющие их вершины) различаются по тому, был или не был на этом интервале исключен пакет стоимостью не менее <math>\beta^i</math>. | ||
В завершение доказательства авторы показали, что для каждой структуры интервалов T коэффициент конкурентоспособности алгоритма MPG на экземплярах со структурой интервалов T может быть ограничен решением линейной программы, индексированной T. Наконец, было показано, что для любого T и любого / | В завершение доказательства авторы показали, что для каждой структуры интервалов <math>\mathcal{T}</math> коэффициент конкурентоспособности алгоритма MPG на экземплярах со структурой интервалов <math>\mathcal{T}</math> может быть ограничен решением линейной программы, индексированной <math>\mathcal{T}</math>. Наконец, было показано, что для любого <math>\mathcal{T}</math> и любого <math> \beta \ge 4</math> решение этой программы не превышает <math>2 - 1 / \beta</math>. | ||
== Применение == | == Применение == | ||
| Строка 69: | Строка 68: | ||
Это приводит к возникновению | Это естественным образом приводит к возникновению задач принятия решений в сетевых переключателях в случаях, когда прибывают несколько пакетов и происходит перегрузка. Вышеописанный алгоритм может использоваться для максимизации производительности работы сети с гарантированным качеством обслуживания. | ||
== Открытые вопросы == | == Открытые вопросы == | ||
Несмотря на значительное улучшение верхней границы для этой задачи, разрыв все же довольно велик. Сгалл [5] показал что алгоритм PG не уступает MPG по эффективности. Позднее Энглерт и Вестерманн [4] показали, что коэффициент конкурентоспособности алгоритма PG не выше | Несмотря на значительное улучшение верхней границы для этой задачи, разрыв все же довольно велик. Сгалл [5] показал что алгоритм PG не уступает MPG по эффективности. Позднее Энглерт и Вестерманн [4] показали, что коэффициент конкурентоспособности алгоритма PG не выше <math>\sqrt{3} \approx 1,732</math> и не ниже <math>1 + 1/2 \sqrt{2} \approx 1,707</math>. Таким образом, для дальнейшего улучшения требуется иной алгоритм. | ||
| Строка 98: | Строка 97: | ||
9. Mansour, Y., Patt-Shamir, B., Lapid, O.: Optimal smoothing schedules for real-time streams. In: Proc. 19th Symp. on Principles of Distributed Computing (PODC), pp. 21-29. ACM, New York (2000) | 9. Mansour, Y., Patt-Shamir, B., Lapid, O.: Optimal smoothing schedules for real-time streams. In: Proc. 19th Symp. on Principles of Distributed Computing (PODC), pp. 21-29. ACM, New York (2000) | ||
[[Категория: Совместное определение связанных терминов]] | |||