HTTP:是用於www瀏覽的一個協議。
Tcp:是機器之間建立連接用的到的一個協議。
1、TCP/IP是個協議組,可分爲三個層次:網絡層、傳輸層和應用層。
在網絡層有IP協議、ICMP協議、ARP協議、RARP協議和BOOTP協議。
在傳輸層中有TCP協議與UDP協議。
在應用層有FTP、HTTP、TELNET、SMTP、DNS等協議。
因此,HTTP本身就是一個協議,是從Web服務器傳輸超文本到本地瀏覽器的傳送協議。
2、HTTP協議是建立在請求/響應模型上的。首先由客戶建立一條與服務器的TCP鏈接,併發送一個請求到服務器,請求中包含請求方法、URI、協議版本以及相關的MIME樣式的消息。服務器響應一個狀態行,包含消息的協議版本、一個成功和失敗碼以及相關的MIME式樣的消息。
HTTP/1.0爲每一次HTTP的請求/響應建立一條新的TCP鏈接,因此一個包含HTML內容和圖片的頁面將需要建立多次的短期的TCP鏈接。一次TCP鏈接的建立將需要3次握手。
另外,爲了獲得適當的傳輸速度,則需要TCP花費額外的迴路鏈接時間(RTT)。每一次鏈接的建立需要這種經常性的開銷,而其並不帶有實際有用的數據,只是保證鏈接的可靠性,因此HTTP/1.1提出了可持續鏈接的實現方法。HTTP/1.1將只建立一次TCP的鏈接而重複地使用它傳輸一系列的請求/響應 消息,因此減少了鏈接建立的次數和經常性的鏈接開銷。
3.TCP與UDP
面向連接的TCP
“面向連接”就是在正式通信前必須要與對方建立起連接;TCP協議能爲應用程序提供可靠的通信連接,使一臺計算機發出的字節流無差錯地發往網絡上的其他計算機,對可靠性要求高的數據通信系統往往使用TCP協議傳輸數據。
面向非連接的UDP協議
“面向非連接”就是在正式通信前不必與對方先建立連接,不管對方狀態就直接發送。
UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非連接的協議,它不與對方建立連接,而是直接就把數據包發送過去!
UDP 適用於一次只傳送少量數據、對可靠性要求不高的應用環境