![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
lsluffy
这个作者很懒,什么都没留下…
展开
-
Socket底层实现
揭秘socket 什么是socket?socket字面意思其实就是一个插口或者套接字,包含了源ip地址、源端口、目的ip地址和源端口。但是socket在那个位置呢 ,在TCP/IP网络的四层体系和OSI七层好像都找不到他的影子,那么下面看一张图就可以明白了。 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的转载 2016-07-24 16:55:19 · 540 阅读 · 0 评论 -
select系统调用
参考 《linux高性能服务器编程》 I/O复用使得程序能同时监听多个文件描述符。 □ 客户端要同时处理多个socket □ 客户端要同时处理客户输入和网络连接 □ Tcp服务器要同时处理监听socket和连接socket Select int select(int nfds,fd_set *readfds,fd_set*write原创 2016-04-25 09:02:39 · 329 阅读 · 0 评论 -
listen()函数中backlog参数分析
背景知识 Unix网络编程描述如下: 总结 0. accept()函数不参与三次握手,而只负责从已建立连接队列中取出一个连接和sockfd进行绑定; 1. backlog参数决定了未完成队列和已完成队列中连接数目之和的最大值(从内核角度看,是否这个和就是等于sock->recv_queue ?); 2. accept()函数调用,会从已连接队列中取出一个“连接”(可以是一个描述连接的数据结转载 2016-07-24 18:11:37 · 228 阅读 · 0 评论