首页 > 其他分享 >IP组播基础

IP组播基础

时间:2024-12-26 17:30:59浏览次数:5  
标签:组播 IP 基础 接口 组播源 地址 转发 路由

点到多点业务:比如IPTV、视频会议等,可以使用组播、广播、单播承载,比如A,B,C都要收看视频X

单播会占用大量带宽,导致服务器压力极大

广播会发送给所有的终端,存在安全隐患

组播会避免上面两个方式的问题

IP组播基本概念

组播技术有效地满足了单点发送、多点接收的需求,实现了IP网络中点到多点业务数据的高效传送,能够大量节约网络带宽、降低网络负载

组播数据报文结构

1, 组播目的mac地址

2, 组播源mac地址

3, 组播源IP地址

4, 组播目的IP地址

IPV4组播地址

在范围224.0.0.0到239.255.255.255,作为组播报文的目的地址使用,不能作为源地址使用

IPV4组播报文的源地址字段为IPV4单播地址,可使用A、B、C类地址

组播MAC地址

IANA规定,IPv4组播MAC地址的高24位为0x01005e,第25位为0,低23位为IPv4组播地址的低23位

组播MAC地址标识了一组设备,这种MAC地址第1个字节的最低比特位为1

一个组播MAC地址所标识的一组设备有着共同的特点,那就是它们都加入了相同的组播组,这些设备将会侦听目的MAC地址为该组播MAC地址的数据帧

组播网络基本架构:

源端网络:将组播源产生的组播数据发送到组播网络

组播转发网络:形成无环的组播转发路径,该转发路径也称为组播分发树

成员端网络:让组播网络感知组播组成员位置与加入的组播组

组播中的成员:

组播源:组播流量的发送者,无需运行任何组播协议

组播接收者:接收组播流量的设备

组播组:用IP组播地址进行标识的一个集合,加入组播组的成员才能识别接收发往该组播组的流量

组播路由器:支持组播、运行组播协议的网络设备,交换机、防火墙也行,路由器只是代表

第一跳路由器:与组播源相连并且复制转发该组播源发出的流量的PIM路由器

最后一跳路由器:与组播组成员相连且负责向该组成员转发组播数据的PIM路由器

IGMP:因特网组管理协议。是TCP/IP协议族中负责IP组播成员管理的协议,用来在接收者和与其直接相邻的组播路由器之间建立、维护组播组成员关系

组播服务模型

1,ASM模型:

组成员加入到组播组以后,组成员可以接收到任意源发送到该组的数据

ASM可以在路由上配置针对组播源的过滤策略,允许或禁止来自某些组播源的报文通过(数据经过筛选)

ASM模型要求组地址必须整个组播网络中唯一,即同一时刻一个ASM地址只能被一种组播应用使用

2,SSM模型:

组成员加入到组播组后,组成员只会收到指定源发送到该组的数据

SSM模型对组地址不再要求全网唯一,但是要求同一个源上不同的组播应用使用不同的SSM地址来区分

组播数据转发原理

由于组播转发容易产生环路,次优,重复报文,所以组播路由表项除了目的网络和出接口外还需要添加组播源和入接口的信息,使得设备只转发从特定的入接口收到的组播数据

对于相同的组播源,设备通过RPF(反向路径转发)检查,确定设备上唯一的组播流量入接口

组播转发设备中含有组播路由表,其中有入接口和出接口的信息

RPF检查工作原理:

检查过程:

1, 组播数据到达设备时,设备读取组播数据源IP,查找PRF路由表,寻找组播源对应的出接口

2, 如果出接口与组播报文如接口不一致,就丢弃组播报文

3, 如果出接口与组播报文入接口一直,才会接收报文

RPF路由选举规则:

RPF路由可以从单播路由,MBGP路由、组播静态路由中选举

选举原则:

1. 掩码最长匹配
2. 如果三条路由的掩码一样,选择路由优先级最高的路由
3. 如果优先级也相同,组播静态路由>MBGP路由>单播路由
组播分发树:

是通过RPF机制与组播路由协议形成的无环无次优无重复的组播抓发路径

保证转发路径无环,无次优,无重复包

以组播源为根,组成员为叶子

以上均为个人学习笔记,总结于华为技术有限公司学习资料和网络平台资源

如有问题,谢谢指正

标签:组播,IP,基础,接口,组播源,地址,转发,路由
From: https://blog.csdn.net/lulinhao/article/details/144749234

相关文章

  • 速成黑客大佬?30天网络安全零基础自学宝典!新手必看
     很多人上来就说想学习黑客,但是连方向都没搞清楚就开始学习,最终也只是会无疾而终!黑客是一个大的概念,里面包含了许多方向,不同的方向需要学习的内容也不一样。网络安全学习路线&学习资源我给大家整理了一些网络安全的资料,大家不想一个一个去找的话,可以参考一下这些......
  • 「转」Windows端口转发管理脚本(支持ipv4+ipv6)
    将下面代码保存成.bat文件,[b]使用管理员运行。@echoofftitleWindowsIPv4/IPv6端口转发管理工具color0A:menuclsecho========================================echoWindowsIPv4/IPv6端口转发管理工具echo========================================echo1.查......
  • 【深度学习基础|知识概述】基础数学和理论知识中的概率与统计知识:概率与概率分布、最
    【深度学习基础|知识概述】基础数学和理论知识中的概率与统计知识:概率与概率分布、最大似然估计、损失函数的应用,附代码。【深度学习基础|知识概述】基础数学和理论知识中的概率与统计知识:概率与概率分布、最大似然估计、损失函数的应用,附代码。文章目录【深度学习基......
  • NOIP2024 邮寄
    Hellonoip2024惜字如下界合金csp已经忘干净了。只知道我不会贪心。主要是快忘干净了。差不多只记得有多糖。Day1晚上不死图腾炸了一个。Day-1临时补了几个板子高斯消元啥的。Day-2写了天天爱打卡,埋伏笔。Day1进考场前,看见几位故人,没看见fz的jcx。bro本校的都不让......
  • C#知识整理-文件处理(基础)
    C#中提供处理文件的类库集中在System和System.IO,所以在处理文件之前需要引入对应类库VisualStudio提供nuget来安装对应的包搜索System.IO并进行安装,安装前请先检查支持的版本varfolder="d:\\testfolder";varfile="d:\\testfolder\\test.txt......
  • Gin框架配置ip地址白名单教程
    在Gin框架中实现IP白名单,可以通过中间件的方式检查客户端的IP地址是否在白名单中。如果不在白名单中,返回拒绝访问的响应。以下是实现教程:实现步骤定义IP白名单创建一个列表存储允许访问的IP地址。编写中间件创建一个Gin中间件,用于拦截请求并检查客户端IP......
  • 零基础学黑客,该怎么学?
    前言经常有人问过这样一个问题黑客是真的这么厉害吗?就目前而言,在黑客游戏或影视作品中黑客所展示的能力与现实是相差无几的(黑客帝国此种类型除外)唯一的区别是影视作品中的主角能够瞬控电力系统,造成城市电力瘫痪。分分钟窃听遇到的任何人。在现实里,很有可能是一群衣......
  • 『NOIP2024』游记
    Day0在本校考,上午在刷板子,下午由于布置考场把我们都赶出去了,没事干只能和其他队友打篮球(没有进一个),晚上大概就是换了个小机房调整了一下就回家睡觉了,好像是\(23:00\)睡的。Day1早上\(7:30\)起的,感觉不是很清醒,遂骑车吹风来到学校。到门口发现进不去,找到了几个队友聊天,顺......
  • python基础知识(七)
    文章目录python网络编程socket对象方法示例pythonSMTP发送邮件python多线程_thread创建线程threading模块创建线程threading常用方法继承threading创建线程线程同步线程优先级队列(Queue)python网络编程Python中,我们用socket()函数来创建套接字,语法格式如下:so......
  • Python基础--conda使用
    miniconda下载,conda使用教程,配置conda镜像源,conda常用操作和配置镜像源_conda源配置-CSDN博客一、安装miniconda下载二、配置系统环境变量三、验证:condalist四、配置下载源1.查看默认源condaconfig--show-sources增加一个默认源清华源condaconfig--addchannelshttps://mir......