【计算机网络】网络层 : IP 组播 ( IP 数据报传输方式 | 组播 IP 地址 | 组播 MAC 地址 | IGMP 协议 | 组播路由选择协议 )

简介: 【计算机网络】网络层 : IP 组播 ( IP 数据报传输方式 | 组播 IP 地址 | 组播 MAC 地址 | IGMP 协议 | 组播路由选择协议 )

文章目录

一、IP 数据报传输方式

二、组播 IP 地址

三、组播 MAC 地址

四、IGMP 协议

五、组播路由选择协议





一、IP 数据报传输方式


IP 数据报传输方式 :


① 单播 : 发送数据到 单个目的主机 , 每个 单播报文 都有一个 单播 IP 地址 作为目的地址 ;


传输方式 : 是 点对点 传输方式 ;

弊端 : 发送者 与 每个接收者 之间都要 建立单独的数据信道 ;

② 广播 : 发送数据到 同一广播域 或 子网内所有主机 ;


传输方式 : 是 点对多点 传输方式 ;

弊端 : 最后在 子网中 , 会给无关主机发送不需要的数据 ;

③ 组播 : 网络中 某些用户 需要特定数据 , 发送者 只需要 发送一次 组播数据 , 通过 组播协议 , 为 组播数据包 , 建立 组播分发树 , 被传递的数据到达距离用户最近的路由器后 , 开始 复制 分发 ;


传输方式 : 是 点对多点 传输方式 ;

优势 : 提高 了 数据传送效率 ; 减少了 主干网 拥塞 的可能性 ;

组播组 主机 :

相同物理网络 : 组播组 中的主机 , 可以在 相同的物理网络 中 ( 默认状态 ) ;

不同物理网络 : 组播组 主机 也可以在 不同的物理网络 中 , 前提是 有 组播路由器 支持 ;

组播路由器 : 运行组播协议的路由器 ;





二、组播 IP 地址


组播 IP 地址简介 :


① 作用 : IP 组播地址 , 可以让 源主机 发送数据分组 给 一组目的主机 ;


② 组播组 IP 地址 : 属于 多播组 中的主机 , 被分配 组播组 IP 地址 ;


③ 组播地址范围 : 224.0.0.0 224.0.0.0224.0.0.0 ~ 239.255.255.255 239.255.255.255239.255.255.255 , 这是 D DD 类地址 , 每个 D DD 类地址表示一个组播组 ;


④ 目的地址 : 组播地址 只能当做 目的地址使用 ; 源地址 只能是 单播地址 ;




组播 特点 :


① 不可靠交付 : 组合数据报 使用 UDP 协议传输 , 提供 不可靠数据传输服务 ;


② 无差错报文 : 组播数据报 不产生 ICMP 差错报文 ;


③ 组播地址特例 : 不是所有的 D DD 类地址 , 都可以作为组播地址 ;




组播分类 :


因特网组播 : 路由器之间的组播 ; 涉及到 IGMP 协议 和 组播路由选择协议 ;

硬件组播 : 子网内的组播 ;





三、组播 MAC 地址


组播 MAC 地址 : 组播 IP 地址 需要 使用 相应的 组播 MAC 地址 , 在本地网络中传输实际的数据帧 ;


① MAC 地址 : 由 6 66 个字节组成 ;


② 组播 MAC 地址 组成 : “01-00-5E” 十六进制数 ( 3 字节 ) + “0” + IP 组播地址后 23 2323 位


image.png


③ 组播 MAC 地址范围 : 01-00-5E-00-00-00 ~ 01-00-5E-7F-FF-FF ;


④ 数据报过滤 : 主机收到 多播 数据报后 , 在 使用软件对 IP 进行过滤 , 将不属于本主机的数据报丢弃 ;






四、IGMP 协议


IGMP 协议 :


全称 : 网际组管理协议 ;


作用 : IGMP 协议 让 路由器 知道 本局域网 内的主机 , 是否 参加 / 退出 了 某个组播组 ; 如 : 小王 进入了 某主播直播间 , 那么小王的手机参加了组播组 ;


IGMP 协议在 TCP / IP 协议栈中的位置 : 处于 网络层 上层 , ICMP 与 IGMP 都使用 IP 数据报 传递报文 ;




image.png


IGMP 工作流程 :


① 第一阶段 : 加入组播组 ;


加入组播组 : 主机 向 组播组 的 组播地址 发送 IGMP 报文 , 声明自己成为该组的成员 ;


组播路由器更新数据 : 本地组播路由器 收到 IGMP 报文后 , 利用 组播路由选择协议 , 将组播组 成员关系发送给 因特网上的 其它组播路由器 ;


② 第二阶段 : 定期轮询组播组成员 ;


周期询问 : 本地组播路由器 每隔一段时间 , 询问 本地局域网的 组播组 1 11 的主机 A AA , 询问该 主机 A AA 是否是 组播组 1 11 成员 ;

如果 主机 A AA 是组播组 1 11 成员 : 如果有主机 A AA 对 组播组 1 11 相应 , 组播路由器 认为 该组播组 1 11 是 活跃的 ;

如果 主机 A AA 不是组播组 1 11 成员 : 如果没有主机响应 , 组播路由器 认为 本网络上没有 组播组 1 11 的成员 , 不再将本组的 A AA 主机当做组播组 1 11 的成员 发送给其它组播路由器 ;





五、组播路由选择协议


组播路由选择协议 :


① 目的 : 找出 以 源主机 为 根节点 的 组播转发树 ;


② 树型结构作用 : 可以避免 组播数据报 在网络上兜圈子 ;


③ 不同多播组 : 不同的多播组对应 不同的 多播转发树 ;


④ 相同多播组 : 相同的多播组 , 源点 ( 组播数据报发送站点 ) 不同 , 其多播转发树也不同 ;




常用的 组播组路由选择协议 算法 :


① 基于链路状态的路由选择


② 基于 距离-向量 的路由选择


③ 协议无关的组播


稀疏

密集


目录
相关文章
|
8天前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
27 4
|
10天前
|
网络协议 定位技术 网络架构
IP 路由:网络世界的导航仪
IP 路由:网络世界的导航仪
23 3
|
18天前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
【10月更文挑战第27天】计算机主机网关的作用类似于小区传达室的李大爷,负责将内部网络的请求转发到外部网络。当小区内的小不点想与外面的小明通话时,必须通过李大爷(网关)进行联系。网关不仅帮助内部设备与外部通信,还负责路由选择,确保数据包高效传输。此外,网关还参与路由表的维护和更新,确保网络路径的准确性。
40 2
|
27天前
|
存储 缓存 Ubuntu
配置网络接口的“IP”命令10个
【10月更文挑战第18天】配置网络接口的“IP”命令10个
48 0
|
3月前
|
NoSQL 数据可视化 Redis
Mac安装Redis
Mac安装Redis
76 3
|
2月前
|
iOS开发 MacOS Windows
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
|
17天前
|
开发工具 iOS开发 开发者
「Mac畅玩鸿蒙与硬件2」鸿蒙开发环境配置篇2 - 在 Mac 上安装 DevEco Studio
本篇将专注于如何在 Mac 上安装鸿蒙开发工具 DevEco Studio,确保开发环境能够顺利搭建。完成安装后,可以正式开始鸿蒙应用的开发工作。
62 1
「Mac畅玩鸿蒙与硬件2」鸿蒙开发环境配置篇2 - 在 Mac 上安装 DevEco Studio
|
1月前
|
机器学习/深度学习 Python
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
本篇将详细介绍如何在Mac系统上安装和配置Anaconda,如何创建虚拟环境,并学习如何使用 `pip` 和 `conda` 管理Python包,直到成功运行第一个Python程序。通过本篇,您将学会如何高效地使用Anaconda创建和管理虚拟环境,并使用Python开发。
65 4
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
|
1月前
|
IDE 开发工具 iOS开发
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
本篇将详细介绍如何在Mac系统上安装Python,并配置Python开发环境。内容涵盖Python的安装、pip包管理工具的配置与国内镜像源替换、安装与配置PyCharm开发工具,以及通过PyCharm编写并运行第一个Python程序。通过本篇的学习,用户将完成Python开发环境的搭建,为后续的Python编程工作打下基础。
180 2
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
|
1月前
|
iOS开发 MacOS Python
【10月更文挑战第1天】「Mac上学Python 1」入门篇1 - 安装Typora与Markdown编辑技巧
本篇将详细介绍如何在Mac系统上安装Typora这款简洁高效的Markdown编辑器,并学习Markdown常用语法。通过本篇,用户能够准备好记录学习笔记的工具,并掌握基本的文档编辑与排版技巧,为后续学习提供便利。
149 1
【10月更文挑战第1天】「Mac上学Python 1」入门篇1 - 安装Typora与Markdown编辑技巧