Применение системы поллинга с исчерпывающей дисциплиной обслуживания к анализу SIP-сервера
Ключевые слова: БРсервер, межузловое управление, система поллинга, исчерпывающая дисциплина обслуживания, пороговое управление нагрузкой.
Согласно документам Рабочей группы по инженерным проблемам сети Интернет (internet Engineering Task Force, IETF) перегрузка SIP-сервера возникает в том случае, когда его ресурсов не хватает для обработки поступающих сигнальных сообщений. Предусмотренный протоколом базовый механизм контроля перегрузок, использующий сообщения 503 Service Unavailable, не справляется с проблемой перегрузки, вызывает осцилляции потока передаваемых сообщений и приводит к распространению перегрузки на соседние серверы, что в конечном итоге может привести к отказу предоставления услуги. В последних документах IETF предложены идеи нескольких методов управления перегрузками, возникающими в сетях SIP-серверов. Одним из решений при межузловом управлении является метод частичного сброса нагрузки Loss-Based Overload Control (LBOC), который предусматривает при возникновении перегрузки на нижележащем сервере отправление вышележащему серверу, источнику перегрузки, уведомления о необходимости снижения интенсивности потока в направлении перегруженного сервера на указанный процент в течение указанного интервала времени. Для описания функционирования SIP-сервера в условиях перегрузок в статье разработана математическая модель в виде однолинейной системы поллинга с двумя входящими потоками сообщений и двумя очередями с исчерпывающей дисциплиной обслуживания. При исчерпывающей дисциплине обслуживания очередей прибор обслуживает сообщения до тех пор, пока очередь не опустеет. В очереди с приоритетными сообщениями введен порог, при достижении длиной очереди которого снижается интенсивность потока неприоритетных сообщений. Модель исследована в марковских предположениях. Предложен метод вычисления ее вероятностных характеристик.
Гайдамака Ю.В.,
Доцент кафедры систем телекоммуникаций РУДН, [email protected]
Зарипова Э.Р.,
Старший преподаватель кафедры систем телекоммуникаций РУДН, [email protected]
Вихрова О.Г.,
РУДН, [email protected]
Введение
Протокол инициирования сеансов связи (Session Initiation Protocol, SIP) позволяет предоставлять широкий спектр услуг пользователям разнообразных персональных устройств, имеющих доступ в сеть Интернет. В основе протокола лежит клиент-серверная архитектура, причем установление сеанса происходит обычно через несколько прокси-серверов, которые в зависимости от конфигурации сети могут быть объединены в группу граничных серверов или представлять собой ядро сети [1]. При резком увеличении сигнальной нагрузки наступает перегрузка прокси-сервера, когда он может справиться с обслуживанием поступающих сообщений и ретранслирует их в соответствии с механизмом повторной передачи или перенаправляет на альтернативные серверы. Однако, множественные ретрансляции и перенаправления сигнальных сообщений создают дополнительную нагрузку в сети и в ряде случаев приводят к распространению перегрузки на другие SIP-серверы. В настоящее время большое внимание уделяется поиску решения этой проблемы, для чего предлагаются механизмы управления перегрузками SIP-серверов [2-8].
Для исследования и поиска оптимальных параметров управления перегрузкой SIP-сервера в статье предлагается новый алгоритм управления перегрузками с пороговым управлением и системой поллинга для опроса очередей [3, 5]. Согласно RFC 6357 поступающие на обслуживание сигнальные сообщения необходимо разделять по приоритетам, например, при возникновении перегрузки сообщения nonlnvite для успешного установления сессии должны быть обслужены в первую очередь, в то время как сообщения Invite, открывающие новые сессии, можно перенаправить на альтернативные серверы [1,2].
Модель с поллннгом, исчерпывающей
дисциплиной и пороговым управлением
Рассмотрим математическую модель SIP-сервера в виде СМО с двумя очередями для приоритетных (nonlnvite) и не приоритетных (Invite) сообщений, с одним прибором, который согласно системе поллинга осуществляет циклический опрос очередей с исчерпывающей дисциплиной обслуживания. Исследуемая СМО схематично изображена на рис. 1. Пусть время переключения между очередями распределено по экспоненциальному закону с парамеграми s” (переключение от первой ко второй очереди) И S, 1 (переключение от второй к первой очереди).
Если очередь не пуста, то прибор обслуживает ее до тех пор, пока не исчерпает все имеющиеся в ней сообщения, после чего переходит к обслуживанию следующей очереди. Если прибор застает очередь пустой, он переключается к следующей очереди. Каждая из очередей имеет конечную емкость /' < 00 И < 00 , где Г| + Г2 = R , и R
объем буферной памяти сервера. В систему поступают два пуассоновских потока: /-заявки (приоритетные со-
Работа выполнена при частичной финансовой поддержке Российского фонда фундаментальных исследований (грант 12-07С0108<1) и Министерства образования и науки РФ (проекты 879622013,14.U02.2l.1874).
общения) и 2-заявкн (неприоритетные сообщения) с интенсивностями Л, и А,, а длительности их обслуживания распределены по экспоненциальному закону с параметрами //1 и //., соответственно. Для управления перегрузкой в /-очереди вводится порог Ь<ГГ при достижении которого сервер переходит в режим перегрузки и сообщает вышележащему серверу о снижении интенсивности потока неприоритетных 2-заявок до величины А!,,
/Ц<я,.
я,
где и(х) = |*’ ' > (> - функция Хевисайда. О, х<0
и, *
ч = 2
Рис. 1. СМО с поллингом и пороговым управлением нагрузкой
Пусть <7(/) - номер очереди, в которой находится прибор В момент времени и (/) — число заявок в /-ой очереди, / = {1,2} в момент времени / > 0. Определим случайный процесс //(/) = (</(/■),/7, (/), Л72 (/)). Процесс [/7(/), / > о} по построению является Марковским процессом (МП) с пространством состояний X = {(<5Г,/7,,/72 ) I 9 е {1,2}, А?, е {0,...,г,}, п2 е {0,...,/*,}},
IX |= 2(/] + 1)(г2 +1).
Пространство состояний X можно разбить на два непересекающихся подпространства - множество Х0
состояний нормальной нагрузки и множество X, состояний перегрузки, X = Х0 оХ,. где х„ = {(<?,/?,,п2)\{1,2}, я, е{0,...,А}, и, е{0,...,г2}}, |Х0 1= 2(£ + 1)(г, + 1),
X, ={(<7,Л7,,«2)|^е{1,2},/7, е{/. + 1,/г, е{0,...,/;}}, IX, |= 2(г, - ¿Хгг+1) •
Па рис. 2 изображена диаграмма интенсивностей переходов между состояниями МП {//(/), / > о} и показано разбиение множество состояний X на множества Х0 и X,.
Система уравнений равновесия для МП {?;(/),! > 0} имеет вид
«2«(1 -и, )+Д|и(/‘| - И|) + //|Н( «|) + Л2и(г2 - г>2 М/. ~ "| +0+
+ Л2и(г2 -п2)и(/1| - ¿))/>(1,Я1,Лл) =
= 5||<(|-п2)р(2,и1,п2)+//|н(^ -я,)/?(!,«! +1,я2)+
+ )м(/. - /7| + |)/?(1,/7|,«2 - |) + /-2и(п2 МИ1 ~ I*)/?0’/г|'п2 ~ 0+
+ Я|и(и|)/>(1,П| — Кит) Я| е {0,...,ц}, »2 6 {О....»г2}. 0 -1, (1)
4||((| - П2 )+ /.|1/(г| - И| )+ /<2и()12 ) +
+ Я11/(г2 - )/(£ - «1 + 1) + Л'2и(г2 - «2 М"| ~ 1-))р(2.п^,п2) =
= Л'2«(1 “ «I )р0 , /*1, п2) + /12и(г2 - п2 )р(2, /?|, п2 +1)+
+ Д|м(»| )/>(2,И| - 1,п2)+ Л2"(п2)/(1 - г>1 +1 )р(2,И|,п2 -1)+
+ Л2и(п2\1(п! - Цр{2,п\,п2 -1), П| 6 п2 е {о,..., г2}, 4 = 2,
п,
> -4г-Д*
1.0.1 (.и ^ **
д,| м ~п *
У г л*
1.0.2 1.1.2 ^
■'т м ?
а
1.0./^ 4 1.1. Г.
Л
Рис. 2. Диаграмма интенсивностей переходов между состояниями
Решение СУР (1) может быть получено численно. Дтя этого необходимо вычислить матрицу А интенсивностей переходов между состояниями МП {//(/), / > о} .
Введем лексикографический порядок на множестве состояний X и будем считать, что х-<х’если (<7«7'М(<7=<7')л(/7=й1 +п\ <п' =п\+п\)^((п=п')л(п] </?',)))), где х = (^,«,,и2) И х' = (<7',пУпорядочив состояния пространства состояний X , получим матрицу А в блочно-диагональном виде:
А =
А, и0 0 0 0 ^
А о, Щ ■ • 0 0
0 ь 02 0 0
0 0 0 0 0
0 0 0 ■ ■ ^-1
0 0 0 Ъп ^к >
(2)
Показано, что блоки матрицы А вычисляются следующим образом:
г) -(¿I ) + Л + Л-) •*! ^
"° I *2 -^2+Я,+Я2))'
и*=<"'/Ь113,=(о о\0£) для '"обых
/?
п € {1,...,/?}, где п = и, + я,. Для п е {1,...,—— 1}
-(//,+Л,+^),/ = у, /е{1,
-(*; + А| + Л, + Дг), / =у, / = я+1,
5,, / = я+1,У = 2(я + 1),
..2(я.|)} —, = я +2,7 = 1,
у-(|-0(»+1)| -(л, + //, + Я, + Я,), / = у, / = я + 2,
-(//, + Л, + Д,).' = У,’» 6 {и + 3,...,2(я +1)), О, в остальных случаях,
*-/! .....................2(11+1)1
/-(1....2<л+2)}
Л,,/ = У,/е{1,...,(и + 1)},
Л,, / = У - 1, /е {]....(/7 + 1)},
Л,, / = у — 1, /е{и + 1,...,2(л + 1)},
А,, /' = j-2,ie {/; + 1,...,2(я + 1)}, О, в остальных случаях,
//,,/ = у,/е{1,...,/»},
К — )/—(1 2(/|+|)} — | /^2» 7 у + 2, /" в {/7 + 3,...,2(/7 + I)},
..2"1 [ 0, в остальных случаях.
/?
Для /7Е ...,/?-1
=(^7,у)/=(|..2(й-п+1)( =
У={1..2(Я-л+1)|
• (//| + Я| + Л2), / = У -1, / е {1.Л - я +1},
-(//2 +Я| +Я2), / -1 = у, /6 {Л -и + 4,...,2(Л — // +1)}, О, в остальных случаях,
1>„ =(и<,у)/-{|..2(Я-(я+|))| =
М\....2(/?-»+2)|
¿2, /= у, /€ {I..../г-(я+1)},
Л|,/ = У~1,/е{1,...,Л-(я + 1)},
Л|, / = У + 1, /6 ¡Л-/» + 3,...,2(Л -(и +1))},
Я2,/ = У + 2, /'е {Л-я + 3....2(Я -(п + 1))},
О, в остальных случаях,
=(А',> )|={1.2<Л-и+1)| =
У=(1..2(/?-«)}
/<1,/ = у-1,/е{2...Л-и},
= //2,| = у,/е {Л-я + 1.......2(/?-я) + 1),
0, в остальных случаях, п .м ) — / (/^2 + А] О
*"(у)ЯйП 0 Нп+ШУ
для приоритетной очереди. А// для неприоритетной очереди, N2
0,4 0.6 1 1,4
И л груд ка. р
Рис. 3. Среднее число сообщений в очереди
/ш1
Р{Х,)
0,6
0,2
вероятность Р[Х0) вероятность 1\Х¡)
0,4
1
1,4
7-11!
Представление матрицы А в виде (2) позволяет численно решать СУР (1), используя метод Ьи-разложения. Зная стационарное распределение вероятностей /;((/,//,,/;,),
среднее число /V, и /V, /- и 2-заявок в системе можно найти
п / г, 2 Л
по формулам =£ "г£1>(‘а"р"2)
»1=1 V
^2 =¿1 /,2'11/'(9-"р":)
п2 =1 у п, =1 ц-\ /
Вероятности нахождения системы в состояниях нормальной нагрузки и состояниях перегрузки можно найти по формулам /уд= £ р(щл) и />(Х,) = £/>(</, и„ и,)-
Пример численного анализа
Для численного анализа в качестве исходных данных были выбраны следующие значения ее структурных /• =Ю, г, =10, ¿=5, и нагрузочных я,-1 =*,"' =10 мс,
ц~х =4 мс, ц~к = Ю мс, Л,' = ^ /2, Я, =6Я, [8]. Были получены результаты, которые показаны на рис. 3 и 4.
0,6
Нагрузка, р
Рнс. 4. Зависимость вероятности нахождения системы в нормальном Р(Хи) и перегруженном Р(Х1) режимах от
нагрузки
На рис. 3 показан график зависимости среднего числа сообщений в приоритетной и неприоритетной очередях от нагрузки р. Как видно из графика, с ростом нагрузки тенденция изменения среднего числа сообщений в очереди для обеих очередей различная. При увеличении р среднее число сообщений в приоритетной очереди возрастает, поскольку и интенсивность поступления приоритетных сообщений в систему увеличивается. Обратная ситуация возникает во второй очереди, где исследуемая характеристика с ростом нагрузки уменьшается до значения 50% от емкости второй очереди. Это объясняется тем, что при превышении порога £ в первой очереди интенсивность поступления неприоритетных сообщений уменьшается в два раза.
Зависимость вероятности нахождения системы в нормальном Р(Х0) и перегруженном Р(Х,) режимах от нагрузки р представлена на рис. 4. При увеличении общей нагрузки на систему с ростом значений вероятности нахождения системы в состояниях множества Х(| значения вероятности нахождения системы в состояниях множества X,, уменьшаются, поскольку эти две вероятности
дополняют друг друга до единицы. Однако при увеличении общей нагрузки на систему значения обеих характеристик стремятся к 0,5. Подобное поведение можно объяснить пороговым управлением, которое за счет снижения интенсивности поступления неприоритетных сооб-
щении в систему позволяет поддерживать характеристики системы в целом на требуемом уровне.
Заключение
В статье описано построение математической модели 81Р-сервера с пороговым управлением перегрузками в виде системы поллинга с приоритетом и исчерпывающей дисциплиной обслуживания. Для марковского процесса функционирования системы выведена система уравнений равновесия, предложен метод вычисления инфинитези-мальной матрицы интенсивности переходов и приведен пример численного анализа. Задачей дальнейших исследований является анализ вероятностно-временных характеристик в нестационарном режиме и решение задач для нахождения оптимальных характеристик управления 81Р-серверами, функционирующих в режиме перегрузки. При помощи численного эксперимента удалось установить, что пороговое управление позволяет довольно эффективно справляться с проблемой перегрузки 81Р-сервсра и не позволяет системе с увеличением нагрузки полностью перейти в перегруженное состояние. Стабилизация системы происходит за счет сброса доли неприоритетных сообщений, в то время как с ростом нагрузки предсказуемо увеличивают вероятностные характеристики для очереди приоритетных сообщений.
Авторы выражают благодарность профессору К.Е. Самуилову за полезные замечания при постановке задачи.
Литература
1. Hilt V.. Noel Е.. Shert С.. Abdelal A. Design Considerations for Session Initiation Protocol (SIP) Overload Control // RFC 6357. August 2011.
2. Абаев П.О.. Гайдамака Ю.В.. Самуилов К.Е. Гистере-зисное управление нагрузкой в сетях сигнализации. Вестник РУДН. Серия «Математика. Информатика. Физика». - М.: Изд-во РУДН, 2011. - №4. - С. 55-73.
3. Вишневский В.М.. Семенова О.В. Системы поллинга: теория и применение в широкополосных беспроводных сетях.
— М.: Техносфера, 2007. — С. 312. — М.: Tekhnosfera, 2007. — С. 312.
4. Самуилов К.Е.. Зарипова Э.Р. Модель локального механизма контроля перегрузок SIP-сервера // T-Comm - Телекоммуникации и Транспорт, № 7, 2012. — С. 185-187.
5. Гайдамака Ю.В.. Зарипова Э.Р. Модель SIP-сервера с дисциплинами шлюзового и исчерпывающего обслуживания очередей. Вестник РУДН,№ I, 2013.-С. 52-57.
6. Гайдамака Ю.В.. Зарипова Э.Р.. Болотова Г. О. Разработка модели функционирования SIP-сервера в виде системы поллинга с дисциплиной шлюзового обслуживания // T-Comm -Телекоммуникации и Транспорт, № 11, 2013. - С. 69-72.
7. Abaev P.. Gaidamaka К, Samouylov К. Queuing Model for Loss-Based Overload Control in a SIP Server Using a Hysteretic Technique // Proceedings 12th International Conference, NEW2AN 2012, and 5th Conference, ruSMART 2012. - St. Petersburg: 2012.
- Pp. 371-378.
8. Pavel O. Abaev. Yuliya V. Gaidamaka. Alexander V. Pechinkin. Rostislav V. Razumchik. Sergey Ya. Shorgin. Simulation of overload control in SIP server networks // Proc. of the 26th European Conference on Modelling and Simulation ECMS 2012 (May 29 - June 1, 2012, Koblenz, Germany). - Germany, Koblenz. -2012.-Pp. 533-539.
An application of polling system with exhaustive service discipline for a sip-server analysis Y. V. Gaidamaka, E. R. Zaripova, O.G. Vikhrova, Telecommunication System Department Peoples' Friendship University of Russia Abstract
According to IETF documents a SIP-server meets overload when it is unable to serve all incoming messages. A limited built-in mechanism for overload control through SIP protocol's 503 Service Unavailable response code cannot prevent overload of a SIP-server and it cannot prevent congestion collapse, moreover it may spread the overload throughout the network. IETF recommends four methods for a SIP-server overload control: loss-based overload control, rate-based overload control, window-based overload control and overload signal-based overload control. Under a loss-based approach, a SIP-server asks an upstream neighbor to reduce the number of requests it would normally forward to this server by a certain percentage. We design a mathematical model of a SIP-server with two queues, two income flows and single server to investigate loss-based overload control mechanism. We also applied polling system with exhaustive service discipline and threshold for preemptive messages to our model. The server alters queues when all messages in current queue are served. When the threshold L in the preemptive queue is achieved then the incoming flow of non-pre-emptive messages must be reduced. We suggest a computing method for its probabilistic characteristics.
Keywords: SIP-server, loss-based overload control, polling system, exhaustive service discipline, threshold overload control.