نشرت تحت تصنيف Wireless - Protocols

(IGMP (7



ذكرنا في الحلقة السابقة أن هذا البروتوكول هو المسؤل عن التراسل بين الراوتر و الجهاز المريد للفيديو و هذا البروتوكول تتطور عبر ثلاث أجيال IGMP v1 , v2 , v3 أولها بدأت كرسالة دكتوراة من د ستيف ديرينج , و تعتبر النسخة الثانية من بروتوكول IGMP هي النسخة الإفتراضية علي الراوتر و ذكرنا أننا سنتكلم عنها بالتفصيل

 و الآن هو هذا التفصيل 

هذا البروتوكول يعمل فقط خلال LAN بين الراوتر و الجهاز و بزمن TTL يساوي واحد

فائدة هذا البروتوكول الرئيسية هي تعريف الراوتر بالأجهزة التي تريد تلقي الفيديو أي التي تريد الولوج الي جروب المالتيكاست و ايضا الأجهزة التي لم تعد مهتمة بتلقي الفيديو أي التي تريد مغادرة جروب المالتيكاست

يتم تمكين IGMP علي الراوتر بعد اعداد بروتوكول PIM و multicast routing علي الراوتر

IGMP Version 2


يتكون IGMP v2 من أربع أجزاء كما تري في الشكل السابق و هذه الأجزاء هي خصائص و مميزات IGMP v2 و التي تميز بها عن IGMP v1

Type : و هو بطول 8 بت و هو أحد أربع أنواع لكل منهم كود خاص

فالكود 0x11 يسمي Membership Query و يستخدم من قبل الراوتر لإستكشاف وجود أعضاء لجروب المالتي كاست

و الكود 0x12 و يسمي Version 1 Membership Report و يستخدم من IGMPv2 لعمل توافقية مع الأجهزة التي تستخدم IGMPv1

و الكود 0x16 و يسمي Version 2 Membership Report و يستخدم من قبل الجهاز لإشعار الراوتر بوجود جروب واحد علي الأقل للمالتي كاست و من خلاله الراوتر يستطيع أن يتراسل مع جروب واحد بدلا من مراسلته لكل الجروبات ان أراد عبر Group-Specific Query messages

و أما الكود الرابع و الأخير 0x17 فيستخدم من قبل آخر جهاز في الجروب قبل مغادرته فأي جهاز يريد مغادرة جروب المالتي كاست سيقوم بإعلام الراوتر بذلك و هذا عبر رسائل Leave Group messages

Maximum Response Time : بطول 8 بت و يستخدم لطلبات Query messages و تأخذ قيمة من 1 الي 255 حيث كل رقم من ال 255 يساوي 0.1 ثانية و هو مفيد عندما يكون هناك أكثر من جروب و تريد أن يتعامل معهم عبر زمن أكبر للقيم بمعالجة طلباتهم بشكل أدق

Checksum : من اسمها معروفة يعني

Group Address: تختص برسائل الاستعلام العام Querier election و تستخدم لجعل الجهاز يتخير أفضل أنواع الراوترات في نفس subnet للجروب

IGMPv2 Host Membership Query Functions


الجهازان H1 و H2 قد ارتبطا بمجموعة المالتي كاست226.1.1.1 و هما يستمعان سويا الي الرسائل التي تصل الي المجموعة و العنوان 224.0.0.1 المرسل من IGMPv2 Queries و سيقوم بتحويل العنوانان الي MAC 01-00-5e-01-01-01 و01-00-5e-00-00-01 ثم يبدأ بالإنصات الي الفريمات التي تصل الي هذين العنوانين

يبدأ بعدها اراوتر R1 بارسال رسائل IGMPv2 عبر جميع منافذه للتعرف علي الأجهزة التي تريد استقبال الباكت الخاصة بمجموعة multicast

حتي هذه اللحظة الراوتر لا يعرف أي شيء عن الأجهزة الموجودة

عندما يستقبل الجهاز IGMPv2 Query من الراوتر عندما يريدي الدخول الي اي جروب ملتي كاست فهذا يسمي Solicited Host Membership Report

أما عندما يرتبط الجهاز بجروب مالتي كاست ثم يعلم الراوتر بأنه مهتم باستقبال التدفقات من هذا الجروب فهنا التقرير يمسي Unsolicited Host Membership Report

IGMPv2 Solicited Host Membership Report


لو أن أكثر من جهاز قام بفتح تطبيق المالتيكاست لتقبل التدفقات و استجابوا لتقرير طلب العضوية فإن هذا يعني أن الراوتر سيضطر لمعالجة كل ذه الطلبات رغم أن راوتر المالتيكاست مصمم لمعالجة طلب واحد عبر كل واجهة من واجهاته interface و هنا يأتي دور طريقة تعطيل أو كبح التدفقات Report Suppression mechanism لحل هذه المشكلة باستخدام مؤقت Query Response Interval حيث يمهل كل جهاز وقت Maximum Response Time (MRT) لإرسال تقارير IGMP لطلب تدفقات المالتيكاست من الجروب

و لنأخذ مثال في الشكل السابق

اعتبر أن الجهازان H1 و H3 استلما طلب IGMPv2 و ذلك بسبب انضمامها للجروب 226.1.1.1 و هنا سيضطران لإرسال تقرير عضوية من نوع Solicited و علي اعتبار أن الجهازان بالترتيب قد استندا الي توقيت MRT 3 و 1 توان بالترتيب

الجهاز H3 سينتهي توقيته بعد 1 ثانية و بدأ التجهيز لإرسال تقرير عضوية IGMPv2 Solicited Host Membership بقيمة TTL تساوي 1

سيقوم الجهاز H3 باستخدام عنوان جروب المالتي كاست 226.1.1.1 كعنوان هدف و عنوان مصدر 10.1.1.3 و سيتم تحويل عنوان الهدف الي العنوان الفيزيائي 01-00-5e-01-01-01 و سيستخدمه كعنوان فيزيائي إضافي له لكارت الشبكة و هنا يقول للراوتر أنا جاهز لتلقي التدفقات

الراوتر R1 و الأجهزة H2 , H1 سيريان تقارير عضوية IGMPv2 Solicited Host Membership الخاصة بـH3 سيتجاهل H2 التقرير لعدم اهتمامه بتدفقات المالتيكاست بينما سيتفاعل معها H1 و الراوتر حيث يقوم H1 بكبح suppresses أو تعطيل تدفقاته الي حين انتهاء H3

الراوتر سيقوم الآن باستقبال تقرير التماس العضوية IGMPv2 Solicited Host Membership Report علي الواجهة fa0/0 و لهذا فإنه سيقوم بتوجيه التدفقات الي تلك الواجهة و ليس غيرها كما تري في الشكل


IGMPv2 Unsolicited Host Membership Report


هنا لن ينتظر الجهاز استقبال تقرير العضوية من الراوتر بل سيقوم بنفسه بطلب هذه العضوية بمجرد فتح تطبيق المالتيكاست علي الجهاز كما تري في الشكل السابق

IGMPv2 Leave


المشاكل التي قد تقابل الأجهزة عندما تريد الولوج للجروب أو تستقبل تدفقات المالتيكاست قد تقابل الأجهزة عندما تريد الخروج من الجروب و لهذا فإن الجهاز مضطر لإرسال تقرير مغادرة للجروب IGMPv2 Leave message الي الراوتر و من ثم يقوم الراوتر بعدها بإرسال تقرير Group-Specific Query الي الجروب ليستفهم عن مدي تواجد أجهزة أخري في الجروب مهتمة بتدفقات المالتيكاست كما تري في الشكل السابق

عندما يخرج آخر جهاز من الجروب فإن الراوتر لا يرسل بعدها تدفقات مالتي كاست الي الواجهة fa0/0 كما تري في الشكل التالي


يعتبر أسلوب تفاهم المغادرة بين للجهاز و الراوتر من مميزات IGMPv2 عن IGMPv1 حيث يستغرق ثلاث دقائق في النسخة الأولي بينما يستغرق ثلاث ثوان في النسخة الثانية

و تؤكد وثائق RFC 2236 أن تقرير المغادرة يرسل من قبل آخر جهاز يغادر جروب المالتيكاست بمنطق “طفي النور قبل ما تمشي” , بينما غالب مصنعي أجهزة الشبكات و منها سيسكو تؤكد علي ضرورة ارسال تقرير المغادرة من الجروب من كل جهاز يغادر

IGMPv2 Querier

تستخدم عندما يكون هناك أكثر من راوتر مرتبطين في subnet , فعندما يقوم راوترات IGMPv2 بالبدء في إرسال IGMPv2 General Query الي أعضاء الجروب 224.0.0.1 فإذا وصل هذا النوع من الرسائل الي أحد هذه الراوترات فإنه يقارن عنوان IP الخاص به بعنوان الراوتر المرسل للرسالة و يتم التنازل للراوتر الأٌول في رقم IP ليكون IGMP querier و يصبح هو مشاهد للتدفقات و احتياطي للراوتر الآخر

فإذا توقف راوتر IGMP querier عن الإرسال لفترة ما فإن الراوتر الإحتياطي سيقوم بإستبداله

IGMPv2 Timers


التوقيتات التي استخدمت في IGMPv2 عديدة و قد مر علينا توقيت IGMPv2 Querier و توقيت Query Response Interval و هذا الجدول فيه هذه التوقيتات

IGMP Version 3


في أكتوبر 2002 أي في نفس السنة التي رسبت فيها في كلية الهندسة بسبب مادة هندسة التلفيزيون , تم إطلاق النسخة الثالثة IGMP v3

في IGMPv2 عندما يريد جهاز الولوج الي جروب مالتيكاست فإن الراوتر المسؤل سيقوم بتوجيه التدفقات اليه بغض النظر عن عنوان مصدر IP للباكت و هذا المر قد يكون عادي في الشبكات الصغير ة أما في شبكات الإنترنت و الشبكات الكبري

فعلي سبيل المثال لو أن لدينا مؤتمر فيديو و هناك شخص قرر إزعاج الحضور بإرسال محتوي غير لائق اليهم , فبرغم أن التطبيق عند كل شخص لديه خاصية حجب هذا الفيديو أو غلقه أو تعطيل صوته الا أن التدفقات نفسها ستظل تصل عبر الجروب

هذا الأمر قد يستهلك الباندويدث الخاص بالشبكة و ها المر قد يستغله هاكر ما بإرسال تدفقات زائفة تستهلك الباندويث مما يقلل سرعة الشبكة و هذا يسمي بـ DoS attack

هذا الأمر لم يكن له حل في النسختين IGMPv1 و IGMPv2 بينما في النسخة IGMPv3 لدينا الحل حيث يستطيع الجهاز بفلترة التدفقات القادمة بناء علي عنوان IP المدصر و يسمي هذا بـ Source-Specific Multicast (SSM)

IP Multicast Delivery Modes

يوجد نمطين في IP multicast هما Any Source Multicast و Source Specific Multicast

Any Source Multicast
ASM

هنا يستطيع الجهاز المستقبل أن يستقبل أي إصدار من IGMP للإرتباط ب جروب Multicast و يسمي هذا الجروب أو يوسم بالحرف G في Routing Table خانة state notation

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

Source Specific Multicast
SSM

النمط الأكثر شهرة و الأفضل للشبكات و التي تعتمد عليه سيسكو لنقل بيانات الصوت و الفيديو و يستخدم فقط الإصدار الثالث IGMPv3 ليتمكن من الإشتراك في القناة (S , G) و بمجرد الإشتراك بها فإنه يعبر عن استعداده لتلقي التدفقات المرسلة من المصدر S الي الجروب G

Comparison of IGMPv1, IGMPv2, and IGMPv3




نادر المنسي

Advertisements

المعلق:

مهندس عربي يطمح و يساعد في الرقي بالمحتوي العربي للتكنولوجيا عبر ترجمة و اعداد مقالات و كتب علمية في مجال الشبكات و الإتصالات السلكية و اللاسلكية

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   /  تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   /  تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   /  تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   /  تغيير )

w

Connecting to %s