自學網絡協議(四):OSI第三層——網絡層的作用(上)

前文回顧:

  1. 自學網絡協議(一):HTTP請求與響應——GET和POST真的不一樣嗎?
  2. 自學網絡協議(二):OSI第一層——物理層Physical layer
  3. 自學網絡協議(三):OSI第二層——機器通信那點事

正文

讓我們再次“瞻仰”一下這張意義重大的圖:
在這裏插入圖片描述

經過前面的學習,我們已經知道了如何使連接到同一網絡(即,局域網)的機器互相通信。

那麼,這些局域網中的機器如何與外部機器進行通信呢?
我們從一開始到現在一直在使用“網絡”一詞,那麼網絡到底有何含義呢?

OSI第3層及其作用·初窺

由上圖,OSI第3層,即大名鼎鼎的“網絡層”。相較於其他幾層,這個名字有些“言簡意賅”了,倒是我們少見的名字和作用一致的了。

網絡層的作用就是互連網絡 —— 這使我們能從一個網絡向另一個網絡發送消息。

但是,如何做才能將消息發送到我們沒有直接連接到的網絡中(的電腦中)呢?

由前幾節的學習,我們不難得出:網絡之間也是互連的,就像一條鏈 這樣的結論。
其實,所謂Internet就像一個由很多網絡組成的更龐大的網絡。
我們可以認爲:互聯網好像一間大房子,而互連的網絡就像這個大房子裏的房間一樣。從廚房到臥室,我們要經過幾個房間。

對網絡來說也是一樣。爲了從“我的臥室”到達互聯網上的一個網站(例如:GitHub)的主機所在的網絡,我們要經過許多箇中間網絡。
而網絡層將允許我通過其他網絡加入互聯網上的任何網絡 —— 我的電腦將通過網絡逐步連接到另一個網絡上的電腦。

我們可以通過命令行來演示一下:(用我自己的個人網站(cjxnsb.cn/mxcf/index.html)的主機名www.cjxnsb.cn來測試)
在這裏插入圖片描述

關於這個命令,還可以說道說道:

在Linux系統中,我們輸入的是traceroute命令

咳咳,好像扯哪去了,,,
回到開始的問題:到底什麼是網絡呢?

要理解網絡是什麼,我們將從瞭解網絡層的一個極爲重要的概念開始說起——和第2層有一個MAC地址一樣,在第3層也有一個地址,它要比MAC地址複雜的多。

第三層的標識符——IP地址

我們目前只知道一個地址,也就是 OSI 第二層的 MAC 地址,MAC 地址是用於我們的本地網絡(局域網)。

我們不免有這些疑問:

  • 在互聯網上,我們的網絡和其他網絡是如何被標識以便區分的呢?
  • 如何標識網絡呢?用地址來標識嗎?還是用名字來標識呢?
  • 如果需要有一個地址來標識網絡,還需要另一個地址來標識網絡中的機器,那麼是否意味着在 OSI 第 3 層裏需要兩個地址呢?

我們所有問題的答案都將在第 3 層的地址:IP 地址 中找到。

合二爲一的兩個地址:
我們將通過學習 IP 地址來回答之前提出的幾個問題。

IP 地址實際上是網絡和機器的地址。

更確切地說,IP 地址的一部分代表網絡的地址,另一部分代表機器的地址。

那麼,IP 地址是怎麼表示的呢?
IP 地址編碼爲 32 位(也就是 4 個字節,因爲我們之前說過 8 位二進制位(也就是 bit 位)是 1 個字節)。當然了,這是針對 IPv4(IP 協議第 4 版)的地址來說的;如果是 IPv6(IP 協議第 6 版)的地址,那麼就不止 32 位了,而是 128 位。

IPv6 的地址是類似這樣的:2001:0db8:85a3:0000:1319:8a2e:0370:7344

我們這裏暫時不討論 IPv6 的地址,因爲比較複雜。

本課下面所說的 IP 地址,都默認是指 IPv4 格式的 IP 地址。

2019 年 11 月 26 日,是人類互聯網時代值得紀念的一天,全球近 43 億個 IPv4 地址正式耗盡,我們即將向 IPv6
時代邁進。

爲了簡化 IP 地址的讀寫,計算機科學家們選擇使用點分十進制表示法來編寫 IP 地址。用以點分隔的 4 個字節來表示 IP 地址,每個字節的數字是用十進制來表示的,範圍從 0 到 255(因爲一個字節是 8 個二進制位,2 的 8 次方是 256,而 256 - 1 = 255)。

因此,IP 地址的例子是像這樣的 192.168.0.1 。

由此可以推斷出最小的 IP 地址是 0.0.0.0(當地址的所有二進制位均爲 0 時),而最大的 IP 地址是 255.255.255.255(當所有二進制位均爲 1 時)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章