c/c++ UDP通讯

UDP通讯

1: 无连接的, 不需要反复的确认和握手等待, 根本不关心对方是否存在;
2: 不可靠,可能有丢包,和先发后到;
3: UDP通讯快速,占用系统资源少;
4: UDP提供作为传输层协议的最基本功能,将其他的交给用户自己来管理;


UDP服务端

1: 创建一个Socket: SOCKET svr = socket(AF_INET,SOCK_DGRAM,0);
2: 绑定地址 + 端口:
addr.sin_family = AF_INET;
addr.sin_port = htons(6000);
addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
int len = sizeof(sockaddr);
bind(svr,(sockaddr*)&addr,len);
3:recvfrom(svr,recvBuf,128,0,(sockaddr*)&addrClient,&len); 接收数据;
4:sendto(svr,sendBuf, send_len,0,(sockaddr*)&addrClient,len); 发送数据;
5:closesocket(svr);

这里写图片描述

Server


UDP客户端

1: 创建一个socket:SOCKET svr = socket(AF_INET,SOCK_DGRAM,0);
2: 绑定地址 + 端口: (可选)
addr.sin_family = AF_INET;
addr.sin_port = htons(6000);
addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
int len = sizeof(sockaddr);
bind(svr,(sockaddr*)&addr,len);
4:recvfrom(ClistSock, buff, 100, 0, (SOCKADDR*)&SrvAddr, &len); 接收数据;
5:发送数据,用函数sendto();
4: 关闭网络连接

这里写图片描述

Chient

猜你喜欢

转载自blog.csdn.net/qq_36482772/article/details/79884922