TCP/IP笔记之多播与广播

       三类IP地址:单播地址、广播地址和多播地址。本文总结一下广播和多播,广播和多播仅应用于UDP


单播、多播和广播

    单播:通常每个以太网帧发往单个目的主机,任何两个主机的通信不会干扰其他主机;

      多播:帧传送给属于多播组的多个主机;

      广播:一个主机向网上所有的主机发送帧。

广播

      四种广播地址。受限的广播:255.255.255.255,改地址用于主机配置过程IP数据报的目的地址,此时主机不知道它所在的网络掩码。任何情况下路由器都不转发目的地址为受限广播地址数据报。

      指向网络的广播:netid.255.255.255;

      指向子网的广播:跟子网掩码;

      指向所有子网的广播地址:跟指向子网的广播地址不一样。

多播

    使用广播的问题在于在增加了对广播数据不感兴趣主机的处理负荷。拿一个UDP广播为例,网内有50个主机,可能只有20个主机参与,如果是广播的话,其余30台主机就必须不得不处理这些广播信息。

      主机对信道传过来的帧过滤过程:(1)网卡查看信道传过来的帧,确定是否接受该帧,若接受传给驱动程序,通常网卡只接受那些目的地址为网卡物理地址或广播地址的帧。大多数网卡通过配置可接受多播帧。(2)设备驱动程序进行另外的帧过滤,检查帧类型中指定的协议类型(IP,ARP,RARP);(3)多播过滤,检测主机是否属于多播地址中说明的多播组;(4)网络层对IP地址的源地址和目的地址过滤;(3)传输层对端口号进行过滤,即没有相应的进程使用使用该端口丢弃该帧,并产生一个ICMP不可达报文。

      D类地址中如下格式为多播地址:


能够接收发往一个特定多播组地址数据的主机集合称为主机组。一个主机组(host group)一个主机组可跨越多个网络。主机的成员可随时加入或离开主机组。主机组对主机的数量没有限制,同时不属于该主机组的成员也可以先该主机组发送信息。一些多播地址被IANA确定为知名地址,它们被称为永久主机组。224.0.0.1代表“该子网内的所有系统组”。

     多播地址向以太网地址的转换:


     单个物理网络的多播是简单的。多播进程将目的 IP地址指明为多播地址,设备驱动程序将它转换为相应的以太网地址,然后把数据发送出去。这些接收进程必须通知它们的 IP层,它们想接收的发往给定多播地址的数据报,并且设备驱动程序必须能够接收这些多播帧。这个过程就是“加入一个多播组”(使用“接收进程”复数形式的原因在于对一确定的多播信息,在同一主机或多个主机上存在多个接收者,这也是为什么要首先使用多播的原因)。当一个主机收到多播数据报时,它必须向属于那个多播组的每个进程均传送一个复制。这和单个进程收到单播UDP数据报的UDP不同。使用多播,一个主机上可能存在多个属于同一多播组的进程。


IGMP

     Internet组管理协议( IGMP)。它让一个物理网络上的所有系统知道主机当前所在的多播组。IGMP封装在IP数据报中发送。

     多播路由器使用IGMP报文来记录与该路由器相连网络中组成员的变化情况。使用规则如下:

   (1)当第一个进程加入一个组时,主机就发送一个 IGMP报告。如果一个主机的多个进程加入同一组,只发送一个IGMP报告。这个报告被发送到进程加入组所在的同一接口上。
   (2) 进程离开一个组时,主机不发送 IGMP报告,即便是组中的最后一个进程离开。主机知道在确定的组中已不再有组成员后,在随后收到的 IGMP查询中就不再发送报告报文。
   (3)多播路由器定时发送 IGMP查询来了解是否还有任何主机包含有属于多播组的进程。多播路由器必须向每个接口发送一个 IGMP查询。因为路由器希望主机对它加入的每个多播组均发回一个报告,因此IGMP查询报文中的组地址被设置为0。

   (4)主机通过发送 IGMP报告来响应一个 IGMP查询,对每个至少还包含一个进程的组均要发回IGMP报告。

     多播路由器只关心组里面是否还有主机,而不关心组里有多少主机。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Modbus TCP/IPTCP/IP的区别在于Modbus TCP/IP是在TCP/IP协议之上运行的Modbus RTU协议的一个接口。它结合了通用、可扩展的全球物理网络(以太网)和通用网络标准(TCP/IP),使Modbus协议能够在以太网上进行数据交换。它提供了一个开放且可访问的网络,允许设备之间交换二进制数据块。该协议与现有的以太网基础设施完全兼容,并且对于支持TCP/IP套接字的任何设备都是简单易用的。 与此相反,TCP/IP是一种在网络中进行通信的协议套件,它包括传输控制协议(TCP)和Internet协议(IP)。而Modbus TCP/IP是基于TCP/IP协议的一种特定实现,它通过使用Modbus RTU协议的接口在以太网上运行。因此,Modbus TCP/IP是Modbus协议在以太网上的一种变体,它利用了TCP/IP的网络通信能力。 总结来说,Modbus TCP/IP是一种在以太网运行的Modbus RTU协议的接口,而TCP/IP是一种通用的网络通信协议套件。Modbus TCP/IP利用了TCP/IP的网络传输能力,使Modbus协议能够在以太网上实现数据交换。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Modbus RTU与Modbus TCP/IP的区别](https://blog.csdn.net/weixin_55393838/article/details/113949718)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值