TCP、UDP和HTTP
先來一個講TCP、UDP和HTTP關系的
1、TCP/IP是個協議組,可分為三個層次:網絡層、傳輸層和應用層。
在網絡層有IP協議、ICMP協議、ARP協議、RARP協議和BOOTP協議。
在傳輸層中有TCP協議與UDP協議。
在應用層有FTP、HTTP、TELNET、SMTP、DNS等協議。
因此,HTTP本身就是一個協議,是從Webserver傳輸超文本到本地瀏覽器的傳送協議。
?
2、HTTP協議是建立在請求/響應模型上的。首先由客戶建立一條與server的TCP鏈接,并發送一個請求到server,請求中包括請求方法、URI、協議版本號以及相關的MIME樣式的消息。server響應一個狀態行,包括消息的協議版本號、一個成功和失敗碼以及相關的MIME式樣的消息。
HTTP/1.0為每一次HTTP的請求/響應建立一條新的TCP鏈接,因此一個包括HTML內容和圖片的頁面將須要建立多次的短期的TCP鏈接。一次TCP鏈接的建立將須要3次握手。
另外,為了獲得適當的傳輸速度,則須要TCP花費額外的回路鏈接時間(RTT)。每一次鏈接的建立須要這樣的常常性的開銷,而其并不帶有實際實用的數據,僅僅是保證鏈接的可靠性,因此HTTP/1.1提出了可持續鏈接的實現方法。HTTP/1.1將僅僅建立一次TCP的鏈接而反復地使用它傳輸一系列的請求/響應消息,因此降低了鏈接建立的次數和常常性的鏈接開銷。
?
3、結論:盡管HTTP本身是一個協議,但其終于還是基于TCP的。只是,眼下,有人正在研究基于TCP+UDP混合的HTTP協議。
Socket是什么呢?
??????Socket是應用層與TCP/IP協議族通信的中間軟件抽象層,它是一組接口。在設計模式中,Socket事實上就是一個門面模式,它把復雜的TCP/IP協議族隱藏在Socket接口后面,對用戶來說,一組簡單的接口就是所有,讓Socket去組織數據,以符合指定的協議。
總結
以上是生活随笔為你收集整理的TCP、UDP和HTTP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS SANS – 神奇!使用 CSS
- 下一篇: 开启apache的server-stat