<h4></h4>
讯享网
目录
-
- 一.IP地址简介
- 二.广播的实现原理
- 三.广播的Server代码实现
-
讯享网
<ul><li>1.setsockopt:给socketfd开放广播权限</li><li>2.指定发送给Client的端口</li><li> <ul><li>说明:UDP广播的Server端为什么要指定Client的端口</li><li>具体实现</li></ul></li></ul></li><li>四.UDP之广播C/S模型</li><li>五.UDP之广播C/S模型代码</li><li> <ul><li>Server</li><li>Client</li></ul></li></ul></li></ul>
广播使用的特殊的IP地址:最后一位是255时的IP地址是给广播预留的IP地址,如:192.168.88.255

1.setsockopt:给socketfd开放广播权限
int setsockopt(int sockfd, int level, int optname,const void optval, socklen_t optlen);
2.指定发送给Client的端口
说明:UDP广播的Server端为什么要指定Client的端口
- 在TCP连接时,Server的端口号指定的,Client连接服务器需要指定Server的端口号(并且Client的端口号是随机获取的)
- 而在UDP传输数据时,端口号的设定却刚好与TCP连接时相反。为什么呢?
答:Server要发送数据给Client,而每个Client上有很多应用程序(但是并不是每个应用程序都需要接收到Server广播来的消息)。
因此Server端在发送消息时需要指定发送给Client的端口号。 - Server的端口需要设定么?
答:不需要,Server只是需要进行广播出去数据,不进行数据的接收—>因此Server的端口号可以随机获取。
具体实现
讯享网
3.sendto发送消息给绑定的端口
int ret=sendto(sock, smsg, strlen(smsg), 0, (sockaddr)&addrto, nlen);

Server
Client
讯享网
(59条消息) UDP之广播_JaweG-CSDN博客_udp广播



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