【计算机网络】网络层 : 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 的成员 发送给其它组播路由器 ;





五、组播路由选择协议


组播路由选择协议 :


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


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


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


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




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


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


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


③ 协议无关的组播


稀疏

密集


目录
相关文章
|
5月前
|
数据采集 算法 数据挖掘
模块化控制协议(MCP)在网络中增强智能体执行效率的研究
随着Web3技术的迅速发展,去中心化应用和智能体在各种领域的应用逐渐增多。MCP(Modularized Control Protocol,模块化控制协议)作为一种增强智能体执行能力的关键技术,为Web3场景中的智能体提供了更强的灵活性和可扩展性。本文将探讨如何利用MCP技术提升智能体在Web3场景中的执行能力,并通过实例代码展示其实现路径。
421 22
|
2月前
|
监控 负载均衡 安全
WebSocket网络编程深度实践:从协议原理到生产级应用
蒋星熠Jaxonic,技术宇宙中的星际旅人,以代码为舟、算法为帆,探索实时通信的无限可能。本文深入解析WebSocket协议原理、工程实践与架构设计,涵盖握手机制、心跳保活、集群部署、安全防护等核心内容,结合代码示例与架构图,助你构建稳定高效的实时应用,在二进制星河中谱写极客诗篇。
WebSocket网络编程深度实践:从协议原理到生产级应用
|
3月前
|
运维 架构师 安全
二层协议透明传输:让跨域二层协议“无感穿越”多服务商网络
简介:本文详解二层协议透明传输技术,适用于企业网工、运营商及架构师,解决LLDP/LACP/BPDU跨运营商传输难题,实现端到端协议透传,提升网络韧性与运维效率。
|
7月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
199 18
|
3月前
|
前端开发 安全 测试技术
Postman Mac 版安装终极指南:从下载到流畅运行,一步到位
Postman 是 API 开发与测试的高效工具,支持各类 HTTP 请求调试与团队协作。本文详解 Mac 版下载、安装步骤,助你快速上手。同时推荐一体化 API 协作平台 Apifox,集文档、调试、测试于一体,提升开发效率与团队协同能力。
|
6月前
|
iOS开发 MacOS 索引
在不受支持的 Mac 上安装 macOS Tahoe 26
在不受支持的 Mac 上安装 macOS Tahoe 26
384 0
在不受支持的 Mac 上安装 macOS Tahoe 26
|
9月前
|
Ubuntu Linux Shell
Ubuntu gnome WhiteSur-gtk-theme类mac主题正确安装和卸载方式
通过这个过程,用户不仅可以定制自己的桌面外观,还可以学习到更多关于 Linux 系统管理的知识,从而更好地掌握系统配置和主题管理的技巧。
1216 12
|
9月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
Oracle Java 关系型数据库
Mac电脑上安装和配置Flutter开发环境
Mac电脑上安装和配置Flutter开发环境
541 60