【linux網絡】網絡基礎概念

1. 初始協議

1.1?OSI 七層模型

  • ?OSI(Open System Interconnection,開放系統互連)七層網絡模型稱為開放式系統互聯參考模型,是一個邏輯上的定義和規范;
  • 把網絡從邏輯上分為了 7 層. 每一層都有相關、相對應的物理設備,比如路由器,交換機;
  • OSI 七層模型是一種框架性的設計方法,其最主要的功能使就是幫助不同類型的主機實現數據傳輸;
  • 它的最大優點是將服務、接口和協議這三個概念明確地區分開來,概念清楚,理論也比較完整。通過七個層次化的結構模型使不同的系統不同的網絡之間實現可靠的通訊;
  • 但是, 它既復雜又不實用; 所以我們按照 TCP/IP 四層模型來講解。

  • 其實在網絡角度,OSI 定的協議 7 層模型其實非常完善,但是在實際操作的過程中,會話層、表示層是不可能接入到操作系統中的,所以在工程實踐中,最終落地的是5層協議。
  • 但是要理解上面的話,需要我們學習完網絡才可以理解,這里就知道就可以。

1.2 TCP/IP 五層(或四層)模型

????????TCP/IP 是一組協議的代名詞,它還包括許多協議,組成了 TCP/IP 協議簇。
????????TCP/IP 通訊協議采用了 5 層的層級結構,每一層都呼叫它的下一層所提供的網絡來完
成自己的需求。
  • 物理層: 負責光/電信號的傳遞方式. 比如現在以太網通用的網線(雙絞 線)、早期以太網采用的的同軸電纜(現在主要用于有線電視)、光纖, 現在的 wifi 無線網使用電磁波等都屬于物理層的概念。物理層的能力決定了最大傳輸速率、傳輸距離、抗干擾性等. 集線器(Hub)工作在物理層。
  • 數據鏈路層: 負責設備之間的數據幀的傳送和識別. 例如網卡設備的驅動、幀同步(就是說從網線上檢測到什么信號算作新幀的開始)、沖突檢測(如果檢測到沖突就 自動重發)、數據差錯校驗等工作. 有以太網、令牌環網, 無線 LAN 等標準. 交換機(Switch)工作在數據鏈路層。
  • 網絡層: 負責地址管理和路由選擇. 例如在 IP 協議中, 通過 IP 地址來標識一臺主機, 并通過路由表的方式規劃出兩臺主機之間的數據傳輸的線路(路由). 路由器(Router)工作在網路層。
  • 傳輸層: 負責兩臺主機之間的數據傳輸. 如傳輸控制協議 (TCP), 能夠確保數據可靠的從源主機發送到目標主機。
  • 應用層: 負責應用程序間溝通,如簡單電子郵件傳輸(SMTP)、文件傳輸協(FTP)、網絡遠程訪問協議(Telnet)等. 我們的網絡編程主要就是針對應用層。?

????????物理層我們考慮的比較少,我們只考慮軟件相關的內容. 因此很多時候我們直接稱為 TCP/IP 四層模型 .
????????一般而言
  • 對于一臺主機, 它的操作系統內核實現了從傳輸層到物理層的內容;
  • 對于一臺路由器, 它實現了從網絡層到物理層;
  • 對于一臺交換機, 它實現了從數據鏈路層到物理層;
  • 對于集線器, 它只實現了物理層
????????但是并不絕對. 很多交換機也實現了網絡層的轉發 ; 很多路由器也實現了部分傳輸層的內容( 比如端口轉發 );

2. 再識協議

????????上面的內容,我們只是懂了一些基本概念,還是達不到我們的目標,下面我們再次重新理解協議和協議分層。

2.1 為什么要有 TCP/IP 協議?

????????首先,即便是單機,你的計算機內部,其實都是存在協議的,比如:其他設備和內存通信,會有內存協議。其他設備和磁盤通信,會有磁盤相關的協議,比如:SATA,IDE SCSI 等。只不過我們感知不到罷了。而且這些協議都在本地主機各自的硬件中,通信的成本、問題比較少。
????????其次,網絡通信最大的特點就是主機之間變遠了。任何通信特征的變化,一定會帶來新的問題,有問題就得解決問題,所以需要新的協議咯。

????????所以,為什么要有 TCP/IP 協議?本質就是通信主機距離變遠了。

2.2 什么是 TCP/IP 協議?

  • TCP/IP 協議的本質是一種解決方案。
  • TCP/IP 協議能分層,前提是因為問題們本身能分層。

2.3 TCP/IP 協議與操作系統的關系(宏觀上,怎么實現的)

2.4 所以究竟什么是協議??

????????截止到目前,我們還沒接觸過任何協議,但是如何樸素的理解協議,我們已經可
以試試了。
????????OS 源代碼一般都是用 C/C++ 語言寫的。
下面,仔細看看下面的圖

問題:主機 B 能識別 data ,并且準確提取 a=10 b=20 c=30 嗎?
回答:答案是肯定的!因為雙方都有同樣的結構體類型 struct protocol 。也就是說,用同樣的代碼實現協議,用同樣的自定義數據類型,天然就具有” 共識 ,能夠識別對方發來的數據,這不就是約定嗎?
關于協議的樸素理解:所謂協議,就是通信雙方都認識的結構化的數據類型因為協議棧是分層的,所以,每層都有雙方都有協議,同層之間,互相可以認識對方的協議。

本篇文章介紹了網絡協議等相關內容,歡迎評論和交流!

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

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

相關文章

【Android】談談DexClassLoader

一,Dex和Jar DEX 文件(Dalvik Executable)相較于普通的 JAR(Java 字節碼 .class 文件)進行了多方面的優化,主要是為了適應 Android 設備的性能和資源限制(例如內存、存儲空間和處理能力)。以下是 DEX 文件的一些具體優化點: 1. 內存占用優化 合并類文件: DEX 文件將…

【Flutter】Unity 三端封裝方案:Android / iOS / Web

關聯文檔:【方案分享】Flutter Unity 跨平臺三維渲染架構設計全解:插件封裝、通信機制與熱更新機制—— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理,助力 XR 項目落地 —— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理&…

Html1

一,HTML概述 網頁開發需要學習的知識: html css javaScript 兩個框架 VUE.js ElementUI UI user interface 用戶界面 HTML xml 可擴展標記語言-->存儲數據 Markup Language標簽語言都會提供各種標…

一、I/O的相關概念

I/O的相關概念 1、I/O I/O即Input和Output,用戶進程執行I/O操作,歸結起來,也就是向操作系統發出請求,讀請求就把數據填到緩沖區里,寫數據就把緩沖區里數據排干,目的地可以是磁盤也可以是其他通道。進程通…

出現Invalid bound statement (not found)問題的原因可能有哪些

1.全局配置文件沒配好? 檢查全局配置文件application.properties或application.yml是否配置掃描mapper包的文件路徑 #mybatis配置mapper文件路徑 #mybatis.mapper-locationsclasspath:/mapper/*.xml #mybatis-plus配置mapper文件路徑 mybatis-plus.mapper-locatio…

第十節:文本編輯

理論知識 文本編輯器的基本概念:文本編輯器是用于創建和編輯文本文件的工具。在 Linux 系統中,常見的文本編輯器有 vi、vim、nano 等。vi 和 vim 編輯器:vi 是一款經典的文本編輯器,vim 是 vi 的增強版,提供了更多的功…

部署一個自己的Spring Ai 服務(deepseek/通義千問)

Spring Boot 無縫接入 DeepSeek 和通義千問請求日志記錄及其ip黑白名單 SpringBoot版本 3.2.0 JDK 版本為17 redis 3.2.0 mybatis 3.0.3 依賴引入 關鍵依賴 <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-sp…

組裝 (DIY) 一臺顯示器 (4K 屏支持 4 畫面分屏 PBP 1080p x4)

首發日期 2025-04-26, 以下為原文內容: 家里的 PC 主機比較多, 如果同時開機, 顯示器就不夠用了. 因為窮, 窩租住的房間又很小, 放不下很多顯示器. 所以, 窩希望買一臺支持 分屏 功能的顯示器. 最好是 4K 分辨率 (3840x2160) 的屏幕, 然后 4 分屏 (有 4 個 DP 或 HDMI 輸入接口…

[Java入門]抽象類和接口

[Java入門]抽象類和接口 1. 抽象類1.1 抽象類的概念1.2 抽象類語法1.3 抽象類特性1.4 抽象類的作用 2. 接口2.1 接口的概念2.2 語法規則2.3 接口使用2.4 接口特性2.5 實現多個接口2.6 接口間的繼承2.7 抽象類和接口的區別 3. Object類3.1 獲取對象信息3.2 對象比較equals方法 1…

聚焦數字中國|AI賦能與安全守護:Coremail引領郵件辦公智能化轉型

4月28日&#xff0c;第八屆數字中國建設峰會在福州拉開序幕。當天&#xff0c;數字中國新產品新技術發布會開講&#xff0c;Coremail受邀亮相現場&#xff0c;與與會嘉賓分享AI在郵件產品領域的最新應用成果和實踐經驗。 Coremail首席客戶代表劉子建以《AI賦能與安全守護&#…

Qt官方案例知識點總結(拖放操作——Drag And Drop Robot )

-------------------------------------------------------------------------------------------------------------------------------- QPixmap輪廓剪裁 去掉Pixmap的外圍部分&#xff0c;如下&#xff1a; QPixmap pixmap("./img"); //調用createHeuristicMas…

【LLM】MOE混合專家大模型綜述(重要模塊原理)

note 當前的 MoE 架構就是一個用顯存換訓練時長/推理延遲的架構MoE 目前的架構基本集中在于將原先 GPT 每層的 FFN 復制多份作為 n 個 expert&#xff0c;并增加一個 router&#xff0c;用來計算每個 token 對應到哪個 FFN&#xff08;一般采用每個 token 固定指派 n 個 exper…

電子病歷高質量語料庫構建方法與架構項目(臨床情景理解模塊篇)

引言 隨著人工智能技術在醫療健康領域的廣泛應用,電子病歷(Electronic Medical Records,EMR)作為臨床醫療數據的重要載體,已成為醫學研究和臨床決策支持的關鍵資源。電子病歷高質量語料庫的構建為醫療人工智能模型的訓練和應用提供了基礎支撐,其中臨床情境理解模塊是連接…

大連理工大學選修課——機器學習筆記(1):概述

機器學習概述 機器學習的本質 機器學習是為了設計解決問題的算法。 為輸入與輸出建立某種映射&#xff1a; 類似于函數關系&#xff1a; Y f ( X ) Yf(X) Yf(X) 不同的映射方法體現了不同的思想。 相關概念 深度學習是機器學習的一個分支 深度學習是深層次化的神經網…

遠程 Debugger 多用戶環境下的用戶隔離實踐

遠程 Debugger 多用戶環境下的用戶隔離實踐 在現代分布式開發和云原生環境下&#xff0c;遠程 Debugger 的應用愈發普遍。然而&#xff0c;隨著多人協作和多租戶場景的出現&#xff0c;**遠程 Debugger 的“用戶隔離”**變得至關重要。只有實現了良好的用戶隔離&#xff0c;才…

畢業論文 | 基于C#開發的NMEA 0183協議上位機

以下是基于C#開發的NMEA 0183協議上位機完整實現方案,包含串口通信、數據解析與可視化功能: 基于C#開發的NMEA 0183協議上位機 一、項目結構二、核心代碼實現1. 數據模型定義2. 串口通信管理3. NMEA協議解析核心4. 主界面實現(Windows Forms)三、界面設計關鍵元素(需在窗體…

Qt -DFS可視化

博客主頁&#xff1a;【夜泉_ly】 本文專欄&#xff1a;【暫無】 歡迎點贊&#x1f44d;收藏?關注?? 目錄 前言關于如何sleep實現思路Pixmapspixmaps.hpixmaps.cpp MapSquaremapsquare.hmapsquare.cpp dfsthreaddfsthread.hdfsthread.cpprun dfs其他 WidgetUnit其他 Qt -DFS…

RHCSA Linux 系統 文件系統權限

1. 文件的一般權限 &#xff08;1&#xff09;文件權限標識解讀 drwxr - xr - x. 12 root root 144 Feb 17 16:51 usr ?d&#xff1a;文件類型&#xff08;d 表示目錄&#xff09; ?rwx&#xff1a;文件所有者權限&#xff08;讀 r&#xff0c;寫 w&#xff0c;執行 x&am…

華為云IoT平臺與MicroPython實戰:從MQTT協議到物聯網設備開發

目錄 前言 1. 華為云 1.1. 創建實例 1.2. 創建產品 1.3. 編輯服務模型 1.4. 注冊設備 1.4.1. 復制設備連接參數 1.5. 連接參考代碼 2. micropython版-物聯網 2.1. 環境搭建 2.2. 實現步驟 2.3. 示例代碼 結語 前言 物聯網&#xff08;IoT&#xff09;技術的快速發…

2025-04-30 AIGC-如何做短片視頻

摘要: 2025-04-30 AIGC-如何做短片視頻 如何做短片視頻: 一、畫圖修圖 1.保存視頻&#xff08;無水保存&#xff09; 2.文案提取&#xff08;提取文案&#xff09; 3. DeepSeek(提示詞&#xff09; 4.小夢Ai&#xff08;圖片視頻&#xff09; 5.修圖Ai 6.擴圖Ai 7.養生…