HTTP:超文本傳輸協議(HyperText Transfer Protocol)是目前為止互聯網上使用最廣泛的網絡協議之一。HTTP設計之初的目的是為了提供一種接收和發送HTML頁面的方法。Http是萬維網協會和Internet工作小組共同合作而產生的結果。Http—般來說由客戶端、服務器端和一個協議組成,這個協議就是TCP協議。
通過Web瀏覽器客戶端發起一個請求到服務器端。Http協議可以再任何網絡協議或自定義網絡上進行實現,Http協議假定其下層協議可以為其提供可靠地傳輸機制,所以,任何能夠提供這種保證的協議都可以拿來供給Http協議使用。
絕大多數情況下Http通信是由用戶手動啟動的,改過程包含了一個對某個服務器資源的請求。在比較簡單的情況下,一般可以通過在客戶端和服務器端假設一條簡單的通道來完成。
還有更為復雜的情況是在通信線路上有多個中介媒體。常見的中介媒體有三個,分別是:代理(Proxy),網關(Gateway)和通道(Tunnel)。代理(Proxy)是一個轉發機構,它用于接收用戶對一個資源的請求,該請求由一個URI**格式標識的。代理改寫請求的一部分或者全部,改寫完成之后將該信息轉發到URI標志的網絡服務器。網關(Gateway)是一個接收組件,它作為一些服務器的某個層,必要的時候,將請求翻譯成為該網絡服務器支持的標準或協議。通道(Tumiel)是兩個連接的轉換點,它并不改變消息的任何信息。
客戶端和服務器端之間的進行通信時會經過三個中介體,所以請求或反饋消息時要經過四個相互獨立的連接過程。這些對于某些HTTP通信來說顯得非常重要,因為現實中某些HTTP連接選項只能申請鄰近的連接或通信端點。
這里每一個中間媒體都能夠同時支持一個或多個通信的過程。
一次HTTP通信過程稱一般由四步組成:
(1)客戶端申請和服務器端建立連接。
(2)客戶端向服務器端提出訪問請求。
(3)當服務器端接受客戶端請求時,發回響應信息。
(4)請求完成之后,兩端斷幵連接。
由于HTTP采用了TCP連接,而且該連接僅存在于本次通信當中,所以客戶端和服務器端都不會保存上一次的連接狀態[13]。HTTP協議之所以采取這種無狀態連接通信機制,就是為了有效的提高服務器的工作效率。當一個HTTP請求結束時,服務器會斷開兩者的連接,如果客戶端想繼續訪問的話,則需要重新建立連接。
聲明:本站所有文章資源內容,如無特殊說明或標注,均為采集網絡資源。如若本站內容侵犯了原著者的合法權益,可聯系本站刪除。