كيفية تحميل التوازن وإنشاء خدمات SIP و PBX المتوفرة بشكل كبير

منشور من طرف Zevenet | 6 مارس 2019

نظرة عامة

الصوت عبر بروتوكول الإنترنت لتقف على انتقال الصوت عبر بوتوكول الانترنيتوالتي تغطي أي مكالمات هاتفية تتم عبر الإنترنت ولكن لجعلها حقيقية SIP تم تعريف البروتوكول.

SIP or بروتوكول بدء الجلسة هو البروتوكول الذي يدير جلسات اتصالات الوسائط المتعددة بما في ذلك المكالمات (الصوت والفيديو) ، لذلك يمكننا أن نقول ذلك SIP هو واحد من البروتوكولات المحددة التي الصوت عبر بروتوكول الإنترنت يعتمد على.

في جلسة اتصال وسائل الإعلام ، و SIP البروتوكول مسؤول عن عمليات التشوير ، مثل بدء وإنهاء المكالمات الصوتية أو المرئية. الاتصالات التي SIP يمكن أن تكون أحادية البث ، مع طرفين ، أو بث متعدد ، أطراف متعددة. عبر ال SIP البروتوكول ، يمكن تعديل المكالمات الموجودة ، على سبيل المثال ، دعوة عضو آخر. ال SIP تم تصميمه بطريقة مستقلة عن بروتوكول طبقة النقل الأساسية ، ويمكن استخدامه مع UDP, TCPو SCTP (بروتوكول نقل التحكم في الدفق). SIP قد تعمل أيضًا مع البروتوكولات الأخرى ، والتي يمكن أن تحدد تنسيق الوسائط ، وتحمل الوسائط بعد ذلك SIP يحدد المكالمة. توجيه المكالمات الهاتفية ممكن أيضا من PBX نظام الهاتف إلى الشبكة الخارجية ، أين PBX (تبادل الفرع الخاص) هو نظام تبديل الهاتف المثبت في مؤسسة خاصة مزودة بالعديد من الأجهزة الداخلية.

يعتبر هذا الدليل مفيدًا في إعداد خدمات SIP الشائعة مثل النجمة, Websphere SIP الوكيل, مسبك SIP, Elastix, FreeSWITCH, OpenPBX by Voicetronix, PBXInAFlash, FreePBX, OpenSIPs, Kamailio, 3CX, مكتب SIP خادموما إلى ذلك ، وكلها في حالة توفر عالية ومستعدة للتوسع.

كيف يعمل بروتوكول SIP؟

لنفترض أن لدينا اثنين من المتصلين ، بوني وكلايد. بوني تتصل بكلايد. بادئ ذي بدء ، يجب تسجيل هواتف Bonnie و Clyde في خادم SIP. عملية التسجيل بين العملاء وخدمة المسجل هي:

1. يرسل العميل softphone اشترك رسالة إلى خادم SIP.
2. يستجيب الملقم SIP مع 401 غير مصرح به رسالة بما في ذلك رأس WWW مصادقة.
3. العميل ثم إعادة إرسال اشترك طلب إلى خادم SIP بما في ذلك ترخيص رأس.
4. إذا كانت المصادقة صحيحة ، فسوف يقوم خادم SIP بإرجاع 200 OK استجابة للعميل. في هذه المرحلة ، يكون العميل قادرًا على تلقي المكالمات والبدء بها.

ستكون عملية التسجيل هذه متاحة أيضًا بشكل كبير من خلال موازن التحميل الوكيل الذي نقترحه في هذه المقالة.

لكي نفهم بشكل أفضل كيفية إجراء مكالمة بين Bonnie و Clyde ، انظر أدناه الخطوات المحددة في البروتوكول.

1. بوني يبدأ نداء الى كلايد عن طريق ارسال دعوة الرسالة
2. خادم SIP A يمر دعوة رسالة إلى خادم SIP المستلم B
3. في نفس الوقت ، خادم SIP A ردود 100 TRYING رسالة إلى بوني
4. خادم SIP B يمر دعوة رسالة الى كلايد
5. على صعيد آخر، 100 TRYING رسالة إلى خادم SIP A
6. جهاز كلايد الآن 180 RINGING وينقله إلى خادم SIP B
7. خادم SIP B يرسل هذا 180 RINGING إلى خادم SIP A
8. خادم SIP A ينقل هذا 180 RINGING الى بوني
9. يتلقى كلايد المكالمة ويرسلها 200 OK الرسالة
10. وينقلها 200 OK رسالة إلى خادم SIP B
11. خادم SIP A ينقل هذا 200 OK رسالة إلى بوني
12. يتم تأسيس اتصال بين بوني وكلايد ، حيث ترسل بوني مباشرة ACK إلى كلايد ، وتتواصل كل من بوني وكلايد مع بعضهما البعض بشكل مباشر
13. يقطع أي طرف الاتصال من المكالمة باستخدام الى اللقاء
14. الطرف الآخر يرسل الإقرار 200 OK

بيئة موازنة تحميل SIP

من خلال معرفة تفاصيل بروتوكول SIP ، فإن السيناريو الذي نريد تحقيقه في هذه المقالة هو أن نتمكن من توسيع نطاق خوادم SIP حتى نتمكن من التعامل مع أعداد أكبر من الهواتف الذكية المسجلة وإدارة عدد أكبر من المكالمات. يوضح الرسم البياني أدناه بنية الخدمة في مركز البيانات.

دعونا نرى أدناه كيفية تكوينه.

تكوين موازنة تحميل SIP

قبل إعداد الخدمة الافتراضية ، نحتاج إلى إنشاء مخصص IP الظاهري، حيث سيكون عنوان IP هذا قادرًا على استلامه TCP or UDP الإطارات. لتحقيق ذلك ، انتقل إلى الشبكة> واجهات افتراضية. ثم انقر فوق الإجراء> إنشاء واجهة افتراضية.

المقبل ، حدد واجهة الأم، جهة تعامل الاسم و IP الخاص بها العنوان:

الآن حان الوقت لإعداد خدمة SIP الافتراضية بسهولة في المنافذ القياسية المستخدمة بواسطة خدمات SIP TCP و / أو UDP 5060 or 5061. ميناء 5060 يستخدم بشكل شائع لحركة الإشارة غير المشفرة والمنفذ 5061 يستخدم عادة لحركة المرور المشفرة باستخدام TLS (أمن طبقة النقل).

مع Zevenet Load Balancer ، نحقق هذا التكوين خلق LSLB ملف المزرعة L4xNAT مع الموانئ 5060 or 5061. في الخدمة الظاهرية ، يتم دعم كل من الاتصالات المشفرة وغير المشفرة في نفس الوقت إذا كانت المنافذ مدرجة في الخدمة الافتراضية.

للقيام بذلك ، انتقل إلى LSLB> مزارع وإنشاء واحدة جديدة كما هو موضح أدناه.

بعد الإنشاء ، انقر فوق متقدم، حدد SIP as نوع البروتوكول. في هذه المرحلة ، سيتم تمكين خادم طبقة 4 SIP في الخدمة الافتراضية الحالية من أجل تحميل الرصيد بشكل صحيح التسجيل والمكالمات من المستخدمين. أيضا ، نحن نوصي NAT as نوع NAT لكن DTA يمكن استخدامها أيضًا للحصول على IP المصدر للعميل. أخيرًا ، انقر فوق تحديث من أجل تطبيق التغييرات.

أخيرا ، قم بإعداد الخلفية ، انقر فوق خدماتناوتحت الخلفيات القسم اضغط على الإجراء> إضافة خلفية.

املأ IP, ميناء, الوزن وانقر على حفظ العمل من أجل تطبيق التغييرات.

أضف عددًا كبيرًا من خوادم SIP التي تحتاجها لتوسيع نطاق خدمتك. يمكنك الآن استخدام IP الظاهري كخدمة SIP افتراضية في الهواتف الذكية والعملاء بطريقة عالية وموثوقة وقابلة للتطوير.

الشيكات الصحية SIP المتقدمة

في أحدث إصدارات Zevenet ، يمكنك استخدام فحص صحي متقدم خاص بخدمات SIP حيث يقوم جهاز موازن التحميل بإجراء مكالمات SIP وهمية لكل خوادم SIP التي تم تكوينها كخلفية من أجل ضمان عمل خدمات قراءة SIP وتشغيلها بشكل صحيح.

في حال لم يكن هناك بالفعل إنشاء check_sip الأمر Farm Guardian ، ثم إنشائه في رصد> Farmguardian كما هو مبين أدناه.

من أجل فهم أفضل الخيارات المدرجة في check_sip الأمر ، يرجى الرجوع إلى مساعدة المدقق الصحي.

usage: ./check_sip [ options ] FROM TO
Makes SIP call from FROM to TO, sends voice from multiple
files to peer. Content in files need to be PCMU/8000 and
could be recorded with samples/invite_and_recv.pl

Options:
  -d|--debug                   Enable debugging
  -h|--help                    Help (this info)
  -P|--proxy host[:port]       use outgoing proxy, register there unless registrar given
  -R|--registrar host[:port]   register at given address
  -S|--send filename           send content of file, can be given multiple times
  -L|--leg ip[:port]           use given local ip[:port] for outgoing leg
  -T|--timeout T               timeout and cancel invite after T seconds, default 30
  --username name              username for authorization
  --password pass              password for authorization

Examples:
  ./check_sip -T 10 -S welcome.data -S announce.data sip:30@192.168.178.4 sip:31@192.168.178.1
  ./check_sip --username 30 --password secret --proxy=192.168.178.3
     -S holy.data sip:30@example.com 31

وبالنظر إلى مثالنا ، يمكننا تحديد مدقق الصحة لدينا في مزرعة الجارديان كما هو مبين أدناه.

./check_sip -T 9 -S welcome.data -S announce.data sip:Bonnie@192.168.56.201 sip:Clyde@HOST

لاحظ أنه سيتم تغيير رمز HOST في وقت التشغيل مع كل SIP الخلفية التي تم تكوينها في المزرعة.

SIP تطبيق التسليم المجموعات

يوفر Zevenet أيضًا القدرة على تعيين خدمة SIP للتحجيم القابل للتوسعة بتوافر عالٍ باستخدام خدمة التجميع بين وحدتين متكررتين. يرجى نشر وحدة Zevenet أخرى والرجوع إلى النظام> الكتلة قسم من أجل تكوينه في توافر عالية.

تعزيز الأمن SIP

تطبيق طبقة الأمان على خدمة SIP عامة أمر سهل للغاية باستخدام وحدة IPDS التي تسمح بالقائمة السوداء ، وقوائم blackhole في الوقت الحقيقي وحماية DoS وغيرها. يرجى الرجوع إلى IPDS قسم من القائمة الرئيسية من أجل الحصول على مزيد من التفاصيل حول حماية خدمة SIP العامة.

تكوين عملاء هاتف VoIP

بمجرد أن تصبح خدمة SIP الخاصة بنا جاهزة للتوسع ، والإعداد عالي التوفر ومع تحسين الأمان ، فقد حان الوقت لتهيئة الخدمة الجديدة في الهواتف الذكية والعملاء. في هذه الحالة ، نوصي بإعداد إدخال DNS لحل عنوان VIP أو عنوان IP عام للخدمة الافتراضية. هذه DNS or FQDN سيكون الاسم الخاص بخدمة SIP الافتراضية هو الخدمة التي سيتم استخدامها في جانب العميل ، بدلاً من تكوين عنوان IP SIP حقيقي. يوفر هذا التكوين المرونة لتحميل توازن العملاء بسهولة وتلقائية.

من ناحية أخرى ، فإننا نوصي بتكوين مهلة أقل بقاء في جانب العملاء من أجل فرض التسجيل أكثر عادة ، كما هو الحال في حالة اكتشاف أي خادم SIP لأسفل ، ويلاحظ العميل ذلك وإعادة المحاولة لإعادة الاتصال بسرعة واحدة أخرى.

الآن ، استمتع فقط بخدمة SIP القابلة للتطوير!

مشاركة مع :

وثائق بموجب شروط رخصة جنو للوثائق الحرة.

هل كان المقال مساعدا؟!

مقالات ذات صلة