04-网络 编程
2022-03-22 13:58:42 1 举报
AI智能生成
以思维导图的形式,汇总 【网络 编程】相关的面试点
作者其他创作
大纲/内容
IO复用函数
select()
有哪些IO事件
网络通信
分支主题
宏
不足
底层结构
某个套接字准备好可读,表示什么样的事件发生呢
poll()
API
网络通信
代码
不足
底层结构
epoll()
三个函数
网络通信
分支主题
底层原理
epoll_wait()实现
epoll_ctl()
边缘触发和水平触发?
概念
适用哪些场合?
有100万个客户端同时与一个服务器进程保持着TCP连接。而每一时刻,通常只有几百上千个TCP连接是活跃的(事实上大部分场景都是这种情况)。如何实现这样的高并发?
Reactor
fock() exec()
fock()
分支主题
写时复制
Redis 的Fock 子进程进行AOF重写
为什么会有?
1、PPC 和 TPC 无法支撑高并发场景
PPC
优缺点
prefork
TPC
基本流程
优缺点
prethread
2、IO复用技术+线程池
是什么
1、事件类型
2、三个关键角色
分类
单 Reactor 单进程
优缺点
案例:Redis
单 Reactor 多线程
IO模型
Unix 常见的IO模型
阻塞IO
基本概念
协议栈基础
TCP/IP 网络模型
网络包封装原理
s
Linux 网络收发流程
收
发
如何观察网络的性能情况
网络性能指标
工具
C10K
【案例】-使用 tcpdump 和 Wireshark 分析网络流量
Socket基本函数
服务端
分支主题
客户端
分支主题
阻塞函数说明
整个交互过程
交互图
分支主题
建立连接
socket()
listen()
TCP三次连接,这个listen backLog有什么作用
未完成连接队列(SYN 队列) 、已完成连接队列(Accpet 队列)
TCP服务端套接字编程中,执行完listen后,而没有执行accept,客户端是建立连接么?
accept()
accept 发生在三次握手的哪一步?
监听套接字和已连接套接字
关闭连接
close()
close 函数具体是如何关闭两个方向的数据流呢?
客户端调用 close 了,连接是断开的流程是什么?
shutdown ()
和close()区别
收发数据
write()
发送缓冲区
操作系统内核的发送缓冲区不足以容纳应用程序数据?
read()
其他收发数据
recv和send
非阻塞函数
read() 和 write()
分支主题
accept()
connect()
0 条评论
下一页