المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : MGCP/MEDIA GATEWAY CONTROL PROTOCOL



المهندس زياد
14-04-2010, 00:17
السلام عليكم ورحمة الله وبركاته

MEDIA GATEWAY CONTROL PROTOCOL

أولا طبعا بما أني أدرس الفويس حاليا والجماعة ماشاء الله متجهين ومركزين على الفويس فحبيت أشارك معاهم ولو بالقليل بالحديث عن هذا البروتوكول

المقدمة

يعتبر بروتوكول MGCP إمتداد للنسخة السابقة لبروتوكول SGCP وهو SIMPLE GATEWAY CONTROL PROTOCOL وهذا البروتوكول أقصد MGCP معرف في RFC 3435 الذي على ضوئه تم إلغاء القديم RFC 2705

يعتبر بروتوكول MGCP بروتوكول تحكم في المكالمات والإشارات يستخدم في عالم VOIP ويوفر هذا البروتوكول الإدارة عن بعد والتحكم في الصوت وبيانات الإتصالات بالشبكة

يمثل بروتوكول MGCP العلاقة بين السيرفر والعميل بإستعمال نصوص أوامر لذلك وهي علاقة مابين CALL AGENT وبين GATEWAY للتحكم الكامل في GATEWAY وفي نقاط الموصله بها للتحكم في المكالمات

ملاحظة: بروتوكول MGCP يدعم وظائف بروتوكول SGCP وللإضافة لعدة مزايا أخرى والنظام الذي يستعمل بروتوكول SGCP من السهل له الإنتقال إلى بروتوكول MGCP وأوامر بروتوكول MGCP متوفرة لتفعيل قابلية بروتوكول SGCP
للمزيد حول بروتوكول SGCP هنا (https://www.argreenhouse.com/SGCP/)
ملف رائع حول بروتوكول SGCP (https://www.argreenhouse.com/SGCP/sgcp-slides.pdf)

https://www.cse.wustl.edu/%7Ejain/cis788-99/ftp/h_8voip/img025.gif

يستعمل بروتوكول MGCP بورت الUDP كما هو الحال فيSGCP لإنشاء المكالمات الصوتية في شبكة الIP وكما
تستعمل أيضا طريقة تسمى Hair Pinning لإرجاع المكالمات إلى شبكة الPSTN في حالة عدم توفر الشبكة الWAN

المكونات المستعملة في بيئة MGCP


https://img249.imageshack.us/img249/6637/mgcp.jpg


Endpoints: تمثل النقطة التوصيلية بين حزمة الشبكة وشبكة الهاتف التقليدية القديمة

Gateway: تعالج ترجمة الصوت بين Switched Circuit Network و Packet Network والGATEWAY يستعمل بروتوكول MGCP لتسجيل الأحداث وإرسالها إلى Call Agent مثل ( في حالة رفع سماعة الهاتف)

CALL AGENT: وظيفته السيطرة والتحكم على عمليات الGATEWAY وإخبارها بالعمل القادم الذي يجب أن تقوم به
يستعمل الCALL AGENT بروتوكول MGCP لإخبار الGATEWAY بالمعلومات الآتية:

1- أي حدث يجب أن يخبر به الCALL AGENT
2- كيفية ربط نقاط التوصيل مع بعضها
3- أي إشارات يجب أن تطبق على نقاط التوصيل


آلية العمل

https://img710.imageshack.us/img710/6968/gcpg.jpg

لنأخذ فكرة العمل بشكل مبسط جدا مثلا في حالة رفعت سماعة الهاتف مباشرة بعد رفعها يذهب الGATEWAY إلى الCALL AGENT ويرسل له رسالة مبينا له على وجود حدث event ليسأله ماذا يفعل فيعطى أو يأمر الGATEWAY بتزويد الهاتف بنغمة الهاتف وهي نغمة الطلب وعلى سبيل المثال وبعد رفع سماعة الهاتف في حالة طلب أي رقم ولو قم واحد فقط يذهب الGATEWAY مجددا إلى الCALL AGENT ويرسل له event مره أخرى للسؤال عن ما المطلوب عمله فيجيبه الCALL AGENT حتى في حالة جعل الهاتف الآخر يرن عند نهاية طلب الرقم كاملا وهكذا بصورة مبسطة لطريقة العمل

أنواع الأحداث (Events)
منها حالة رفع السماعة وغلقها ونغمات الفاكس والمودم وأرقام التليفون من نوع DTMF وهو نوع يشكل عملية مزج نوعين من الترددات عند طلب رقم واحد وكل رقم يدمج نوعين مختليفين من الترددات

أنواع الإشارات Signal

نغمة الهاتف عندما يكون مشغولا
نغمة إنتظار المكالمات
نغمة الطلب
نغمة إعادة المكالمة
نغمة رنين الهاتف

طريقة إتصال MGCP

https://img704.imageshack.us/img704/6149/94922082.jpg


المكالمات من طرف إلى آخر تتم عن طريق تكملة وتوصيل طرفان أو أكثر لإجراء المكالمة الCALL AGENT يأمر الGATEWAY الموصلة بأحد الأطراف لإنشاء وصلة مع طرف آخر يحدد له لنقطة معينة أو نوع معين, بدوره يقوم الGATEWAY بإرسال معطيات جلسة الإتصال إلى الCALL AGENT ويقوم بدوره بإرسال هذه المعطيات إلى الGATEWAY التي في الطرف الأخر . مع هذه الطريقة كل GATEWAY يكتسب المعطيات الضرورية لجلسة الإتصال لإتمام الإتصال عن طريق بروتوكول RTP بين هاتين النقطتين.
كل الوصلات المتعلقة بنفس المكالمة سوف تشارك بهوية إتصال مشتركة ونفس الميديا

عند نهاية أي إتصال الCALL AGENT يرسل طلب إنهاء لكل من الGATEWAYS وهي (Delete Connection (DLCX

رسائل MGCP للتحكم في نقاط التوصيل

حزم بروتوكول MGCP ليست كأي حزم تجدها في بروتوكولات أخرى, عادة مغلفة في UDP في بورت 2427 حيث حزم MGCP إما تكون أمر أو إستجابة , حيث الCALL AGENT يستعمل رسائل التحكم لتوجيه الGATEWAY وسلوك تشغيلها, أما الGATEWAY يستعمل رسائل التحكم للإستجابة على طلبات الCALL AGENT وتنويه الCALL AGENT على أي حدث وأي سلوك غريب يحدث.

رسائل التحكم:
https://www.cse.wustl.edu/%7Ejain/cis788-99/ftp/h_8voip/img026.gif
أمران عن طريق ال CALL AGENT للسؤال عن حالة الMEDIA GATEWAY
AuditEndpoint /AUEP: هذه الرسالة تطلب حالات نقطة التوصيل عن طريق الCALL AGENT

AuditConnection /AUCX: هذه الرسالة تطلب حالة الإتصال عن طريق الCALL AGENT

ثلاث أوامر عن طريق الCALL AGENT للتحكم في إتصال RTP للMEDIA GATEWAY

ملاحظة: يمكن للGATEWAY إرسال DLCX عند حاجتها لإنهاء أي إتصال لإدارتها
CreateConnection/ CRCX: هذه الرسالة تأمر الGATEWAY لإنشاء إتصال مع نقاط التوصيل عن طريق الCALL AGENT

DeleteConnection/ DLCX: هذه الرسالة تخبر المستقبل بإنهاء المكالمة الCALL AGENT والGATEWAY بإمكانهما إرسال هذه الرسالة

ModifyConnection MDCX: هذه الرسالة تأمر الGATEWAY بتجديد معطيات إتصالاتها لعمليات إنجزت مسبقا عن طريق الCALL AGENT

أمر يستعمل عن طريق الCALL AGENT لطلب إخطار الأحداث على الGATEWAY وطلب الGATEWAY لتطبيقها

NotificationRequest /RQNT: هذه الرسالة تأمر الGATEWAY بمراقبة الأحداث على نقاط التوصيل والعمل الذي تقوم به عند حدوثها تصدر عن طريق الCALL AGENT

أمر يستعمل من قبل الGATEWAY لإخبار الCALL AGENT بأنه تم إكتشاف حدث لأجل الطلب
الذي تم من الCALL AGENT عن طريق الأمر RQNT

Notify NTFY: هذه الرسالة تخبر الCALL AGENT عن الحدث الذي تم إخطاره تتم عن طريق الGATEWAY


أمر يستعمل من قبل الGATEWAY لإخبار الCALL AGENT بأنه في حالة إعادة التشغيل Restarting


RestartInProgress RSIP: هذه الرسالة تنبه الCALL AGENT بأن الGATEWAY والنقاط الموصله به أزيلت من الخدمة أو رجعت إلى الخدمة عن طريق الGATEWAY



آلية عمل الرسائل بين الCALL AGENT والGATEWAY

https://img512.imageshack.us/img512/7915/75862987.jpg

الرسمة السابقة تمثل الحوار الذي يجري بين الCALL AGENT والGATEWAYS

1- الCALL AGENT يرسل RQNT إلى كلا من الGATEWAYS الطلب يأمر الGATEWAYS للإنتظار مرحلة رفع السماعة Off-Hook وهي تعتبر Event وعندما تحدث هذه الحالة الCALL AGENT يأمر الGATEWAY لتزويد نغمة الطلب Signal , ال Call Agent يسأل الGATEWAY لمراقبة أي أحداث أخرى عن طريق تزويد الطلب بخارطة للرقم الCALL AGENT يجعل الGATEWAY يجمع الأرقام قبل تنبيه الCALL AGENT

2- الGATEWAY يستجيب إلى الطلب RQNT RESPONSE وعند هذه النقطة الGATEWAYS والCALL AGENT ينتظران وقوع الحدث.

3- المستخدم على الGATEWAY رقم A يصبح Off-Hook كما هو طلب منه عن طريق الCALL AGENT مسبقا, الGATEWAY تزوده بنغمة طلب لأن الGATEWAY زودت بخارطة للرقم , وتبدأ بتجميع الأرقام بينما هم في حالة طلب حتى إما أن يحدث تشابه لرقم موجود أو لا يحدث تشابه للرقم المطلوب لنفرض أنه تم وجود تطابق للرقم.

4- الGATEWAY رقم A ترسل NTFY إلى الCALL AGENT لتخبر الCALL AGENT بأن الحدث الذي طلب تم ملاحظته الNTFY تميز نقاط التوصيل والحدث والأرقام المطلوبه في هذا المثال.

5- بعد تأكيد بأن المكالمة ممكنة وفقا للأرقام المطلوبة الCALL AGENT يأمر الGATEWAY رقم A لإنشاء إتصال CRCX مع النقاط الموصله به

6- ال GATEWAY تستجيب مع مواصفات لحالة جلسة الاتصال في حالة مقدرتها على تخصص الاتصال. المواصفات تبين على الأقل عنوان IP والUDP بورت للأستعمال في جلسات RTP لاحقة.الGATEWAY لا تملك مواصفات الجلسة للجزء البعيد من المكالمة, والأتصال يدخل أي حالة إنتظار.

7- الCALL AGENT يجهز ويرسل طاب الإتصال إلى الGATEWAY رقم B , في الطلب, الCALL AGENT يزود مواصفات الجلسة المعده من الGATEWAY رقم A , طلب الإتصال موجه إلى نقطة التوصيل واحدة أو عدة نقاط توصيل , الCALL AGENT أيضا يضمن طلب التنبيه الذي يأمر الGATEWAY بالنسبة للإشارات والأحداث التى يجب الآن إعتبارها ذو علاقة بها.

8- الGATEWAY رقم B تستجيب إلى الطلب مع مواصفاته , لاحظ بأن الGATEWAY رقم B تمتلك المواصفتين لجلسة الاتصال و كيفية تأسيس جلسة RTP

9- ال CALL AGENT يبدل المواصفات إلى الGATEWAY رقم A في MDCX هذا الطلب ربما يحتوي على NTFY مغلفة تطلب فيه وصف الأحداث والإشارات عند هذه المرحلة من إعداد المكالمة.الآن الGATEWAYرقم A ورقم B تمتلكان متطلبات مواصفات الاتصال لإتمام جلسات الاتصال RTP مع إنتقال الصوت.

10- عند نهاية المكالمة أحد نقاط التوصيل تعرف على حالة ON-HOOK في المثال المستخدم عند الGATEWAY رقم A يغلق السماعه للإنهاء لآن الCALL AGENT طلب من الGATEWAYS لتنبيه الCALL AGENT في مثل هذه الأحداث , يقوم الGATEWAY رقم A بتنبيه الCALL AGENT.

11- الCALL AGENT يرسل DLCX طلب لكل من الGATEWAYS

12- الGATEWAYS تنهي المكالمة وتستجسب للCALL AGENT




تطبيقات بروتوكول الMGCP


على الGATEWAY هنا (https://www.cisco.com/en/US/docs/ios/voice/mgcp/configuration/guide/vm_mgcp_basic_cfg.pdf)

على ال CALL MANAGER هنا (https://www.cisco.com/en/US/products/sw/voicesw/ps556/products_tech_note09186a008017825e.shtml)

dohaboy79
14-04-2010, 16:21
جزاك الله خير على الشرح

hassan1423
14-04-2010, 22:15
شكرا الك كتير على هل الشرح الحلو ... انا عندي اقتراح ليش ما نحكي كمان عن البرتوكولات SIP و H323 . يعني ما نقتصر على سيسكو برتوكول وبس . :)))

hamidh
15-04-2010, 21:43
جزاك الله خير

$ABU FAHAD$
16-04-2010, 05:37
ما شاء الله عليك مهندسنا زياد شرح ممتاز بالتوفيق اخي العزيز في الشهادة و ان شاء الله نسمع الاخبار المفرحة عنك قريبا ,,

ahab
16-04-2010, 10:14
جزاك الله خيرًا أخي زياد على هذا الشرح الجميل ، وجعله الله في ميزان حسناتك

المهندس زياد
16-04-2010, 23:45
ما شاء الله عليك مهندسنا زياد شرح ممتاز بالتوفيق اخي العزيز في الشهادة و ان شاء الله نسمع الاخبار المفرحة عنك قريبا ,,

الله يبارك فيك يا أخي أبوفهد وإن شاء الله بالتوفيق لنا جمعيا ونسمع جميعنا الاخبار المفرحه وسئلتك بالله يا أخوي أبوفهد أن تطمني عليك أول بأول وعلى أخبارك وإن شاء الله الأخبار طيبة

المهندس زياد
16-04-2010, 23:49
جزاك الله خيرًا أخي زياد على هذا الشرح الجميل ، وجعله الله في ميزان حسناتك

الله يبارك فيك يا أخي إيهاب ويجزيك كل الخير والشكر لك لدعمنا في قسم الفويس بمواضعيك الرائعة

المهندس زياد
17-04-2010, 13:51
شكرا لباقي الأخوة على ردودهم وبارك الله فيهم جميعا