IP组播基础
背景
- 单播承载点到多点业务,会造成源端负担过大,大量重复的单播数据流占用链路带宽等问题
- 广播承载点到多点业务,能减轻源端负担,但是会带来新的问题
- 广播数据无法跨网段传递,传播范围受地域限制
- 数据的安全性无法保障,接入该二层网络中的终端都可以接收到该数据
- 无法计费
- 组播:组播数据会沿着组播分发树发送给同一组的用户,相同的数据流在每一条转发路径上只会存在一份
- 相对于单播:减轻了源端负担,和对链路带宽资源的占用
- 相对于广播:组播数据可以跨网段传递,能提高数据传输的安全性,且能实现计费
IP组播地址
- 范围224.0.0.0~239.255.255.255
- IANA对组播地址进行了进一步的细分
- 224.0.0.0~224.0.0.255:为其他协议预定的永久地址
- 224.0.0.1:代表所有节点(路由器和PC)
- 224.0.0.2:代表所有路由器
- 224.0.0.5:所有OSPF路由器都侦听
- 224.0.0.6:OSPF中的DR和BDR侦听
- 224.0.0.9:RIPv2路由器
- 224.0.0.13:PIM路由器(协议无关组播)
- 224.0.0.18:VRRP路由器
- 224.0.0.22:IGMPv3组播地址
- 公网的IP组播地址:全局有效
- 224.0.1.0~231.255.255.255
- 233.0.0.0~238.255.255.255
- ASM服务模型下的临时组播地址(任意源)
- 232.0.0.0~232.255.255.255
- SSM服务模型下的临时组播组地址(特定源)
- 私网IP组播地址:本地有效
- 239.0.0.0~239.255.255.255
- 224.0.0.0~224.0.0.255:为其他协议预定的永久地址
组播报文的格式
- 组播报文格式与单播报文格式基本类似
- SMAC+DMAC+SIP+DIP+载荷+FCS
- SMAC+SIP必须是单播地址
- DMAC+DIP必须是组播地址
- 目的组播IP地址通常已知
- 目的MAC地址通过目的IP地址映射得到
- IP组播MAC地址:
- MAC地址48bit,前24bit由OUI提供,后24bit厂商任意分配
- 单播MAC:第一字节第八比特位为0
- 组播MAC:第一字节第八比特位为1
- IPV4组播MAC地址
- IANA规定:
- 前24bit固定为02-00-5e
- 第25bit固定为0
- 后23bit从IVP4组播地址后23bit映射过来
- IANA规定:
- 问题:
- 因为ipv4组播地址前4bit固定1110,后23bit映射给IP组播MAC地址,中间5bit丢失,造成2^5(32)个IP组播地址映射成同一个IP组播MAC地址
- 预留给协议使用的组播MAC地址:前24bit固定为01-80-c2
- 01-80-c2-00-00-00:RSTP
- 01-80-c2-00-00-14:ISIS
- 01-80-c2-00-00-15:ISIS
- 预留给IP组播MAC地址:前24bit固定为01-00-5e
- IP组播MAC地址:
- SMAC+DMAC+SIP+DIP+载荷+FCS
IP组播网络架构
- 源端网络:组播源到第一跳组播路由器之间的网络,将组播流量发送到组播转发网络
- 组播转发网络:第一跳路由器到最后一跳路由器之间的网络,将组播流量从源端转发到相对应的接收者,运行了组播路由器协议(如:PIM、MSDP)的路由器的集合
- 接收者端网络:最后一跳路由器到组播接收者之间的网络,运行IGMP
两种组播服务模型
- ASM:组成员加入组播组后,接收任意源朝该组播组发送的组播数据
- SSM:组成员加入组播组后,只接受指定源朝该组播组发送的组播数据
RPF:反向路径转发
- 作用:解决组播转发发出的环路、次优、重复报文的问题
- 工作原理:
- 接收到组播数据流后,根据组播数据流的源IP地址查找单播路由表(RPF路由)
- 根据查找到的单播路由的而出接口和接收到该组播数据流的入接口进行比较
- 一致,则将该接口认定为RPF接口,添加到组播路由表的上游接口中,后续对于该组播流量,只会接收从该RPF接口接收到的组播流;如果不一致,则丢弃该组播数据
RPF路由的优选规则:
- 在依据组播源IP地址查找单播路由表时,该路由可能从IP单播路由、MBGP、组播静态路由表都学习到,选举成RPF路由的规则如下:
- 优选掩码最长的
- 优选优先级最高的(prefernce值);
- 组播静态路由>MBGP>单播路由
RPF接口
- 指的是接收到组播流的如接口与优选出的RPF路由的出接口一致的接口
组播路由表相的组成
- 用于指定组播数据流的转发
- 组表项
- (*,G):任意源组播路由表项
- (S,G):特定源组播路由表项
- 上游接口:每一个组播路由表项中有且只有一个,其实就是RPF接口,去往组播源最近的接口,用来接收组播流量
- 下游接口:连接存在组播接收者的接口,用来转发组播流量可以存在多个
- 组表项
组播分发树:MDT
- 是一棵无环、无次优且无重复保温的单向最短路径树
- 是通过RPF和组播路由协议计算生成的,以组播源为树根,组播组成员为叶子,组播路由器为节点的组播流量转发路径树
组播路由协议介绍
- PIM:协议无关组播,用于AS内生成组播分发树
- MBGP:组播BGP协议,用于AS间进行RPF检查
- MSDP:组播源发现协议,用于帮助生成AS间组播分发树
文章来源地址https://www.toymoban.com/news/detail-403095.html
文章来源:https://www.toymoban.com/news/detail-403095.html
到了这里,关于IP组播基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!