明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

對于http、https、http/2的知識

[摘要]在學習http、https、http/2之前,先整理一下OSI網(wǎng)絡模型、TCP/IP協(xié)議、TCP和UDP等內(nèi)容。一、簡單回顧一下OSI七層網(wǎng)絡模型OSI是一個開放性的通信系統(tǒng)互連參考模型,是一個由國際標準化組織提出的的協(xié)議規(guī)范。模型由上往下是:應用層(OSI 的應用層協(xié)議包括文件的傳輸、訪問及管理...
在學習http、https、http/2之前,先整理一下OSI網(wǎng)絡模型、TCP/IP協(xié)議、TCP和UDP等內(nèi)容。

一、簡單回顧一下OSI七層網(wǎng)絡模型

OSI是一個開放性的通信系統(tǒng)互連參考模型,是一個由國際標準化組織提出的的協(xié)議規(guī)范。模型由上往下是:

  • 應用層(OSI 的應用層協(xié)議包括文件的傳輸、訪問及管理協(xié)議(FTAM) ,以及文件虛擬終端協(xié)議(VIP)和公用管理系統(tǒng)信息(CMIP))

  • 表示層(表示層供多種功能用于應用層數(shù)據(jù)編碼和轉(zhuǎn)化,以確保以一個系統(tǒng)應用層發(fā)送的信息 可以被另一個系統(tǒng)應用層識別)

  • 會話層(會話層建立、管理和終止表示層與實體之間的通信會話)

  • 傳輸層(傳輸層向高層提供可靠的端到端的網(wǎng)絡數(shù)據(jù)流服務)

  • 網(wǎng)絡層(網(wǎng)絡層負責在源和終點之間建立連接)

  • 數(shù)據(jù)鏈路層(數(shù)據(jù)鏈路層通過物理網(wǎng)絡鏈路供數(shù)據(jù)傳輸。不同的數(shù)據(jù)鏈路層定義了不同的網(wǎng)絡和協(xié)議特征,其中包括物理編址、網(wǎng)絡拓撲結(jié)構(gòu)、錯誤校驗、數(shù)據(jù)幀序列以及流控)

  • 物理層(物理層負責最后將信息編碼成電流脈沖或其它信號用于網(wǎng)上傳輸)

二、TCP/IP協(xié)議

TCP/IP協(xié)議整合了TCP和IP等多種協(xié)議,處理計算機與網(wǎng)絡之間的傳輸,它參考和整合了OSI網(wǎng)絡模型。常見的的TCP/IP協(xié)議分為四層,由上往下是:

  • 應用層(應用層對應于 OSI 七層參考模型的應用層和表示層)

  • 傳輸層(傳輸層對應于 OSI 七層參考模型的傳輸層,它供兩種端到端的通信服務)

  • 網(wǎng)間層(本層包含 IP 協(xié)議、RIP 協(xié)議(Routing Information Protocol,路由信息協(xié)議),負責數(shù)據(jù)的包裝、尋址和路由。同時還包含網(wǎng)間控制報文協(xié)議(Internet Control Message Protocol,ICMP)用來供網(wǎng)絡診斷信息)

  • 網(wǎng)絡接口層(網(wǎng)絡接口層包括用于協(xié)作IP數(shù)據(jù)在已有網(wǎng)絡介質(zhì)上傳輸?shù)膮f(xié)議)

三、TCP和UDP

TCP(Transmission Control Protocol、傳輸控制協(xié)議)
是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。UDP(User Datagram Protocol、用戶數(shù)據(jù)報協(xié)議)是一個簡單的面向數(shù)據(jù)報的傳輸層協(xié)議。他們負責OSI網(wǎng)絡模型中傳輸層的處理。

TCP和UDP的簡單對比:

TCPUDP
面向連接(三次握手、四次揮手)無連接
資源占用較多資源占用減少
保證數(shù)據(jù)順序數(shù)據(jù)無順序
傳輸速度較慢傳輸速度快
保證數(shù)據(jù)正確性容易丟包
流模式報文模式

四、HTTP

http(超文本傳輸協(xié)議)是一種常用于應用層的協(xié)議,它是基于文本傳輸內(nèi)容。

八種請求方法

get、post、head、put、delete、trace、options、connect。

http請求信息結(jié)構(gòu)

  • 請求行

  • 請求頭

  • 空行

  • 其他消息

狀態(tài)碼

  • 1xx消息——請求已被服務器接收,繼續(xù)處理

  • 2xx成功——請求已成功被服務器接收、理解、并接受

  • 3xx重定向——需要后續(xù)操作才能完成這一請求

  • 4xx請求錯誤——請求含有詞法錯誤或者無法被執(zhí)行

  • 5xx服務器錯誤——服務器在處理某個正確請求時發(fā)生錯誤

常見狀態(tài)碼200(請求成功)、302(重定向到些的url)、304(讀取緩存)、404(沒有找到文件或目錄)、405(請求指定的方法錯誤)、500(服務器錯誤)、502(服務器無效響應)

五、HTTPS

https可以稱為http安全版,主要是http下增加了SSL(安全套接層)或者TSL(傳輸層安全),在SSL或TSL在傳輸層對數(shù)據(jù)進行了加密處理。

https特點:

  • 1、保證傳輸信息安全(經(jīng)過加密)

  • 2、需要申請證書

  • 3、可以防止運營商劫持

  • 4、由于增加了安全層,所以訪問速度有所減慢

  • 5、http網(wǎng)站可以訪問https鏈接,https網(wǎng)站無法訪問http鏈接(除了部分支持mixed-content的瀏覽器)

六、SPDY

spdy是谷歌開放開放的網(wǎng)絡傳輸協(xié)議,它位于http和ssl層之間,可以加快訪問速度。

spdy的特點:

  • 1、可以降低延遲

  • 2、可以設置請求優(yōu)先級

  • 3、header壓縮

  • 4、基于https保障傳輸安全

  • 5、支持server push

七、HTTP/2

http/2(超文本傳輸協(xié)議第二版),他對http進行了一些升級改造,也參考了spdy相關(guān)的內(nèi)容(可以稱為spdy的演化版本)。

http/2的特點:

  • 新的二進制格式

  • 多路復用

  • header壓縮

  • 支持server push

http/2和spdy的區(qū)別:

  • http/2支持http傳輸、spdy只支持https

  • http/2和spdy的header壓縮算法不同

參考文章

TCP和UDP的區(qū)別
HTTP,HTTP2.0,SPDY,HTTPS你應該知道的一些事
深入淺出-網(wǎng)絡七層模型&&網(wǎng)絡數(shù)據(jù)包

以上就是關(guān)于http、https、http/2的知識的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設是一個廣義的術(shù)語,涵蓋了許多不同的技能和學科中所使用的生產(chǎn)和維護的網(wǎng)站。