计算机网络:网络层 —— IP 多播技术

news2024/11/26 8:53:39

文章目录

    • 基本概念
      • IP多播地址和多播组
    • IP多播的类型
      • 硬件多播
      • 将IPv4多播地址映射为多播MAC地址

基本概念

多播(Multicast,也称为组播)是一种实现“一对多”通信的技术,允许一台或多台主机(多播源)发送单一数据包到多台主机(一次的,同时的),与传统单播“一对一”通信相比,多播可以极大地节省网络资源

  1. 在因特网上进行的多播称为IP多播,也称多址广播或组播,是一种允许一台或多台主机(多播源)发送单一数据包到多台主机(一次的,同时的)的 TCP/IP 网络技术。

  2. 多播的基础概念是“组”。一个多播组就是一组希望接收特定数据流的接收者,这个组没有物理或者地理的边界,组内的主机可以位于互联网或者专用网络的任何地方。

  3. 当发送方发送数据包时,该数据包会通过网络传输到所有加入该多播组的设备,而不是通过设备的单播地址。

  4. 当多播组的成员数量很大时,采用多播方式可以显著地减少网络中各种资源的消耗。

![[单播与多播.png]]

  • 左边部分显示的是传统的单播方法。在这种情况下,视频服务器必须向每一个订阅频道的用户单独发送一份视频流

    假设总共有 60 个用户,那么服务器就需要同时维持 60 条独立的连接,每一条连接都需要消耗一定的带宽资源。随着用户的增加,这种方式会导致服务器负担过重,网络带宽利用率低下。

  • 右边部分则是采用多播技术的情景。在这里,视频服务器只需要发送一次视频流,而路由器 R1、R2 和 R3 负责将这份流复制并分发给各个子网中的用户。这样一来,无论有多少用户观看同一个节目,服务器只需发送一份原始内容即可,大大减轻了服务器的压力并且提高了网络带宽的使用效率。

IP多播地址和多播组

在IPv4中,D类地址被作为多播地址。多播地址只能用作目的地址,而不能用作源地址

![[多播地址.png]]

用每一个D类地址来标识一个多播组,使用同一个IP多播地址接收IP多播数据报的所有主机就构成了一个多播组每个多播组的成员是可以随时变动的,一台主机可以随时加入或离开多播组。多播组成员的数量和所在的地理位置也不受限制,一台主机可以属于几个多播组

  • 非多播组成员也可以向多播组发送IP多播数据报。

  • 与 IP 数据报相同,IP 多播数据报也是“尽最大努力交付”,不保证一定能够交付给多播组内的所有成员。

  • IPv4 多播地址又可分为预留的多播地址(永久多播地址)、全球范围可用的多播地址以及本地管理的多播地址 [RFC 3330]

![[IPv4多播地址.png]]

IP多播的类型

IP 多播可以分为以下两种:

  1. 只在本局域网上进行的硬件多播
  2. 因特网上进行的多播

目前大部分主机都是通过局域网接入因特网的。因此,在因特网上进行多播的最后阶段,还是要把 IP 多播数据报在局域网上,用硬件多播交付给多播组的所有成员

硬件多播

硬件多播是一种在局域网(LAN)上实现多播通信的技术,它利用硬件(如网络接口卡)的特性来高效地将多播数据发送给多个接收者。

由于 MAC 地址(也称为硬件地址)有多播 MAC 地址这种类型,因此只要把 IPv4 多播地址映射成多播 MAC 地址,即可将 IP 多播数据报封装在局域网的 MAC 帧中,而 MAC 帧首部中的目的 MAC 地址字段的值,就设置为由 IPv4 多播地址映射成的多播 MAC 地址。这样,可以很方便地利用硬件多播来实现局域网内的IP多播

![[硬件多播.png]]

当给某个多播组的成员主机配置其所属多播组的IP多播地址时,系统就会根据映射规则从该IP多播地址生成相应的局域网多播MAC地址。

因特网号码指派管理局 IANA,将自己从IEEE注册管理机构申请到的以太网 MAC 地址块中从 01-00-5E-00-00-0001-00-5E-7F-FF-FF 的多播 MAC 地址,用于映射 IPv4 多播地址。这些多播 MAC 地址的左起前25个比特都是相同的剩余23个比特可以任意变化,因此共有 2 23 2^{23} 223

![[多播MAC地址.png]]

将IPv4多播地址映射为多播MAC地址

32比特的IPV4多播地址映射成48比特的多播MAC地址的方法:

![[将IPv4多播地址映射为多播MAC地址.png]]

  1. 前缀固定不变:IPv4 多播地址的前四位始终为 1110,表示这是一个多播地址。

  2. 剩余28位任意变化:IPv4 多播地址的第 5 位到第 32 位(共 28 位)可以任意变化。

  3. 映射规则

    • 将IPv4多播地址的低 23 位直接复制到 48 位的多播MAC地址的高 23 位。
    • MAC 地址的第 24 位设置为 0
    • MAC 地址的第 25 位到第 48 位设置为 0000.0001

由于 IP 多播地址可变化的 28 比特的前 5 个比特无法映射到 MAC 多播地址,这会造成IP多播地址与多播MAC地址的映射关系并不是唯一的。如果不同的IP多播地址之间的不同之处仅出现在不能映射的那5个比特,则这些IP多播地址会映射出同一个多播 MAC 地址。

![[将IPv4多播地址映射为多播MAC地址2.png]]

由于IP多播地址与多播MAC地址的映射关系不是唯一的,因此收到IP多播数据报的主机,还要在网际层利用软件进行过滤,把不是主机要接收的IP多播数据报丢弃。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2235126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Markdown编写适用于GitHub的README.md文件的目录结构

文章目录 [toc] 顶部1. 使用[TOC]自动生成2. VSCode中的插件3. 手搓目录目录相关资料本文相关代码一、概述1.1 基本概念1.2 两种处理模型(1)微批处理(2)持续处理 1.3 Structured Streaming和Spark SQL、Spark Streaming关系 二、编…

旧衣回收小程序:提高回收效率,扩大服务范围

近年来,旧衣回收作为一种新兴回收模式,逐渐走入了大众的生活中,在回收市场中形成了新的商业模式,也为大众带来了新的创业选择。 随着社会生活的快速发展,人们的生活水平不断提高,为旧衣市场发展提供了基础…

0-基于图的组合优化算法学习(NeurIPS 2017)(未完)

文章目录 Abstract1 Introduction2 图上的贪婪算法的通用表述3 表示:图嵌入3.1 Structure2Vec3.2 参数化 Q ^ ( h ( S ) , v ; Θ ) \widehat{Q}(h(S), v; \Theta) Q ​(h(S),v;Θ)4 Training: Q-learningAbstract 为NP-hard组合优化问题设计好的启发式或近似算法通常需要大…

python验证码滑块图像识别

文章目录 1、案例图片1、需求说明2、代码实现总结 1、案例图片 1、需求说明 python 3.10,写一个滑块验证码的自动化程序。需要一个opencv的函数,能准确的计算,在这同一张图片上,滑块形状和缺口形状的坐标位置及两个形状之间在X轴上的距离。请…

Spring AI 核心概念

SpringAI 核心概念 1. Models2. Prompts3. Prompt Templates4. Embeddings5. Tokens6. Structured Output7. Bringing Your Data & APIs to the AI Model7.1 Retrieval Augmented Generation7.2 Function Calling 1. Models AI 模型是用于处理和生成信息的算法&#xff0c…

从0开始学习Linux——文本编辑器

往期目录: 1、从0开始学习Linux——Linux简介&安装 2、从0开始学习Linux——搭建属于自己的Linux系统 我们通过前面教程的学习已经了解了什么是Linux,并且我们也定制安装了属于我们自己的一个Linux系统。从这个章节开始我们将开始学习如何去操作Linu…

外包干了三年,精神严重内耗。。。

前段时间我同事(做测试的一个妹子)跟我讲,感觉早上起来十分的疲惫,不想上班,问我们这是什么样的现象,其实有时候我也有这种感觉,虽然我卷,但我也是肉体凡胎啊!不是机器人…

华宇TAS应用中间件入围鲲鹏应用创新大赛2024全国总决赛

近日,鲲鹏应用创新大赛2024全国总决赛入围名单出炉。华宇TAS应用中间件经过区域赛、半决赛一路披荆斩棘,在众多优秀的解决方案中脱颖而出,成功入围全国总决赛。 这也表明华宇TAS应用中间件在方案创新性、技术领先性、商业前景、社会价值等方…

惊爆!内容创业新纪元:AI工作流助你打造自媒体帝国!

又是一个研究AI工作流的深夜。看着扣子商店里各种神奇的智能体,我不禁感叹技术的魔力。一个简单的工作流模板,居然能把过去需要一整天才能完成的工作,压缩到几分钟… 扣子模板 大家好,我是momo,一个专注教人使用AI工作流做自媒体的创业者。今天想和你分享一个能让内容创作效率…

史上最大应用层DDoS攻击 H2 Rapid Reset攻击研究

前言 2023年10月Cloudflare、Google、AWS等厂商公布了一种利用HTTP/2快速重置进行应用层DDoS攻击的0day漏洞(CVE-2023-44487)[1][2],即H2 Rapid Reset DDoS。Google宣传其监控到此种攻击峰值超过每秒3.98亿个请求,打破互联网历史最大应用层DDoS攻击记录…

饱和限幅器MATLAB和CODESYS平台下的实现

1、博途PLC限幅器(SCL代码) 博途PLC限幅器(SCL代码)-CSDN博客文章浏览阅读182次。本文详细介绍了博途PLC的限幅器功能,包括饱和限幅器的概念,并提供了完整的SCL编程代码示例,帮助读者理解和应用PLC限幅器。https://rxxw-control.blog.csdn.net/article/details/136029196 …

在 CSS 中,gap 是 布局容器(flex 或 grid)的属性。它用于设置容器内子元素之间的间距。

在 CSS 中,gap 是 布局容器(flex 或 grid)的属性。它用于设置容器内子元素之间的间距。以下是 gap 属性在不同布局中的应用: 1. 在 CSS Grid 布局中 gap 定义了网格行和列之间的间距。可以分别使用 row-gap 和 column-gap 设置行…

JavaWeb项目-----博客系统

一.设计数据库 1.创建数据库 create database if not exists java108_blog_system character set utf8; drop table if exists user; drop table if exists blog;2.创建博客列表 create table blog(blogId int primary key auto_increment,title varchar(20),content varcha…

一文读懂:AIOps 从自动化运维到智能化运维

今天跟大家聊一聊AIOps(人工智能运维) 为了应对企业面临着日益复杂的运营挑战,AIOps(人工智能运维)作为一种创新的方法应运而生,结合了人工智能和机器学习技术,来提升IT运营的效率和性能。 这…

从0开始学习Linux——文件目录

往期目录: 从0开始学习Linux——简介&安装 从0开始学习Linux——搭建属于自己的Linux虚拟机 从0开始学习Linux——文本编辑器 从0开始学习Linux——Yum工具 从0开始学习Linux——远程连接工具 上期教程我们学习了如何使用远程连接工具去连接Linux系统&#xff0…

C++入门基础知识140—【关于C++ 类构造函数 析构函数】

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于C 类构造函数 & 析构函数的相关内容…

MSC“名实之辩”:精准鉴定只为精准治疗

前 言 MSC是一群来源广泛、能够体外增殖分化的异质性细胞。MSC具有免疫调节、促进组织修复等作用,应用于多种疾病的治疗。由于科学进程、习惯等原因,MSC具有多种名称。自先秦以来,就有“名实之辩”,今日我们就讲一讲MSC的名称与…

零基础 Vue 入门:个人主页完整示例教程” “Vue 实战:构建简洁美观的个人主页界面” “从零开始使用 Vue 构建个人主页,包含详细代码解析”

效果图 博客教程:使用 Vue 构建简易个人主页界面 目录 前言项目结构和准备HTML 与 CSS 布局Vue 数据绑定和渲染功能实现总结 前言 本教程将带你逐步使用 Vue.js 创建一个简易的“个人主页”界面。通过学习该项目,你将掌握 Vue 的基本数据绑定、指令的…

(二)基于Bayes方法的道路分割

一、实验目的 1、实验目标 学习掌握Bayes定理(Bayes Theorem)的基本原理及推导过程,以及公式中的先验概率、条件概率、后验概率、相似度等概念。在MATLAB的概率分布函数基础上,通过编写程序,实现图像块内结果统计和序…

从新手到专家:7款电脑平面设计软件评测

平面设计在时尚、广告等多个领域扮演着重要角色,而创作出独特且富有创意的设计作品则需要依赖优秀的电脑平面设计软件。市场上的电脑平面设计软件众多,每款软件都有其独到之处。本文将为你推荐几款值得关注的电脑平面设计软件,并分析它们的特…