HTTP(01)

71 阅读2分钟

Web使用名为HTTP的协议作为规范,完成从客户端到服务端等一系列运作流程。而协议是指规则的约定。可以说Web是建立在HTTP上通信的

TCP/IP协议族

计算机与网络设备要相互通信,双方就必须基于相同的规则。我们把这种规则称之为协议

通常使用的网络是在TCP/IP协议族的基础上运行的,而HTTTP属于它内部的一个子集

分层管理

TCP/IP协议族按照分层可以分为4层:应用层、传输层、网络层、数据链路层

1733138027911.jpg

应用层

应用层决定了向用户提供应用服务时通信的活动

传输层

传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输

有两个不同的协议:TCPUDP

网络层

网络层用来处理在网络上流动的数据包。该层规定了通过怎样的路径到达对方计算机,并把数据包传送给对方

数据链路层

用来处理连接网络的硬件部分

负责传输的IP协议

IP协议位于网络层。IP协议的作用是把数据包传送给对方。要保证数据包确实传送给对方,就需要满足各类条件。其中最重要的就是:IP地址和MAC地址

  • IP地址指明了节点被分配的地址
  • MAC地址是指网卡所属的固定地址

确保可靠性的TCP协议

TCP属于传输层,提供可靠的字节流服务。为了保证数据准确的发送到目标处,TCP协议采用三次握手策略。

TCP不会对传送后的情况置之不理,它一定会向对方确认是否成功送达。握手过程中使用了TCP的标志(flag)——SYN(synchronize)和ACK(acknowledgement)。

  1. 发送端首先发送一个带SYN标志的数据包给对方
  2. 接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息
  3. 最后,发送端再回传一个带ACK标志的数据包,代表“握手”结束

1733139868028.jpg

负责域名解析的DNS服务

DNS服务和HTTP协议一样位于应用层,它提供从域名到IP地址的解析服务。

1733140324015.jpg

各协议的关系

1733141213983.jpg

图片取自《图解HTTP》