🔹تعریف
Load Balancing یا توزیع بار در VoIP به فرآیندی گفته میشود که در آن بار ترافیک تماسها بین چندین سرور SIP یا PBX تقسیم میشود. این کار باعث میشود تا هیچ سروری بیش از حد بار نگیرد و سیستم پایدار و مقیاسپذیر باقی بماند.
🔹 چرا مهم است؟
در سیستمهای VoIP با تعداد تماس بالا، یک سرور بهتنهایی نمیتواند پاسخگوی همه درخواستها باشد. Load Balancer تضمین میکند که تماسها به شکل هوشمند بین سرورها توزیع شوند.
🔹 روشهای پیادهسازی Load Balancing در VoIP
-
DNS SRV Records
-
استفاده از رکوردهای SRV برای تعریف چندین سرور SIP.
-
تماسها بهطور خودکار بین سرورها تقسیم میشوند.
-
-
SIP Proxy Server (مانند Kamailio / OpenSIPS)
-
پروکسی نقش Load Balancer دارد و درخواستها را به سرورهای مختلف هدایت میکند.
-
-
Hardware Load Balancer
-
تجهیزات سختافزاری مثل F5 یا Radware برای تقسیم بار در مقیاس اپراتوری.
-
-
Round Robin یا Least Call Routing
-
سادهترین روشها برای تقسیم تماسها:
-
Round Robin: توزیع تماسها به ترتیب بین سرورها.
-
Least Call: ارسال تماس به سروری که کمترین بار فعال دارد.
-
-
🔹 نکات فنی و تجربی
-
همیشه باید Health Check برای سرورها فعال باشد تا تماس به سمت سرور Down هدایت نشود.
-
استفاده از Kamailio/OpenSIPS بهترین گزینه برای شبکههای بزرگ است.
-
اگر از Issabel/Asterisk استفاده میکنید، توصیه میشود بین چند سرور Failover + Load Balancing ترکیب شود.
-
برخی ارائهدهندگان SIP Trunk امکان Load Balancing سمت اپراتور را هم دارند.
🔹 مثال عملی
فرض کنید سه سرور Asterisk دارید:
-
pbx1.voipiran.io
-
pbx2.voipiran.io
-
pbx3.voipiran.io
با استفاده از DNS SRV یا Kamailio، تماسها بین این سه سرور تقسیم میشوند.
🔹 لینکهای مرتبط