思維導圖
應用層
所有能和用戶交互產生網絡流量的程序(QQ,郵箱)。
- 典型的應用層服務:
- 文件傳輸(FTP)
- 電子郵件(SMTP)
- 萬維網(HTTP)
- …
表示層
用於處理在兩個通信系統中交換信息的表達方式(語法和語義)。
- 功能一:數據格式的變換(翻譯官)
- 因爲我們數據鏈路上傳輸的是比特流的形式,形如:
010101001001
而實際代表的則是圖片的格式,這個時候就需要我們表示層處理這數據轉換。
- 因爲我們數據鏈路上傳輸的是比特流的形式,形如:
- 功能二:數據的加密和解密
- 功能三:數據的壓縮和恢復
- 例如視頻聊天,我們視頻聊天的圖形數據特別大,這個時候就需要壓縮發送過去,等到了接收端在進行解壓。
- 主要協議:
jpeg,ascii
等等。
會話層
向表示層實體/用戶進程提供建立連接並且在連接上有序地傳輸數據。這是會話,也是建立同步(SYN) .
- 功能一:建立,管理,終止會話
- 功能二:使用校驗點可使會話在通信失效時從校驗點/同步點繼續恢復通信,實現數據同步。
- 例如適用於傳輸大文件。
- 主要協議:
ADSP,ASP
等等。
傳輸層
負責主機中兩個進程的通信,即端到端的通信。傳輸單位時報文段或用戶數據段。
- 功能一:可靠傳輸,不可靠傳輸
- 可靠傳輸:例如我們在發送一個大的數據給別人,它實際是會被分割開來一個個數據包,在接受端接受到一個數據包,會返回一個確認信息給發送端,發送端在收到確認後纔會發送下一個數據包。
- 不可靠傳輸:就相當於 QQ 的消息,小的數據只需要一次發送,不需要確認機制,不然很麻煩。
- 功能二:差錯控制
- 數據丟失,錯誤等等
- 功能三:流量控制
- 傳輸速度是否匹配。控制發送發的速度,來和接受方匹配。
- 功能四:複用分用
- 複用:多個應用層進程可同時使用下面運輸層的服務
- 分用:運輸層把收到的信息分別交付給上面應用層中相應的進程。
網絡層
主要是把分組從源端傳送到目的端,爲分組交換網上的不同主機提供通信服務。
網絡層傳輸單位是數據報。
- 功能一:路由選擇
- 選擇合適的路由器傳輸,選擇最佳路徑
- 功能二:流量控制
- 協調發送到和接收端的速度問題。
- 功能三:差錯控制
- 查看分組數據是否有錯。
- 功能四:擁塞控制
- 如果網絡所有節點都來不及接受分組,而要丟棄大量分組的話,網絡就處於擁塞狀態。因此要採取一定的措施,緩解這種擁塞。
- 協議:
IP,IPX,ICMP,IGMP,ARP,RARP,OSPF
等等
數據鏈路層
主要任務是把網絡層傳下來的數據報組裝成幀。
數據鏈路層/鏈路層的傳輸單位是幀。
- 功能一:成幀(定義幀的開始和結束)
...101010100001...
因爲我們的數據比較長,所以要定義一個開始和結束的標誌分開發送,才能讓接受端識別出數據。
- 功能二:差錯控制
- 幀錯+位錯(發現由錯的丟棄以免浪費資源,以及糾錯)
- 功能三:流量控制
- 功能四:訪問(接入)控制
- 控制對信道的訪問。
- 例如廣播,只能一臺機子來發送消息佔用信道
- 協議:
SDLC,HDLC,PPP,STP
等。
物理層
主要任務是在物理媒體上實現比特流的透明傳輸。
物理層傳輸單位是比特。
- 透明傳輸
- 指不管所傳輸的是什麼樣的比特組合,都應對能夠在鏈路上傳送。(不管我接受什麼比特組合,都放到鏈路上傳播。)
- 功能一:定義接口特性
- 功能二:定義傳輸模式
- 單工(只能一個負責發,一個負責接,定義好的),半雙工(一個發,一接,就是如果一方發起通信,另外一方等待,這樣一來一回),雙工(就像兩個人來回交流)。
- 功能三:定義傳輸速率
- 功能四:比特同步
- 功能五:比特編碼
- 協議:
RJ45,802.3
等