蔡智慧+彭皓+夏東朝
摘要摘要:互聯(lián)網時代,組播應用越來越廣泛。介紹組播(PIM)相關技術,闡述組播運行機制,分析環(huán)路在組播環(huán)境中出現(xiàn)定位故障的原因。從組播路由協(xié)議中分析組播中斷的原因,提出了規(guī)避該類問題應采取的措施。
關鍵詞關鍵詞:組播;環(huán)路;組播中斷;路由協(xié)議
DOIDOI:10.11907/rjdk.162286
中圖分類號:TP393文獻標識碼:A文章編號文章編號:16727800(2017)001014702
引言
組播是一種針對點到多點的UDP格式報文傳輸協(xié)議。相比于單播,它可以極大節(jié)約網絡寬帶和流量。相比于廣播,它可以跨三層網路傳遞,并能針對專門的網絡客戶接收群體。因為特定的目標群體,其數據流承載具有優(yōu)于單播和廣播的機制。所以,對于組播協(xié)議需要相比前兩種傳遞方式更為復雜的協(xié)議來處理。
在互聯(lián)網+時代,組播應用越來越廣泛,例如大型企業(yè)視頻系統(tǒng)、運營商OTT等。在這些重要領域,網絡系統(tǒng)平均無故障時間指標越來越重要。在IP數據網絡中,組播故障包括端到端的組播源服務、三層組播PIM路由轉發(fā)和二層組播IGMP組成員管理故障,本文主要針對三層和二層環(huán)路下導致組播中斷的原因進行分析研究。1故障場景與定位
組播網絡中斷故障出現(xiàn)后,登錄三層交換機設備查找故障原因,發(fā)現(xiàn)設備的公網管理IP無法啟用,只能通過應急console管理通道登陸設備。由于網絡管理規(guī)范中,業(yè)務和管理地址都通過BGP協(xié)議承載,使用show ip route bgp查看三層交換機路由表,已無動態(tài)路由,初步定位為組播源服務地址不能向上層設備RP注冊。用show ip bgp summary檢查三層交換機的路由協(xié)議BGP,發(fā)現(xiàn)BGP鄰居已中斷。協(xié)議狀態(tài)如圖1所示。
通過在交換機設備本端和上行設備上配置靜態(tài)路由,確保BGP鄰居路由可達。此時設備可通過公網進行帶內遠程管理,但組播中斷故障尚未恢復。協(xié)議狀態(tài)如圖2所示。
根據設備組網規(guī)范,通過IGP OSPF實現(xiàn)BGP建立鄰居路由的互聯(lián)互通。使用show ip ospf interface brief和show ip ospf neighbor查看OSPF,發(fā)現(xiàn)鄰居關系異常。通過show ip pim interface和show ip pim neighbor查看組播無關路由協(xié)議PIM,發(fā)現(xiàn)鄰居異常。通過在交換機上執(zhí)行show interface geiX/X查看三層交換機物理端口流量狀態(tài),發(fā)現(xiàn)某一個接口的流量出現(xiàn)異常,且端口狀態(tài)中對廣播報文的統(tǒng)計數量在1分鐘之內出現(xiàn)陡增。分析此類原因屬于端口異常狀態(tài),對該端口進行shutdown操作后,OSPF和PIM鄰居恢復正常,組播業(yè)務恢復。協(xié)議狀態(tài)如圖3所示。
2原理分析
網絡中運行了3種協(xié)議,分別是BGP、OSPF和PIM-SM協(xié)議。BGP主要承載組播源服務器IPv4地址與RP和其它業(yè)務地址進行通信。OSPF主要承擔與上行設備建立BGP鄰居關系時的loop接口IP之間的通信。PIM-SM主要用于網絡中產生相應的*G和SG表項,以此承擔組播數據的三層轉發(fā)。2.1BGP
BGP用于在不同自治系統(tǒng)(AS)之間交換路由信息。當兩個AS需要交換路由信息時,每個AS都必須指定一個BGP運行節(jié)點,代表AS與其它AS交換路由信息。這個節(jié)點可以是一個主機,但通常是路由器來執(zhí)行BGP。兩個AS中利用BGP交換路由信息的設備稱為自治系統(tǒng)邊界網關(Border Gateway)。BGP屬于外部網關路由協(xié)議,可以實現(xiàn)自治系統(tǒng)間無環(huán)路的域間路由。BGP是溝通Internet廣域網的主用路由協(xié)議,不同省份、不同國家之間的路由大多依靠BGP協(xié)議。BGP分為IBGP(Internal BGP)和EBGP(External BGP)。BGP的鄰居關系通過路由設備上的手動配置實現(xiàn),鄰居實體之間通過傳輸層TCP(端口179)進行數據通信。運行BGP的兩臺設備之間會周期地發(fā)送19個字節(jié)的keep-alive消息,以此來維護鄰居間的狀態(tài)關系(默認周期為30秒)。在路由協(xié)議中,只有BGP使用TCP保障傳輸數據的可靠性。2.2OSPF
OSPF(Open Shortest Path First)是IETF組織開發(fā)的一個基于鏈路狀態(tài)的內部網關協(xié)議(Interior Gateway Protocol)。目前針對IPv4協(xié)議使用的是OSPF Version 2,針對IPv6協(xié)議使用OSPF Version 3,采用最短路徑SPF(Shortest Path First)算法。通過鏈路狀態(tài)通告LSA(Link State Advertisement)描述網絡拓撲,依據網絡拓撲生成一棵最短路徑樹SPT(Shortest Path Tree),計算出到網絡中所有目的地的最短路徑,進行路由信息交換。
在應用視頻業(yè)務的組播環(huán)境網絡中通常以組播形式(224.0.0.5)發(fā)送Hello報文和LSAck報文。對于LSU報文,通常以組播形式首次發(fā)送,以單播形式重傳。其中,224.0.0.5的組播地址為OSPF設備預留的IP組播地址,224.0.0.6的組播地址為OSPF DR預留的IP組播地址。2.3PIM-SM
PIM-SM(Protocol Independent Multicast-Sparse Mode,協(xié)議無關組播-稀疏模式)可以有效解決大型網絡以及用戶分散的場景中 “點到多點”的數據傳輸問題,使用戶能夠按需接收數據。
PIM-SM適用于網絡組成員相對比較稀疏、分布廣泛的大型網絡。PIM-SM假設網絡中所有主機均不需要接收組播數據,只有在主機明確提出需要接收組播數據時才會構建組播分發(fā)樹,向提出需求的主機轉發(fā)組播數據。相對于PIM-DM 模式,可以減小網絡中無效數據的轉發(fā)。
根據實現(xiàn)機制的不同,PIM分為以下兩種模式:①PIM-DM(Protocol Independent Multicast-Dense Mode,協(xié)議無關組播—密集模式);②PIM-SM(Protocol Independent Multicast-Sparse Mode,協(xié)議無關組播—稀疏模式)。
在PIM域中,路由器周期性地向所有PIM路由器(224.0.0.13)以組播方式發(fā)送PIM Hello報文(以下簡稱Hello報文),以發(fā)現(xiàn)PIM鄰居,維護各路由器之間的PIM鄰居關系,從而構建和維護SPT。
通過對以上3種協(xié)議分析,發(fā)現(xiàn)BGP鄰居關系的建立和維護報文通信都采用TCP協(xié)議承載,OSPF和PIM-SM鄰居關系的建立和維護都采用UDP協(xié)議報文承載。在ISO七層模型中,UDP和TCP都屬于傳輸層協(xié)議,唯一不同之處是UDP為不面向連接的一種不可靠傳輸協(xié)議,TCP屬于面向連接的可造傳輸協(xié)議。
如果網絡中運行設備存在二層環(huán)路,雖然環(huán)路的出現(xiàn)與PIM或OSPF建立鄰居的SVI接口不在同一VLAN,但網絡設備的路由控制層面信息都由設備的CPU進行處理。設備需要處理大量的廣播報文,導致整體性能下降。UDP本身沒有可靠的傳輸機制,所以會發(fā)生大量UDP報文丟棄情況,OSPF和PIM鄰居無法建立。TCP本身有重傳機制彌補,BGP只要在鄰居路由可達的情況下就能正常傳遞路由表。3解決方案