网络
1. TCP的粘包拆包如何处理
1、发送端给每个数据包添加包首部,首部中应该至少包含数据包的长度,这样接收端在接收到数据后,通过读取包首部的长度字段,便知道每一个数据包的实际长度了。
2、发送端将每个数据包封装为固定长度(不够的可以通过补0填充),这样接收端每次从接收缓冲区中读取固定长度的数据就自然而然的把每个数据包拆分开来。
3、可以在数据包之间设置边界,如添加特殊符号,这样,接收端通过这个边界就可以将不同的数据包拆分开
2. RST如何解决
发送方送rst后直接释放连接,接收方收到rst后也释放连接,不需要回复ack。其余的我就不知道了
3. fd的异常处理
知识盲区
OS
4. 查看协议端口的命令
这个在我第一次面试就有 netstat
5. 进程通信方式
管段,信号,共享内存,socket,信箱