2025年udp广播模式(udp socket广播)

udp广播模式(udp socket广播)p id main toc strong 目录 strong p 1 单播 广播 组播 的概念 1 单播 2 广播 3 多播 组播 2 广播 socket 编程 只能是 UDP 通信 3 多播 socket 编程

大家好,我是讯享网,很高兴认识大家。



 <p id="main-toc"><strong>         目录</strong></p> 

讯享网

1、单播 / 广播 / 组播 的概念

(1) 单播

(2) 广播

(3) 多播(组播)

2、广播 socket编程(只能是UDP通信)

3、多播 socket编程(只能是UDP通信)


(1) 单播

之前在进行UDP和TCP编程的时候,客户端把数据发送到指定IP地址,此时接收方只有一个,这种数据包发送方式称为“单播”。


讯享网

(2) 广播

如果是把数据发送某个局域网中的所有主机,这种数据包的发送方式称为“广播

  • 发送出去的数据会被 广播地址所在网段的所有主机接收
  • 每个局域网的最大主机地址代表该网段的广播地址
    • 以192.168.1.0 (255.255.255.0) 网段为例,192.168.1.255代表该网段的广播地址
  • 255.255.255.255 在所有网段中都代表广播地址。
    • 如果主机A向 255.255.255.255 发数据,那么当前局域网里的所有主机都会收到数据。

(3) 多播(组播)

如果是把数据发送给某个局域网中的一组IP地址,这种发送方式称为“多播”,这个组称为“多播组”,只有加入多播组的主机才能收到数据。

  • 广播是发给某一局域网中的所有主机。过多的广播会大量占用网络带宽,造成广播风暴,影响正常的通信。
  • 多播是一种折中的方式,既能发送给多个主机,又能避免象广播那样带来过多的负载

广播socket编程的侧重点在发送方(客户端),而且只有使用UDP协议才能广播。接收方的代码可以沿用单播的代码。发送方的数据发送步骤如下:

  • 创建用户数据报套接字
  • 套接字默认不允许广播数据包(因为可能引发广播风暴),需要使用 setsockopt设置属性
  • 目标地址(接收方地址) 指定为广播地址
  • 指定目标端口
  • 发送数据包
讯享网

多播socket编程的侧重点在接收方(服务端),接收方要创建一个多播组(类似于),然后把当前套接字加入到多播组中;而发送方发送数据的目标地址不是服务端的IP地址,而是多播组的IP地址。

  • 创建数据报套接字
  • 绑定IP地址和端口号
  • 创建多播组(类似于创建)
  • 将当前套接字加入到多播组(类似于加群)
  • 接收数据
 

小讯
上一篇 2025-05-22 13:31
下一篇 2025-06-06 20:05

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/164638.html