HTTP 协议在客户端与服务器端之间用于通信。通常,一端为客户端,另一端为服务器端。在请求报文中包含方法、URI、协议版本、首部字段和内容实体;响应报文中则包含了协议版本、状态码、原因短语、首部字段和实体主体。HTTP 协议为无状态,每次请求和响应不存储历史,旨在提高处理大量事务的效率。但随着Web发展,无状态导致了保持状态的需求,Cookie技术应运而生,用于控制客户端状态。HTTP方法用于指导服务器操作,如GET、POST等。为解决TCP连接频繁建立和断开导致的通信量开销问题,引入了持久连接,即HTTP keep-alive或HTTP连接重用。一次TCP连接后,双方可进行多次请求与响应交互,大大节省通信成本。四次挥手是断开TCP连接的过程,表示“挥手再见”。在断开过程中,双方进行四次交互。被动方收到主动方的FIN报文,表示主动方无数据发送。被动方发送FIN报文,并在数据发送完成后发送ACK报文,同意关闭连接。面试中可能被问及为何三次握手而四次挥手,这是因为三次握手仅确认连接请求,而四次挥手确保数据完整传输,主动方发送FIN后,被动方还需发送ACK和FIN确认并关闭连接。