网络编程
jiang_2018
这个作者很懒,什么都没留下…
展开
-
C语言TCP socket编程
C语言TCP socket编程TCP 服务器步骤如下: - 1.创建等链接套接字fd=socket() - 2.绑定待链接套接字bind(fd,地址和端口) - 3.监听套接字listen(fd) - 4.等待客户端连接connfd=accept(fd) 3次握手 - 5.与客户端传输数据read(connfd)/write(connfd) - 6.与客户端断开连接close(f...原创 2018-04-06 14:53:00 · 2616 阅读 · 0 评论 -
C语言UDP socket编程
C语言UDP socket编程UDP 服务器步骤如下: - 1.创建等链接套接字fd=socket() - 2.绑定待链接套接字bind(fd,服务器ip和端口) - 3.等待信息recvfrom(fd,对端地址)UDP 客户端步骤如下: - 1.创建待连接套接字fd=scoket() - 2.发送信息sendto(fd,服务器ip和端口)UDP服务器int main(i...原创 2018-04-06 15:26:52 · 16687 阅读 · 0 评论 -
socket编程学习---(一)基本术语
ipv4套接口地址结构struct sockaddr_in{uint8_t sin_len;sa_family_t sin_family; in_port_t sin_port; //2 bytestruct in_addr sin_addr; //4 bytechar sin_zero[8];};通用套接口地址结构struct sockaddr{uint8...原创 2018-04-22 23:03:17 · 388 阅读 · 0 评论 -
socket编程学习---(二)基本API
socket 函数功能:创建一个套接字 原型int socket(int domain ,int type , int protocol);domain :指定协议族 type:指定socket类型 protocol:协议类型 返回值:成功返回非负整数,失败返回 -1bind 函数功能:绑定一个本地地址到套接字 原型int bind(int sock...原创 2018-04-22 23:52:50 · 154 阅读 · 0 评论 -
socket编程学习---(三)
int on = 1;setsockopt(listenfd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof(on));原创 2018-04-23 20:50:33 · 190 阅读 · 0 评论 -
socket编程学习---(四)粘包问题readn writen
粘包问题本质要在应用层维护消息与消息边界问题 1.定长包 2.包尾加\r\n 3.包头加上包体长度(包头定常,比如4字节) 4.更复杂的应用层协议readnssize_t readn(int fd,void *buf,size_t count){ size_t nleft = count; //剩余字节数 ssize_t nread; //接收到的字节...原创 2018-04-23 21:37:07 · 497 阅读 · 0 评论 -
socket编程学习---(五)
MSG_PEEK 处理粘包问题ssize_t recv_peek(int sockfd ,void *buf ,size_t len){ while(1) { int ret = recv(sockfd ,buf,len,MSG_PEEK); if(ret == -1 && errno == EINTR) ...原创 2018-04-23 22:47:33 · 208 阅读 · 0 评论 -
socket编程学习---(三)
int on = 1;setsockopt(listenfd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof(on));原创 2019-08-28 19:26:14 · 97 阅读 · 0 评论