
Linux网络编程
文章平均质量分 94
Little-Hu
各位,一定要出人头地啊!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
多路I/O转接服务器(select、poll、epoll)
多路IO转接服务器也叫做多任务IO服务器。该类服务器实现的主旨思想是,不再由应用程序自己监视客户端连接,取而代之由内核替应用程序监视文件。原创 2025-07-02 22:16:08 · 883 阅读 · 0 评论 -
linux高并发服务器
使用多进程并发服务器时要考虑以下几点:父进程最大文件描述个数(父进程中需要close关闭accept返回的新文件描述符)系统内创建进程个数(与内存大小相关)进程创建过多是否降低整体服务性能(进程调度)原创 2025-06-30 01:59:45 · 739 阅读 · 0 评论 -
UDP服务器和本地套接字
高性能与低延迟内核直接转发:数据不经过网络协议栈(如TCP/IP),避免了封包拆包、校验和计算等开销,传输效率显著提升。实测性能优势:例如在Nginx与PHP-FPM的通信中,本地套接字比网络套接字(127.0.0.1)的QPS(每秒请求数)平均高出100+。适用场景:高频小数据交互(如数据库服务、微服务通信)。安全性高本地隔离:通信限于同一主机,数据不暴露于网络,天然规避网络攻击(如中间人攻击、嗅探)。权限控制:通过文件系统权限(如chmod。原创 2025-06-29 22:14:24 · 670 阅读 · 0 评论 -
linux网络编程socket套接字
因此,服务器从accept()返回后立刻调用read(),读socket就像读管道一样,如果没有数据到达就阻塞等待,这时客户端调用write()发送请求给服务器,服务器收到后从read()返回,对客户端的请求进行处理,在此期间客户端调用read()阻塞等待服务器的应答,服务器调用write()将处理结果发回给客户端,再次调用read()阻塞等待下一条请求,客户端收到后从read()返回,发送下一条请求,如此循环下去。同样地,接收主机如果是小端字节序的,接到16位的源端口号也要做字节序的转换。原创 2025-06-26 23:58:27 · 1111 阅读 · 0 评论 -
linux网络编程之tcp协议(三次握手、四次挥手)
第一次握手(SYN):客户端向服务端发送一个SYN报文,表示客户端要连接服务端,并请求服务端确认。第二次握手(SYN+ACK):服务端收到客户端的SYN报文后,回复一个SYN+ACK报文,表示服务端已经收到客户端的请求,并请求客户端确认。第三次握手(ACK):客户端收到服务端的SYN+ACK报文后,回复一个ACK报文,表示客户端已经收到服务端的回复,并建立了连接。原创 2025-06-26 13:15:28 · 624 阅读 · 0 评论 -
linux网络基础概念
从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。假设,A、B双方欲传输文件。规定:第一次,传输文件名,接收方接收到文件名,应答OK给传输方;第二次,发送文件的尺寸,接收方接收到该数据再次应答一个OK;第三次,传输文件内容。同样,接收方接收数据完成后应答OK表示文件内容接收成功。由此,无论A、B之间传递何种文件,都是通过三次数据传输来完成。A、B之间形成了一个最简单的数据传输规则。双方都按此规则发送、接收数据。A、B之间达成的这个相互遵守的规则即为协议。原创 2025-06-25 18:17:06 · 988 阅读 · 0 评论