天天看點

IP 視訊會議中的多點傳播實作

清華同方應用資訊系統本部 劉松林

  近年來,基于IP的視訊會議在交通等行業廣泛得到應用,同傳統的H.323視訊會議系統(由MCU中心控制)相比,IP的視訊會議具有下面優點:

  保證音視訊流占用網絡通道更為合理、有效。

  網絡資源充分利用,可使用高清晰度占用帶寬資源較大的MPEG2編解碼标準,展現優質圖像和動感細節。

  系統設計與圖像标準無關,可相容MPEG-4或其它随時出現的新編解碼器産品。

  由于不存在音視訊流交換的瓶頸,控制點數不受限制,使得造價較低,系統規模擴容能力強。

  IP視訊會議系統是通過多點傳播實作的,是以在IP視訊會議系統中,多點傳播的合理設計是非常關鍵的,本人結合工程執行個體,對基于Cisco網絡裝置的多點傳播實作做一些介紹:

  一、網絡拓撲結構簡介

  網絡的結構分三層結構:由核心層、彙聚層和接入層組成。

  核心層由5個核心節點(每個核心節點配置一台 路由交換機CiscoCatalyst6509)構成,通過千兆光纖,以不完全網狀結構互連。

  彙聚層由53個節點(每個節點配置一台路由交換機CiscoCatalyst4006),根據地理位置的不同,通過千兆光纖,分别與5個核心節點以星型方式連接配接。

  接入層根據具體機關資訊點的數量和業務需求,分别采用CiscoCatalyst3524、3548等,以百兆或千兆光纖連接配接到彙聚層。

  二、多點傳播位址的規劃

  IPMulticast位址為D類位址,位址範圍224.0.0.0-239.255.255.255,并将D類位址劃分為本地連結多點傳播位址、預留多點傳播位址、管理權限多點傳播位址

  本地連結位址:224.0.0.0~224.0.0.255,用于 區域網路,路由器不轉發屬于此範圍的IP包,本地連結位址配置設定如下:

  224.0.0.1–在本地子網的所有系統

  224.0.0.2–在本地子網的所有路由器

  224.0.0.5–OSPF 路由器

  224.0.0.6–OSPF 指定路由器

  224.0.0.9–RIPv2 路由器

  224.0.0.10–IGRP 路由器

  224.0.0.13–PIMv2 路由器

  224.0.0.22–IGMPv3

  預留多點傳播位址:224.0.1.0~238.255.255.255,用于全球範圍或網絡 協定,網絡範圍位址(224.0.1.0–224.0.1.255)配置設定如下:

  224.0.1.39–Cisco-RP-Announce (Auto-RP)

  224.0.1.40–Cisco-RP-Discovery (Auto-RP)

  管理權限位址:239.0.0.0~239.255.255.255,組織内部使用,用于限制多點傳播範圍;

  本工程中多點傳播位址采用了管理權限位址,在管理權限位址範圍内,定義了本組織(Organization-local)及本場所(Site-local)的多點傳播位址。

  本組織的位址範圍:239.8.0.0–239.8.126.255– 全局應用

  本場所的位址範圍:239.8.128.0–239.8.255.255– 本地應用

  三、多點傳播路由的選擇

  多點傳播路由我們選擇了協定無關多點傳播(ProtocolIndependentMulticast:PIM),顧名思義,PIM不依賴于某一特定單點傳播 路由協定,它可利用各種單點傳播路由協定建立的單點傳播路由表完成反向路徑轉發RPF(Reversepath forwarding)檢查功能,而不是維護一個分離的多點傳播路由表實作多點傳播轉發。由于PIM無需收發多點傳播路由更新,是以與其它多點傳播協定相比,PIM開銷降低了許多。PIM的設計出發點是在Internet範圍内同時支援最短路徑樹SPT和共享樹,并使兩者之間靈活轉換,因而集中了它們的優點提高了多點傳播效率。PIM定義了兩種模式:密集模式(Dense-Mode)和稀疏模式(Sparse-Mode)

  1.密集模式(Dense-Mode)

  PIM-DM密集模式協定,采用了“擴散/剪枝”機制。同時,假定帶寬不受限制,每個路由器都想接收多點傳播資料包。PIM-DM采用反向路徑轉發RPF動态建立最短路徑樹SPT。

  該模式适合于下述幾種情況:規模較小的高速網絡;多點傳播源和接收者比較靠近,發送者少,接收者多;多點傳播資料流比較大且比較穩定。

  2.稀疏模式(Sparse-Mode)

  PIM-SM與基于“擴散/剪枝”模型的根本差别在于PIM-SM是基于顯式加入模型,即接收者向集合點RP發送加入消息,而路由器隻在已加入某個多點傳播組輸出接口上轉發那個多點傳播組的資料包。

  PIM-SM采用共享樹進行多點傳播資料包轉發。每一個組有一個集合點(RendezvousPoint:RP),多點傳播源沿最短路徑向RP發送資料,再由RP沿最短路徑将資料發送到各個接收端。PIM-SM主要優勢之一是它不局限于通過共享樹接收多點傳播資訊,還提供從共享樹向SPT轉換的機制。

  由于工程網絡規模較大,視訊源多,是以選擇了PIM-SM稀疏模式。

  三、集合點RP的選擇

  由于視訊源大都集中在核心層,是以RP選擇在核心路由裝置上,從網絡的可靠性、可用性等方面綜合考慮,選用5個核心裝置為RP,通過CiscoAnycastRP技術可實作負載均衡及備援,Multicast Source Discovery Protocol (MSDP)是實作Anycast RP的關鍵協定,MSDP容許RP 共享活動源資訊。

  在AnycastRP環境,兩個或多個RP在Loopback接口配置相同的 IP位址。AnycastRP loopback位址應當是32位掩碼的主機位址。 IP 路由将自動選擇最好的RP。Anycast RP提供了IP Multicast的快速切換(幾秒内)及負載均衡。

  所有彙聚層的交換機CiscoCatalyst4006都配置10.6.2.1為它們的RP位址。配置如下:

  router(config)#ippimrp-address10.6.2.1

  四、二層環境中的多點傳播設計(IGMP-SnoopingandCGMP)

  IGMP-Snooping運作于二層交換機,IGMP-Snooping需要LAN交換機檢查某些三層資訊(IGMPjoin/leave資訊)。當交換機看到IGMP主機報告加入某個組,交換機增加主機的端口号到相應的多點傳播表項。當交換機看到IGMP主機報告離開某個組,交換機删除主機的端口号到相應的多點傳播表項。因為IGMP控制資訊為多點傳播包,在二層不能将它從多點傳播資料中分開。運作IGMP-Snooping的交換機必須檢查每一個多點傳播資料包,決定它是否含相關的IGMP控制資訊。Catalyst交換機使用ASIC支援IGMP-Snooping。

  CiscoGroupManagementProtocol (CGMP)是Cisco開發的協定,我們必須在路由器及二層交換機上配置CGMP。

  為了使CGMP用戶端(交換機)對實際的IGMPleave資訊作出響應,我們需要在二層 交換機配置:

  switch(config)#cgmpleave-processing

  由于在接入層,大部分機關使用了CiscoCatalyst二層交換機,也有部分機關使用了其他廠家的二層交換裝置,是以在接入層,根據使用者的裝置情況,分别選擇二層多點傳播協定IGMP-Snooping或 CGMP

  五、Non-RPF流量

  路由器丢棄所有在non-RPF接口收到的multicast包。如果在一個子網中有兩個路由器,DR将轉發負載,non-DR将在其VLAN接口接收到負載,此負載将不能通過RPF的檢查,将丢棄。

  RACL在VLAN接口必須僅允許本地源的multicast流量。‘noipunreachables’也必須配置在此接口。

  為了在non-DR路由器上禁止non-RPF流量,配置如下:

  interfaceVLANX

  ipaccess-group100in

  noipunreachables

  access-list100permitip w.x.y.z 0.0.0.255 any – 本地子網位址

  access-list100permitip any 224.0.0.0 0.0.0.255

  access-list100permitip any 224.0.1.0 0.0.0.255

  access-list100deny ip any 224.0.0.0 15.255.255.255

  如果路由交換機的 IOS版本在12.1(8)E/12.1(5)EX或之後的版本,可支援ACL-basedRPF過濾,ACL-based RPF過濾利用硬體(TCAM)實作。隻需配置:mls ip multicast stub即可。工程中的路由交換機IOS 版本都滿足上述條件,是以采用硬體的過濾方法。

  六、流量控制

  流量控制包括定義範圍邊界–“ipmulticastboundary”和定義TTL範圍–“ip multicast ttl-threshold”兩種方法。

  範圍邊界—“ipmulticastboundary”用于配置一個範圍邊界,許可或拒絕在 通路控制清單ACL中的多點傳播組位址。配置指令如下:

  interface

  ipmulticastboundary

  TTL範圍--“ipmulticastttl-threshold” 用于配置TTL的門限,任意小于TTL值的包被丢棄。配置指令如下:

  ipmulticastttl-threshold

  InterfaceGigabitEthernet0/1

  ipmulticastttl-threshold8

  七、管理

  為使網管工作站檢測、管理多點傳播資訊流,需要SNMPtraps能夠發送IPMulticast, MSDP 及PIM 資訊到 SNMP伺服器,二層交換機激活 IGMP traps。配置指令如下所示:

  snmp-serverenabletrapsipmulticast

  snmp-serverenabletrapsmsdp

  snmp-serverenabletrapspim

  八、小結

  對上述工程中多點傳播的實作,歸納在IP視訊會議的環境中多點傳播的實施,需要注意的要點如下:

  為不同類型和帶寬的多點傳播應用配置設定管理權限多點傳播位址(AdministrativelyScopedAddresses)

  盡可能使用AnycastRP,第二優先的選擇是Auto-RP

  選擇IGMP-Snooping或CGMP

  確定正确的RP及Multicat源被使用

  了解并配置non-RFP流量的硬體過濾

  使用Multicast邊界(boundaries)控制multicast流

  使用SNMPtraps記錄 multicast事件

----《通信世界》  

繼續閱讀