本備忘錄說明了主機Internet協議為支持互連網絡多點廣播所需要的擴展。
本規范取代了RFC-966給出的ARPA網際網中的ip多點廣播,并為它制定一個提議的協議標準。RFC-966詳述了這里說明的多點廣播擴展的基本原理和動機。本備忘錄的分發不受限制。
⒉介紹
IP多點廣播定義為一個去往"主機群"的IP數據報的傳輸,有零個或多個主機組成的"主機群"通過單個IP目的地址標識。一個多點播送數據報被投遞給它的目的主機群的所有成員,具有和常規單路傳送IP數據報同樣的"“盡力”安全性,,那就是說該數據報不保證達到目的地組的所有成員或不合其他數據報具有相同的順序。
主機組的會員數是動態的;也就是說,主機隨時可以參加和離開組。沒有對主機組中的成員的數目或地點加以限制,但是會員僅限于那些擁有專用的存取鍵的主機。一個主機可能同時是多個組的成員。
一個主機不用是一個組的成員就可以給它發送數據報。
主機組可能永久性或暫時性的。永久性組具有一個眾所周知的、政府分配的IP地址。它是地址,非該組的會員,也就是說永久性;任何時間,一個永久性團體也許有許多成員,甚至可能有零個成員。另一方面,臨時性的團體,當應一個主機的請求創建時被動態地指派一個地址。當它的會員跌至零,臨時性的團體要解散時,它的地址可以重新分配。
組員身份臨時團體的創建和組員身份信息的維護是“多點播送代理”(存在于因特網網關或其他專用的主機內的實體)的職責。至少有一個多點播送代理直接與每個支持IP多點廣播的IP網絡或子網相連。主機通過用鄰機代理交換報文來請求新建一個團組、參加或離開現有團組。
多點播送代理還擔負多點播送IP數據報的互連網絡運送工作。發送一個多點播送IP數據報時,主機將它傳送到一個局域網多點播送地址那里,哪些地址標識目的地主機組的所有鄰機成員。假如該組具有在其他網絡的成員,多點播送代理成為本地多點播送的輔助接收器并且通過因特網網關系統中繼該數據報給其他網絡上的代理。最后,另一個網絡上的代理將數據報作為一個本地的多點播送傳送給他們自己]目的地組的鄰機成員。
本備忘錄說明了一個主機IP實現對IP多點廣播支持所需要的擴展,這里的"主機"是任一internet主機或網關而不是充當多點播送代理的機器。多點播送代理內部和之間使用的算法和協議對非代理主機來說是透明的,并且在一個獨立的文檔中具體說明。本備忘錄還未指定局域網多點廣播是怎樣完成的,盡管它規定了對一個任意的局域網所必需的服務接口并以太網且規范作為一個例子。其他類型的網絡的規格可能是將來備忘錄的課題。
⒊一致水平
對本規范來說有三級一致水平:
0級∶不支持IP多點廣播。
在這時候沒有任何支持IP多點廣播的IP實現。0級主機通常不受多點播送效率的影響。唯一的例外發生在某些類型的局域網上,這里存在的1級或2級主機可能引起多點播送IP數據報誤投給0級主機主機。這樣的數據報可以通過在它們的目的地地址字段中的D類IP地址輕易地認出;不支持IP多點廣播的主機應該丟棄他們。D類地址在本備忘錄的4節定義。
1級∶支持發送而不支持接受多點播送IP數據報。
1級答應主機參與某些基于多點播送的服務,諸如資源定位或狀態報告,但是不許一個主機創建或參加任何主機組。IP實現可能從0級主機非常地輕易地升級到1級并且只需少量新代碼。本備忘錄的4、5、6節可應用到1級實現。
2級∶充分支持IP多點廣播。
2級容許一個主機去創建、參加和離開主機組,以及給主機組發送IP數據報。它要求在主機內部實現IGMP并且擴展IP和局域網服務接口。本備忘錄以下的所有部分可適用于實現2級。
⒋主機組地址
主機組高四位字節可以通過D類IP地址認出,那就是說D類IP地址用"1110"作為它們的高四位字節。余下的28位未組織,直到主機關心他們的時候為止。有名的永久性組的地址將被刊登于"分配號碼"中。E類IP地址即用"1111"作為它們的高四位字節的IP地址專供將來尋址方式之用。
附錄II包含某些背景知識,詳述了與主機組地址相關的幾個爭執點。
IP多點廣播的主機擴展
5.一個主機IP實現的模型
擴展主機IP實現的多點播送如下圖所示:在本模型中,Internet信報控制協議和(用于2級主機的)IGMP被認為是在IP模塊內部實現的,并且IP地址到本地網絡地址的映射被認為是局域網模塊的職責。本模型僅用于說明意圖,但是不應該把它看作是一個實際實現。
Upper-LayerPRotocolModules
__________________________________________________________
---------------------IPServiceInterface-----------------------
__________________________________________________________
ICMPIGMP
IP____________________________
Module
__________________________________________________________
----------------LocalNetworkServiceInterface-----------------
__________________________________________________________
LocalIP-to-localaddressmapping
Network(e.g.ARP)
Modules_____________________________
(e.g.Ethernet)
為支持2級IP多點廣播,主機IP實現必須提供三個新業務∶(1)發送多點播送IP數據報、(2)接收多點播送IP數據報、和(3)治理組員身份。
1級主機僅需要提供第一個服務。每種服務在下面用一個獨立的部分說明。每一種服務,都為IP服務接口、IP模塊、局域網服務接口和以太網局域網模塊規定了一些擴展。對于局域網模塊而不是以太網局域網模塊的擴建部分進行簡短地敘述,但是沒有具體地規定。
⒍發送多點播送IP數據報
6.1.對于IP服務接口的擴建部分
為支持多點播送IP數據報的發送IP服務接口不需要做出修改。當它啟用現存"發送IP"操作時上層協議模塊僅僅規定了一個IP主機組目的地,而非一個個人IP目的地,。
6.2.對于IP模塊的擴建部分
為支持多點播送IP數據報的發送,IP模塊必須進行擴展以便當路由輸出數據報時能分辨IP主機組地址。大多數IP實現包括以下:
假如IP目的地在同一個局域網上,發送數據報給當地IP-目的地,別的發送數據報給當地GatewayTo(IP目的地)
為容許多址通信傳輸,路徑選擇邏輯必須變成∶
ifIP目的地在同一個局域網上或IP目的地是一個主機組,發送數據報給當地IP-目的地,否則發送數據報給當地gatewayto(IP目的地)
假如發送主機是目的地組的一個成員本身,輸出數據報的備份必須環回局部運送,當且僅當主機參加該組時才回送(參見8.1部分)。(這個問題在1級實現中沒有出現.)
在連接一個以上網絡的主機上,每個多點播送IP數據報必須僅通過一個網絡接口傳送,離開它去往多點播送代理直到投遞給任何其他要求的網絡。
主機組地址不應該處于一個輸出IP數據報的源地址字段。主機組地址可能用于源路由選項。
人們注重到一個小型的IP生存時間(TTL)(TTL)值可以
阻止投遞給一個目的地組的某些成員。因此,一個巨大的TTL值應該用于到達所有成員。相反地,一個小型的TTL值可用于僅到達分散廣泛地組的"四周的"成員。在小延遲局域網集群中TTL域作為一個路程段限制;因此,可以這樣完成擴展環調查:TTL開始為1并且每次重傳加1,直到由集群直徑定義的極限。
6.3.對于局域網服務接口的擴建部分
為支持多點播送IP數據報的發送局域網服務接口不需要做出修改。當它啟用現存"SendLocal"操作時IP模塊僅僅規定了一個IP主機組目的地,而非一個個人IP目的地,。
6.4.對于以太網局域網模塊的擴建部分
通過答應在以太網信息包的目的地域使用多點播送地址,以太網可以直接支持本地多點播送包的發送。為支持多點播送IP數據報的發送,需要一個用于將IP主機組地址映射到以太網多點播送地址的方法。
通過將IP地址的低28位放入一個以太網地址的低28位,一個IP主機組地址被映射到一個以太網多點播送地址。以太網地址的高20位設置成一個在"分配號碼"("AssignedNumbers")中刊登的有名的值。
[在發表本備忘錄時,具有28未指定的位的以太網多點播送地址塊還沒有從分配權力機構處獲得。假如不能獲得這樣的地址塊,可能會規定一個替換映射方案.]
6.5.對局域網模塊而不是以太網的擴展
為了發送多點播送IP數據報,其他的直接支持多點廣播的網絡例如符合IEEE802.2標準的環或總線型網絡,可以用和以太網一樣的方法處理。對于支持廣播而不是多點播送地網絡,例如試驗性以太網,所有IP主機組地址都可以被映射到單個局部廣播地址(以增加所有本地主機開銷為代價)。對于一個象ARPANET或公用數據網那樣的點到點網絡
(X.25),所有IP主機組地址都可能被映射到一個盡人皆知的一個IP多點播送代理的局部地址;一個這種網絡上的代理負責在網絡以及網絡間完成多點播送投遞。
⒎接收多點播送IP數據報
7.1.對于IP服務接口的擴建
為支持多點播送IP數據報的接收IP服務接口不需要做出修改。利用和普通的"ReceiveIP"一樣的操作(單路傳送數據報),入局多點播送IP數據報被投遞給上層協議模塊。
7.2.對IP模塊的擴展
為了支持多點播送IP數據報的接收,必須擴展IP模塊,使它除認出主機的專用IP地址之外可以認出主機當前所屬的IP主機組的地址,去往那些組地址中的一個的入局數據報用和處理主機的私有地址中的一個的數據報完全一樣的方法處理。
去往非該主機所屬的組的入局數據報被丟棄,不產生任何關于錯誤的報告。
關于連接一個以上網絡的主機,假如一個數據報到達一個網絡接口,要去的該主機所屬的組在一個不同的接口上,該數據報被默默地丟棄。(這個只有在局域網模塊缺乏多點播送地址過濾的情況下才會發生.)
在它的源地址字段或在源路由選項中的什么地方具有一個IP主機組地址的入局數據報不會被拒絕。
ICMP錯誤報文(目的地不可達、時間超出、參數問題、源熄滅或重定向)從來不因一個去往IP主機組的數據報引起。
7.3.對于局域網服務接口的擴建部分
為支持多點播送IP數據報的接收局域網服務接口不需要做出修改。入局局域網包,不管多點播送或單路傳送,被用"ReceiveLocal"一樣的操作投遞給IP模塊。
IP多點廣播的主機擴展
7.4.對于以太網局域網模塊的擴展
為了支持多點播送IP數據報的接收,一個以太網模塊必須能夠接收發給該以太網多點播送地址的包,該以太網多點播送地址與主機的IP主機組地址對應。任何地址過濾器能力(以太網硬件接口可能具有)的優越性都是非常所希望的,所以主機僅接收去往它的那些包。
令人遺憾地是,當前許多以太網接口對硬件可以辨認的地址的數目只有一個很小的限制。不過,一個實現必須能夠偵聽偵聽任意數目的以太網多點播送地址,可能意指為了在地址的數目越出過濾器答應范圍期間全部接受多點播送包打開地址過濾器。
缺乏的機器地址過濾器的那些接口,可能希望在以太網模塊的軟件內部完成以太網地址過濾。不過,這不是強制性的,因為IP模塊根據IP目的地址執行它的自己的過濾。
7.5.對局域網模塊而不是以太網的擴展
為了接收多點播送IP數據報,其他的直接支持多點廣播的網絡例如符合IEEE802.2網絡,為了接收多點播送IP數據報可以用和以太網一樣的方法處理。對于純廣播式網,例如試驗性以太網,所有入局廣播包都被接受然后為了進行IP級過濾而傳送給IP模塊。在一個點到點網絡上,多點播送IP數據報可能作為局域網單路傳送到達,所以沒有必要改變局域網模塊。
⒏治理組員身份
8.1.78.1.對于IP服務接口的擴展
為了讓上層協議模塊要求它們的主機創建、參加、或離開一個主機組,IP服務接口必須被擴展以便提供以下三個新操作∶
CreateGroup(private,loopback)
-->outcome,group-address,access-key
該CreateGroup操作請求生成一個新的、臨時的主機組,只有這個主機作為它的成員。這
"private(私有)"參數規定了該組將是私有的or公共的。該"loopback(回送)"參數規定了不管是否是發自這個主機去該組的數據報都應該局部地其他的成員主機。遞送給The"outcome(結果)"指出請求是答應或被拒絕的。假如是答應,返回一個新的32位IP主機組地址,以及一個64位存取要害字,零是為公共的組和非零為私有組。該請求可能被被拒絕的,由于缺乏來自一個多點播送代理響應、或缺乏資源。
JoinGroup(group-address,access-key,loopback)-->outcome
該joingroup操作要求這個主機成為該主機組的通過"組地址"辨認的一個成員,具有規定的存取要害字。該"loopback(回送)"參數規定了不管是否是發自這個主機去該組的數據報都應該局部地其他的成員主機。遞送給The"outcome(結果)"指出請求是答應或被拒絕的。由于缺乏來自一個多點播送代理響應、一個缺乏資源、一個非法組地址、一個錯誤的存取要害字或已是一個成員,該請求可能被拒絕。
LeaveGroup(group-address,access-key)-->outcome
該LeaveGroup操作要求這個主機放棄該主機組的能夠通過"組地址"辨認的一個成員的資格,具有規定的存取要害字。The"outcome(結果)"指出請求是答應或被拒絕的。由于缺乏來自一個多點播送代理響應、一個缺乏資源、一個非法組地址、一個錯誤的存取要害字或當前不是一個成員,該請求可能被拒絕。
這些操作中間每一個可能占據一分鐘以上才能完工,取決于IGMP重傳的數目
在IP模塊內部執行、多點播送代理產生一個應答需要的時間。不過,標準的延遲應該幾秒左右。
除LeaveGroup操作之外,每當主機或它的IP模塊崩潰,或在罕見的情景中——當一個多點播送代理撤回它的會員時,該主機丟失它在一個組中的會員資格。當它的會員資格已經被撤回時,IP服務接口將提供某些方法通知上層模塊。
會員資格可能由于缺乏資源、組地址的存儲單元分配、或發現另一個主機組用具有一個不同的存取要害字的同樣的組地址,會員資格可能被撤回。(參見附錄II,詳述了地址回收問題.)
注重到IP組員身份是per-host(每主機)而非per-process(每進程)是是很重要的。一個IP服務接口不應該為同一個組讓多進程啟用JoinGroup操作作為完成投遞給跟多的進程的方法IP模塊傳遞每個入局數據報,不管多點播送或單路傳送,給一個上層協議模塊,該上層協議模塊通過數據報的IP報頭中的協議域認出;不管是否傳遞入局數據報給多個進程,它都是個上層問題,也許應該using"processgroups(進程組)"概念或"sharedports(共享入口)"概念。
8.2.對IP模塊的擴展
IP模塊內部,會員資格management操作通過InternetGroupManagementProtocol(IGMP)支持,在附錄I.中規定。也使報文與每一上面規定的操作相對應,IGMP還規定一個
"deadmantimer"程序借此主機定期用multicastagents確認它們的會員資格。
IP模塊必須維護一個數據結構,該數據結構列出主機當前所屬的所有主機組的IP地址、以及每個組的回送政策、存取要害字和時間變量。這個數據結構被用于IP多址通信傳輸服務,了解哪些輸出數據報給回送,通過接收服務了解哪些入局數據報去接受。IGMP的和management接口操作的用途是維護這個數據結構。
每個會員資格與具體的網絡接口相聯系,連接一個以上網絡的主機上,在這種主機上,上面的每個management接口操作可能要求一個附加參數來規定接口創建、
參加或離開請求申請。組員身份數據結構還必須必須進行擴展以便使每個會員資格于一個接口聯系起來。假如一個主機在一個以上網絡接口上參加同一個主機組,它可能期望接收每個發送給那個組的數據報的多個副本。
8.3.對于局域網服務接口的擴展
為讓一個IP模塊控制什么樣的包應該通過局域網模塊接受,必須用以下兩個新的操作擴展該局域網服務接口∶
AcceptAddress(group-address)
RejectAddress(group-address)
這里的"group-address(組地址)"是一個IP主機組地址。該。AcceptAddress操作要求該局域網模塊接受和放棄隨后到達的去往與"group-address(組地址)"相當的本地網絡地址的那些包。該RejectAddress操作要求該局域網模塊停止傳輸隨后到達的去往與"group-address(組地址)"相當的本地網絡地址的那些包。
Any局域網模塊都能夠自由地忽略RejectAddress請求,并且可能傳遞去往比那個在AcceptAddress要求中規定的地址多的包,假如它不能充分地過濾入局包。
8.4.對于以太網局域網模塊的擴展
一個以太網模塊通過給它的入局包的接受過濾條件增加對應的以太網多點播送地址就可以響應AcceptAddress操作。rejectaddress操作引起對應以太網地址從過濾處落下。對于限制能夠被增加給過濾器的地址的數目的以太網接口,當臨界被超出以太網軟件模塊必須偵聽并且打開過濾全部接受多點播送包。當地址的數目降低到臨界入口程度,它還應該偵聽并且恢復單個地址過濾。
8.5.對局域網模塊而不是以太網的擴展
為了控制地址過濾器,其他的多點廣播網絡例如符合IEEE802.2網絡,為了控制地址過濾器可以用和以太網一樣的方法處理。對于一個純廣播式網或一個
點到點網絡,該AcceptAddress和RejectAddress操作也許已無效;為了進行IP級過濾所有入局包能夠傳送給IP模塊。
附錄I.INTERNETGROUPMANAGEMENTPROTOCOL(IGMP)
IGMP被用在IP主機和它們的緊接的鄰機多點播送代理之間支持臨時團體的生成添加和刪除一個組的成員,定期證實組員身份。IGMP是一個不對稱協議而且這里從一個主機觀點而非一個多點播送代理來加以說明。
像ICMP(Internet信報控制協議)一樣,IGMP是一個IP的組成部分。它要求通過所有主機對應的2級IP多點廣播規范完全地實現。IGMP報文被壓縮在IP數據報中,具有一個IP協議號碼2.所有IGMP報文具有以下格式∶
0123
01234567890123456789012345678901
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TypeCodeChecksum
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Identifier
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
GroupAddress
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+AccessKey+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
類型
有八種IGMP報文∶
1=創建組要求
2=創建組應答
3=參加組要求
4=參加組應答
5=離開組要求
6=離開組應答
7=確認組要求
8=確認組應答
代碼
在一個創建組請求消息中代碼字段指出新的主機組將是公共的或私有∶
0=公共的
1=私有
在所有其他的請求消息中,代碼字段包含零。
在一個回答信息中,代碼字段規定要求的結果∶
0=請求答應
1=要求被拒絕,無資源
2=要求被拒絕,無效代碼
3=要求被拒絕,無效組地址
4=要求被拒絕,無效存取要害字
5-255=要求掛起,幾秒后重試
校驗和
EGP校驗和是從EGP版本IGMP類型開始的IGMP報文中16位字二進制反碼和的16位二進制反碼值。
為了計算該校驗和,校驗和域應該為零。
標識符
在一個確認組請求消息中,標識符字段包含零。
在所有其他的請求消息中,標識符域包含一個值以便將來自同一個主機的其他的要求其他的要求與該要求區別開來。
在一個回答信息中
,標識符域包含與在對應請求消息中同樣的值。
組地址
在一個組創建請求報文中,組地址字段包含零。
在所有其他的請求消息中,組地址域包含一個主機組地址。
在一個組創建應答報文中,組地址域或包含新的指定的主機組地址(假如該要求被答應)或包含零(假如被拒絕)。
在所有其他的應答報文中,組地址域包含與在對應請求報文中同樣的主機組地址。
存取要害字
在一個組創建請求報文中,存取要害字字段包含零。
在所有其他的請求消息中,存取要害字域包含分配給主機組在組地址域識別的(零對于公共的組)存取要害字。
在一個組創建應答報文中,存取要害字域或包含一個非零的64比特編號(假如要求一個私有組被答應)或包含零(假如被拒絕)。
在所有其他的應答報文中,存取要害字域包含與在對應要求中相同存取要害字。
協議規則
請求報文只通過主機發送。應答報文只通過多點播送代理發送。假如一個主機收到一個前面規定的四種應答類型之外的一種類型的IGMP報文,該報文被丟棄。
一個請求報文發送時具有它的IP目的地字段,該目的地字段包含聞名的多點播送代理組的地址。IP生存時間(TTL)域通過發送者置1初始化,以便約束要求的范圍為近的鄰機多點播送代理。IP源地址字段包含發送主機的專用IP地址。
應答報文只在響應一個請求報文時發送。
IP目的地址域的包含該主機(發送該對應要求)的私有地址。(一個組確認應答可能同時被發給在它的對應組確認要求中規定的主機組地址.)IP源地址字段包含該應答多點播送代理的專用IP地址。
當一個主機發送一個新的組創建、組參加、或離開組請求報文時,它供給一個任意的標識符,該任意的標識符在最后的T0秒內沒有用。(僅僅為標識符在每個新的要求加1就足夠了.)該主機初始化一個計時器為T1秒并且初始化一個重復傳輸計數器為零。假如具有一個匹配標識符應答報文沒有在計時器到期之前收到,它被重新設置為T1秒并且該重復傳輸計數器加1。假如計算器小于N1該主機重復傳輸該具有相同標識符的請求報文。假如該計算器等于N1,該主機放棄;假如該要求將創建或參加一個組,它被認為失敗;假如該要求將離開一個組,它被認為得逞;
假如一個"要求掛起"代碼在一個匹配一個創建組、參加組或離開組要求回答中收到,計時器重新設置為由該代碼規定的數值,并且重復傳輸計數器重新設置為零。新的定時值僅應用于一個超時時間間隔——假如該計時器到期,它重新設置為T1秒,該計數器加1,并且要求被重傳。
一個組創建、組參加或離開組請求的第一個匹配的回答包含一個"請求答應"或"要求被拒絕"代碼,判定該要求的結果。任何后來的或非匹配的應答由該主機丟棄。不過假如一個主機收到一個肯定的創建組應答或參加組應答,但是他們既不匹配一個未解決的請求又不包含一個該主機所屬的組地址,該主機應該立即發送一個離開組要求以便解決該出乎意外的組地址。
一個"請求答應(requestgranted)"回答一個創建組請求,暗示,以及組正在創建,該請求主機被同意在該組中具有會員資格,那就是說不必發送一個單獨的參加組請求。
組確認要求報文必須由主機定期發送,以便通知主機在規定的組中的延續會員資格給鄰機多點播送代理。假如一個代理沒有在一個代理定義的時間間隔內收到一個具體的組的組確認要求報文,它停止傳遞去往那個組的數據報。
對于它所屬的每個組,主機維護一個確認計時器和一個變量t.該變量t初始化為T2秒。每當主機的創建參加一個組請求的被答應,或者每當主機發送一個組確認要求或者收到組確認應答,該組確認要求或者收到組確認應答具有一個
該組的"請求答應"代碼,該主機設置該組的計時器為一個,該隨機數均勻分布在t和t+T3秒之間。假如該主機收到一個組確認應答,該組確認應答具有一個
"requestpending"代碼,t變成代碼值并且該計時器重新設置為一個新的t和t+T3間de隨機數。
變量t保持它的值,直到另一個"請求掛起"代碼收到為止。每當計時器到期,主機發送一個組確認要求。
即使一個主機未能它的請求的接收確認組回答,它繼續將本身認為該組的成員,因為它可能仍然能夠從在同一個局域網上的其他的主機收到多點播送數據報。只有當一個主機在一個組確認應答中收到一個"要求被拒絕"代碼讓它停止發送組確認要求時才認為它的會員資格已經被撤回。
多點播送代理通過發送組確認應答報文或者給該請求的個人發送者或者給在該請求中規定的主機組地址來響應組確認要求報文。通過送回一個組確認應答一個組的所有鄰機成員,一個多點播送代理能夠用單個包重新設置每個成員的計時器。計時器的隨機化只不過是用來促成一個計時器到期成員優先發送一個組確認要求,有助于用一個回答重置全部計時器。通過利用"請求掛起"代碼讓多點播送代理控制接收組確認要求的速度。
協議定時常量
以下時間常數是為IGMP規定的。由于運行經驗的結果他們可能會變化。
T0=300秒標識符最小數周期時間
T1=2秒,Create/Join/Leave請求的重傳時間間隔
N1=5tries,Create/Join/Leave請求重傳極限
T2=15秒,確認請求變量t的初值
T2=15秒,確認請求變量t的任意數范圍
附錄II。主機組地址問題
這個附錄不屬于IP多點廣播規范,但是提供幾個與IP主機組地址相關的爭執點的論述背景。
組地址捆綁
物理主機的IP主機組地址捆綁可能認為IP單路傳送地址捆綁的普遍化。一個IP單路傳送地址被靜態地捆綁給單個IP網絡上的單個局部網絡接口。IP主機組地址動態地捆綁給一組IP網絡上的一組局部網絡接口。
領會一個IP主機組地址不是捆綁給一組IP單路傳送地址是很重要的。多點播送代理不需要維護每個主機組的一列專用成員。比如,一個附著于一個以太網地多點播送代理只不過跟每個具有局部成員主機組的單個以太網多點播送地址關聯,而非一列會員們的專用IP或以太網地址關聯。
組地址作為邏輯地址
主機組地址已經明確地定義供多點播送IP數據報的目的地地址段里使用。不過,組地址是獨立的位置(他們不靜態地捆綁與單個網絡接口),可能作為多個普通"邏輯地址"在數據報的源和目的地址中段運用。比如,一個可移動IP主機可能具有一個只不過作為它的身份地主機組地址,用作它發送的數據報的源。每當可移動主機從一個網絡移動到另一個網絡,它可能在新的網絡參加它的自己的組并且離開在原網絡上的組。其他的主機和可移動主機通訊僅僅會處理組地址并且可能不知道,并且不被可移動主機的網絡位置的改變所影響。
不過主機組地址不能用來解決所有互連網絡邏輯地址的所有問題,例如投遞到一個多穴主機的最靠近地或最小荷載的網絡接口。此外,當組實際上源地址字段包含以上主機的時候,在數據報的源地址字段使用組地址存在危險。舉例來說,IP數據報再裝配算法每個主機使用不同的源地址。依靠同時,用一組源地址發送的數據報中的錯誤可能導致錯誤報告回到該組的所有成員,不只是發送者。鑒于這個危險,本備忘錄規定主機組地址的使用僅僅作為數據報的目的地,或在目的地址段或作為一個源路由選項的最后元素。然而,具有一組源地址的數據報最好由被接收而不必申訴,從而答應其他實現的試用主機組地址的應用程序邏輯地址。
臨時的主機組地址的周期
因為主機組地址是固定的,有相對較小的尺寸,所以短暫的組地址必須反復循環以便滿足繼續新建一個團組的要求。多點播送代理努力確保一個組指定它的新建群組地址之前在Internet中任何地方的不具有成員。然而,在特定互連網絡分割和會員資格移動條件下,不可能保證一個地址的唯一的分配不危及主機組的健壯性和有效性。此外,不知道某個組已經不存在的主機可能在它的地址已經分配給一個新建群組很久以后還給它發送數據報,所以主機應該對非故意的主機甚至私有組多點播送IP數據報的誤投的可能性有所預備,這種誤投只得使用高級的標識符或認證記號在IP以上級偵聽。(一個私有組的存取要害字可能用于某些應用程序地這樣一個標識符.)當然,在Internet中除組地址沖突之外,存在其他的隱避的通信威脅,例如不能信賴的網關或無擔保的網絡。端到端加密是這種對威脅的一個有效抵御。
RFC988——HostExtensionsforIPMulticastingIP多點廣播的主機擴展
新聞熱點
疑難解答