第一章 概述:
1.基本概念:
- 報文(message):網絡中交換與傳輸的數據單元,即站點一次性要發放的數據塊。報文中包含了將要發送的完整數據信息,其長短可不一致,長度不限且可變。
- 分組,包(packet):用戶發送的數據會被分成多個更小的部分,每個部分前面會加上對數據的描述和控制信息。
message 可以被拆成不同的 packet
packet = header + data
- 協議(protocol):爲進行網絡中的數據交換而建立的規則、標準或規定
2.分層的網絡體系結構:
- 只要能保證對上層的服務接口不變,該層的協議就可以改變
- 分層的好處:每一層都很獨立,所以要達到此目的要保證層間耦合程度要小
- OSI 七層模型:物理層、鏈路層、網絡層、傳輸層、會話層、表示層、應用層
- TCP/IP 五層模型:物理層、數據鏈路層、網絡層、傳輸層、應用層
- 各層的作用:
名稱 | 作用 |
---|---|
物理層 | 傳輸介質將電信號轉化成0/1比特,實現“透明的”比特流傳輸 |
數據鏈路層 | 保證數據的無差錯傳輸,以幀爲單位 |
網絡層 | 實現數據在不同子網中的傳輸,以分組或包爲單位。路由器在該層 |
運輸層 | 提供可靠的端到端的數據傳輸,以報文爲單位 |
應用層 | 爲操作系統或網絡應用程序提供訪問網絡服務的接口 |
面試經典題:
在瀏覽器中輸入www.XXX.com後執行的全部過程?
1.客戶端瀏覽器通過DNS對域名進行解析,得到對應網站的IP地址,通過這個IP地址找到客戶端到服務器端的路徑。
2.瀏覽器發送一個HTTP包,將該包交給傳輸層,傳輸層把HTTP包分成報文段,添加源端口和目的端口,並與目的服務器的TCP程序進行連接並建立對話。
3.傳輸層將信息包傳給網絡層,網絡層做的事通過查找路由表,確定如何到達服務器,同時,網絡層將自己的信息加到傳入的信息包,形成新的數據包。
4.網絡層將新的數據包傳給數據鏈路層,數據鏈路層將數據包處理成以太網幀(繼續添加內容),然後通過物理層進行傳輸。
5.目的服務器對接收到的數據包進行解析,過程與上述封裝成包的過程相反。
6.目的服務器會按照與上述1-4步相同的過程形成一個數據包,發送給客戶端,客戶端通過5來進行解析,這樣就可以訪問到相應網站了。