网络编程——UDP的双向通信

本文介绍了UDP通信的特点,包括其无连接性及可能的数据丢失,并详细阐述了进行UDP双向通信的操作步骤,包括创建socket、bind、指定目标地址和端口,以及线程中的发送与接收操作。同时,提供了客户端的测试代码示例。
摘要由CSDN通过智能技术生成

一、特点

特点:UDP之间的通信不需要实现连接,直接发送数据,不稳定,容易丢包。

二、操作步骤

①创建socket套接字;

②使用bind函数绑定自己的IP地址和端口号;

③写入对方的IP地址和端口号;

④创建线程,实行发送或接收操作;

三、相关API

#include <sys/types.h>
#include <sys/socket.h>

ssize_t sendto(int sockfd, const void *buf, size_t len, int flags,
               const struct sockaddr *dest_addr, socklen_t addrlen);  //UDP的发送数据
//参数说明
//sockfd:文件描述符;
//buf:需要发送的数据;
//len:长度;
//flags:一般写0,表示可阻塞;
//dest_addr:发送给谁;
//addrlen:addr的长度;



#include <sys/types.h>
#include <sys/socket.h>

ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags,
                struct sockaddr *src_addr, socklen_t *addrlen);  //UDP的接收数据
//参数说明
//sockfd:文件描述符;
//buf:需要发送的数据;
//len:长度;
//flagsÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值