Deprecated: Automatic conversion of false to array is deprecated in /home/atiparda/public_html/wp-content/plugins/pixfort-likes/pixfort-likes.php on line 232
پروتکل IGMP
پروتکل مدیریتی گروهی اینترنت IGMP یا Internet Group Management Protocol، پروتکلی است که به چندین دستگاه اجازه میدهد یک آدرس IP را به اشتراک بگذارند. بدین ترتیب، همه آنها میتوانند دادههای یکسانی را دریافت کنند.
IGMP یک پروتکل لایه شبکه است. این پروتکل، برای راه اندازی multicasting یا چندپخشی، در شبکههایی که از نسخه 4 پروتکل اینترنت (IPv4) استفاده میکنند، به کار گرفته میشود. به طور خاص، IGMP به دستگاهها اجازه میدهد تا به یک گروه مولتی کستینگ بپیوندند.
مولتی کستینگ به فرآیندی اتلاق میشود که در آن، گروهی از دستگاهها همگی، پیامها یا بستههای یکسانی را دریافت میکنند. مولتی کستینگ با به اشتراک گذاری یک آدرس IP، بین چندین دستگاه کار میکند.
هر ترافیک شبکهای که به آن آدرس IP هدایت شود، به جای فقط یک دستگاه، به همه دستگاههایی که آدرس IP را به اشتراک میگذارند، میرسد. این حالت، بسیار شبیه زمانی است که گروهی از کارمندان، همگی، ایمیلهای شرکت را که روی یک ایمیل مستعار (alias) است، دریافت میکنند.
نحوه کار پروتکل IGMP چگونه است؟!
رایانهها و سایر دستگاههای متصل به یک شبکه، وقتی میخواهند به یک گروه مولتی کستینگ بپیوندند، از پروتکل IGMP استفاده میکنند. روتری که از IGMP پشتیبانی میکند، به انتقال IGMP از دستگاه گوش میدهد، تا بفهمد کدام دستگاه به کدام گروههای مولتی کستینگ تعلق دارد.
پروتکل IGMP از آدرسهای IP استفاده میکند که به مالتی کستینگ اختصاص دارند. آدرسهای IP مالتی کستینگ، در محدوده 224.0.0.0 تا 239.255.255.255 قرار دارند. در مقابل، شبکههای anycast میتوانند از هر آدرس IP منظمی استفاده کنند. هر گروه مولتی کستینگ، یکی از این آدرسهای IP را به اشتراک میگذارد. وقتی یک روتر، یک سری بسته به آدرس IP مشترک دریافت میکند، این بستهها را کپی میکند. سپس، نسخههایی را برای همه اعضای گروه مالتی کستینگ ارسال میکند.
گروههای مالتی کستینگ IGMP در هر زمان میتوانند تغییر کنند. یک دستگاه میتواند پیام “پیوستن به گروه” یا “ترک گروه” IGMP را در هر نقطه ارسال کند. پروتکل IGMP، امکان ارسال چندین نوع پیام IGMP به قرار زیر را فراهم میکند:
- گزارشهای عضویت: دستگاهها برای عضویت در یک گروه مولتی کستینگ، این موارد را به یک روتر مولتی کستینگ میفرستند.
- پیامهای “ترک گروه”: این پیامها، از یک دستگاه به یک روتر میروند و به دستگاهها اجازه میدهند از یک گروه مولتی کست خارج شوند.
- درخواستهای عمومی عضویت: یک روتر با قابلیت چندپخشی، این پیامها را به کل شبکه متصل حاوی دستگاهها میفرستد. بدین ترتیب روتر، عضویت گروه چندپخشی را برای همه گروههای داخل این شبکه، به روز میکند.
- درخواستهای عضویت خاص گروه: روترها این پیامها را به جای کل شبکه، برای یک گروه چندپخشی خاص ارسال میکنند.
IGMP مستقیماً در بالای پروتکل اینترنت (IP) کار میکند. هر بسته تحت این پروتکل، هم دارای یک هدر IGMP و هم هدر IP است. پروتکل IGMP نیز درست مانند ICMP، از پروتکلهای لایه انتقال، مانند TCP یا UDP استفاده نمیکند.
IGMP snooping چیست؟!
IGMP یک پروتکل لایه شبکه است. تنها دستگاههای شبکهای که از لایه شبکه مطلع هستند، میتوانند پیامها را ارسال و دریافت کنند. یک روتر در لایه شبکه کار میکند. در حالی که سوئیچ شبکه فقط ممکن است از لایه 2 که به عنوان لایه پیوند داده شناخته میشود، مطلع باشد. در نتیجه، ممکن است یک سوئیچ از اینکه کدام دستگاههای شبکه، بخشی از گروههای چندپخشی هستند و کدامها نیستند، اطلاع نداشته باشد.
بنابراین، سوئیچ ممکن است درنهایت، ترافیک چندپخشی را به دستگاههایی که نیازی به آن ندارند هدایت کند. این امر، باعث اشغال بیمورد پهنای باند شبکه و به کار گرفتن بی دلیل قدرت پردازش دستگاه میشود. بدین ترتیب، کل شبکه را کند میسازد.
IGMP snooping در واقع راه حلی است برای حل این مشکل. IGMP snooping، سوئیچها را قادر میسازد که روی پیامهای IGMP، عملیات Snoop یا جستجو را انجام دهند. به طور معمول، یک سوئیچ لایه 2 از پیامهای IGMP آگاه نیست. اما آنها میتوانند از طریق جستجوی IGMP به این پیامها گوش دهند. این کار، آنها را قادر میسازد شناسایی کنند که پیامهای مولتی کستینگ به کجاها باید ارسال شوند. طوری که فقط دستگاههای صحیح، ترافیک چندپخشی را دریافت کنند.