什么是TCP三次握手?(重点)

image.png

  • 客户端向服务端发送带有SYN标志,报文为100(告诉服务端准备开始传输数据)
  • 服务端收到报文后,ACK=100+1,同时服务端也携带自己的SYN标志200,发送给客户端
  • 客户端再次ACK=200+1给服务端,三次握手结束,客户端开始向服务端发送数据
  • SYN请求询问,ACK回复

    什么是TCP四次挥手?(重点)

    因为TCP链接是可以双向通信的(全双工),因此每个方向都必须单独关闭

  • 客户端发送带有FIN标识的给服务端请求通信关闭

  • 服务端接收消息后,回复ACK应答,答应关闭通信
  • 服务端发送带有FIN标识的信息给客户端,也请求关闭通信
  • 客户端接收回应ACK给服务端,答应关闭服务端通信请求

    为什么是四次挥手,而不是三次?

  • 第二次和第三次不能合并,因为第二次发送完之后,服务端会调用close方法关闭接收消息,而如果合并之后在服务端调用之前发,close方法可能调用是发生阻塞

  • 如果在调用close后发,如果发生阻塞,也迟迟不能回复客户端的请求

    浏览器访问一个URL经历了哪些过程?

  • 浏览器向DNS服务器发出解析域名请求

  • DNS服务器将域名解析为对应的IP地址,并返回给浏览器
  • 浏览器与服务器进行三次握手,建立TCP链接
  • 浏览器发出HTTP请求报文
  • 服务器回复HTTP响应报文
  • 浏览器解析响应报文,渲染HTTP内容,并显示在页面上
  • 收发报文结束,释放TCP连接,执行四次挥手

Http请求报文

  • 400:客户端请求语法错误
  • 401:请求需要需要用户身份认证
  • 403:服务器理解客户端的请求,但是拒绝执行此请求
  • 404:服务器无法根据客户端请求找到资源
  • 405:客户端请求中的方法被禁止

POST与GET请求区别

  • GET:请求数据会附加在URL之后以分割,采用ASCII编码
  • POST:把数据发在HTTP请求包体中

Linux常用命令

  1. 查看进程

    1. # 查看所用进程
    2. ps aux
  2. 监控进程

    1. # 动态查看运行中系统使用情况
    2. top
  3. 查看内存

    1. free

    image.png

  4. 查看端口信息

    1. # 查看8000端口
    2. lsof -i:8000

HTTP长链接/短链接

  • 短连接:建立连接,数据传输,关闭连接
  • 长连接:保持TCP连接不断开

OSI七层模型(运维面试重点)

1. 物理层

确保原始的数据可在各种物理媒体上传输。

光导纤维,双绞线等

2. 数据链路层

在不可靠的物理介质上提供可靠的传输。

WiFi

3. 网络层

负责对子网间的数据包进行路由选择。

IP

4. 传输层

传输层是第一个端到端,即主机到主机的层次

TCP,UDP

5. 会话层

管理主机之间的会话进程,即负责建立,管理,终止进程之间的会话

6. 表示层

这一层主要解决用户的语法表示问题

ASII

7. 应用层

这一层为操作系统或网络应用程序提供访问网络服务的接口