摘要:通信工程師互聯(lián)網(wǎng)技術(shù)MLD代理設(shè)計:現(xiàn)有的多播路由協(xié)議并不對MN提供特定的支持。而且,原有的移動IPv6協(xié)議也不支 持在MN和HA之間的多播數(shù)據(jù)的隧道轉(zhuǎn)發(fā),這主要是因為MN使用移動IPv6協(xié)議不能夠 通過HA進(jìn)行多播通信。
6.3.3 MLD代理設(shè)計
現(xiàn)有的多播路由協(xié)議并不對MN提供特定的支持。而且,原有的移動IPv6協(xié)議也不支 持在MN和HA之間的多播數(shù)據(jù)的隧道轉(zhuǎn)發(fā),這主要是因為MN使用移動IPv6協(xié)議不能夠 通過HA進(jìn)行多播通信。為了解決這種情況,可以使用基于移動IPv6的MLD代理。MLD代理允許MN通過HA發(fā)送和接收多播數(shù)據(jù)包,從而實(shí)現(xiàn)了MIPv6中在MN和HA之間支持雙向隧道的多播數(shù)據(jù)的隧道轉(zhuǎn)發(fā)通過利用基于移動IPv6的MLD代理,就可以完成多播數(shù)據(jù)的轉(zhuǎn)發(fā)而不需要安裝和操縱多播路由協(xié)議,
1.MLD代理的設(shè)計
多播路由器的功能可以分為3個具體的功能模型:接收者的加入、多播樹的加入/剪枝和數(shù)據(jù)轉(zhuǎn)發(fā)。接收者的加入就姑接收MLD消息,也就是多播路由器得知多播接收者希望加入 哪個多播組的能力。多播樹的加入/剪枝就是加入(離開)多播轉(zhuǎn)發(fā)樹,這是多播路由器的核 心操作。數(shù)據(jù)轉(zhuǎn)發(fā)就是轉(zhuǎn)發(fā)多播數(shù)據(jù)到感興趣的接收者的能力。
MLD代理的設(shè)計思想就是從多播路由器的3個功能模型中取出兩個:接收者的加入和數(shù)據(jù)轉(zhuǎn)發(fā)。一個MLD代理必須要設(shè)置其上游接口及下游接口,上游接口必須要和一個具有多播路由功能的路由器連接,下游接口必須要和一個可以發(fā)送MLD請求消息的多播接收 者相連。MLD代理的上游接口扮演MLD主機(jī)部分的功能,下游接口扮演MLD路由器部分 的功能。在多播路山器看來,MLD代理可以看作是一個多播接收者。也就進(jìn)說,MLD代理代表多播接收者向上提交多播組。因此,它在網(wǎng)絡(luò)鏈路上可以肴成是簡單地轉(zhuǎn)發(fā)MLD消息。這時,多播路由器就會加入到多播轉(zhuǎn)發(fā)樹并向MLD代理所在的網(wǎng)絡(luò)轉(zhuǎn)發(fā)多播數(shù)據(jù)。在多播 接收者看來,MLD代理可以看成是一個多播路由器。也就是說,MLD代理處理多播接收者發(fā)送的MLD請求,并向多播接收者轉(zhuǎn)發(fā)多播數(shù)據(jù)流,也就是通過下游接口向多播接收者轉(zhuǎn) 發(fā)多播數(shù)據(jù)流。
基于MLD代理的設(shè)計可以看出,MLD代理可以應(yīng)用于家鄉(xiāng)代理(HA),以隧道接口作為下游接口,通過雙向隧道完成HA和MN之間的MLD消息的交互處理及多播數(shù)據(jù)包轉(zhuǎn)發(fā);同時,MLD代理也可以應(yīng)用于移動路由器(MR0,以其一個無線物理接口作為下游接口,從而可以為無線接入到其移動路由器的主機(jī)節(jié)點(diǎn)完成MLD消息的交互處理及多播數(shù) 據(jù)包轉(zhuǎn)發(fā)。
2.MLD代理的功能模塊設(shè)計
在此功能模塊設(shè)計中,首先進(jìn)行初始化操作,包括記錄進(jìn)程號和日志文件,讀取配罝文件,初始化MLD代理的信息列表以及與內(nèi)核交互的套接口*各個信息列表包括MN列表、成員列表及轉(zhuǎn)發(fā)列表一其中,MN列表表示了 MN的各項信息:接口名稱、接口 ID、 MN的HoA地址、收到的包數(shù)目、發(fā)送的包數(shù)H:成員列表表示了在各個接口上的加入的 組的信息:接口名稱、接口 ID、接口的IP地址、多播的源地址(對于SSM)、多播組地址、多播模式(MC_ASM 或者 MC_SSM)、多播范圍(MC_LINK, MC_SITE 或者 MC_GLOBAL): 轉(zhuǎn)發(fā)列表表示了在某個接口上轉(zhuǎn)發(fā)的某個組的各項信息:要轉(zhuǎn)發(fā)的多播組地址、多播包的 源地址(對于SSM)、多播模式(MC_ASM或者(MC_SSM)、接口 ID、接口的過濾模式 (MCJNCLUDE或者M(jìn)C_EXCLUDE)、有效時間、轉(zhuǎn)發(fā)的包的數(shù)目、接口的過濾源地址 列表(對于 SSM)。各個套接口趙括 sock_lan、sock_mld sock_f\vd其中 sockjan奢接口是用于代表下游接口各個節(jié)點(diǎn)加入多播組的:sock_mld套接口是用于從下游接口各個節(jié)點(diǎn)接收MLD Report消息的;soclc_fwd套接U是用于將多播數(shù)據(jù)包轉(zhuǎn)發(fā)到下游接CJ各個節(jié) 點(diǎn)的。
其次,從內(nèi)核獲取MLD消息之后,利用MLD模塊生成組成員列表:同時,通過更新多播轉(zhuǎn)發(fā)緩存來生成轉(zhuǎn)發(fā)列表:通過綁定緩存獲取MN的信息,從而生成MN列表。
最后,MLD代理的下游接口各個節(jié)點(diǎn)發(fā)送MLD消息加入到相應(yīng)的多播組獲得多播數(shù)據(jù),MLD代理利用轉(zhuǎn)發(fā)模塊根據(jù)記錄的表信息進(jìn)行多播數(shù)據(jù)的轉(zhuǎn)發(fā)。
MLD代理多播方案的功能框架如圖6-17所示
返回目錄:
編輯特別推薦:
中級通信專業(yè)實(shí)務(wù)
中級通信專業(yè)實(shí)務(wù)傳輸與接入教程匯總
通信工程師備考資料免費(fèi)領(lǐng)取
去領(lǐng)取
共收錄117.93萬道題
已有25.02萬小伙伴參與做題