網際網路群組管理通訊協定 Internet Group Management Protocol
指導老師 : 戴致禮 老師 班級 : UC103 學號 : C1000204 姓名 : 彭駿杰
一、IGMP 網際網路群組管理通訊協定介紹 IGMP 是一種群播方式,將同樣的訊息同時傳送給一群接收者,也就 是一對多的通訊,常見的應用有股票市場的報價訊息及學校的廣播教 學,IGMP 是 管 理 網 路 群 組的 通 訊 協定 , 主 要 利用 IP 堆 疊 實 現 多 重 傳 播 ,其 最 大 的好 處 在 於節 省 整個 網 路 的 頻寬 。 IGMP 群播在 IPv4 Address Classes 屬於一個 Class D 類的位址,範 圍為 224.0.0.0 到 239.255.255.255,此 Class D 不拿來設定 IP 的。 網路堆疊有不同的層次構成,每一層只和相鄰的上、下層通訊,IGMP 使用第 2 層與第 3 層,其多重傳播的特性可在寬頻網路中有效的傳輸 視訊流。 下圖為 IGMP 位於網路層的位置
IGMP
ICMP
IP
ARP
RARP
二、IGMP 訊息類型 主機成員資格查詢 多點傳送路由器用來每隔一段時間輪詢一次群組成員的網路。 主機成員資格報告 在主機連接多點傳送群組,於指定的主機群組中宣告成員資格時,傳 送此報告。也傳送 IGMP 主機成員資格報告訊息,以回應路由器傳 送的 IGMP 主機成員資格查詢。 離開群組 當它們離開主機群組,並且是網路區段上該群組最後的成員時,則由 主機傳送。
IGMP 訊息類型
IGMP 訊息
詢問
一般
成員身分報告
特殊
離開報告
IGMP 的主要訊息格式欄位 (1) 類型 為 8 位元,描述訊息的類型。
(2) 最大反應時間 為 8 位元,定義 IGMP 查詢費時上最大容許的等待時間,單位為 0.1 秒。
(3) 檢查碼 為 16 位元,計算是以 8 個位元組為基準。
(4) 群組位址 一般的查詢此欄位值為 0, 此欄位定義一組 Groupid,membership report、leave report、query 等資訊。
三、IGMP 運作 1. 所有主機和多點傳送路由器間的通訊都使用 IP 多點傳送,所以 IGMP 訊息在傳送前必須先行壓縮至 IP Datagram 中,而目的地的 IP 位址則為代表所有主機多點傳送位址的 224.0.0.0。 2. 多點傳送路由器並不傳送個別的要求訊息至每個多點傳送群組, 而是在所有群組間傳送一個輪詢以要求資訊,但每分鐘的輪詢次數最 多為一次。 3. 多點傳送群組中的成員主機不會在同一時間內傳送多個回應訊 息,而會在 IGMP 要求訊息到達時,由主機指定每個所屬群組一個 1 ~ 10 秒的延遲間隔時間,然後在此延遲時間到期時傳送一個回應訊 息至此群組。 4. 主機開始監聽由其他主機而來的回應。
IGMP 實驗步驟 此次實驗為先於 Windows 2008 電腦建立提供串流伺服器(使用 VLC 多媒體播 放程式),以 IP: 224.1.1.1 作為群播位址,另於 Windows XP 電腦執行 VLC 多 媒體播放程式,來接收 IP: 224.1.1.1 發出之群播封包,再以 Wireshark 軟體進 行封包分析。
於 VLC 多媒體播放程式點選串流
點選 Add,加入要串流播放之影音檔案,再點選串流。
出現欲撥放影音檔來源端路徑,點選下一項。
於 New destination 選擇 RTP/MPEG 選項,再點選右方增加。
於 RTP/TS 位置欄內輸入群播 IP 位置 224.1.1.1,Base port 為 5004,再點選 下一項。
於串流輸出視窗點選串流。
VLC 多媒體播放程式開始執行串流。
於 Windows XP 開啟 VLC 多媒體播放程式,並點選開啟網路串流。
點選網路項目,輸入群播 IP 位置 224.1.1.1 及 Port No. 5004 後,點選播放。
VLC 多媒體播放程式即播放串流之影音檔,另於下方控制列中可見連結之 IP 224.1.1.1 位址及 Port No:5004。
RTP-Real-Time Transport Protocol 即時傳輸通訊協定 用來處理 Internet 上的即時傳輸作業,需與 UDP 搭配使用,可提供混合資料串 流使用。
封包分析 另於 Wireshark 軟體所抓之封包顯示為 IGMPv3 版本成員報告加入及離開群播 位址 224.1.1.1。
建立三向交握(Three-way handshake)程序, 1.來源端送出第一個 TCP 封包給目的端,稱為 SYN 封包,要求建立連線。 2.接收封包會回 SYN ,ACK 封包。 3.收到 SYN,ACK 封包,再發出 ACK 封包。
來源 MAC- 08:00:27:42:d2:47 /目的 MAC- 01:00:5e:01:01:01 IP 位置: 來源 192.168.8.3 / 目的 224.1.1.1
使用 UDP 協定 來源 Port:61233 / 目的 Port:5004