在學習http、https、http/2之前,先整理一下OSI網路模型、TCP/IP協定、TCP和UDP等內容。
一、簡單回顧一下OSI七層網路模型
OSI是一個開放性的通訊系統互連參考模型,是一個由國際標準化組織提出的協定規範。模型由上往下是:
應用層(OSI 的應用層協定包括檔案的傳輸、存取及管理協定(FTAM) ,以及檔案虛擬終端協定(VIP)和公用管理系統資訊(CMIP))
表示層(表示層供多種功能用於應用層資料編碼和轉換,以確保以一個系統應用層發送的資訊可以被另一個系統應用層識別)
會話層(會話層建立、管理和終止表示層與實體之間的通訊會話)
傳輸層(傳輸層向高層提供可靠的端對端的網路資料流服務)
#網路層(網路層負責在來源和終點之間建立連接)
資料鏈結層(資料鏈結層透過實體網路連結供資料傳輸。不同的資料鏈結層定義了不同的網路和協定特徵,其中包括實體編址、網路拓樸結構、錯誤校驗、資料幀序列以及流控)
#物理層(物理層負責最後將資訊編碼成電流脈衝或其它訊號用於網路傳輸)
二、TCP/IP協定
TCP/IP協定整合了TCP和IP等多種協議,處理電腦與網路之間的傳輸,它參考並整合了OSI網路模型。常見的的TCP/IP協定分為四層,由上往下是:
應用層(應用層對應於OSI 七層參考模型的應用層與表示層)
傳輸層(傳輸層對應於OSI 七層參考模型的傳輸層,它供兩種端對端的通訊服務)
網間層(本層包含IP 協定、RIP 協定(Routing Information Protocol,路由資訊協定),負責資料的包裝、定址與路由。同時也包含網際網路控制封包協定(Internet Control Message Protocol,ICMP)用來供網路診斷資訊)
網路介面層(網路介面層包含用於協作IP資料在已有網路媒體上傳輸的協定)
#三、TCP和UDP
TCP(Transmission Control Protocol、傳輸控制協定)
是一種連接導向的、可靠的、基於位元組流的傳輸層通訊協定。 UDP(User Datagram Protocol、用戶資料報協定)是一個簡單的資料封包導向的傳輸層協定。他們負責OSI網路模型中傳輸層的處理。
TCP與UDP的簡單比較:
#TCP | UDP |
---|---|
面向連線(三次握手、四次揮手) | 無連線 |
資源佔用較多 | #資源佔用減少 |
保證資料順序 | #資料無順序 |
傳輸速度較慢 | #傳輸速度快 |
保證資料正確性 | 容易丟包 |
串流模式 | 封包模式 |
四、HTTP
http(超文本傳輸協定)是一種常用於應用層的協議,它是基於文字傳輸內容。
八種請求方法
get、post、head、put、delete、trace、options、connect。
http請求資訊結構
請求行
#請求頭
空白行
其他訊息
狀態碼
1xx訊息-請求已被伺服器接收,繼續處理
2xx成功-請求已成功被伺服器接收、理解、並接受
3xx重定向-需要後續操作才能完成這項請求
4xx請求錯誤-請求含有詞法錯誤或無法被執行
5xx伺服器錯誤-伺服器在處理某個正確請求時發生錯誤
常見狀態碼200(請求成功)、302(重定向到些的url)、304(讀取快取)、404(找不到檔案或目錄)、405(請求指定的方法錯誤)、500(伺服器錯誤)、502(伺服器無效回應)
五、HTTPS
https可稱為http安全版,主要是http下增加了SSL(安全通訊端層)或TSL(傳輸層安全性),在SSL或TSL在傳輸層對資料進行了加密處理。
https特點:
1、保證傳輸資訊安全(經過加密)
2、需要申請憑證
3、可以防止業者劫持
4、由於增加了安全層,所以存取速度有所減慢
#5、http網站可以訪問https鏈接,https網站無法訪問http鏈接(除了部分支援mixed-content的瀏覽器)
六、SPDY
spdy是Google開放開放的網路傳輸協議,它位於http和ssl層之間,可以加快存取速度。
spdy的特點:
1、可以降低延遲
2、可以設定請求優先權
3、header壓縮
4、基於https保障傳輸安全性
5、支援server push
七、HTTP/2
http/2(超文本傳輸協定第二版),他對http進行了一些升級改造,也參考了spdy相關的內容(可以稱為spdy的演化版本)。
http/2的特點:
新的二進位格式
多路復用
header壓縮
支援server push
#http/2和spdy的差異:
http/2支援http傳輸、spdy只支援https
http/2和spdy的header壓縮演算法不同
參考文章
TCP和UDP的差異
HTTP,HTTP2.0,SPDY,HTTPS你應該知道的一些事
深入淺出-網路七層模型&&網路封包
以上是關於http、https、http/2的知識的詳細內容。更多資訊請關注PHP中文網其他相關文章!

布爾屬性是HTML中的特殊屬性,不需要值即可激活。 1.布爾屬性通過存在與否控制元素行為,如disabled禁用輸入框。 2.它們的工作原理是瀏覽器解析時根據屬性的存在改變元素行為。 3.基本用法是直接添加屬性,高級用法可通過JavaScript動態控制。 4.常見錯誤是誤以為需要設置值,正確寫法應簡潔。 5.最佳實踐是保持代碼簡潔,合理使用布爾屬性以優化網頁性能和用戶體驗。

HTML代碼可以通過在線驗證器、集成工具和自動化流程來確保其清潔度。 1)使用W3CMarkupValidationService在線驗證HTML代碼。 2)在VisualStudioCode中安裝並配置HTMLHint擴展進行實時驗證。 3)利用HTMLTidy在構建流程中自動驗證和清理HTML文件。

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

HTML的功能是定義網頁的結構和內容,其目的在於提供一種標準化的方式來展示信息。 1)HTML通過標籤和屬性組織網頁的各個部分,如標題和段落。 2)它支持內容與表現分離,提升維護效率。 3)HTML具有可擴展性,允許自定義標籤增強SEO。

HTML的未來趨勢是語義化和Web組件,CSS的未來趨勢是CSS-in-JS和CSSHoudini,JavaScript的未來趨勢是WebAssembly和Serverless。 1.HTML的語義化提高可訪問性和SEO效果,Web組件提升開發效率但需注意瀏覽器兼容性。 2.CSS-in-JS增強樣式管理靈活性但可能增大文件體積,CSSHoudini允許直接操作CSS渲染。 3.WebAssembly優化瀏覽器應用性能但學習曲線陡,Serverless簡化開發但需優化冷啟動問題。

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

HTML、CSS和JavaScript在網頁開發中的角色分別是:HTML負責內容結構,CSS負責樣式,JavaScript負責動態行為。 1.HTML通過標籤定義網頁結構和內容,確保語義化。 2.CSS通過選擇器和屬性控製網頁樣式,使其美觀易讀。 3.JavaScript通過腳本控製網頁行為,實現動態和交互功能。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

WebStorm Mac版
好用的JavaScript開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能