1.概述服務器
IP有三種地址:單播地址, 廣播地址,多播地址。
廣播和多播僅應用於UDP。
每一個以太網幀包含源主機和目的主機的以太網地址。一般每一個以太網幀發往單個目的主機,目的地址指明單個接收接口,於是稱爲單播。
一個主機要向網上的全部其餘主機發送幀,就是廣播。
一個主機要向網上的多個主機發送幀,就是多播。
2.廣播
- 受限的廣播:受限的廣播地址是255.255.255.255。該地址用於主機配置過程當中IP數據報的目的地址。主機可能還不知道它所在的網絡的網絡掩碼,甚至連它的IP都不知道。
- 指向網絡的廣播:指向網絡的廣播地址是主機號全爲1的地址。A類網絡廣播地址爲netid 255.255.255.其中netid爲A類的網絡的網絡號。
- 指向子網的廣播:指向子網的廣播地址爲主機號全爲1且有特定子網號的地址,做爲子網直接廣播地址的IP地址須要瞭解子網的掩碼。
- 指向全部子網的廣播:指向全部子網的廣播地址的子網號及主機號爲全1。
3.多播
IP多播提供兩類服務:
1)向多個目的地址傳送數據
2)客戶對服務器的請求(如BOOTP協議)
多播組地址:
多播組地址包括爲1110的最高4bit和多播組號。範圍從224.0.0.0到239.255.255.255。可以接收一個特定多播地址數據的主機集合稱爲主機組,一個主機組能夠跨越多個網絡。
eg. 224.0.0.1 表明「該子網內全部的系統組」,224.0.0.2代筆「該子網內的全部路由器組」。多播地址224.0.1.1用做網絡時間協議NTP,224.0.0.9用做RIP-2。
多播組地址到以太網的轉換:
IANA擁有一個以太網地址塊,即高24bit爲00:00:5e。IANA將其中的一半分配爲多播地址。任何一個以太網地址的首字節必須是01,意味着IP多播相對應的以太網地址範圍從01:00:5e:00:00:00到01:00:5e:7f:ff:ff
D類IP地址到以太網多播地址的映射如圖所示:
因爲多播組號中的最高5位在映射過程當中被省略,所以每一個以太網多播地址對應的多播地址組不惟一的。既然地址映射不惟一,那麼設備驅動程序或者IP層就必須對數據報進行過濾。
單個物理網絡的多播是簡單的。多播進程將目的IP地址指明爲多播地址。設備驅動程序將它轉換爲相應的以太網地址,而後把數據發送出去。
4.IGMP:網際組管理協議
IGMP用於支持主機和路由器進行多播的網際組管理協議。ICMP報文格式以下,
IGMP類型爲1說明是由多播路由器發出的查詢報文,爲2說明是主機發出的報告報文。
- IGMP的報告和查詢
-
- 當第一個進程加入一個組時,主機就發送一個IGMP報告。若是一個主機的多個進程加入同一組,只發送一個IGMP報告。這個報告被髮送到進程加入組所在的同一接口上。
- 進程離開一個組時,主機不發送IGMP報文
- 多播路由器定時發送IGMP查詢來了解是否還有任何主機包含有屬於多播組的進程。
- 主機經過發送IGMP報告來響應一個IGMP查詢,對每一個至少包含一個進程的組均要發回IGMP報告。