广播,多播,IGMP:网际组管理协议

1.概述

     IP有三种地址:单播地址, 广播地址,多播地址。
     广播和多播仅应用于UDP。
     每个以太网帧包含源主机和目的主机的以太网地址。通常每个以太网帧发往单个目的主机,目的地址指明单个接收接口,因而称为单播。
     一个主机要向网上的所有其他主机发送帧,就是广播。
     一个主机要向网上的多个主机发送帧,就是多播。
2.广播
  • 受限的广播:受限的广播地址是255.255.255.255。该地址用于主机配置过程中IP数据报的目的地址。主机可能还不知道它所在的网络的网络掩码,甚至连它的IP都不知道。
  • 指向网络的广播:指向网络的广播地址是主机号全为1的地址。A类网络广播地址为netid 255.255.255.其中netid为A类的网络的网络号。
  • 指向子网的广播:指向子网的广播地址为主机号全为1且有特定子网号的地址,作为子网直接广播地址的IP地址需要了解子网的掩码。
  • 指向所有子网的广播:指向所有子网的广播地址的子网号及主机号为全1。

3.多播

     IP多播提供两类服务:
          1)向多个目的地址传送数据
          2)客户对服务器的请求(如BOOTP协议)
     多播组地址:
    
     多播组地址包括为1110的最高4bit和多播组号。范围从224.0.0.0到239.255.255.255。能够接收一个特定多播地址数据的主机集合称为主机组,一个主机组可以跨越多个网络。
     eg. 224.0.0.1 代表“该子网内所有的系统组”,224.0.0.2代笔“该子网内的所有路由器组”。多播地址224.0.1.1用作网络时间协议NTP,224.0.0.9用作RIP-2。
     多播组地址到以太网的转换:
     IANA拥有一个以太网地址块,即高24bit为00:00:5e。IANA将其中的一半分配为多播地址。任何一个以太网地址的首字节必须是01,意味着IP多播相对应的以太网地址范围从01:00:5e:00:00:00到01:00:5e:7f:ff:ff
     D类IP地址到以太网多播地址的映射如图所示:
     由于多播组号中的最高5位在映射过程中被省略,因此每个以太网多播地址对应的多播地址组不唯一的。既然地址映射不唯一,那么设备驱动程序或者IP层就必须对数据报进行过滤。
     单个物理网络的多播是简单的。多播进程将目的IP地址指明为多播地址。设备驱动程序将它转换为相应的以太网地址,然后把数据发送出去。
 
4.IGMP:网际组管理协议
     IGMP用于支持主机和路由器进行多播的网际组管理协议。ICMP报文格式如下,
 
     IGMP类型为1说明是由多播路由器发出的查询报文,为2说明是主机发出的报告报文。
  • IGMP的报告和查询
    • 当第一个进程加入一个组时,主机就发送一个IGMP报告。如果一个主机的多个进程加入同一组,只发送一个IGMP报告。这个报告被发送到进程加入组所在的同一接口上。
    • 进程离开一个组时,主机不发送IGMP报文
    • 多播路由器定时发送IGMP查询来了解是否还有任何主机包含有属于多播组的进程。
    • 主机通过发送IGMP报告来响应一个IGMP查询,对每个至少包含一个进程的组均要发回IGMP报告。
 
 

广播,多播,IGMP:网际组管理协议的更多相关文章

  1. TCP/IP详解学习笔记(9)-- 广播,多播,IGMP:网际组管理协议

    1.概述      IP有三种地址:单播地址, 广播地址,多播地址.      广播和多播仅应用于UDP.      每个以太网帧包含源主机和目的主机的以太网地址.通常每个以太网帧发往单个目的主机,目 ...

  2. IGMP Internet组管理协议 未完

    一.IGMP Internet组管理协议 2.IGMP v2 3.IGMP三版本比较 4.1.1.4 IGMP v2 与 IGMP v1 的兼容 5.IGMP窃听(IGMP Snooping) IGM ...

  3. IGMP 因特网组管理协议

    IGMP(Internet Group Management Protocol)作为因特网组管理协议,用于多播.     与ICMP一样, IGMP也被当作 IP 层的一部分,IGMP报文也通过IP数 ...

  4. TCP/IP IGMP:Internet组管理协议

    1.概述 IGMP协议,让一个物理网络上的所有系统知道主机所在的多播组,ICMP作为IP层的一部分,通过IP数据报进行传输,有固定的报文长度.通过IP首部协议字段值为2指明 类型为1说明是多播路由器发 ...

  5. TCP/IP详解 卷一(第十三章 IGMP:Internet组管理协议)

    本章将介绍用于支持主机和路由器进行多播的Internet组管理协议(IGMP) 它让一个物理网络上的所有系统知道主机当前所在的多播组.多播路由器需要这些信息以便知道多播数据报应该向那些接口转发. 跟I ...

  6. 《TCP/IP详解 卷一》读书笔记-----广播&多播&IGMP

    1.广播和多播都只适用于UDP,因为TCP是面向连接的,需要将两台主机的两个进程绑定在一起,即IP地址和端口对 2.通常,网卡能看到网络中的每一个数据帧,但是往往它只接受目的地址与自己MAC地址相同的 ...

  7. 计算机网络之网络层IP组播(IGMP、组播路由选择协议、组播地址)

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/105318560 学习课程:<2019王道考研计算机网络> 学习目的 ...

  8. HCNP Routing&Switching之组播技术-组播协议IGMP

    前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...

  9. UDP:rfc768/广播和多播/IGMP

    封装情况:

随机推荐

  1. asp.net webform生命周期

  2. 关于Android开发中导出jar包后的资源使用问题解决

    我们经常遇到一个需求,就是给别人使用我们工程的时候,为了能够屏蔽代码,把代码封装成jar包提供给第三方使用,但是这样我们的资源文件怎么给对方用呢? 其实并不用这么的复杂,下面就介绍一下具体的方法 一, ...

  3. nodejs开发aspnet5项目

    结合nodejs开发aspnet5项目 1.安装kvm   官方教程地址:https://github.com/ligershark/Kulture 打开 powershell命令窗口,找不到可以在开 ...

  4. selenium之多线程启动grid分布式测试框架封装(一)

    一.设计思路 在国内市场上,IE内核的浏览器占据了绝大部分的市场份额,那么此次框架封装将进行IE系列的浏览器进行多线程并发执行分布式测试的封装. 运行时主进程与多线程关系如下:

  5. C#秘密武器之扩展方法

    原文:C#秘密武器之扩展方法 为何要用扩展方法? 作为一个.NET程序猿,我们经常要跟.net自带类库或者第三方dll类库打交道,有时候我们未必能够通过反编译来查看它们的代码,但是我们通常需要给它们扩 ...

  6. Google Summer of Code 建议被接收的5个技巧

    Google Summer of Code 建议被接收的5个技巧 本文翻译自:http://www.di.ens.fr/~baghdadi/TXT_blog/5_advices_to_get_your ...

  7. .net使用cefsharp开源库开发chrome

    .net使用cefsharp开源库开发chrome 离上篇写介绍pc端的混合开发和为什么以cefsharp入手研究混合开发已经有好几天,一直忙,抽不出时间继续写怎么搭建cefsharp开发环境.其实没 ...

  8. linux下的watch命令

    linux下的watch命令 在linux下,watch是周期性的执行下一个命令,并全屏显示执行结果. watch [-dhvt] [-n <seconds>] [--difference ...

  9. C# TextBox实现全选

    A. 设置全局变量: 1.定义了个全局变量放本次点击的textbox的名字,默认为空. 2.textbox的Enter事件里SelectAll()一下 3.Click事件里判断全局变量是否是该text ...

  10. 查看SQL SERVER 加密存储过程,函数,触发器,视图

    原文:查看SQL SERVER 加密存储过程,函数,触发器,视图 create  PROCEDURE sp_decrypt(@objectname varchar(50))ASbeginset noc ...