天天看點

OSI網絡七層模型詳解

一、網絡的目的

網絡的目的是為了實作主機到主機的通信。

最簡單的通信方式是拿一根網線,兩頭分别插在兩台主機上,然後将主機A IP位址配為192.168.1.20,将主機B IP位址配為192.168.1.23,然後這兩台主機就可以互相通信了,他們在一個區域網路内。這是最簡單的實作兩台主機互通的方式。

OSI網絡七層模型詳解

二、OSI網絡模型

OSI網絡模型是ISO組織定義的國際通用标準模型,其目的是為了制定全球統一的網絡模型标準,讓全球内的國家、組織可以實作網絡互通。

OSI模型一共分為七層,如下圖所示:

OSI網絡七層模型詳解

那麼為什麼網絡模型要分層呢?就像一個公司要分很多部門一樣,每個部門各司其職,網絡模型分層的目的也是為了這樣,另外分層還能達到降低複雜性、統一标準、工程子產品化、快速發展、易于學習掌握等目的。

但是我們也知道,公司的每個部門之間不可能是完全獨立的,部門和部門之間肯定是有一定聯系的。是以在OSI七層模型中,相鄰層之間也都是有聯系的,比如,實體層和資料鍊路層,資料鍊路層和網絡層,網絡層和傳輸層等等,他們之間都是有一定聯系的。這個聯系就叫做服務接入點,簡稱SA(service access)。是以正是因為相鄰兩層之間有SA,這兩層之間才會有聯系。相鄰兩層之間必須有服務接入點。

三、OSI 七層網絡模型作用

1、實體層

實體層雖然是整個模型的最底層,但是他的作用是非常大的。實體層的作用就是保證雙向傳輸,雙向通訊。就好像修路一樣,把兩個地方之間的路修通,至于上邊是跑貨車、跑車、自行車等等,就不管了。由于OSI模型是為了制定統一标準的,是以在實體層也有很多統一标準,包括電氣特性統一、機械特性統一、功能特性統一、規程特性統一這四個方面。一定要在這四個層面上建立起高度的統一,才能夠實作網絡在全球範圍内互通的目标。

(1)電氣特性統一

什麼是電氣特性統一呢? 所謂電氣特性就是定義電氣的标準。比如我們的二頭插座、三頭插座,我們都知道三頭插座中其實是連着三根線,分别是地線、火線和零線。地線是接地的,它的作用就是把産生的靜電導到地面上,進而保證安全。其他兩根線也有各自的作用。是以電氣特性統一就是把火線、地線、零線這三種線的标準和功能統一起來。

(2)機械特性統一

世界上插頭形狀都是二孔或三孔的,即使是歐标、美标形狀也都是幾乎一樣的。我們沒有見過五角形、月亮形、菱形的插頭。是以世界上各個國家生産的網絡電氣大小、規格、尺寸等機械特性都是要完全一樣的,這就是機械特性統一。

(3)功能特性

例如網線裡邊其實是有八根線的,每根線顔色不同所代表的功能也不一樣,這就是功能特性。

(4)規程特性

例如各個廠商生産的水晶頭規格必須完全一樣。

是以實體層的作用就是提供了網絡的雙向通訊,為雙向傳輸提供了有保障的通路。其中定義了四個統一的特性:電氣特性、機械特性、功能特性、規程特性。

2、資料鍊路層

交換機就是工作在二層資料鍊路層。鍊路層主要有三個功能。

(1) 它提供了通訊過程中要用到的MAC位址。計算機在通信過程中,一共要用到兩個位址,一個是邏輯IP位址,一個是實體MAC位址,MAC位址就是由資料鍊路層提供的。MAC: media access control 。MAC位址就是實體位址,而實體位址其實就是我們的網卡位址。

(2)負責資料幀的轉發。資料鍊路層傳輸的資料被稱為資料幀。

(3)提供錯誤檢測機制。例如通過交換機,兩個PC在互相通信,PC1作為發送方,PC2作為接收方,交換機會對發送的資料進行資料檢測,如果它發現傳輸的資料有丢失的情況,它會通知接收方丢失的資料并通知發送方重傳資料。

交換機僅有連接配接内網的功能。比如我們教室裡有40個同學,我們有一個48端口的交換機,如果每個同學拿一根網線插在交換機上,那麼這40個同學是可以互相通信的,但是沒法通路外網。如果要通路外網,就需要用到路由器。

3、網絡層

路由器工作在第三層網絡層。網絡層一共有四個功能

(1)提供邏輯IP位址。

(2)連接配接不同的媒介類型(内網和外網),使不同的媒介之間可以互相通信。比如我們的路由器一端連接配接着企業内網,一端連接配接着外網,此時路由器的功能就是連接配接内網和外網,使之能夠互相通信。是以網絡層的第二個作用就是連接配接不同的媒介類型,内網和外網就是不同的媒介。 

(3)根據路由器運作的不同的路由協定選擇最佳路徑。比如說早上起來從家到公司上班,可以有好多條路可以走,如果是開車的人,可能會選擇不堵車的路,如果是坐公交的 人,會選擇盡量換乘少的路,是以可以得到一個結論,從同一個源到同一個目的地,根據出行方式不同,可以有不同的所謂的最佳路徑。在我們的網絡層也是同一個道理,在整個網絡層中,一共有6種動态路由協定,每一種路由協定都有自己不同的選路的方式,比如說RIP路由協定,這個協定選路的方式就是哪近走哪,還有的協定是根據最大帶寬來選擇最佳路徑。是以工作在網絡層的路由器,就會根據自己身上運作的不同路由協定來選擇自己認為的最佳路徑。

(4)在選好的最佳路徑上負責路由資料包。

4、傳輸層

傳輸層的功能是它提供了端口号碼的概念(port)。什麼是端口号碼呢? 比如我用微信給小A發資訊,小A用微信接收并檢視,但是誰規定的我同微信給他發的資訊,他必須用微信接收呢?他為什麼不打開QQ,word接收呢?這個就是傳輸層規定的。換句話說,在通信的過程中,我們需要MAC位址和IP位址來通信,我們還需要知道對方的MAC和IP,因為我需要MAC和IP才能找到你,是以可以了解為這兩個位址是定位你存在的。但是找到你隻代表能ping通你,但是我要怎麼和你發生通信和服務請求呢?IANA規定,網絡中的每一種應用或者每服務都有自己的一個或者多個固定的端口号碼,比如網頁一般是80端口,SMTP是25端口,DNS是53端口,FTP是20,21端口等等。我們可以根據端口号來識别對應的服務。比如微信是3346端口,我在給小A發資訊時,資料中會帶着3346的端口号,是以小A的電腦會根據端口号也用微信接收資訊。

 網絡工程師一般重點關注上述四層,也就是最下4層。

5、會話層

會話層的作用是負責在應用程式之間建立維護并拆除會話連接配接。

6、表示層

表示層的作用是負責資料加密。其提供了四種常見的加密方式。

(1)對稱加密: 加密方與解密方使用相同的密鑰

(2)非對稱加密:一把私鑰、N種公鑰

(3)HASH 256加密