Linux高性能服务器编程笔记

3.1 TCP服务的特点

基于字节流和基于报文段的区别:

在这里插入图片描述
Linux高性能服务器编程笔记_第1张图片
Linux高性能服务器编程笔记_第2张图片
UDP协议和IP协议一样,提供不可靠服务。它们都需要上层协议来处理数据确认和超时重传。

3.3 TCP连接的建立和关闭

Linux高性能服务器编程笔记_第3张图片
Linux高性能服务器编程笔记_第4张图片
Linux高性能服务器编程笔记_第5张图片
3.4.2 TIME_WAIT状态

Linux高性能服务器编程笔记_第6张图片
Linux高性能服务器编程笔记_第7张图片
在这里插入图片描述
Linux高性能服务器编程笔记_第8张图片
Linux高性能服务器编程笔记_第9张图片
第5章 Linux网络编程基础API

通用socket地址:

Linux高性能服务器编程笔记_第10张图片
在这里插入图片描述
Linux高性能服务器编程笔记_第11张图片
5.2 创建socket

socket函数:
Linux高性能服务器编程笔记_第12张图片参数解释:
Linux高性能服务器编程笔记_第13张图片
bind函数:

Linux高性能服务器编程笔记_第14张图片
监听socket

Linux高性能服务器编程笔记_第15张图片
listen

Linux高性能服务器编程笔记_第16张图片
accept

Linux高性能服务器编程笔记_第17张图片
**connect**接收连接:

Linux高性能服务器编程笔记_第18张图片
5.8 数据读写

TCP数据读写:
Linux高性能服务器编程笔记_第19张图片
UDP数据读写:

Linux高性能服务器编程笔记_第20张图片
第6章 高级I/O函数

6.1 pipe函数

Linux高性能服务器编程笔记_第21张图片
6.5 mmap函数和munmap函数
Linux高性能服务器编程笔记_第22张图片
第8章 高性能服务器程序框架

8.1.1 CS模型

Linux高性能服务器编程笔记_第23张图片
Linux高性能服务器编程笔记_第24张图片
8.2 服务器编程框架

注意:I/O处理单元是服务器管理客户连接的模块。它通常要完成以下任务:等待并接受新的客户连接,接收客户数据,将服务器响应数据返回给客户端

Linux高性能服务器编程笔记_第25张图片
在这里插入图片描述
在这里插入图片描述
Linux高性能服务器编程笔记_第26张图片
8.3 I/O模型

IO复用函数本身是阻塞的,它们能提高程序效率的原因在于它们具有同时监听多个IO事件的能力。

在这里插入图片描述
Linux高性能服务器编程笔记_第27张图片
Linux高性能服务器编程笔记_第28张图片
8.5 两种高效的并发模式

并发模式是指I/O处理单元和多个逻辑单元之间协调完成任务的方法。

9.3 epoll系统调用

LTET模式:

ET边缘触发模式,即epoll高效工作模式。当epoll_wait检测到其上有事件发生并将此事件通知应用程序后,应用程序必须立即处理该事件。可见,ET模式在很大程度上降低了同一个epoll事件被重复触发的次数,因此效率要比LT模式高

Linux高性能服务器编程笔记_第29张图片

9.4 三种IO复用函数的比较

Linux高性能服务器编程笔记_第30张图片
第13章 多进程编程

13.1 fork系统调用:

pid_t fork(void);

Linux高性能服务器编程笔记_第31张图片
13.3 处理僵尸进程:

waitwaitpid函数在父进程中调用,以等待子进程的结束,并获取子进程的返回信息,从而避免了僵尸进程的产生,或者使子进程的僵尸态立即结束。

Linux高性能服务器编程笔记_第32张图片
wait函数将阻塞进程,直到该进程的某个子进程结束运行为止。

waitpid函数可以设置非阻塞

Linux高性能服务器编程笔记_第33张图片

你可能感兴趣的:(计算机,服务器,linux,tcp/ip)