計算機網絡 - OSI 七層模型

OSI 七層模型

OSI(Open System Interconnection,開放系統互聯)模型由 ISO(國際標準化組織) 制定,目的是為不同計算機網絡系統之間的通信提供一個標準化的框架。它將網絡通信劃分為 七個層次,每層都負責不同的功能,并與上下層進行交互。

OSI 模型的七層及其詳細功能

層級名稱功能常見協議/技術
第7層應用層(Application Layer)提供用戶接口,實現特定網絡應用HTTP、HTTPS、FTP、SMTP、POP3、Telnet、DNS
第6層表示層(Presentation Layer)數據格式轉換、加密解密、壓縮SSL/TLS、JPEG、MPEG、ASCII、EBCDIC
第5層會話層(Session Layer)負責建立、管理和終止會話NetBIOS、RPC、SMPP
第4層傳輸層(Transport Layer)端到端通信,數據流控制與錯誤檢測TCP、UDP、SCTP、SPX
第3層網絡層(Network Layer)IP尋址、路由選擇IP、ICMP、ARP、RIP、OSPF、BGP
第2層數據鏈路層(Data Link Layer)物理尋址(MAC)、差錯檢測與校正以太網(Ethernet)、PPP、VLAN、HDLC、Frame Relay
第1層物理層(Physical Layer)傳輸比特流,定義硬件標準網線、光纖、無線電信號、藍牙、調制解調器

詳細解析各層功能

1. 物理層(Physical Layer)

  • 負責 數據的物理傳輸,通過傳輸介質(如雙絞線、光纖、無線電波)傳輸比特流(0 和 1)。
  • 確定 傳輸速率、信號編碼、傳輸模式(全雙工/半雙工)
  • 主要硬件設備:網線、光纖、交換機(物理層)、集線器(Hub)、無線信號發射器。

2. 數據鏈路層(Data Link Layer)

  • 負責在 同一鏈路上的直接設備間 進行數據幀傳輸。
  • 提供 物理尋址(MAC 地址)差錯檢測(CRC) 機制,確保數據幀完整傳輸。
  • 分為 兩個子層
    • LLC(邏輯鏈路控制)子層:負責錯誤檢測、流量控制。
    • MAC(媒體訪問控制)子層:負責 MAC 地址管理,控制數據在網絡中的傳輸。
  • 常見協議
    • 以太網(Ethernet)
    • PPP(點對點協議)
    • VLAN(虛擬局域網)

3. 網絡層(Network Layer)

  • 負責數據包的 尋址路由選擇,使數據能夠跨多個網絡傳輸。
  • 使用 IP 地址 進行邏輯尋址,每個設備都有唯一的 IP 地址。
  • 路由器 在該層工作,負責數據包的轉發。
  • 常見協議
    • IP(Internet Protocol):提供 IP 地址尋址和數據包轉發。
    • ICMP(Internet Control Message Protocol):用于錯誤檢測(如 ping)。
    • ARP(Address Resolution Protocol):將 IP 地址轉換為 MAC 地址。
    • RIP、OSPF、BGP:動態路由協議。

4. 傳輸層(Transport Layer)

  • 負責提供端到端通信,確保數據可靠傳輸。
  • 提供 流量控制數據分段錯誤校驗
  • 主要協議
    • TCP(傳輸控制協議):面向連接、可靠傳輸,常用于 HTTP、FTP、SMTP。
    • UDP(用戶數據報協議):無連接、快速傳輸,適用于實時應用(視頻流、VoIP、DNS)。
    • SCTP(流控制傳輸協議):用于信令傳輸,支持多流數據傳輸。

5. 會話層(Session Layer)

  • 負責 建立、管理和終止會話(Session),保證數據的有序交互。
  • 例如:
    • 遠程桌面(RDP)協議用于維持遠程連接會話。
    • 視頻會議軟件使用會話層管理多用戶連接。

6. 表示層(Presentation Layer)

  • 負責 數據格式轉換、加密/解密、壓縮,確保不同系統能正確解析數據。
  • 主要功能
    • 格式轉換:如 ASCII → Unicode。
    • 加密解密:如 SSL/TLS 保護數據傳輸安全。
    • 數據壓縮:如 JPEG、MP3、MPEG。

7. 應用層(Application Layer)

  • 直接與 用戶交互,提供各種網絡應用服務,如網頁瀏覽、電子郵件、文件傳輸等。
  • 常見協議
    • HTTP/HTTPS(網頁瀏覽)
    • FTP(文件傳輸)
    • SMTP/POP3/IMAP(郵件傳輸)
    • DNS(域名解析)

OSI 模型的特點

  1. 層次清晰:每一層只負責特定功能,使協議設計和維護更容易。
  2. 模塊化設計:可以替換某一層的協議,而不會影響整個網絡架構。
  3. 不同協議間的互操作性:提供標準化接口,確保不同廠商的設備能夠通信。

OSI 模型 vs TCP/IP 模型

OSI 模型TCP/IP 模型說明
應用層(第7層)應用層OSI 的應用、表示、會話層合并為 TCP/IP 的應用層
表示層(第6層)-由應用層直接處理
會話層(第5層)-由應用層直接處理
傳輸層(第4層)傳輸層負責端到端通信,TCP、UDP
網絡層(第3層)網絡層負責尋址、路由,使用 IP、ICMP
數據鏈路層(第2層)網絡接口層負責數據幀傳輸,包含 MAC、Ethernet
物理層(第1層)-TCP/IP 直接將其歸入網絡接口層

TCP/IP 是目前實際應用的主要網絡協議,而 OSI 主要作為理論模型指導網絡協議的設計。

總結

  • OSI 七層模型是網絡通信的 標準化框架,分為 物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層
  • 低三層(物理、數據鏈路、網絡層) 負責數據傳輸,高三層(會話、表示、應用層) 負責數據交互,傳輸層 連接上下層。
  • OSI 主要用于理論指導,而 TCP/IP 是實際應用的標準協議。

(完)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/73671.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/73671.shtml
英文地址,請注明出處:http://en.pswp.cn/web/73671.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

flutter-實現瀑布流布局及下拉刷新上拉加載更多

文章目錄 1. 效果預覽2. 結構分析3. 完整代碼4. 總結 1. 效果預覽 在 Flutter 應用開發中,瀑布流布局常用于展示圖片、商品列表等需要以不規則但整齊排列的內容。同時,下拉刷新和上拉加載更多功能,能夠極大提升用戶體驗,讓用戶方…

在 Ubuntu 下通過 Docker 部署 Nginx 服務器

1. Docker 和 Nginx 簡介以及實驗環境 Docker 是一個開源的容器化平臺,允許開發者將應用程序及其依賴項打包成一個輕量級的、可移植的容器。通過 Docker,開發者可以在任何支持 Docker 的環境中運行應用,從而實現一致的開發和生產環境。Docke…

IoT平臺實時監測機器人狀態的實現方案

通過IoT平臺實時監測機器人狀態的實現方案與可執行路徑 一、整體架構設計 #mermaid-svg-6xMlDfFSZM4Wc8tA {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-6xMlDfFSZM4Wc8tA .error-icon{fill:#552222;}#mermaid-sv…

mybatis里in關鍵字拼接id問題

我們一般會把ids集合用StrUtil.join(‘,’)轉成"1,2,3"這種形式 然后放入in中 我們會這么寫: select id, nick_name, icon from tb_user where id in (#{ids}) order by FIELD(id, #{ids})結果發現sql執行是這樣的: select id, nick_name, icon from tb_user where…

4.用 Excel 錄入數據

一 用 Excel 錄入數據的兩種方式 用鼠標鍵盤錄入數據和從網上爬取數據。 二 用鼠標鍵盤錄入數據 1.錄入數據的規范 橫著錄入數據(橫著一條條錄入數據)。 2.使用快捷鍵進行數據錄入 tab 鍵和 enter 鍵。 tab 鍵:向右移動一個單元格。 tab 鍵…

C++類與對象-3.23筆記

今天學習了類的概述和寫類的基本框架 在嗶哩嗶哩學習的這個老師的C面向對象高級語言程序設計教程&#xff08;118集全&#xff09;講的很不錯&#xff08;真的&#xff01;&#xff01;&#xff01;&#xff09;&#xff0c;C語言也是在這個老師的帶領下學習的 #include<io…

Android讀寫權限分析

Android系統使用的是Linux內核&#xff0c;所以Android系統沿用了linux系統的那一套文件讀寫權限。 目錄 1&#xff0c;權限解讀1.1&#xff0c;權限分為三種類型&#xff1a;1.2&#xff0c;權限針對的三類對象&#xff1a;1.3&#xff0c;文件和目錄的權限區別1.3.1&#xf…

Python二分查找【清晰易懂】

1. 二分查找是什么&#xff1f; 想象你在玩“猜數字”游戲&#xff1a; 對方心里想一個 1~100 的數字&#xff0c;你每次猜一個數&#xff0c;對方會告訴你是“大了”還是“小了”。 最快的方法&#xff1a;每次都猜中間的數&#xff01;比如第一次猜50&#xff0c;如果大了&…

關于Qt的各類問題

目錄 1、問題&#xff1a;Qt中文亂碼 2、問題&#xff1a;啟動時避免ComBox控件出現默認值 博客會不定期的更新各種Qt開發的Bug與解決方法,敬請關注! 1、問題&#xff1a;Qt中文亂碼 問題描述&#xff1a;我在設置標題時出現了中文亂碼 this->setWindowTitle("算法…

關于我對接了deepseek之后部署到本地將數據存儲到mysql的過程

寫在前面 今天寫一下使用nodejs作為服務端&#xff0c;vue作為客戶端&#xff0c;mysql的數據庫&#xff0c;對接deepseek的全過程&#xff0c;要實現一個很簡單的效果就是&#xff0c;可以自由的詢問&#xff0c;然后可以將詢問的過程存儲到mysql的數據庫中。 文檔對接 deeps…

游戲引擎學習第182天

回顧和今天的計劃 昨天的進展令人驚喜&#xff0c;原本的調試系統已經被一個新的系統完全替換&#xff0c;新系統不僅能完成原有的所有功能&#xff0c;還能捕獲完整的調試信息&#xff0c;包括時間戳等關鍵數據。這次的替換非常順利&#xff0c;效果很好。 今天的重點是在此基…

CSS終極指南:從基礎到高級實踐

目錄 一、CSS基礎概念與核心語法 1.1 CSS的本質與作用 1.2 CSS語法結構 二、CSS與HTML結合的四種方式 2.1 內聯樣式&#xff08;Inline Style&#xff09; 2.2 內部樣式表&#xff08;Internal Style Sheet&#xff09; 2.3 外部樣式表&#xff08;External Style Sheet…

MATLAB 2024b深度學習新特性全面解析與DeepSeek大模型集成開發

MATLAB 2024b深度學習工具箱通過架構創新與功能強化&#xff0c;為科研創新和行業應用提供了全棧式解決方案。 第一&#xff1a;MATLAB 2024b深度學習工具箱新特性 1、MATLAB Deep Learning Toolbox 2、實時腳本&#xff08;Live Script&#xff09;與交互控件&#xff08…

.NET開源的智能體相關項目推薦

一、AntSK 由AIDotNet團隊開發的人工智能知識庫與智能體框架&#xff0c;支持多模型集成和離線部署能力。 核心能力&#xff1a; ? 支持OpenAI、Azure OpenAI、星火、阿里靈積等主流大模型&#xff0c;以及20余種國產數據庫&#xff08;如達夢&#xff09; ? 內置語義內核&a…

Qt彈出新窗口并關閉(一個按鈕)

參考&#xff1a;Qt基礎 練習&#xff1a;彈出新窗口并關閉的兩種實現方式&#xff08;兩個按鈕、一個按鈕&#xff09;_qt打開一個窗口另一個關閉-CSDN博客 實現&#xff1a; 一個按鈕&#xff0c;點擊一次&#xff0c;按鈕的名字從open window變為close window&#xff0c;…

PHP中yield關鍵字的使用

PHP版本>5.5 原理&#xff1a;yield關鍵字會生成一個Generator類的對象&#xff0c;PHP通過Generator實例計算出下一次迭代的值&#xff0c;再次返回一個Generator對象并停止循環&#xff08;即循環一次執行一次&#xff09;。 理解&#xff1a;使用在for/foreach/while循…

SpringBoot集成騰訊云OCR實現身份證識別

OCR身份證識別 官網地址&#xff1a;https://cloud.tencent.com/document/product/866/33524 身份信息認證&#xff08;二要素核驗&#xff09; 官網地址&#xff1a;https://cloud.tencent.com/document/product/1007/33188 代碼實現 引入依賴 <dependency><…

Tabby 一:如何在Mac配置保姆級教程(本地模型替換hugging face下載)

1. brew安裝 mac需要先安裝brew&#xff0c;如果本地已經安裝過brew這一步可以忽略&#xff0c;遇到問題可以自己ai問 /bin/bash -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 可能遇到source .zprofile失敗&#xff0c;因為…

C++中使用CopyFromRecordset將記錄集拷貝到excel中時,如果記錄集為0個,函數崩潰,是什么原因

文章目錄 原因分析解決方案1. 檢查記錄集是否為空2. 安全調用COM方法3.進行異常捕獲4. 替代方案&#xff1a;手動處理空數據 總結 在C中使用CopyFromRecordset將空記錄集&#xff08;0條記錄&#xff09;復制到Excel時崩潰的原因及解決方法如下&#xff1a; 原因分析 空記錄集…

【算法學習計劃】貪心算法(上)

目錄 前言&#xff08;什么是貪心&#xff09; leetcode 860.檸檬水找零 leetcode 2208.將數組和減半的最少操作次數 leetcode 179.最大數 leetcode 376.擺動序列 leetcode 300.最長遞增子序列 leetcode 334.遞增的三元子序列 leetcode 674.最長連續遞增序列 leetcode …