筆記說明前端
瀏覽器工做原理與實踐是李兵【前盛大創新院高級研究員】在極客時間開的一個專欄,透過瀏覽器看懂前端本質, 筆者主要整理學習過程的一些要點筆記以及感悟,完整的能夠加入李兵老師的專欄學習。 瀏覽器
如何保證一個頁面文件可以完整的送達瀏覽器呢?bash
因爲 IP 是最底層的協議,只負責把數據包傳送到對方電腦
那麼問題來了,接收到數據的目的主機並不知道要把數據包交給那個程序(淘寶? 鹹魚? 惟品會?)
複製代碼
因此 UDP(用戶數據包協議) 來嘍~併發
UDP 中重要的信息是端口號, 經過端口號,就能夠把數據包發送給相應的應用 學習
1. 能夠檢驗數據是否正確, 但不提供重發機制
2. 發送以後沒法知道是否到達目的地
3. 傳輸速度快
4. 對於拆分的小數據包,UDP並不知道該如何組裝還原成完整的文件
複製代碼
由於UDP不保證數據的可靠性,因此 TCP 來嘍 ~spa
TCP 將數據完整的送達應用 -- 傳輸層code
TCP協議: 面向鏈接的、可靠的、基於字節流的傳輸層通信協議。
複製代碼
TCP中不只有端口號,還有用於排序的序列號(將亂序的數據包組合成一個完整的文件)。
複製代碼
TCP 總結:cdn
1.TCP對於數據包的丟失,TCP會提供重連機制。
2.包含序列號,對於拆分的小數據包,TCP提供排序機制,組裝成完整的文件。
3.TCP中也包含了端口號信息,能夠將數據包準確送到具體應用。
複製代碼
完整的 TCP 鏈接過程blog
經典的三次握手 🤝 四次揮手🙋♂️排序
1. 鏈接創建(三次握手):創建TCP鏈接時,須要客戶端和服務端一共發送三個數包肯定創建鏈接。
2. 傳輸數據: 接收端須要對發過來的數據進行確認操做併發送確認信息給發送端(若發送端沒有接收到確認信息,則視爲數據包丟失,判斷爲丟失後,就會出發重發機制)。
3. 斷開鏈接。
複製代碼
總結: