HTTP協議圖--HTTP 工作過程

           

 

HTTP請求響應模型

HTTP通信機制是在一次完整的 HTTP 通信過程中,客戶端與服務器之間將完成下列7個步驟:

  1. 建立 TCP 連接
    在HTTP工作開始之前,客戶端首先要通過網絡與服務器建立連接,該連接是通過 TCP 來完成的,該協議與 IP 協議共同構建 Internet,即著名的 TCP/IP 協議族,因此 Internet 又被稱作是 TCP/IP 網絡。HTTP 是比 TCP 更高層次的應用層協議,根據規則,只有低層協議建立之後,才能進行高層協議的連接,因此,首先要建立 TCP 連接,一般 TCP 連接的端口號是80;
  2. 客戶端向服務器發送請求命令
    一旦建立了TCP連接,客戶端就會向服務器發送請求命令;
    例如:GET/sample/hello.jsp HTTP/1.1
  3. 客戶端發送請求頭信息
    客戶端發送其請求命令之後,還要以頭信息的形式向服務器發送一些別的信息,之後客戶端發送了一空白行來通知服務器,它已經結束了該頭信息的發送;
  4. 服務器應答
    客戶端向服務器發出請求後,服務器會客戶端返回響應;
    例如: HTTP/1.1 200 OK
    響應的第一部分是協議的版本號和響應狀態碼
  5. 服務器返回響應頭信息
    正如客戶端會隨同請求發送關於自身的信息一樣,服務器也會隨同響應向用戶發送關於它自己的數據及被請求的文檔;
  6. 服務器向客戶端發送數據
    服務器向客戶端發送頭信息後,它會發送一個空白行來表示頭信息的發送到此爲結束,接着,它就以 Content-Type 響應頭信息所描述的格式發送用戶所請求的實際數據;
  7. 服務器關閉 TCP 連接
    一般情況下,一旦服務器向客戶端返回了請求數據,它就要關閉 TCP 連接,然後如果客戶端或者服務器在其頭信息加入了這行代碼 Connection:keep-alive ,TCP 連接在發送後將仍然保持打開狀態,於是,客戶端可以繼續通過相同的連接發送請求。保持連接節省了爲每個請求建立新連接所需的時間,還節約了網絡帶寬。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章