Linux網絡基礎(一)

目錄

計算機網絡背景

網絡發展

初識 "協議"

網絡協議初識

協議分層

軟件分層的好處

打電話例子

OSI七層模型

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

參考資料

再識協議

為什么要有 TCP/IP 協議?

什么是 TCP/IP 協議?

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

所以究竟什么是協議?

?數據的產生:你下單買東西(源設備生成數據)

當你在電商平臺下單時,相當于源設備(比如你的手機、電腦)產生了要傳輸的數據(比如訂單信息、支付請求、聊天消息等)。此時數據還是 “原始狀態”,就像你剛選好商品,還沒交給快遞員 —— 需要 “打包” 才能上路。

2. 數據的封裝:商家打包裝 + 填快遞單(數據封裝:加 “頭部信息”)

3. 數據的 “快遞員”:快遞公司接手(數據進入網絡傳輸層 / 網絡層)

4. 數據的中轉:快遞分揀中心 “選路”(路由器 / 交換機轉發數據)

5. 數據的最后一公里:快遞員送貨上門(目標設備接收數據)

6. 異常處理:丟件、錯發怎么辦?(數據傳輸的糾錯機制)

總結:數據傳輸 =“帶快遞單的包裹流轉”

網絡傳輸基本流程

網絡傳輸流程圖

局域網(以太網為例)通信原理

認識 MAC 地址

數據包封裝和分用

網絡中的地址管理 - 認識 IP 地址

IP 網絡的意義和網絡通信的宏觀流程

IP 網絡的核心意義

網絡通信的宏觀流程


計算機網絡背景

網絡發展

獨立模式: 計算機之間相互獨立

網絡互聯: 多臺計算機連接在一起, 完成數據共享

局域網LAN: 計算機數量更多了, 通過交換機和路由器連接在一起

廣域網WAN: 將遠隔千里的計算機都連在一起

所謂 "局域網" 和 "廣域網" 只是一個相對的概念. 比如, 我們有 "天朝特色" 的廣域網, 也可以看做一個比較大的局域網.

初識 "協議"

  • "協議" 是一種約定.
  • 打電話約定電話鈴響的次數的約定

計算機之間的傳輸媒介是光信號和電信號. 通過 "頻率" 和 "強弱" 來表示 0 和 1 這樣的信息. 要想傳遞各種不同的信息, 就需要約定好雙方的數據格式.

思考: 只要通信的兩臺主機, 約定好協議就可以了么?

定好協議,但是你用頻率表示 01,我用強弱表示 01,就好比我用中國話,你用葡萄牙語一樣,雖然大家可能遵守的一套通信規則,但是語言不同,即是訂好了基本的協議,也是無法正常通信的

所以,完善的協議,需要更多更細致的規定,并讓參與的人都要遵守。

為什么要有協議呢?

  • 計算機生產廠商有很多
  1. 計算機操作系統, 也有很多
  • 計算機網絡硬件設備, 還是有很多
  • 如何讓這些不同廠商之間生產的計算機能夠相互順暢的通信? 就需要有人站出來, 約定一個共同的標準, 大家都來遵守, 這就是網絡協議

一般具有定制協議或者標準的資格的組織或者公司都必須是業界公認或者具有江湖地位的組織或者公司,下面是文心一言生成的標準制定組織,大家看一下就可以

  1. 國際標準化組織:
  • IEEE(電氣和電子工程師協會):這是一個由計算機和工程領域專家組成的龐大技術組織,在通信協議領域貢獻突出。IEEE 制定了全世界電子、電氣和計算機科學領域 30%左右的標準,包括 IEEE 802 系列標準,這些標準涵蓋了從局 域網(LAN)到廣域網(WAN)等多種網絡技術。
  • ISO(國際標準化組織):ISO 是由多個國家的標準化團體組成的國際組織,它在開放系統互連(OSI)模型方面的工作尤為著名。OSI 模型定義了網絡通信的七層協議結構,盡管在實際應用中,TCP/IP 協議族更為普遍,但 OSI 模型仍然在學術和理論研究中占有重要地位。
  • ITU(國際電信聯盟):ITU 是聯合國下屬的專門機構,負責制定電信領域的國際標準。ITU-T 制定的標準涵蓋了電話和網絡通信,與 ISO 合作確保了通信 技術的全球兼容性和互操作性。

????????2. 區域標準化組織:

  • ETSI(歐洲電信標準學會):由歐洲共同體各國政府資助,是一個由電信行業的廠商與研究機構參加并從事研究開發到標準制定的組織。
  • ASTAP(亞洲與泛太平洋電信標準化協會):1998 年由日本與韓國發起成立的標準化組織,旨在加強亞洲與太平洋地區各國信息通信基礎設施及其相互連接的標準化工作的協作。

????????3. 公司:

  • 某些公司,如泰凌微,也自研各種標準的軟件協議棧,包括低功耗藍牙、 zigbee、thread 及 Matter 等,并可進行定制化改動,這是其核心競爭力之一。泰凌微還計劃重點發展智能電子價簽、智能遙控、智能家居等市場。

????????4. 民間國際團體:

  • IETF(互聯網工程師任務組):這是一個負責開發和推廣互聯網協議(特別 是構成 TCP/IP 協議族的協議)的志愿組織,通過 RFC 發布新的或者取代老的協議標準。

????????5. 官方機構:

  • FCC(聯邦通信委員會):美國對通信技術的管理的官方機構,主要職責是通過對無線電、電視和有線通信的管理來保護公眾利益。也對包括標準化在內的 通信產品技術特性進行審查和監督。

以上這些組織或公司都能在一定程度上定制協議標準,以滿足特定需求或推動技術發展。

網絡協議初識

協議分層

  • 協議本質也是軟件,在設計上為了更好的進行模塊化,解耦合,也是被設計成為層狀結構的

軟件分層的好處

打電話例子

  • 在這個例子中, 我們的"協議"只有兩層:語言層、通信設備層。
  • 但是實際的網絡通信協議,設計的會更加復雜, 需要分更多的層
  • 但是通過上面的簡單例子,我們是能理解,分層可以實現解耦合,讓軟件維護的成本更低

OSI七層模型

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

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

OSI七層模型從底層到高層依次為:

1. 物理層:定義物理介質(如網線、光纖)上比特流的傳輸規則,例子:以太網物理接口、Wi-Fi無線電信號傳輸。

2. 數據鏈路層:將比特封裝為幀,處理鏈路差錯和MAC尋址,例子:以太網幀封裝、交換機基于MAC地址轉發數據。

3. 網絡層:負責跨網絡的路由和IP尋址,實現數據包從源到目的的路徑選擇,例子:IP協議、路由器轉發數據包、ping命令依賴的ICMP協議。

4. 傳輸層:提供端到端的可靠/不可靠傳輸,定義端口號區分應用,例子:TCP(可靠傳輸,如網頁加載)、UDP(實時傳輸,如視頻通話)。

5. 會話層:管理會話的建立、維護和終止,例子:數據庫連接的會話控制、遠程登錄(Telnet)的會話管理。

6. 表示層:處理數據格式轉換、加密/解密、壓縮,例子:JPEG圖像編碼、SSL/TLS加密、JSON/XML格式轉換。

7. 應用層:直接面向用戶應用,提供特定服務,例子:HTTP(網頁傳輸)、FTP(文件傳輸)、SMTP(郵件發送)。

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

TCP/IP是一組協議的代名詞,它還包括許多協議,組成了TCP/IP協議簇.

TCP/IP通訊協議采用了5層的層級結構,每一層都呼叫它的下一層所提供的網絡來完成自己的需求.

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

物理層我們考慮的比較少,我們只考慮軟件相關的內容. 因此很多時候我們直接稱為 TCP/IP 四層模型.

一般而言

  • 對于一臺主機, 它的操作系統內核實現了從傳輸層到物理層的內容;
  • 對于一臺路由器, 它實現了從網絡層到物理層;
  • 對于一臺交換機, 它實現了從數據鏈路層到物理層;
  • 對于集線器, 它只實現了物理層;

但是并不絕對. 很多交換機也實現了網絡層的轉發; 很多路由器也實現了部分傳輸層的內容(比如端口轉發);

參考資料

TCP/IP四層模型和OSI七層模型的概念_網絡7層模型之間的關系-CSDN博客

再識協議

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

為什么要有 TCP/IP 協議?

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

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

什么是 TCP/IP 協議?

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

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

所以究竟什么是協議?

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

下面,仔細看看下面的圖

問題:主機 B 能識別 data,并且準確提取 a=10,b=20,c=30 嗎?

回答:答案是肯定的!因為雙方都有同樣的結構體類型 struct protocol。也就是說, 用同樣的代碼實現協議,用同樣的自定義數據類型,天然就具有”共識“,能夠識別對方發來的數據,這不就是約定嗎?

關于協議的樸素理解:所謂協議,就是通信雙方都認識的結構化的數據類型

因為協議棧是分層的,所以,每層都有雙方都有協議,同層之間,互相可以認識對方的協議。

  • 網絡購物,快遞單的例子

用網絡購物的 “快遞單” 來比喻數據在網絡中的傳輸,能幫我們直觀理解數據從源頭到目標的完整流程,每個環節的作用就像快遞流轉中 “人、單、物” 的配合。以下是具體對應關系:

  1. ?數據的產生:你下單買東西(源設備生成數據)

當你在電商平臺下單時,相當于源設備(比如你的手機、電腦)產生了要傳輸的數據(比如訂單信息、支付請求、聊天消息等)。此時數據還是 “原始狀態”,就像你剛選好商品,還沒交給快遞員 —— 需要 “打包” 才能上路。

2. 數據的封裝:商家打包裝 + 填快遞單(數據封裝:加 “頭部信息”)

商家收到訂單后,會把商品裝進包裝盒,然后填寫快遞單。這個 “快遞單” 就是數據傳輸中的 “數據頭部”(Header),而商品本身就是數據的 “payload(有效載荷)”(真正要傳遞的核心內容)。

  • 快遞單的作用:記錄關鍵信息(寄件人、收件人、地址、電話、商品類型等),確保快遞能被正確投遞。
  • 數據的 “頭部封裝”:原始數據會被 “打包”,在數據前添加 “頭部信息”(類似快遞單),記錄核心傳輸必要信息:
  • 源地址:對應快遞單上的 “寄件人地址”—— 即源 IP 地址(你的設備在網絡中的唯一標識,類似你家的 “門牌號”)。
  • 目標地址:對應快遞單上的 “收件人地址”—— 即目標 IP 地址(比如電商服務器、支付平臺服務器的地址,類似商家倉庫、快遞終點的地址)。
  • 附加信息:快遞單上會寫 “商品類型(易碎 / 普通)”“重量”“是否保價”,類似數據頭部的端口號(區分目標設備上的具體應用,比如訂單信息對應電商 APP 的端口,支付請求對應銀行 APP 的端口)、數據長度(類似快遞重量,告訴接收方 “這個包裹有多大”)、校驗碼(類似快遞單上的 “商品數量”,用于核對數據是否完整,避免傳輸中丟失)。

3. 數據的 “快遞員”:快遞公司接手(數據進入網絡傳輸層 / 網絡層)

商家把填好快遞單的包裹交給快遞公司(比如順豐、中通),相當于數據被傳輸層協議(比如 TCP/UDP)和網絡層協議(比如 IP)處理,正式進入網絡傳輸通道。

  • 快遞公司 = 傳輸協議 / 網絡協議:快遞公司的規則(比如 “陸運 / 空運”“送貨時效”)就像傳輸協議的功能 ——TCP 協議類似 “順豐特快”,會確保數據 “不丟包、不重復、按順序到達”(類似快遞員會確認你收到包裹,丟件了會重發);UDP 協議類似 “普通快遞”,只管快速送達,不保證 100% 完整(適合直播、語音通話等對實時性要求高的場景)。
  • 快遞單 = 數據報頭部:此時數據已經被 “封裝” 成 “數據報”(網絡層的單位),快遞單上的核心信息(寄件人地址、收件人地址、包裹編號)就對應數據報頭部的源 IP、目標 IP、數據報序號(如果數據太大,會像大件商品拆成多個包裹,每個包裹都有單獨快遞單,序號用于接收方拼接)。

4. 數據的中轉:快遞分揀中心 “選路”(路由器 / 交換機轉發數據)

包裹不會直接從商家飛到你家,會經過多個快遞公司的分揀中心(比如從上海倉庫→杭州中轉倉→北京分揀中心)。這對應數據在網絡中經過路由器、交換機等設備的轉發過程

  • 分揀中心 = 路由器 / 交換機:分揀中心的工作人員會掃描快遞單上的 “收件人地址”,判斷下一步該發往哪個城市的分揀中心(比如 “收件人在北京朝陽區”,就先發到北京總倉)。同理,路由器會讀取數據報頭部的目標 IP 地址,通過 “路由表”(類似快遞公司的全國網點地圖)決定數據該轉發到哪個下一跳設備(比如隔壁城市的路由器)。
  • 路徑選擇 = 路由算法:如果某條路線擁堵(比如暴雨導致高速封路),分揀中心會換一條備用路線。路由器也會通過動態路由算法(比如 OSPF、RIP)避開擁堵的網絡鏈路,選擇最優路徑。

5. 數據的最后一公里:快遞員送貨上門(目標設備接收數據)

當包裹到達你所在城市的分揀中心后,會交給負責你小區的快遞員,最后送到你手上。這對應數據到達目標設備所在的本地網絡,并被最終接收。

  • 小區快遞點 = 交換機:包裹到了城市分揀中心后,會先送到你家附近的快遞點(比如小區驛站),相當于數據通過 “局域網交換機” 進入目標設備所在的本地網絡(比如你家的 WiFi、公司的局域網)。交換機通過 “MAC 地址”(類似快遞點記錄的 “單元號 + 門牌號”)找到具體的目標設備。
  • 快遞員送貨 = 數據到達目標設備:快遞員根據快遞單上的 “詳細地址”(比如 XX 小區 3 號樓 2 單元 501)找到你,你簽收包裹。對應目標設備(比如電商服務器、朋友的手機)讀取數據報頭部的目標端口號,將數據交給對應的應用程序(比如訂單數據交給電商 APP,聊天消息交給微信),并通過 “確認簽收”(類似 TCP 的 ACK 應答)告訴源設備:“數據收到了,完整無誤”。

6. 異常處理:丟件、錯發怎么辦?(數據傳輸的糾錯機制)

如果快遞丟了,你會聯系商家重發;如果送錯地址,分揀中心會重新轉運。這對應數據傳輸中的錯誤處理機制

  • 數據報在傳輸中丟失(類似包裹丟件):TCP 協議會通過 “超時重傳” 讓源設備重新發送數據(就像商家補發快遞)。
  • 數據損壞(類似包裹被擠壓導致商品破損):數據報頭部的 “校驗碼” 會讓接收方發現異常,直接丟棄損壞的數據并要求重發(類似你拒收破損包裹)。

總結:數據傳輸 =“帶快遞單的包裹流轉”

數據就像你買的商品,數據頭部(快遞單)記錄了傳輸的關鍵信息(源 / 目標地址、規則、序號),網絡設備(快遞公司、分揀中心、快遞員)根據 “快遞單” 選路轉發,最終確保數據從源設備 “送貨上門” 到目標設備,整個過程就像一場精準的 “網絡快遞”。

網絡傳輸基本流程

網絡傳輸流程圖

同一個網段內的兩臺主機進行文件傳輸.

跨網段的主機的文件傳輸. 數據從一臺計算機到另一臺計算機傳輸過程中要經過一個或多個路由器.

局域網(以太網為例)通信原理

  • 首先回答,兩臺主機在同一個局域網,是否能夠直接通信?是的
  • 以太網作為局域網的主流技術,其通信原理圍繞“高效共享傳輸介質”展開:物理層通過雙絞線、光纖等介質傳輸電信號或光信號,數據鏈路層則將數據封裝為幀(含源/目的MAC地址、 payload數據及校驗字段)實現設備標識與數據完整性校驗。早期采用CSMA/CD(載波監聽多路訪問/沖突檢測)機制避免多設備同時發送導致的信號沖突;現代以太網通過全雙工交換機實現“點對點”通信,交換機基于MAC地址表精準轉發幀,分割沖突域,大幅提升通信效率,最終實現局域網內設備間可靠的數據交互。
  • 每臺主機在局域網上,要有唯一的標識來保證主機的唯一性:mac 地址

認識 MAC 地址

  • MAC 地址用來識別數據鏈路層中相連的節點;
  • 長度為 48 位, 及 6 個字節. 一般用 16 進制數字加上冒號的形式來表示(例如: 08:00:27:03:fb:19)
  • 在網卡出廠時就確定了, 不能修改. mac 地址通常是唯一的(虛擬機中的 mac 地址不是真實的 mac 地址, 可能會沖突; 也有些網卡支持用戶配置 mac 地址).

后面我們詳細談論數據鏈路層的時候,會談 mac 幀協議,此處我們做一個了解即可。

  • 以太網中,任何時刻,只允許一臺機器向網絡中發送數據
  • 如果有多臺同時發送,會發生數據干擾,我們稱之為數據碰撞
  • 所有發送數據的主機要進行碰撞檢測和碰撞避免
  • 沒有交換機的情況下,一個以太網就是一個碰撞域
  • 局域網通信的過程中,主機對收到的報文確認是否是發給自己的,是通過目標 mac 地址判定
  • 這里可以試著從系統角度來理解局域網通信原理

初步明白了局域網通信原理,再來看同一個網段內的兩臺主機進行發送消息的過程

其中每層都有協議,所以當我進行進行上述傳輸流程的時候,要進行封裝和解包

下面我們明確一下概念

  • 報頭部分,就是對應協議層的結構體字段,我們一般叫做報頭
  • 除了報頭,剩下的叫做有效載荷
  • 故,報文 = 報頭 + 有效載荷

然后,我們在明確一下不同層的完整報文的叫法

  • 不同的協議層對數據包有不同的稱謂,在傳輸層叫做段(segment),在網絡層叫做數據報 (datagram),在鏈路層叫做幀(frame).
  • 應用層數據通過協議棧發到網絡上時,每層協議都要加上一個數據首部 (header),稱為封裝(Encapsulation).
  • 首部信息中包含了一些類似于首部有多長, 載荷(payload)有多長, 上層協議是 什么等信息.
  • 數據封裝成幀后發到傳輸介質上,到達目的主機后每層協議再剝掉相應的首部, 根據首部中的 "上層協議字段" 將數據交給對應的上層協議處理.

最后,在整體復盤一下:

在網絡傳輸的過程中,數據不是直接發送給對方主機的,而是先要自定向下將數據交付給下層協議,最后由底層發送,然后由對方主機的底層來進行接受,在自底向上進行向上交付,上面是一張示意圖。

數據包封裝和分用

下圖為數據封裝的過程

下圖為數據分用的過程

從現在開始,我們學習任何協議,都要先宏觀上建立這樣的認識:

1. 要學習的協議,是如何做到解包的?只有明確了解包,封包也就能理解

2. 要學習的協議,是如何做到將自己的有效載荷,交付給上層協議的?

網絡中的地址管理 - 認識 IP 地址

IP 協議有兩個版本, IPv4 和 IPv6. 我們打文章, 凡是提到 IP 協議, 沒有特殊說明的, 默認都是指 IPv4

  • IP 地址是在 IP 協議中, 用來標識網絡中不同主機的地址;
  • 對于 IPv4 來說, IP 地址是一個 4 字節, 32 位的整數;
  • 我們通常也使用 "點分十進制" 的字符串表示 IP 地址, 例如 192.168.0.1 ; 用點分割的每一個數字表示一個字節, 范圍是 0 - 255;

跨網段的主機的數據傳輸. 數據從一臺計算機到另一臺計算機傳輸過程中要經過一個或多個路由器.

下面是一張示意圖

首先理解一下 IP 地址的意義

  • 為什么要去目標主機,先要走路由器?

同一網段內設備可通過 MAC 地址直接通信,但 MAC 地址是局域網局部標識,無法跨網段生效。當目標 IP 與源主機不在同一網段時,源主機因網段邊界限制無法直接定位目標設備,必須依賴路由器 —— 路由器作為連接不同網段的 “網關”,通過路由表記錄網段間的可達路徑,接收數據包后根據目標 IP 的網絡部分查找路由,實現跨網段數據的轉發,是不同網段通信的 “必經中轉站”。

  • 目的 IP 的意義

目的 IP 是數據包的 “最終目的地坐標”,貫穿通信全程:源主機通過它判斷目標是否在同一網段,決定直接通信還是交由網關;路由器接收數據包后,依據目的 IP 的網絡部分在路由表中查找轉發路徑,確定下一跳方向;目標主機則通過校驗目的 IP 是否與自身匹配,判斷是否接收數據包。它是數據發送的 “目標指引”、路由轉發的 “決策依據”,也是目標主機接收數據的 “身份憑證”。

然后結合封裝與解包,體現路由器解包和重新封裝的特點

對比 IP 地址和 Mac 地址的區別

  • IP 地址在整個路由過程中,一直不變(目前,我們只能這樣說明,后面在修正)
  • Mac 地址一直在變
  • 目的 IP 是一種長遠目標,Mac 是下一階段目標,目的 IP 是路徑選擇的重要依據,mac 地址是局域網轉發的重要依據

IP 網絡的意義和網絡通信的宏觀流程

IP 網絡的核心意義

IP 網絡是現代數字通信的基礎骨架,其核心意義體現在三個維度:

?
  1. 打破異構壁壘,實現全球互聯:通過統一的 IP 協議(Internet Protocol),將不同類型的物理網絡(如以太網、光纖、無線局域網等)、設備(服務器、終端、物聯網設備等)無縫連接,構建起覆蓋全球的通信基礎設施,讓任意聯網設備能跨地域、跨網絡類型通信。
  2. 提供標準化通信規則:IP 協議定義了數據的格式、尋址方式(IP 地址)和路由邏輯,為不同廠商、不同技術的設備和網絡提供了 “通用語言”,保障了跨設備、跨網絡的互通性,是互聯網從局部網絡升級為全球基礎設施的核心支撐。
  3. 支撐數字生態,賦能時代發展:作為底層基礎設施,IP 網絡承載了所有數字應用(如互聯網服務、云計算、物聯網、5G 等),為信息傳遞、數據交互、業務創新提供了底層通道,是信息時代經濟、社會、科技發展的 “血管系統”。
  4. 具備彈性擴展能力:通過 IP 地址分層(如 IPv6 解決地址枯竭)、路由動態調整等機制,IP 網絡可隨用戶規模、設備數量和業務需求的增長靈活擴展,適應從局域網到全球互聯網的規模變化。

網絡通信的宏觀流程

網絡通信本質是 “數據從源端到目標端的封裝 - 傳輸 - 解封裝” 過程,宏觀流程可概括為四步:

?
  1. 源端數據封裝
    應用層產生的數據(如網頁請求、文件內容)需經過多層協議封裝:

    • 傳輸層(TCP/UDP)添加源 / 目的端口號(標識應用進程),并對數據分段或校驗(如 TCP 可靠傳輸);
    • 網絡層(IP)添加源 IP 地址(發送端地址)和目的 IP 地址(接收端地址),形成 IP 數據包,明確數據的 “起點” 和 “終點”。
  2. 本地鏈路傳輸
    封裝后的 IP 數據包經數據鏈路層(如以太網協議)和物理層處理,轉換為電信號 / 光信號,通過本地鏈路(如網線、無線信號)發送到本地網絡的網關(如路由器)。

  3. 跨網路由轉發
    數據包進入路由網絡后,每臺路由器通過路由表(記錄網絡拓撲信息)判斷 “下一跳” 路徑,將數據包逐跳轉發,跨越不同子網、運營商網絡或地域網絡,直至接近目標網絡。

  4. 目標端解封裝與交付
    數據包到達目標主機所在網絡后,經最后一跳轉發至目標主機;目標主機逐層解封裝(先剝離 IP 頭,再剝離傳輸層頭),最終將原始應用數據交付給對應應用程序(如瀏覽器、客戶端),完成通信閉環。

?

簡言之,IP 網絡通過 “統一協議 + 路由機制” 實現了全球設備的互聯互通,而通信流程則是 “封裝 - 傳輸 - 路由 - 解封裝” 的標準化過程,支撐了從日常聊天到全球數據交互的所有數字行為。

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

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

相關文章

MySQL多表查詢案例

多表查詢本文介紹了多表查詢中的表關系概念和操作方法。主要內容包括:1.三種表關系類型(一對多、多對多、一對一)及其實現方式;2.多表查詢的四種連接方式(內連接、左外連接、右外連接、自連接)及語法&#…

Dify 從入門到精通(第 36/100 篇):Dify 的插件生態擴展

Dify 從入門到精通(第 36/100 篇):Dify 的插件生態擴展 Dify 入門到精通系列文章目錄 第一篇《Dify 究竟是什么?真能開啟低代碼 AI 應用開發的未來?》介紹了 Dify 的定位與優勢第二篇《Dify 的核心組件:從…

【已解決】在Spring Boot工程中,若未識別到resources/db文件夾下的SQL文件

在Spring Boot工程中,若未識別到resources/db文件夾下的SQL文件,通常與資源路徑配置、構建工具設置或代碼加載方式有關。以下是逐步排查和解決方案:??1. 確認SQL文件存放路徑??Spring Boot默認從類路徑(classpath:&#xff09…

【Java】網絡編程(4)

1. 再談 UDP 報文長度:也是 2 個字節, 0 - 65535,也就是 64 kb。這表示一個 UDP 數據包一次最多只能傳輸 64 kb 的數據校驗和:驗證數據是否在傳輸過程中發生修改。數據在傳輸過程中可能受到信號干擾,發生 “比特翻轉”…

QT(事件)

一、事件前言事件是QT的三大機制之一,一定程度上信號和槽也屬于事件的一種 QT中的事件指哪些:窗口關閉,窗口顯示,敲擊鍵盤,點擊鼠標左鍵、鼠標右鍵、鼠標滾輪,文件拖放等等1、事件循環QT中的所有事件&#…

基于 Vue2+Quill 的富文本編輯器全方案:功能實現與樣式優化

在 Web 開發中,富文本編輯器是內容管理系統、博客平臺等應用的核心組件。本文將詳細介紹如何基于 Vue 和 Quill 構建一個功能完善、樣式精美的富文本編輯器,重點解決字體字號選項冗長、樣式不美觀及功能完整性問題,提供可直接部署使用的完整方…

C#內嵌字符串格式化輸出

內嵌字符串格式輸出 double speedOfLight 299792.458;System.Globalization.CultureInfo.CurrentCulture System.Globalization.CultureInfo.GetCultureInfo("nl-NL"); string messageInCurrentCulture $"The speed of light is {speedOfLight:N3} km/s.&quo…

ThreeJS程序化生成城市大場景底座(性能測試)

一、簡介基于矢量geojson數據構建建筑、植被、道路等,實現城市場景底座。涉及渲染的性能優化無非就是眾所周知的那些事兒。視錐剔除、mesh合并、減少draw call、四叉樹、八叉樹、數據壓縮、WebWorker、著色器優化等。下面是對東莞市數十萬建筑以及海量3D樹的渲染測試…

?電風扇離線語音芯片方案設計與應用場景:基于 8 腳 MCU 與 WTK6900P 的創新融合

?電風扇離線語音芯片方案設計與應用場景:基于 8 腳 MCU 與 WTK6900P 的創新融合一、引言在智能家居領域蓬勃發展的當下,用戶對于家電產品的智能化和便捷性需求日益增長。傳統的電風扇控制方式,如按鍵操作或遙控器控制,在某些場景…

(第四篇)spring cloud之Consul注冊中心

目錄 一、介紹 二、安裝 三、整合代碼使用 1、創建服務提供者8006 2、創建服務消費者80 3、Eureka、zookeeper和consul的異同點 一、介紹 Consul 是一套開源的分布式服務發現和配置管理系統,由 HashiCorp 公司用 Go 語言開發。它提供了微服務系統中的服務治理…

NAT 和 PNAT

核心概念與背景 IPv4 地址枯竭: IPv4 地址空間有限(約 42.9 億個),早已分配殆盡。NAT/PNAT 是緩解此問題的最重要、最廣泛部署的技術。私有 IP 地址空間: IANA 保留了三個 IPv4 地址段專供私有網絡內部使用&#xff08…

windows系統創建FTP服務

一丶開啟FTP功能 控制面板->程序與功能->啟用或關閉windows功能->Internet Information Services->勾選FTP服務器二丶創建FTP服務 1丶控制面板->windows工具->Internet Information Services (IIS) 管理器2丶網站->添加FTP站點->輸入對應內容3丶點擊新…

DeepSeek補全IBM MQ 9.4 REST API 執行命令的PPT

DeepSeek補全了我在網上找到的PPT的一頁內容,幫了大忙了。人機協同,人工智能可以協助人更好的做事。下面的內容是講解IBM MQ REST API 執行IBM MQ命令的PPT: MQSC for REST Tailored RESTful support for individual MQ objects and actions are in the …

【swift】SwiftUI動畫卡頓全解:GeometryReader濫用檢測與Canvas繪制替代方案

SwiftUI動畫卡頓全解:GeometryReader濫用檢測與Canvas繪制替代方案一、GeometryReader的性能陷阱深度解析1. 布局計算機制2. 動畫中的災難性表現二、GeometryReader濫用檢測系統1. 靜態代碼分析器2. 運行時性能監控三、Canvas繪制優化方案1. 基礎Canvas實現2. 性能優…

悄悄話、合唱層次感:聲網空間音頻解鎖語聊新玩法

作為語聊房主播,我曾覺得線上相聚差點意思。多人開麥時聲音混雜,互動缺真實感,觀眾留不住,自己播著也沒勁。直到平臺接入聲網空間音頻,一切改觀,觀眾說像在真實房間聊天,留存率漲 35%&#xff0…

【工具】多圖裁剪批量處理工具

文章目錄工具核心功能亮點1. 批量上傳與智能管理2. 精準直觀的裁剪控制3. 一鍵應用與批量處理為什么這個工具能提升你的工作效率?統一性與一致性保證節省90%以上的時間專業級功能,零學習成本實際應用場景電子商務攝影工作內容創作教育領域技術優勢完全在…

如何提升需求分析能力

要系統性地提升需求分析能力,核心在于實現從一個被動的“需求記錄員”,向一個主動的、價值驅動的“業務問題解決者”的深刻轉型。要完成這一蛻變,必須在五個關鍵領域進行系統性的修煉與實踐:培養“穿透表象”的系統思維能力、掌握…

另類的pdb恢復方式

cdb中有pdb1,pdb2 需求:希望將在線熱備份pdb1的備份集a,恢復成pdb3,使得cdb中有pdb1,2,3 參考到的:RMAN備份恢復典型案例——跨平臺遷移pdb - 墨天輪 ORA-65122: Pluggable Database GUID Conflicts With The GUID Of An Existi…

HarmonyOS 實戰:用 @Observed + @ObjectLink 玩轉多組件實時數據更新

摘要 在鴻蒙(HarmonyOS)應用開發中,實時數據更新是一個繞不開的話題,尤其是在你封裝了很多自定義組件、需要多個組件之間共享和同步數據的場景里。過去我們可能會依賴父子組件直接傳參或全局狀態管理,但這樣寫會讓代碼…

云原生俱樂部-雜談2

說實話,雜談系列可能會比較少,因為畢竟大部分時間都是上的線上,迄今為止也是,和雷老師與WH的交流不是很多。這個系列僅僅是我在做其他筆記部分無聊的時候來寫的,內容也沒有規劃過,隨想隨寫。倒不是時間太多…