文章目錄
- 前言
- 一、分層思想
- 1.1 分層的基本概念
- 1.2 點到點與端到端通信的區別
- 二、OSI參考模型
- 2.1 OSI七層模型的結構
- 2.2 各層功能示例(以QQ為例)
- 2.3 單工,半雙工和全雙工
- 2.4 OSI七層模型總結
- 三、TCP/IP模型
- 3.1 TCP/IP四層與五層模型
- 3.2 TCP/IP協議族的組成
- 四、數據封裝與解封裝
- 4.1 封裝過程
- 4.2 解封裝過程
- 五、計算機的數制
- 5.1 常見數制
- 5.2 數制的計算
- 5.3 數制轉換
- 5.3.1 十進制轉二進制
- 5.3.1.1 方法一:除2取余法
- 5.3.1.2 方法二:權重法
- 5.3.2 二進制轉十六進制
- 5.3.3 二進制轉八進制
- 六、IP地址簡介
- 6.1 IPv4和IPv6
- 6.2 IPv4地址分類
- 七、子網劃分
- 7.1 IP地址組成結構
- 7.2 子網掩碼原理
- 7.3 網絡地址計算方法
- 7.4 關鍵計算公式
- 7.5 C類地址子網劃分表
- 7.6 實用案例解析
- 7.6.1 案例1:172.16.0.0/12
- 7.6.2 案例2:192.168.100.100/26
- 總結
前言
計算機網絡參考模型是理解網絡通信的基礎框架,它通過分層思想將復雜的網絡通信過程簡化為多個功能模塊。同時,子網劃分是網絡規劃中的重要技術,能夠有效管理IP地址資源。
本文檔綜合了分層模型、OSI與TCP/IP模型的對比、數據封裝與解封裝過程、計算機數制轉換以及子網劃分等內容,旨在為讀者提供清晰、系統的知識結構。
一、分層思想
1.1 分層的基本概念
分層思想通過將復雜的網絡通信過程分解為多個功能相對獨立的子層,簡化了問題的復雜性。每一層專注于特定的功能,并通過接口與相鄰層交互。
1.2 點到點與端到端通信的區別
- 點到點通信:發生在網絡層及以下,是主機到主機之間的通信,通過IP地址區分不同主機。
- 端到端通信:發生在傳輸層,是進程到進程之間的通信,通過IP地址和端口號唯一標識一個會話。
例如:同一臺計算機同時可以和很多臺計算機通信,使用IP對不同的計算機加以區分。(點到點)
一臺計算機上的一個程序(如qq)和很多其他計算機上的程序通信,需要使用IP+端口
才能唯一的表示一個會話。如你用QQ同時和a、b、c三個用戶通信,就是用三個用戶連接的IP和端口號來區分的.
二、OSI參考模型
2.1 OSI七層模型的結構
OSI模型由七層組成,從上到下依次為:
- 應用層:網絡服務與最終用戶的一個接口(如QQ聊天窗口)。
- 表示層:
處理數據格式
、加密和壓縮(如數據翻譯為二進制
)。 - 會話層:建立、管理和終止會話(如QQ建立連接)。管理是否允許不同機器上的用戶之間建立會話
連接關系
。 - 傳輸層:定義傳輸數據的協議
端口號
,以及流控和差錯校驗(防火墻端到端
),將上層數據分片并加上端口號
封裝成數據段,或通過對報文頭中的端口識別,實現網絡中不同主機上的用戶進程之間
的數據分發。 - 網絡層:進行
邏輯地址
(IP地址
)尋址,實現不同網絡之間的路徑選擇(路由器)。 - 數據鏈路層:建立邏輯連接、進行
硬件(MAC)地址
尋址,提供差錯校驗(如交換機)。 - 物理層:負責比特流的
傳輸
(如網線、光纖)。報文頭部和上層數據信息都是由二進制數組成的,物理層將這些二進制數字組成的比特流轉換成電信號在網絡中傳輸。
2.2 各層功能示例(以QQ為例)
- 用戶在QQ界面輸入文字(應用層)。
- 數據加密和解密(表示層)。
- 找到對方實體,也就是對方的qq進程,建立與對方的會話(會話層)。
- 找到對方端口,就是qq傳輸的信息用的是哪個端口(傳輸層)。
- 通過路由器要找到對方網絡地址(網絡層)。
- 通過物理地址找到主機(數據鏈路層)。
- 數據以二進制比特流傳輸(物理層)。
2.3 單工,半雙工和全雙工
-
單工數據傳輸僅支持單向傳輸,在同一時間只能由一方發送或接收信息,無法實現雙向通信。典型應用包括電視和廣播系統。
-
半雙工數據傳輸支持雙向傳輸,但在特定時刻僅允許單向傳輸,本質上是可切換方向的單工通信。雖然同一時間只能單向傳輸,但支持雙向交互。典型代表是對講機系統。
-
全雙工數據通信支持數據同時雙向傳輸,實質上是兩個單工通信的結合,要求設備具備獨立的收發能力。這種模式可實現實時雙向通信,電話系統是典型應用場景。
2.4 OSI七層模型總結
OSI七層模型的分層結構
上層結構(應用相關):
- 應用層:為應用程序提供網絡服務接口
- 表示層:負責數據格式轉換、加密解密及壓縮處理
- 會話層:管理應用程序間的會話建立、維護和終止
核心傳輸層:
- 傳輸層:定義TCP/UDP等傳輸協議
底層結構(硬件相關):
- 網絡層:負責IP路由選擇和流量控制
- 數據鏈路層:通過校驗、確認等機制確保數據傳輸可靠性
- 物理層:處理原始比特流在物理介質上的傳輸
實際應用說明:
- 上層三層功能通常被整合到應用層,由應用服務器(如Tomcat、Nginx)實現
- 傳輸層是應用開發的主要關注點,定義數據傳輸協議
- 數據鏈路層功能由交換機實現
- 網絡層功能由路由器實現
三、TCP/IP模型
3.1 TCP/IP四層與五層模型
- TCP/IP四層模型:應用層、傳輸層、網絡層、網絡接口層。
- TCP/IP五層模型:應用層、傳輸層、網絡層、數據鏈路層、物理層。
3.2 TCP/IP協議族的組成
-
應用層:
HTTP
(超文本傳輸協議):80端口HTTPS
:443端口FTP
(文件傳輸協議):20端口(數據傳輸)、21端口(控制連接)DNS
(域名系統):53端口- TFTP(簡單文件傳輸協議):69端口
SMTP
(簡單郵件傳輸協議):25端口- SNMP(簡單網絡管理協議):161端口(代理進程)、162端口(通知接收)
Telnet
:23端口SSH
:22端口DHCP
:67端口(服務器)、68端口(客戶端)
-
傳輸層:
TCP
(傳輸控制協議):面向連接,可靠傳輸UDP
(用戶數據報協議):無連接,高效傳輸
-
網絡層:
- ICMP(互聯網控制報文協議)
- IGMP(互聯網組管理協議)
- IP(互聯網協議)
- ARP(地址解析協議)
- RARP(反向地址解析協議)
- IGMP:實現主機與路由器之間的組播管理,使物理網絡上的系統能識別當前組播組成員
- ARP:將IP地址解析為MAC地址
- RARP:實現MAC地址到IP地址的反向解析
-
數據鏈路層與物理層:
- IEEE 802.3(有線以太網標準)
- IEEE 802.11(無線網絡標準)
四、數據封裝與解封裝
4.1 封裝過程
數據從上層向下層傳遞時,每一層會添加頭部信息:
- 應用層數據 → 傳輸層添加TCP頭部 → 網絡層添加IP頭部 → 數據鏈路層添加MAC頭部 → 物理層轉換為比特流。
4.2 解封裝過程
數據從下層向上層傳遞時,逐層解析頭部信息并移除,最終還原為原始數據。
五、計算機的數制
5.1 常見數制
- 二進制:逢二進一,以
B
或2
結尾(如(1010)2,1010B
)。 - 十進制:逢十進一,以
D、10
結尾或省略(如(1010)10,1010D,1010
)。 - 十六進制:逢十六進一,以
H或16
結尾(如(1010)16,1010H
)。
5.2 數制的計算
在數制中,還有一個規則,就是N進制必須是逢N進一。
-
十進制采用逢十進一的計數規則
(1010)?? = 1×103 + 0×102 + 1×101 + 0×10? -
二進制采用逢二進一的計數規則
(1010)? = 1×23 + 0×22 + 1×21 + 0×2? = (10)?? -
十六進制采用逢十六進一的計數規則
(1010)?? = 1×163 + 0×162 + 1×161 + 0×16? = (4112)??
5.3 數制轉換
- 十進制轉二進制:除2取余法或權重法。
- 二進制轉十六進制:每4位一組轉換為十六進制數。
- 二進制轉八進制:每3位一組轉換為八進制數。
5.3.1 十進制轉二進制
5.3.1.1 方法一:除2取余法
- 將十進制數除以2,記錄商和余數
- 將商繼續除以2,重復上述步驟直到商為0
- 將余數按從后到前的順序排列,得到二進制數
示例:將25轉換為二進制
25 ÷ 2 = 12 余 1
12 ÷ 2 = 6 余 0
6 ÷ 2 = 3 余 0
3 ÷ 2 = 1 余 1
1 ÷ 2 = 0 余 1
從后向前讀取余數:11001,因此25(10) = 11001(2)
5.3.1.2 方法二:權重法
- 列出2的冪次方:1,2,4,8,16,32,…(從右到左)
- 找出最大的不超過目標數的2的冪次
- 用目標數減去該數,標記該位為1
- 重復上述步驟直到余數為0
- 未使用的位標記為0
示例:將37轉換為二進制
32(2^5) < 37 → 1
37-32=5 → 16>5 → 0
8>5 → 0
4<5 → 1
5-4=1 → 2>1 → 0
1=1 → 1
結果為:100101(2)
5.3.2 二進制轉十六進制
- 從右向左將二進制數每4位分為一組(不足4位左側補0)
- 將每組二進制數轉換為對應的十六進制數(0-9對應0-9,10-15對應A-F)
- 合并各組結果即為十六進制數
十六進制對應表:
0000 = 0 0100 = 4 1000 = 8 1100 = C
0001 = 1 0101 = 5 1001 = 9 1101 = D
0010 = 2 0110 = 6 1010 = A 1110 = E
0011 = 3 0111 = 7 1011 = B 1111 = F
示例:將1101011011(2)轉換為十六進制
- 分組:0011 0101 1011(左側補兩個0)
- 轉換:3 5 B
- 結果為:35B(16)
5.3.3 二進制轉八進制
- 從右向左將二進制數每3位分為一組(不足3位左側補0)
- 將每組二進制數轉換為對應的八進制數(0-7)
- 合并各組結果即為八進制數
八進制對應表:
000 = 0 011 = 3 110 = 6
001 = 1 100 = 4 111 = 7
010 = 2 101 = 5
示例:將10110110(2)轉換為八進制
- 分組:010 110 110(左側補一個0)
- 轉換:2 6 6
- 結果為:266(8)
六、IP地址簡介
6.1 IPv4和IPv6
IP地址分為IPv4和IPv6兩種格式:
IPv4地址:
- 由32位二進制數構成
- 采用點分十進制表示法
- 實際存儲時分4組,每組8位
- 示例:
- 二進制:11000000.10101000.00000000.00000010
- 轉換后:192.168.0.2 255.255.255.0
IPv6地址:
- 長度為128位
- 采用冒號分隔的十六進制表示法
IPv4地址由網絡部分(NETWORK)和主機部分(HOST)組成。以192.168.1.132為例:
- 網絡部分:192.168.1
- 主機部分:132
其中:- 192.168.1.0 為網絡地址
- 192.168.1.255 為廣播地址
IPv4地址分為私有地址和公有地址,公有地址是全球唯一的互聯網IP地址。2019年11月26日是一個具有歷史意義的日子,全球近43億個IPv4地址在這一天正式宣告耗盡。
6.2 IPv4地址分類
IPv4地址主要分為A、B、C、D、E五類:
A類地址
- 地址范圍:1.0.0.1~126.255.255.254
- 結構組成:網絡部分+主機部分+主機部分+主機部分
- 默認子網掩碼:/8(255.0.0.0)
B類地址
- 地址范圍:128.0.0.1~191.255.255.254
- 結構組成:網絡部分+網絡部分+主機部分+主機部分
- 默認子網掩碼:/16(255.255.0.0)
C類地址
- 地址范圍:192.0.0.1~223.255.255.254
- 結構組成:網絡部分+網絡部分+網絡部分+主機部分
- 默認子網掩碼:/24(255.255.255.0)
D類地址
- 地址范圍:224.0.0.1~239.255.255.254
- 用途:專用于組播通信(一對多通信)
- 通信類型說明:
- 單播:一對一通信
- 廣播:一對多通信
- 組播:一對特定組通信
E類地址
- 地址范圍:240.0.0.1~255.255.255.254
- 用途:保留用于科學研究
特殊地址說明:
- 127.x.x.x系列地址表示本機(廣播地址127.255.255.255除外),其中127.0.0.1為本機回環地址
- 169.254.0.0~169.254.255.255:當DHCP服務失效時自動分配的地址
(重點)私有網絡地址(簡稱私網地址)是指用于內部網絡或主機的專用IP地址。根據IANA(互聯網數字分配機構)規定,以下IP地址段被保留為私網地址,不在公網中分配,僅供單位或公司內部使用。RFC1918中定義的私有地址范圍如下:
- A類私有地址:10.0.0.0~10.255.255.255(10.0.0.0/8)
- B類私有地址:172.16.0.0~172.31.255.255(172.16.0.0/12)
- C類私有地址:192.168.0.0~192.168.255.255(192.168.0.0/16)
七、子網劃分
7.1 IP地址組成結構
- 網絡地址:標識網絡本身的地址
- 可用IP范圍:可分配給主機的IP地址
- 廣播地址:用于向該網絡所有主機廣播的地址
示例:
192.168.1.189/24
網絡號: 192.168.1.0
可用IP: 192.168.1.1~192.168.1.254
廣播地址: 192.168.1.255
7.2 子網掩碼原理
- 32位二進制數
- 對應IP地址的網絡部分用1表示
- 對應IP地址的主機部分用0表示
7.3 網絡地址計算方法
IP地址和子網掩碼進行"與"運算得到網絡地址:
- 0和任何數相與等于0
- 1和任何數相與等于該數本身
示例:
IP: 192.168.1.189/26 (11000000.10101000.00000001.10111101)
掩碼: 255.255.255.192 (11111111.11111111.11111111.11000000)
網絡地址: 192.168.1.128 (11000000.10101000.00000001.10000000)
廣播地址: 192.168.1.191 (主機位全置1)
7.4 關鍵計算公式
-
子網數 = 2?,其中n=子網掩碼位數-原網絡類默認位數
- A類:n=掩碼-8
- B類:n=掩碼-16
- C類:n=掩碼-24
-
主機數 = 2? - 2,其中N=32-子網掩碼位數
7.5 C類地址子網劃分表
子網掩碼 | /24 | /25 | /26 | /27 | /28 | /29 | /30 | /31 | /32 |
---|---|---|---|---|---|---|---|---|---|
掩碼值 | 0 | 128 | 192 | 224 | 240 | 248 | 252 | 254 | 255 |
子網數 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 |
IP總數 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
可用IP | 254 | 126 | 62 | 30 | 14 | 6 | 2 | - | 1 |
7.6 實用案例解析
7.6.1 案例1:172.16.0.0/12
IP: 172.16.0.0 (10101100 00010000 00000000 00000000)
掩碼: 255.240.0.0 (11111111 11110000 00000000 00000000)
網絡地址: 172.16.0.0(10101100 00010000 0000 0000)
廣播地址: 172.31.255.255(10101100 00011111 11111111 11111111)
子網數: 2^4=16
主機數: 2^20-2=1,048,574
7.6.2 案例2:192.168.100.100/26
網絡地址: 192.168.100.64
廣播地址: 192.168.100.127
子網數: 4
主機數: 62
可用范圍: 4個子網(0-63,64-127,128-191,192-255)
總結
本文檔系統介紹了計算機網絡的分層模型、OSI與TCP/IP的對比、數據封裝與解封裝過程、數制轉換以及子網劃分技術。通過分層思想,可以更好地理解網絡通信的復雜性;而子網劃分則為IP地址管理提供了靈活性和效率。掌握這些基礎知識,是進一步學習網絡技術和解決實際問題的關鍵。