网络编程
文章平均质量分 71
bill_yang88
这个作者很懒,什么都没留下…
展开
-
插口层简介(一)
1.描述符的概念通过调用socket函数,可以获得一个socket描述符,这个描述符具体其他Unix描述符的所有特性:可以用这个描述符调用read和write,调用fork后,父进程和子进程可以共享它;一个描述符是进程的进程表表项的一个数组的下标,这个数组项指向一个打开文件表的结构;进程可以通过描述符访问插口上的网络连接;2. 系统调用进程同内核的交互是通过一组已经定义原创 2014-12-05 00:37:19 · 677 阅读 · 0 评论 -
I/O复用
1. I/O复用概念I/O复用是指,在进程指定的一个或多个I/O条件就绪时,内核就能通知进程;《UNIX网络编程》中使用这样一个例子:大致代码流程如下,client端:{ socket(...); ........//设置服务器地址、端口号等; connect(...); ........ str_cli(stdin, sockfd);}原创 2014-12-09 22:27:26 · 620 阅读 · 0 评论 -
select函数/poll函数/epoll函数
1. select()简介#include#includeint select(int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct timeval *timeout);返回值:错误时返回-1,超时返回0,有描述符就绪返回就绪的描述符个数;入参:①maxfdp1:待测试的最转载 2014-12-16 20:31:26 · 433 阅读 · 0 评论 -
基本的socket函数
1.地址结构1.1 IPv4地址结构struct in_addr{ in_addr_t s_addr;};struct sockaddr_in{ uint8_t sin_len; sa_family_t sin_family; /* 协议族 AF_INET/AF_INET6/AF_LOCAL/AF_ROUTE/AF_KEY */ in_port_t sin_port原创 2014-12-04 22:29:09 · 680 阅读 · 0 评论 -
高级I/O函数
1. UDP客服端/服务器端简单流程2. recvfrom和sendto2.1 recvfromssize_t recvfrom(int sockfd, void *buff, size_t nbytes, int flags, struct sockaddr *from, socklen_t *addrlen);返回成功读到的数据,出错时返回-1;如果不关心数据从谁来的转载 2015-01-12 21:03:00 · 479 阅读 · 0 评论