UDP的通讯方式

服务器:

(1)新建socket

(2)绑定bind

(3)等待客户端发信息过来 recvfrom

(4)可以获取到客户端的地址信息之后,大家就可以互相通讯了。

(5)通讯结束之后,关闭连接。

客户机:

(1)新建socket

(2)初始化好地址结构体

(3)直接发送:sendto

(4)等待服务器回信:recvfrom

(5)通讯结束之后,关闭连接

Udp与tcp的通讯类似。具体操作参考上一博客内容:https://blog.csdn.net/qq_37589838/article/details/81321108

其中:sendfo函数参数配置如下:

            sendto(int sockfd, const void *buf, size_t len, int flags,const struct sockaddr *dest_addr, socklen_t addrlen);
            第一个参数:是前面socket函数返回的fd。代表我们要和对应的客户端进行通讯。
            第二个参数:是我们要发送或者接收的buffer对应的地址
            第三个参数:对应是我们要读取或者写入的数据按字节计算的长度
            第四个参数:一般都是0;
            第五个参数:这个是我们要将数据发送到哪里?这个就是接收方的地址。这个参数一定要指定。
            第六个参数:就是前面这个地址的长度。
            返回值:成功的话,返回值的大小代表实际发送的字节数。这个返回值,和count不一定相等。如果出错的话,返回-1;

           recvfrom参数配置详情可在Linux下通过 man recvform 来查看

猜你喜欢

转载自blog.csdn.net/qq_37589838/article/details/81348919