Введение
Измерение нагрузки в телекоммуникациях
Эрланг (символ E) — это безразмерная единица, используемая в телефонии для измерения предлагаемой нагрузки или нагрузки, проходящей через элементы обслуживания, такие как телефонные каналы или телефонное коммутационное оборудование. Один телефонный канал может быть использован в течение 60 минут в час. Полное использование этой пропускной способности, 60 минут трафика, составляет 1 эрланг. Проходящий трафик в эрлангах — это среднее количество одновременных вызовов, измеренное за определенный период времени (часто один час), в то время как предлагаемый трафик — это трафик, который был бы передан, если бы все попытки вызова были успешными. Фактический объем переданного трафика будет зависеть от того, что происходит с неотвеченными вызовами, когда все серверы заняты. CCITT назвала международную единицу телефонного трафика «эрланг» в 1946 году в честь Агнера Крарупа Эрланга. В своем анализе эффективного использования телефонных линий Эрланг вывел формулы для двух важных случаев: Эрланга B и Эрланга C, которые стали основополагающими результатами в области теории массового обслуживания и теории очередей. Его результаты, которые до сих пор используются, связывают качество обслуживания с количеством доступных серверов. Обе формулы принимают предлагаемую нагрузку в качестве одного из основных входных параметров (в эрлангах), которая часто выражается как интенсивность поступления вызовов, умноженная на среднюю продолжительность вызова. Отличительной особенностью формулы Эрланга B является предположение об отсутствии очереди, поэтому, если все элементы обслуживания уже заняты, новый входящий вызов будет заблокирован и потерян. Формула определяет вероятность этого события. В отличие от этого, формула Эрланга C предусматривает возможность неограниченной очереди и определяет вероятность того, что новому вызову придется ждать в очереди из-за занятости всех серверов. Формулы Эрланга широко применимы, но могут давать неточные результаты при особенно высокой загрузке, когда неудачные попытки передачи трафика повторяются. Одним из способов учета повторных попыток при отсутствии очереди является метод расширенного Эрланга B.
Измерения трафика телефонной цепи
При использовании для представления переносимого трафика, значение (которое может быть не целым числом, например, 43,5), за которым следует слово "эрланги", представляет собой среднее количество одновременных вызовов, обслуживаемых каналами (или другими элементами, предоставляющими услуги), при этом среднее значение рассчитывается за некоторый разумный период времени. Обычно этот период составляет один час, но могут использоваться и более короткие периоды (например, 15 минут), если известно о кратковременных пиках нагрузки и требуется измерение трафика, которое не скрывает эти пики. Один эрланг переносимого трафика соответствует одному ресурсу, находящемуся в непрерывном использовании, или двум каналам, каждый из которых занят в течение пятидесяти процентов времени, и так далее. Например, если в офисе работают два телефонных оператора, постоянно занятые, это соответствует двум эрлангам (2 E) трафика; или радиоканал, непрерывно занятый в течение интересующего периода (например, одного часа), имеет нагрузку в 1 эрланг. При описании предлагаемого трафика, значение, за которым следует слово "эрланги", представляет собой среднее количество одновременных вызовов, которые были бы обслужены, если бы существовало неограниченное количество каналов (то есть, если бы попытки вызова, совершенные при занятых всех каналах, не отклонялись). Взаимосвязь между предлагаемым и переносимым трафиком зависит от конструкции системы и поведения пользователей. Существуют три распространенные модели: (а) абоненты, которым отказано в соединении, прекращают попытки и больше не обращаются, (b) абоненты, которым отказано в соединении, повторяют попытку в течение короткого промежутка времени, и (c) система предоставляет пользователям возможность ожидания в очереди до освобождения канала. Третьим показателем трафика является мгновенный трафик, выражаемый в определённом количестве эрлангов, то есть точным числом вызовов, происходящих в конкретный момент времени. В этом случае число является неотрицательным целым числом. Устройства для регистрации уровня трафика, такие как самописцы, отображают мгновенный трафик.
Анализ Эрланга
Концепции и математические методы, разработанные Агнером Крарупом Эрлангом, находят широкое применение не только в телефонии. Они применимы везде, где пользователи поступают более или менее случайным образом для получения эксклюзивного обслуживания от любого из числа обслуживающих элементов без предварительного бронирования, например, в случае касс продажи билетов, туалетов в самолете или номеров в мотеле. (Модели Эрланга неприменимы, когда обслуживающие элементы используются совместно несколькими пользователями одновременно или когда разные пользователи потребляют разный объем услуг, например, на каналах передачи данных.) Цель теории трафика Эрланга – определить точное количество необходимых обслуживающих элементов для удовлетворения потребностей пользователей, избегая избыточного резервирования. Для этого задается целевой уровень качества обслуживания (GoS) или целевой показатель качества обслуживания (QoS). Например, в системе без очередей GoS может быть установлен таким образом, чтобы не более одного вызова из ста блокировался (т.е. отклонялся) из-за занятости всех каналов (GoS 0,01), что становится целевой вероятностью блокировки вызова, Pb, при использовании формулы Эрланга B. Существует ряд формул, включая формулы Эрланга B, Эрланга C и связанную с ними формулу Энгсета, основанных на различных моделях поведения пользователей и принципах работы системы. Каждая из них может быть выведена как частный случай непрерывных марковских процессов, известных как процесс рождения и смерти. Более современный метод Extended Erlang B предлагает дальнейшее решение задач трафика, опирающееся на результаты Эрланга.
Расширенный Эрланг Б
Расширенный Erlang B отличается от классических предположений Erlang B тем, что допускает повторные попытки для части заблокированных вызовов, что приводит к увеличению нагрузки по сравнению с исходным базовым уровнем. Это итеративный расчет, а не формула, и включает дополнительный параметр – коэффициент повторных вызовов, определяющий количество попыток повторного вызова. Процесс состоит из следующих шагов. Он начинается с итерации с известным начальным базовым уровнем трафика, который последовательно корректируется для вычисления последовательности новых значений нагрузки, каждое из которых учитывает повторные вызовы, возникающие из ранее рассчитанной нагрузки.
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
1. Рассчитайте вероятность блокировки вызова при первой попытке, как и для классического Erlang B.
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
2. Рассчитайте вероятное количество заблокированных вызовов.
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
3. Рассчитайте количество повторных вызовов, , исходя из фиксированного коэффициента повторных вызовов, .
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
4. Рассчитайте новую нагрузку:
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
где – начальный (базовый) уровень трафика.
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
5. Вернитесь к шагу 1, заменив на , и повторяйте итерации до достижения стабильного значения . После того, как будет найдено удовлетворительное значение , вероятность блокировки и коэффициент повторных вызовов можно использовать для расчета вероятности потери всех попыток вызова, а не только первой, но и всех последующих повторных попыток.
1. Calculate the probability of a caller being blocked on their first attempt
as above for Erlang B. 2. Calculate the probable number of blocked calls
3. Calculate the number of recalls, , assuming a fixed Recall Factor, ,
4. Calculate the new offered traffic
where is the initial (baseline) level of traffic. 5. Return to step 1, substituting for , and iterate until a stable value of is obtained. Once a satisfactory value of has been found, the blocking probability and the recall factor can be used to calculate the probability that all of a caller's attempts are lost, not just their first call but also any subsequent retries.
Ограничения формулы Эрланга
Когда Э́рланг разработал уравнения Эрланга B и Эрланга C, они были основаны на ряде предположений. Эти предположения верны в большинстве случаев, однако при экстремально высокой загруженности трафика уравнения Эрланга перестают точно предсказывать необходимое количество каналов из-за повторных попыток соединения. Это называется системой с высокими потерями, где перегрузка порождает ещё большую перегрузку в часы пик. В таких ситуациях сначала необходимо предоставить значительное количество дополнительных каналов, чтобы снизить уровень потерь. После этого загрузка вернётся к приемлемому уровню, и уравнения Эрланга можно будет использовать для точного определения необходимого количества каналов. Примером ситуации, приводящей к возникновению такой системы с высокими потерями, может служить телевизионная реклама, объявляющая конкретный номер телефона для звонка в определённое время. В этом случае большое количество людей одновременно попытается позвонить по указанному номеру. Если поставщик услуг не учтёт этот внезапный пиковый спрос, возникнет экстремальная перегрузка, и уравнения Эрланга не будут применимы.