目录
一对多通信的应用需求
单播 vs 多播
多播路由器(Multicast Router)
IP 多播的一些特点
D 类 IP 地址与以太网多播地址的映射关系
IP多播需要两种协议
互联网组管理协议 IGMP
多播路由选择协议
两种多播路由选择方法
建议的IP多播路由选择协议
IP多播在互联网还没有大规模应用
一对多通信的应用需求
有许多的应用需要由一个源点发送到许多个终点,即一对多的通信。例如,实时信息的分发(如新闻、股市行情等),软件更新,视频会议,网络直播等。
随着互联网的用户数目的急剧增加,以及多媒体通信的发展,有更多的业务需要多播来支持。
单播 vs 多播
多播路由器(Multicast Router)
当多播组的主机数很大时,采用多播方式就可明显地减轻网络中各种资源的消耗
互联网范围的多播要靠路由器来实现,这些路由器必须增加能够识别多播数据报的软件
能够运行多播协议的路由器称为多播路由器(Multicast Router)
IP 多播的一些特点
在互联网的网络层进行的多播就叫作 IP 多播
使用多播组地址—— IP 使用 D 类地址支持多播。多播地址只能用于目的地址,而不能用于源地址。
任何主机(不一定是多播组成员)可以发送多播分组给一个多播组。
动态的组成员,能够支持任意多的组成员,主机能随时加入或离开多播组。
将 IP 多播地址映射成局域网硬件多播地址,可利用硬件多播功能实现局域网上的 IP 多播。
D 类 IP 地址与以太网多播地址的映射关系
互联网号码指派管理局 IANA 指派用于多播的以太网地址范围:从 01-00-5E-00-00-00 到01-00-5E-7F-FF-FF(共2^ 23 个地址)
D 类 IP 地址可供分配的有 28 位,在这 28 位中的前 5 位不能用来构成以太网硬件地址。
收到多播数据报的主机还要在IP层利用软件进行过滤,把不是本主机要接收的数据报丢弃
IP多播需要两种协议
当需要在互联网范围内跨越多个网络进行IP多播时,多播路由器必须根据IP多播地址将IP多播数据报转发到有该多播组成员的局域网。
为了使路由器知道多播组成员的信息,需要利用互联网组管理协议 IGMP(Internet Group Management Protocol)。
连接在局域网上的多播路由器还必须和互联网上的其他多播路由器协同工作,以便把多播数据报用最小代价传送给所有的组成员。这就需要使用多播路由选择协议。
互联网组管理协议 IGMP
IGMP 并非在互联网范围内对所有多播组成员进行管理的协议
IGMP 不知道 IP 多播组包含的成员数,也不知道这些成员都分布在哪些网络上
IGMP 协议是让连接在本地局域网上的多播路由器知道本局域网上是否有主机(严格讲,
是主机上的某个进程)参加或退出了某个多播组
加入多播组:当一台主机要加入某个多播组时,向本网络中的路由器发送一个IGMP成员报告报文。报告中包含要加入的多播组的地址。
监视成员变化:多播路由器会周期性地发送一个成员查询报文,若长时间没有收到某个多播组的成员报告则认为没有该组的成员。
离开多播组:当主机要退出一个多播组时,可主动发送一个离开组报文而不必等待路由器的查询。
多播路由选择协议
基本任务就是在多播路由器之间为每个多播组建立一个连接所有拥有该组成员的路由器的多播转发树。
针对不同的多播组,需要维护不同的多播转发树,而且必须动态地适应多播组成员的变化(这时网络拓扑并不一定发生变化)。
某个主机没有参加任何多播组,但它却可向任何多播组发送多播数据报。
另外,多播数据报会经过许多网络,但经过的这些网络中也不一定非要有多播组成员。
为保证覆盖所有组成员,多播树可能要经过一些没有组成员的路由器。
两种多播路由选择方法
基于源树多播路由选择:为一个多播组的每个源构建一棵多播转发树,该转发树通常由每个成员由
器到源的最短路径构成。
组共享树多播路由选择:在每个多播组中以中心路由器为根建立一棵连接所有成员路由器的多播转发树。组内所有源将多播分组通过单播IP隧道发送到中心路由器,再由中心路由器将多播分组在共享树上进行洪泛。
建议的IP多播路由选择协议
基于源树的路由选择协议
距离向量多播路由选择协议(Distance Vector Multicast Routing Protocol,DVMRP)
开放最短路径优先的多播扩展(Multicast Extensions to OSPF,MOSPF)
协议无关多播-稀疏方式(Protocol Independent Multicast-Sparse Mode,PIM-SM)
基于中心共享树的路由选择协议
基于核心的转发树(Core Based Tree,CBT)
协议无关多播-密集方式(Protocol Independent Multicast-Dense Mode,PIM-DM)
IP多播在互联网还没有大规模应用
尽管IETF努力推动着全球多播主干网Mbone的建设,至今IP多播在互联网上还没有得到大规模的应用
改变一个部署广泛并成功运行的网络层协议是一件极为困难的事情。目前IP多播还主要只应用在一些局部的园区网络、专用网络或者虚拟专用网络中
随着应用层多播技术的发展,许多视频流公司和内容分发公司通过构建自己的应用层多播覆盖网络来分发它们的内容(将在应用层讨论)