HTTP 学习碎片

持久连接

只要任意一端没有明确提出断开连接,那么保持TCP连接状态。这样做减少了TCP连接的重复建立和断开所造成的额外开销,减轻了服务器端的负载。

管线化

管线化不用等待响应即可直接发送下一条请求。

Cookie状态管理

Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。以方便服务器端通过该信息查找是哪个客户端发送的连接请求。

HTTP报文

  • 报文首部: 服务器端或客户端需处理的请求或响应的内容及属性。
  • 报文主题: 应被发送的数据。

状态码

响应类型有 5 种:
1XX | 信息性状态码 | 接收的请求正在处理
2XX | 成功状态码 | 请求正常处理完毕
3XX | 重定向状态码 | 需要进行附加操作以完成请求
4XX | 客户端错误状态码 | 服务器无法处理请求
5XX | 服务器错误状态码 | 服务器处理请求出错

通信的加密

HTTP协议没有加密机制,安全通信的方法有两种。一种是通过和 SSLTLS 的组合使用,这种方法是将整个通信线路进行加密。与 SSL 合用的 HTTP 称为 HTTPS。还有一种就是给传输内容本身进行加密。

HTTPS

HTTP + 通信加密 + 证书 + 完整性保护 = HTTPS

TCP/IP的分层管理

  1. 应用层
    向用户提供应用服务时通信活动,如FTPDNSHTTP

  2. 传输层
    对应用层提供处于网络连接中的两台计算机之间的数据传输。如果是从应用层到网络层,那么主要的工作是把从应用层收到的数据进行分割,并在各个报文上打上标记序号及端口号后转发给网络层。有两个性质不同的协议:TCPUDP

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

  4. 数据链路层
    处理连接网络的硬件部分,包括控制操作系统、硬件的设备驱动、网卡等。

IP协议

IP协议作用是把各种数据包传送给对方。需要满足的两个重要条件是IP地址和MAC地址。IP地址指明了节点被分配到的地址,MAC地址使之网卡所属的固定地址。通信过程是不断的中转直到到达目的地的过程,而这里的中转站的MAC地址是ARP协议通过通信的IP地址反查出来的。

TCP协议确保可靠性

TCP将大数据分割成报文段,并且可以确认最终数据是否被送达给对方。确认的方法就是三次握手。

  1. 由发送端发送标有SYN数据包给接收端;
  2. 接收端收到数据并给发送端发送标有SYN/ACK的数据包,表示可以正常接收发送端发送的消息;
  3. 发送端接收到回应后再给接收端发送标有ACK的数据,表示可以正常接收接收端的消息。

DNS负责域名解析

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

SSL/TLS

SSL/TLS的作用是将通信内容加密后再经网络隧道传输。

你可能感兴趣的:(HTTP 学习碎片)