Backend-Development
  • Introduce
  • 操作系统和Linux
    • 操作系统基础
      • 进程
      • 进程间通信
      • 线程 & 协程
      • 调度
      • 互斥 & 同步
      • 死锁 & 饥饿
      • 内存管理
      • 文件系统
      • IO
    • Linux
      • Linux共享内存
      • Linux进程的内存空间布局
      • 僵尸进程和孤儿进程
      • 用户态和内核态
      • Linux进程调度算法
      • 理解inode
      • Linux进程间通信
      • Linux虚拟文件系统
      • CPU亲和性
      • 零拷贝技术
      • Linux IO栈
    • Linux常考命令
      • 管道和重定向
      • 文本处理三剑客
      • 文件和目录管理
      • 进程&内存&CPU管理
      • 用户&组管理
      • 网络管理
    • Linux系统调用
      • 内存
      • 进程
    • Linux系统编程
      • Linux堆内存管理
      • pthread库
    • Shell编程
  • 网络通信与网络编程
    • 计算机网络
      • 应用层其他协议
      • 应用层之DNS协议
      • 应用层之HTTP/3协议
      • 应用层之HTTPS协议
      • 应用层之HTTP协议
      • 传输层之UDP协议
      • 传输层之TCP协议
      • 网络层其他协议
      • 网络层之IP协议
      • 数据链路层
      • 物理层
    • 网络编程
      • cookie、session、token
      • TCP的粘包问题
      • 幂等性
      • 网络IO模型
      • 多路复用IO
      • Socket编程
      • 高并发服务器
    • Linux网络编程之底层
      • 传输控制块TCB
      • TCP数据发送之tcp_sendmsg()
      • TCP选项之MSS
    • 网络安全
    • Nginx
    • Wireshark
    • Libevent
  • 数据库
    • 数据库相关概念
    • 关系数据库设计范式
    • SQL
      • 初级SQL
      • 中级SQL
      • 高级SQL
    • Redis
      • Redis数据结构
      • Redis数据类型
      • 数据持久化
      • 雪崩 & 击穿 & 穿透
      • 主从复制
      • Redis集群
    • MySQL
      • MySQL数据类型
      • 事务
      • 事务隔离
      • 存储引擎
      • MyISAM与InnoDB
      • 锁机制
      • 索引
      • 联合索引
      • 主从复制
      • MySQL集群
      • MySQL使用总结
    • MongoDB
      • 启动与停止
      • 查询
    • Memcached
  • 组成原理和体系结构
    • 定点数 & 浮点数 & 内存
    • 体系结构
  • 编译和调试
    • 编译原理
    • Gdb调试
    • 内存屏障
    • 编译器优化
    • make/Makefile
    • cmake
    • 交叉编译
    • C++单元测试
    • 单元测试之Google Test
  • 设计模式
    • 设计模式
    • “组件协作”模式
  • 其他
    • 正则表达式
      • 基本正则表达式
      • 扩展正则表达式
    • Git版本控制
      • 提交代码
      • 常用命令
    • 编码和字符集
    • Vim用法
    • 一文解“锁”
    • 无锁技术
    • 面试中的“锁”
  • 面试题
    • 计算机网络面试题
    • 操作系统面试题
    • 数据库面试题
    • 其他面试题
    • 场景题总结
    • 智力题
Powered by GitBook
On this page

Was this helpful?

  1. 面试题

计算机网络面试题

Previous面试中的“锁”Next操作系统面试题

Last updated 4 years ago

Was this helpful?

1、http请求头有哪些,http版本区别,http请求方式?【】

2、get和post的区别。【】

3、TCP三次握手和四次挥手。【】

  • 为什么建立连接需要三次,断开连接为什么要四次?

  • time_wait 是在哪个步骤?

  • 主动断开方的状态(FIN_WAIT1/2,TIME_WAIT)

三次握手:1、建立连接时,客户端发送SYN包(SYN=i)到服务器,并进入到SYN-SEND状态,等待服务器确认。2、服务器收到SYN包,必须确认客户的SYN(ack=i+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器进入SYN-RECV状态。3、客户端收到服务器的SYN+ACK包,向服务器发送确认报ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手,客户端与服务器开始传送数据。

四次挥手:

4、TCP流量控制,拥塞控制。【】

5、TCP与UDP的区别。【】

6、TTL 是什么意思?IP头部的。【链接】

7、DNS 的解析过程。【链接】

8、TCP的可靠性传输是怎么保证的?【】

9、TCP的粘包问题。【链接】

10、HTTP的常见状态码。【】

11、浏览器的跨域问题。【链接】

12、session 和 cookie 的区别。【链接】

16、Ddos攻击。

17、http是否无状态?如何有状态?

19、经过路由器的数据包的变化。

20、http和https有什么区别?【链接】

21、网络层和传输层是怎么区分的?

22、ping底层过程。

23、TCP三次握手成功后拔掉网线,过一会儿再插上网线,这个过程中会发生什么?(爱奇艺面试题)

24、什么是半连接队列?

25、 ISN(Initial Sequence Number)是固定的吗?

26、三次握手过程中可以携带数据吗?

27、如果第三次握手丢失了,客户端服务端会如何处理?

28、SYN攻击是什么?

29、挥手为什么需要四次?

30、四次挥手释放连接时,等待2MSL的意义?

31、HTTP的长链接机制。

32、HTTPS的传输过程。

网络编程

1、多路复用 IO。【链接】

2、accept()等待的时候,底层的原理是啥?有哪些数据结构?

3、服务端和客户端同时调用close()会怎样?

4、为什么要使用反向代理?(1. 代理常用的HTTPS端口 2. 解决跨域问题)

5、NIO的原理?

6、epoll的边缘触发和水平触发。

7、怎么判断对方要断开链接?

13、浏览器中输入 URL 会发生什么?【】

14、TCP中序号的作用。【】

15、HTTP中的content-type表示什么?【】

18、http2.0特性?介绍一下http2.0。【】

链接
链接
链接
链接
链接
链接
链接
链接
链接
链接
链接