1. 什么是計算機網絡
計算機網絡是指:將地理位置不同、具備獨立數據處理能力的多臺計算機(或終端設備,如手機、打印機),通過 "通信線路"(如網線、光纖、無線信號)和 "網絡協議"(如 TCP/IP)連接起來,再配合網絡操作系統、管理軟件的協調,最終實現 "數據傳輸、資源共享、信息交互"?的系統。
計算機網絡不是單一設備,而是 "設備 + 連接 + 規則 + 軟件"?的組合,核心目標是 "打破物理距離,讓設備之間能 '溝通' "。
簡單來說,計算機網絡就是以終端設備和通信設備為節點,傳輸介質為線織成的一張大網。各個節點之間通過統一的,預定的規則在網上傳遞數據,進行通信。
計算機網絡的 4 大核心要素:
組成部分 | 具體例子 | 核心作用 |
終端設備 | 個人電腦(PC)、手機、平板、服務器、智能電視、打印機、物聯網設備(如智能門鎖) | 網絡的 “數據產生 / 接收端”(如手機發消息、打印機接收文件) |
通信設備 | 路由器(家用 WiFi 盒)、交換機(公司內網分線器)、調制解調器(光貓)、基站 | 網絡的 “數據中轉站”(如路由器轉發手機到電腦的消息) |
傳輸介質 | 有線:網線(雙絞線)、光纖;無線:WiFi 信號(2.4G/5G)、藍牙、5G/4G 蜂窩信號 | 網絡的 “數據傳輸通道”(如光纖傳遞高速寬帶信號) |
網絡軟件 | 網絡協議(TCP/IP、HTTP)、網絡操作系統(Windows Server、Linux)、應用程序(瀏覽器、微信) | 網絡的 “通信規則 + 管理工具”(如 TCP/IP 規定數據怎么傳不丟包) |
其中,網絡軟件部分的本質,就是對網絡協議的實現,確保數據被正確地發送、接收與解析。
顯然,協議是我們學習計算機網絡的核心,因為其余的部分都是硬件,我們只需要關注其功能以及其如何服務于協議即可。
2. 協議
在計算機網絡領域,協議(Protocol) 是指「不同設備(或設備內部組件)之間進行數據通信時,共同遵守的一套預先約定好的規則、標準或規范集合」。它本質是設備間的 “溝通語言”—— 基于統一的協議,來自不同廠商、不同類型的設備(如手機、路由器、服務器)就能理解彼此發送的數據流代表什么含義,進而完成數據交互。
國際標準化組織(ISO)聯合國際電信聯盟(ITU-T)制定了 OSI/RM(開放系統互連參考模型,Open Systems Interconnection Reference Model)—— 這是計算機網絡發展史上最重要的 “理論框架” 之一。
在這個模型當中,對整個網絡數據的傳輸過程進行了分層,每層根據自己所需的功能,各自定義自己的協議,再由不同廠商生產網絡設備與網絡軟件來進行實現。
每一層可以調用下一層提供的服務,最終將數據從一個終端,送到另一個終端。
雖然這個模型在理論研究方面非常完美,但是在時機運用時就顯得過于繁瑣了,我們正真常用的模型是TCP/IP模型,這也是因特網使用的模型。
層次名稱 | 核心功能 | 典型協議 / 技術 | 解釋 |
應用層 | 直接為用戶應用提供服務,定義數據格式和交互邏輯 | HTTP、FTP、SMTP、DNS、QQ / 微信協議 | 該層規定了應用程序發送/接收某種特定數據的方式。例如HTTP協議就規定了網頁數據的發送/接收方式,遵守該協議的應用就可以正確且高效地相互發送/接收網頁對象。 |
傳輸層 | 負責兩臺設備的 “端到端” 數據傳輸,保障可靠性或實時性 | TCP、UDP | 該層規定了在兩臺終端設備的應用程序之間進行數據傳輸的方式。發送方在應用層數據傳遞過來的數據開頭添加上具體協議規定的控制信息,封裝為數據段,傳遞給下層;接收方從下層獲取數據段,根據頭部控制信息判斷數據應當被傳遞給哪個應用程序,以及數據是否正確。 |
網絡層 | 為數據選擇跨網絡的傳輸路徑(路由),實現不同網絡間的通信 | IP、ICMP(ping)、路由協議(OSPF) | 該層規定了兩臺終端設備之間進行數據傳輸的方式。同樣地,發送方會將數據段封裝為數據報,接收方去掉頭部獲取數據段。該層主要由路由器實現,主要功能有兩個:路由(規劃數據報經過哪些節點到目的端)、轉發(決定從哪個端口將數據發到下一節點)。 |
數據鏈路層 | 處理同一局域網內的數據幀傳輸,通過 MAC 地址識別設備,檢測傳輸錯誤 | 以太網(Ethernet)、WiFi(802.11)、PPP | 路由器的一端連接的就是一個局域網,網絡層負責路由器之間的路由轉發,鏈路層則負責局域網內的轉發。鏈路層封裝之后的數據叫做數據幀。 |
物理層 | 定義物理設備的電氣 / 機械特性,將數據轉換為物理信號(電 / 光 / 無線)傳輸 | 網線標準(CAT5e)、光纖、無線信號調制 | 實現相鄰兩個節點之間的數據傳輸,即如何把發送方的數據推送到物理介質上傳輸,接收方如何從物理介質上獲取數據。 |
3. TCP/IP模型的工作過程
各層在封裝上一層數據時添加的控制信息被稱為 "報頭" 或 "首部" ,這部分信息主要包括首部的長度,報文類型,校驗信息,發送端與接收端之間的地址信息等……
每一層都將除開自己報頭的部分看作是一個整體的數據段,不關心上層的具體細節。
每一層都認為自己在調用下一層的服務,與接收端的對應層次交流。例如,接收端傳輸層收到的數據就是發送端傳遞給下一層的數據。
當你用瀏覽器訪問www.baidu.com時,數據在五層模型中按 “封裝→傳輸→解封裝” 流程傳遞:
發送端(你的電腦):層層封裝
- 應用層:瀏覽器生成 HTTP 請求數據(如 “獲取百度首頁”),傳給傳輸層。
- 傳輸層:添加 TCP 頭部(源端口、目標端口 80、序號等),封裝成 TCP 段,傳給網絡層。
- 網絡層:添加 IP 頭部(源 IP、目標 IP,即百度服務器 IP),封裝成 IP 數據包,傳給數據鏈路層。
- 數據鏈路層:添加 MAC 頭部(源 MAC、目標 MAC,即路由器 MAC)和幀尾(校驗碼),封裝成數據幀,傳給物理層。
- 物理層:將數據幀轉換為電信號(如網線)或無線信號(如 WiFi),通過傳輸介質發送。
傳輸過程:數據通過路由器、交換機等設備轉發,每經過一個設備,都會解析對應層的頭部信息(如路由器只關心 IP 頭部,確定下一跳路徑)。
接收端(百度服務器):層層解封裝
- 物理層:將物理信號還原為數據幀,傳給數據鏈路層。
- 數據鏈路層:校驗幀尾,去除 MAC 頭部,將 IP 數據包傳給網絡層。
- 網絡層:解析 IP 頭部,確認目標 IP 匹配,去除 IP 頭部,將 TCP 段傳給傳輸層。
- 傳輸層:通過 TCP 頭部校驗數據完整性,按序號重組,去除 TCP 頭部,將 HTTP 請求傳給應用層。
- 應用層:服務器解析 HTTP 請求,生成網頁數據,再按上述流程反向傳回你的瀏覽器。
4. IP地址
IP 地址(Internet Protocol Address)是互聯網中用于唯一標識網絡設備(如計算機、路由器、服務器等) 的數字標簽,相當于設備在網絡中的 “身份證”。
它的核心作用是實現不同設備之間的精準通信 —— 通過 IP 地址,數據才能在復雜的互聯網中找到正確的發送目標和返回源頭,是 TCP/IP 協議族中實現 “網際互聯” 的基礎。
IP地址主要在網絡層發揮作用,通過報頭當中封裝的源地址/目的地址標識源端/目的端,以便進行路由轉發。
IP地址特性:
- 唯一性:在全球公共互聯網中,每臺直接接入的設備(或設備的網絡接口)都必須擁有唯一的 IP 地址(通過 ISP 分配),避免通信時出現 “地址沖突” 導致數據發送錯誤。
注意,IP地址并不和設備綁定,它可以是人為設置的(在可用集合當中選擇),也可以是在接入網絡時由DHCP服務器自動分配的。- 層次性:IP 地址的結構包含 “網絡部分”(前綴) 和 “主機部分”(后綴),這種分層設計能高效劃分網絡、簡化路由選擇(路由器只需根據 “網絡部分” 確定數據轉發方向,無需關注具體主機。即路由到網絡,剩下的交給鏈路層)。某一種前綴,就代表一個子網。路由器的一端,就連接著一個子網,下圖中就存在2個子網(192.168.2.0和172.168.2.0)。
IP 地址的兩大版本:
對比維度 | IPv4(互聯網協議第 4 版) | IPv6(互聯網協議第 6 版) |
地址長度 | 32 位(二進制),通常用 “點分十進制” 表示 | 128 位(二進制),通常用 “冒分十六進制” 表示 |
地址格式 | 例:192.168.1.1 (4 個 0-255 的十進制數,用. 分隔) | 例:2001:0db8:85a3:0000:0000:8a2e:0370:7334 (8 組 4 位十六進制數,用: 分隔,可簡化連續 0) |
地址數量 | 約 43 億個(理論值,實際因預留 / 劃分更少) | 約 3.4×103?個(幾乎滿足未來全球設備接入需求) |
主流應用 | 目前仍廣泛用于家庭、企業局域網和互聯網 | 正逐步普及(如 5G 網絡、數據中心、物聯網設備) |
5. MAC地址
MAC 地址(Media Access Control Address,媒體訪問控制地址)是網絡設備(如網卡、路由器端口、交換機端口等)出廠時由硬件廠商燒錄在設備網卡芯片中的唯一標識符,相當于設備在 “鏈路層” 的 “物理身份證”,用于在局域網內實現設備間的直接通信。
網卡是終端設備接入網絡的物理接口,所以相比于IP地址,MAC地址是與設備綁定的。
MAC地址用于鏈路層的局域網尋址,尋址的方式我們暫且不討論。
其中,所有終端設備都在路由器同一端或者沒有路由器參與其中的一個局部網絡系統,就叫做局域網。