Internet Group Management Protocol

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש
סיווג פרוטוקולים על פי מודל ה-OSI
שכבת יישום HTTP, SMTP, FTP, RTP, IRC, SNMP, SIP, DNS, DHCP
שכבת ייצוג MIME, ASCII, Unicode, SSL
שכבת שיחה ASP, PPTP, SSH, NFS, RPC
שכבת תעבורה TCP, UDP, SCTP, DCCP
שכבת רשת IP (IPv4, IPv6), ICMP, IPX , ניתוב
שכבת קו Ethernet, Token ring, FDDI
שכבה פיזית E1, 10Base-T, RS-232, DSL, SONET
פרוטוקולים במודל TCP/IP
שכבת יישום
HTTP, SMTP, FTP, DNS, DHCP, SSH, RTP, RTSP, IRC, SNMP, SIP, IMAP4, MIME, TELNET, RPC, SOAP ...
שכבת תעבורה
TCP, UDP, SCTP, DCCP ...
שכבת רשת
IP, IPv4, IPv6, ICMP, ARP, IPX, IGMP ...
שכבת קשר
Ethernet, 10BASE-T, 802.11 WiFi, Token ring, FDDI ...
ארכיטקטורה בסיסית של IGMP

Internet Group Management Protocol או בקיצור IGMP הוא פרוטוקול תקשורת מעל IP המשמש לניהול קבוצת שידור Multicast.

הפרוטוקול מאפשר לצמתים בעלי כתובת IP ברשת לפנות לנתב סמוך התומך ב-Multicast ובאמצעותו להירשם לקבוצת השידור הרצויה. מרגע הרישום לקבוצת השידור בנתב, הלה מוודא שהוא מקבל את חבילות המידע הנשלחות לקבוצה, ומעביר אותן הלאה לשאר הצמתים תחתיו שנרשמו לקבוצה זו.

IGMP מהווה חלק אינטגרלי מהדרישות להקמת רשת התומכת ב-Multicast, והוא נחשב לחלק משכבת הרשת של מודל ה-TCP/IP, למרות שהוא פועל מעל ל-IP. זאת בדומה ל-ICMP, שלא נחשב לפרוטוקול בשכבת התעבורה של מודל ה-TCP/IP שכן אינו מאפשר העברת מידע ברמה מעליו.

גרסאות[עריכת קוד מקור | עריכה]

קיימות שלוש גרסאות ל-IGMP המוגדרות על ידי ה-Request for Comments הבאים:

  • IGMPv1 - מוגדר על ידי RFC 1112 (שנקרא בזמנו Host extensions for IP multicasting)
  • IGMPv2 - מוגדר על ידי RFC 2236
  • IGMPv3 - מוגדר על ידי RFC 3376

מבנה חבילת IGMPv2[עריכת קוד מקור | עריכה]

חבילת IGMPv2 מוגדרת על ידי RFC 2236 באופן הבא:

+ Bits 0 - 7 8 - 15 16 - 23 24 - 31
0 סוג זמן תגובה מקסימלי Checksum
32 כתובת הקבוצה

כאשר:

  • סוג - מסמן את אחת מארבע סוגי הפעולות האפשריות:
    • 0x11 - שאילתא לנתב על קבוצת Multicast. אם מופיעה כתובת ספציפית בשדה הכתובת השאילתא תהיה האם יש איזשהם מנויים בנתב המתושאל על הקבוצה הזו. אם לא מופיעה כתובת ספציפית אזי הנתב יחזיר את כל הקבוצות המוגדרות אצלו כרגע.
    • 0x16 - הודעת הצטרפות לקבוצה עבור נתבים התומכים ב-IGMPv2. הקבוצה המבוקשת היא לפי כתובת ה-IP הרשומה בשדה האחרון של ההודעה.
    • 0x17 - הודעת עזיבה מקבוצה שכתובתה היא כתובת ה-IP הרשומה בשדה האחרון של ההודעה.
    • 0x12 - הודעת הצטרפות לקבוצה עבור IGMPv1. קיים מטעמי תאימות לאחור.
  • זמן תגובה מקסימלי - שדה הרלוונטי אך ורק להודעות שאילתא. מציין את הזמן המקסימלי שהנתב רשאי לחכות טרם ישלח את תשובתו חזרה. בשאר ההודעות הערך הוא 0 והנתב מתעלם מהשדה.
  • Checksum - מחושב על פני כל חבילת ה-IP שנשלחה.
  • כתובת הקבוצה - כתובת ה-IP של הקבוצה המבוקשת. רלוונטית לכל ההודעות.