科普|一文帶你搞懂:OSI七層模型詳解,及交換機(jī)、路由器工作原理
今天這篇文章我們帶你搞懂OSI七層模型和TCP/IP基礎(chǔ)知識,并結(jié)合OSI七層模型來介紹二、三層交換機(jī)和路由器的工作原理。
一起來了解下什么是OSI七層模型?
簡言之,下4層主要完成通信子網(wǎng)的功能,上3層主要完成資源子網(wǎng)的功能。
其實(shí)互聯(lián)網(wǎng)的本質(zhì)就是一系列的網(wǎng)絡(luò)協(xié)議,這個協(xié)議就叫OSI協(xié)議(一系列協(xié)議),按照功能不同,分工不同,人為的分成七層。實(shí)際上這個七層是不存在的。沒有這七層的概念,只是人為的劃分而已。區(qū)分出來的目的只是讓你明白哪一層是干什么用的。
在這一層,數(shù)據(jù)的單位稱為比特(bit)。屬于物理層定義的典型規(guī)范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。
物理層的主要設(shè)備:中繼器、集線器。
第二層:數(shù)據(jù)鏈路層
在這一層,數(shù)據(jù)的單位稱為幀(frame)。數(shù)據(jù)鏈路層協(xié)議的代表包括:SDLC、HDLC、PPP、STP、幀中繼等。
數(shù)據(jù)鏈路層主要設(shè)備:二層交換機(jī)、網(wǎng)橋。
第三層:網(wǎng)絡(luò)層
在這一層,數(shù)據(jù)的單位稱為數(shù)據(jù)包(packet)。網(wǎng)絡(luò)層協(xié)議的代表包括:IP、IPX、RIP、OSPF等。
網(wǎng)絡(luò)層主要設(shè)備:路由器。
第四層:傳輸層
傳輸層協(xié)議的代表包括:TCP、UDP、SPX等。
第五層:會話層
會話層的具體功能如下:
會話管理:允許用戶在兩個實(shí)體設(shè)備之間建立、維持和終止會話,并支持它們之間的數(shù)據(jù)交換。
會話流量控制:提供會話流量控制和交叉會話功能。
尋址:使用遠(yuǎn)程地址建立會話連接。
出錯控制:從邏輯上講會話層主要負(fù)責(zé)數(shù)據(jù)交換的建立、保持和終止,但實(shí)際的工作卻是接收來自傳輸層的數(shù)據(jù),并負(fù)責(zé)糾正錯誤。
表示層的具體功能如下:
數(shù)據(jù)格式處理:協(xié)商和建立數(shù)據(jù)交換的格式,解決各應(yīng)用程序之間在數(shù)據(jù)格式表示上的差異。
數(shù)據(jù)的編碼:處理字符集和數(shù)字的轉(zhuǎn)換。
壓縮和解壓縮:為了減少數(shù)據(jù)的傳輸量,這一層還負(fù)責(zé)數(shù)據(jù)的壓縮與恢復(fù)。
數(shù)據(jù)的加密和解密:可以提高網(wǎng)絡(luò)的安全性。
第七層:應(yīng)用層
應(yīng)用層的具體功能如下:
用戶接口:應(yīng)用層是用戶與網(wǎng)絡(luò),以及應(yīng)用程序與網(wǎng)絡(luò)間的直接接口,使得用戶能夠與網(wǎng)絡(luò)進(jìn)行交互式聯(lián)系。
實(shí)現(xiàn)各種服務(wù):該層具有的各種應(yīng)用程序可以完成和實(shí)現(xiàn)用戶請求的各種服務(wù)。
應(yīng)用層協(xié)議的代表包括:Telnet、FTP、HTTP、SNMP等。
來了解OSI模型與TCP/IP模型的比較。
TCP/IP模型實(shí)際上是OSI模型的一個濃縮版本,它只有四個層次:
1.應(yīng)用層,2.運(yùn)輸層,3.網(wǎng)際層,4.網(wǎng)絡(luò)接口層;
與OSI功能相比:
應(yīng)用層對應(yīng)著OSI的應(yīng)用層、表示層、會話層。
運(yùn)輸層對應(yīng)著OSI的傳輸層。
網(wǎng)際層對應(yīng)著OSI的網(wǎng)絡(luò)層。
網(wǎng)絡(luò)接口層對應(yīng)著OSI的數(shù)據(jù)鏈路層和物理層。
最后,結(jié)合OSI七層模型來理解二、三層交換機(jī)和路由器的工作原理。
一、二層交換機(jī)
注:MAC地址表和CAM的區(qū)別------CAM是將MAC表中的MAC地址+接口編號+vlanid轉(zhuǎn)換為hash值,再轉(zhuǎn)換為二進(jìn)制;意義在于識別更快。
二、三層交換機(jī)
三層交換機(jī)與二層交換機(jī)相比是可以處理三層數(shù)據(jù)的,可以識別三層數(shù)據(jù)包。
“一次路由,多次交換”基本概括了三層交換機(jī)的原理,通過這句話可以把三層交換機(jī)剖析清楚。
總的來說,三層交換機(jī)最突出的地方就是:
“一次路由,多次交換”。第一次路由本質(zhì)上找到了IP和接口的對應(yīng)關(guān)系;直接利用IP和接口的對應(yīng)關(guān)系進(jìn)行數(shù)據(jù)交換,省掉了查找路由表的環(huán)節(jié)。
注:本質(zhì)上三層交換機(jī)和路由器還是有一些區(qū)別的,三層交換機(jī)因?yàn)閹椭酚善魇〉袅瞬檎衣酚杀淼沫h(huán)節(jié),所以工作速度會比路由表快。
三、路由器
為了更好的理解路由器的工作原理,先來搞懂兩個詞的含義:路由、路由表。
什么叫路由?
路由就是數(shù)據(jù)包從源主機(jī)到目標(biāo)主機(jī)的轉(zhuǎn)發(fā)過程,如圖所示:
什么是路由表?
路由表就是路由器中維護(hù)的路由條目的集合,路由器根據(jù)路由表來做傳輸路徑的選擇。
如上圖所示:路由器A和B是經(jīng)過配置的路由在他們的路由表中就保存了相應(yīng)的網(wǎng)段和接口,如果主機(jī)1.1要發(fā)送數(shù)據(jù)包給主機(jī)3.1:
(1)因?yàn)镮P地址不在同一網(wǎng)段,主機(jī)就會將數(shù)據(jù)包發(fā)送給本網(wǎng)段的網(wǎng)關(guān)路由器A。
(2)路由器A接收到數(shù)據(jù)包,查看數(shù)據(jù)包IP首部中的目標(biāo)IP地址,在查找自己的路由表。數(shù)據(jù)包的目標(biāo)IP地址是3.1.屬于3.0網(wǎng)段路由器A在路由表中查到3.0網(wǎng)段轉(zhuǎn)發(fā)的接口是S0接口。于是,路由器就將數(shù)據(jù)包從S0接口轉(zhuǎn)發(fā)出去。
(3)每個路由器但是按這個步驟去轉(zhuǎn)發(fā)數(shù)據(jù)的,直到到達(dá)了路由器B,用同樣的方法,從E0口轉(zhuǎn)發(fā)出去,主機(jī)3.1接受到這個數(shù)據(jù)包。
同網(wǎng)段和不同網(wǎng)段主機(jī)通信的區(qū)別就在于。同網(wǎng)段直接查找主機(jī),而不同網(wǎng)段需要將數(shù)據(jù)包發(fā)送給網(wǎng)關(guān)。
路由器的一個作用是連通不同的網(wǎng)絡(luò),另一個作用是選擇信息傳送的線路。選擇通暢快捷的近路,能大大提高通信速度,減輕網(wǎng)絡(luò)系統(tǒng)通信負(fù)荷,節(jié)約網(wǎng)絡(luò)系統(tǒng)資源,提高網(wǎng)絡(luò)系統(tǒng)暢通率。
路由器工作原理
四、路由器和交換機(jī)的區(qū)別
交換機(jī)擁有一條很高帶寬的背部總線和內(nèi)部交換矩陣。交換機(jī)的所有的端口都掛接在這條總線上,控制電路收到數(shù)據(jù)包以后,處理端口會查找內(nèi)存中的地址對照表以確定目的MAC(網(wǎng)卡的硬件地址)的NIC(網(wǎng)卡)掛接在哪個端口上,通過內(nèi)部交換矩陣迅速將數(shù)據(jù)包傳送到目的端口,目的MAC若不存在則廣播到所有的端口,接收端口回應(yīng)后交換機(jī)會“學(xué)習(xí)”新的地址,并把它添加入內(nèi)部MAC地址表中。
使用交換機(jī)也可以把網(wǎng)絡(luò)“分段”,通過對照MAC地址表,交換機(jī)只允許必要的網(wǎng)絡(luò)流量通過交換機(jī)。通過交換機(jī)的過濾和轉(zhuǎn)發(fā),可以有效的隔離廣播風(fēng)暴,減少誤包和錯包的出現(xiàn),避免共享沖突。
交換機(jī)在同一時刻可進(jìn)行多個端口對之間的數(shù)據(jù)傳輸。每一端口都可視為獨(dú)立的網(wǎng)段,連接在其上的網(wǎng)絡(luò)設(shè)備獨(dú)自享有全部的帶寬,無須同其他設(shè)備競爭使用。
交換機(jī)是一種基于MAC地址識別,能完成封裝轉(zhuǎn)發(fā)數(shù)據(jù)包功能的網(wǎng)絡(luò)設(shè)備。交換機(jī)可以“學(xué)習(xí)”MAC地址,并把其存放在內(nèi)部地址表中,通過在數(shù)據(jù)幀的始發(fā)者和目標(biāo)接收者之間建立臨時的交換路徑,使數(shù)據(jù)幀直接由源地址到達(dá)目的地址。
從過濾網(wǎng)絡(luò)流量的角度來看,路由器的作用與交換機(jī)和網(wǎng)橋非常相似。但是與工作在網(wǎng)絡(luò)物理層,從物理上劃分網(wǎng)段的交換機(jī)不同,路由器使用專門的軟件協(xié)議從邏輯上對整個網(wǎng)絡(luò)進(jìn)行劃分。例如,一臺支持IP協(xié)議的路由器可以把網(wǎng)絡(luò)劃分成多個子網(wǎng)段,只有指向特殊IP地址的網(wǎng)絡(luò)流量才可以通過路由器。對于每一個接收到的數(shù)據(jù)包,路由器都會重新計算其校驗(yàn)值,并寫入新的物理地址。
因此,使用路由器轉(zhuǎn)發(fā)和過濾數(shù)據(jù)的速度往往要比只查看數(shù)據(jù)包物理地址的交換機(jī)慢。但是,對于那些結(jié)構(gòu)復(fù)雜的網(wǎng)絡(luò),使用路由器可以提高網(wǎng)絡(luò)的整體效率。路由器的另外一個明顯優(yōu)勢就是可以自動過濾網(wǎng)絡(luò)廣播。
交換機(jī)是查看MAC地址表的,路由器是查看路由表的。交換機(jī)如果沒有在MAC地址表中找到自己想要的,它就要進(jìn)行區(qū)域泛洪,而路由器如果在路由表中找不到對應(yīng)的條目會直接丟棄數(shù)據(jù)包,并返回一個不可到達(dá)的信息。他不會發(fā)送廣播,所以路由器有隔離廣播域的功能而交換機(jī)所在的網(wǎng)絡(luò)內(nèi)部就是一個廣播域,他只在本區(qū)域泛洪,不會泛紅到路由器外面;且交換機(jī)工作在二層,根據(jù)MAC地址表轉(zhuǎn)發(fā)數(shù)據(jù)幀,路由器工作在三層,根據(jù)路由表轉(zhuǎn)發(fā)數(shù)據(jù)包,交換機(jī)一般工作在據(jù)域網(wǎng)內(nèi),而路由器工作在廣域網(wǎng)。