我們?yōu)槭裁葱枰W(wǎng)絡(luò)協(xié)議來傳輸數(shù)據(jù)?
連接互聯(lián)網(wǎng)的各種設(shè)備需要用它們能理解的語言進(jìn)行通信。各種計(jì)算機(jī)系統(tǒng)使用 OSI(Open Systems Interconnectio)模型規(guī)定的標(biāo)準(zhǔn)相互通信。
OSI 模型有七個(gè)抽象層,每個(gè)層都有不同的職責(zé)和協(xié)議。
下圖顯示了 OSI 模型中每一層的功能。每個(gè)中間層都為其上層提供功能,并由其下層提供服務(wù)。
圖片
01 應(yīng)用層
應(yīng)用層最接近終端用戶。大多數(shù)應(yīng)用程序都位于這一層。我們從后端服務(wù)器請(qǐng)求數(shù)據(jù),無需了解數(shù)據(jù)傳輸?shù)木唧w細(xì)節(jié)。這一層的協(xié)議包括 HTTP、SMTP、FTP、DNS 等。
02 表現(xiàn)層
這一層處理數(shù)據(jù)編碼、加密和壓縮,為應(yīng)用層準(zhǔn)備數(shù)據(jù)。例如,HTTPS 利用 TLS 實(shí)現(xiàn)客戶端與服務(wù)器之間的安全通信。
03 會(huì)話層
該層用于打開和關(guān)閉兩個(gè)設(shè)備之間的通信。如果數(shù)據(jù)量較大,會(huì)話層就會(huì)設(shè)置檢查點(diǎn),避免從頭開始重新發(fā)送。
04 傳輸層
該層處理兩個(gè)設(shè)備之間的端到端通信。它在發(fā)送方將數(shù)據(jù)分解成段,然后在接收方重新組裝。這一層有流量控制,以防止擁塞。這一層的主要協(xié)議是 TCP 和 UDP。
05 網(wǎng)絡(luò)層
這一層實(shí)現(xiàn)不同網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸。它進(jìn)一步將網(wǎng)段或數(shù)據(jù)報(bào)分解成更小的數(shù)據(jù)包,并使用 IP 地址找到通往最終目的地的最佳路由。這一過程被稱為路由選擇。
06 數(shù)據(jù)鏈路層
這一層允許在同一網(wǎng)絡(luò)的設(shè)備之間傳輸數(shù)據(jù)。數(shù)據(jù)包被分解成幀,這些幀被限制在局域網(wǎng)內(nèi)。
07 物理層
這一層通過電纜和交換機(jī)發(fā)送比特流,因此與設(shè)備之間的物理連接密切相關(guān)。
既然我們已經(jīng)了解了每一層的職責(zé),那就讓我們來總結(jié)一下圖中的數(shù)據(jù)傳輸過程。這就是所謂的封裝(encapsulation)和解封裝(decapsulation)。
封裝是指在數(shù)據(jù)向目的地傳輸?shù)倪^程中為數(shù)據(jù)添加報(bào)頭(header)。解封裝會(huì)移除這些報(bào)頭,以獲取原始數(shù)據(jù)。
步驟 1:當(dāng)設(shè)備 A 使用 HTTP 通過網(wǎng)絡(luò)向設(shè)備 B 發(fā)送數(shù)據(jù)時(shí),最初會(huì)在應(yīng)用層添加一個(gè) HTTP 報(bào)頭。
步驟 2:在數(shù)據(jù)中添加 TCP 或 UDP 報(bào)頭。它在傳輸層被封裝成 TCP segments。報(bào)頭包含源端口、目的端口和序列號(hào)。
步驟 3:在網(wǎng)絡(luò)層用 IP 報(bào)頭對(duì)這些段落進(jìn)行封裝。IP 報(bào)頭包含源 IP 地址和目的 IP 地址。
步驟 4:在數(shù)據(jù)鏈路層為 IP 數(shù)據(jù)報(bào)添加 MAC 報(bào)頭,其中包含源 MAC 地址和目的 MAC 地址。
第 5 步:封裝幀被發(fā)送到物理層,并作為比特流在網(wǎng)絡(luò)上發(fā)送。
步驟 6-10:設(shè)備 B 從網(wǎng)絡(luò)接收到比特流后,會(huì)啟動(dòng)解封裝過程,這與封裝過程相反。報(bào)頭逐層去除,直到設(shè)備 B 可以訪問原始數(shù)據(jù)。
請(qǐng)注意,每一層都使用報(bào)頭來處理指令,而不需要解封上一層的數(shù)據(jù)。
TCP/IP 模型
與理論上的 OSI 模型相比,TCP/IP 模型提供了一個(gè)更實(shí)用的框架。它包含四個(gè)關(guān)鍵層:
應(yīng)用層 支持 HTTP、SMTP 等最終用戶進(jìn)程
傳輸層 處理主機(jī)到主機(jī)的通信(TCP、UDP)
網(wǎng)絡(luò)層 尋址和路由數(shù)據(jù)包(IP 協(xié)議)
鏈路層 通過網(wǎng)絡(luò)的物理電線、電纜或無線信道移動(dòng)比特
這一模型更貼近現(xiàn)實(shí)世界的互聯(lián)網(wǎng)通信,將七個(gè) OSI 層壓縮為這四個(gè)關(guān)鍵層。
審核編輯:劉清
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
2017瀏覽量
66051 -
SMTP
+關(guān)注
關(guān)注
0文章
32瀏覽量
12204 -
FTP
+關(guān)注
關(guān)注
0文章
115瀏覽量
41400 -
OSI
+關(guān)注
關(guān)注
0文章
85瀏覽量
15649
原文標(biāo)題:面試官:我們?yōu)槭裁葱枰?7 層 OSI 網(wǎng)絡(luò)模型?
文章出處:【微信號(hào):小林coding,微信公眾號(hào):小林coding】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論