1、前言
2、第1部份第2課:互聯網的創建,OSI7層模型
3、第1部份第3課預告:OSI第1層,連接你的機器
PS:昨天做了課程大綱以后,發現這個坑挖得有點大。不過既然挖了,豈有不跳之理。男子漢1言既出,就甚么馬也難追了。
今天我們就來學習: 《OSI7層模型》
昨天說到,目前全球有18億網民,互聯網的范圍已是超乎想象般宏大。
那末問題來了:
我們怎樣實現在這么多的機器之間通訊呢?
怎樣能夠不在這數據的迷宮里失去方向呢?
我們1起來學習,以期找到問題的答案。
首先我們來理解互聯網是怎樣創建的,和使用甚么規范來很好地組織這么多信息。
假想1下,假設你可以在任什么時候候通訊,和任何人通訊,豈不是很棒。這就是互聯網的初衷。
平時,當我們身處1個10人小組,會感到表達自己的觀點有點困難。如果是100人,就更困難。假設有1000人,那幾近就聽不到你說話了。但是互聯網就是要向不可能挑戰,要能夠做到:在任什么時候刻,同時和任何人通訊。固然了,要到達這個目的,必須要建立1個復雜的通訊系統,使得各臺機器之間能夠相互對話。
但是這樣的1個通訊模型如何構建呢?
我們可以從最熟習的通訊方式開始理解。
來盤點1下1般的通訊方式吧:
說話
打電話
郵件
飛鴿傳書 →_→
等等
接下來,讓我們試著來理解,在這些通訊方式中,有哪些基本要素是我們通訊活動所必不可少的。
說話的方式,我們需要:
說話者
聽話者
傳聲媒介(空氣)
打電話的方式,跟說話是類似的,除我們還需要1個在說話和電子學之間的中介。實際上,我們要把說話的聲音轉成電信號,電信號通過電話線等傳播介質到達接收者那1端,然后轉為聲音被聽見。在這里有1個信息的封裝。
我們可以舉郵件的例子來看1下這個封裝信息的系統,在郵件收發時我們需要:
寄件人
收件人
傳播介質(信)
容器(信封)
中介(郵局)
是否是漸漸能理解我們通訊需要甚么條件了。
問題又來了:
我們對電腦也能這樣利用嗎?
怎樣才能讓大家可以同時發出訊息呢?
我們能夠即時和地球另外一真個某人通訊嗎?
接下來我們就看1下網絡的先驅者們如何把人類通訊的原理“利用”到電腦的通訊中。
他們把所有研究的成果重組,創建了1個標準,所有連到互聯網的人都要遵照,這個標準就是:OSI7層模型。
OSI7層模型,聽上去是否是很帥?這個標準誕生在1984年,只比我早了3年誕生(不謹慎暴露了自己的年齡 →_→)。
聰明的讀者或許注意到了,這個標準比互聯網的出現晚了很久。
緣由很簡單:OSI7層模型是在人們有了很多機器之間通訊的經驗以后才能夠誕生的。因此這個標準不但能夠適用于現有的通訊,也適用于將來的通訊及其可能的演進。它的目的是使通訊標準化,以保證機器最大化的演進潛力和協同工作能力。
聽起來很不錯,但是到底OSI7層模型是甚么啊?
OSI7層模型是1個標準,規定了機器(主要是電腦)之間如何通訊。因此假設你想要讓你的洗碗機和洗衣機通訊的話,就需要遵從OSI模型,或最少從OSI模型取得啟發。這意味著需要遵從分層的通訊方式。
這里的層又是甚么呢?
OSI模型是1個分層的模型,就是說它分為幾個部份,每部份稱為1層,每層扮演固定的角色,就像下圖所看到的:
OSI7層模型
上圖中,我們可以看到OSI有7層,每層名字都不1樣。
為何是7層,不是14層或250層?
還記得之條件到的嗎?我們知道要通訊,需要有固定數目的組分,比如 發送者,接收者,語言,等等。網絡的先驅者們設計了用于構建通訊系統的主要元素,他們發現數目定為7最適合。因此OSI的每層都有特定的分工,這7層合起來就能夠使1臺機器和另外一臺通訊。
下面我們來看1下這7層各自的細節。
第1層或物理層
名字: 物理層
作用:為通訊提供傳播媒介
輔助作用:沒有
相干裝備:集線器(也就是常說的Hub)
第2層或數據鏈路層
名字: 數據鏈路層
作用:使局域網中的機器相互連接
輔助作用:偵測傳輸毛病
相干裝備:交換機(也就是常說的Switch)
第3層或網絡層
名字: 網絡層
作用:使各個網絡相互連接
輔助作用:分割傳輸的數據包
相干裝備:路由器(也就是常說的Router)
第4層或傳輸層
名字: 傳輸層
作用:管理利用程序的連接
輔助作用:保證連接的有效建立
相干裝備:沒有
第5層或會話層
我們不在意!
是的,你沒有看錯:我們不在意第5層。
在第4層以上的,除第7層,我們都不在意。固然了,我也有些夸大。但是第5層和第6層不在本課程斟酌范圍以內。
緣由很簡單:
OSI7層模型是1個理論模型,今天的互聯網使用的實際模型是TCP/IP模型,而后者不使用OSI的第5層和第6層,因此我們疏忽它們。
好,我想你應當理解了。固然了,第7層我們需要斟酌。其實正是為了這第7層上的利用程序我們才大費周章,構建這個模型。是的,第7層就是老總,就得服侍著,就是這么任性 →_→
第7層或利用層:
名字: 利用層
作用:沒有
輔助作用:沒有
相干裝備:代理(也就是常說的Proxy)
甚么?第7層居然沒有作用!那“服侍”它干嗎?說白了,這1層就是展現我們構建通訊架構所要服務的所有利用程序。
因此,第7層我們也不多做研究,而是把重心放在提供服務和引導數據傳遞的第1⑷層。其實,還有1種說法是把1⑷層合稱為“網絡層”。由于正是這4層負責引導數據從1臺機器傳遞到另外一臺機器,以供機器上的屬于第7層的利用程序使用。
在深入理解這4層之前,很有必要提1下使用OSI模型的兩個原則:
1. 每層都是相對獨立的
2. 每層只能和相鄰的層通訊
“每層都是相對獨立的”:
其所產生的影響是某1層所用的信息不能被另外一層使用。例如,對某些有1定網絡知識的讀者來講,應當知道IP地址是屬于第3層的,就不能被另外的層所使用。
這樣規定的好處是可以方便通訊方式的變革。
想象1下,今天你使用互聯網,雖然你可能其實不了解它的原理,但實際上你使用的是第3層的IPv4(Internet Protocol Version 4,第4代互聯網協議)這個協議。未來,我們將從IPv4演進到IPv6(第6代互聯網協議,相比第4代的32位地址空間,可以到達128位地址空間)。這時候,假設我們除第3層之外,在另外一些層中也用到了IPv4,那我們除要改第3層的協議,我們也要改其他凡是用到IPv4協議的層,就會很麻煩。
保持各層的相對獨立性可使得我們更換1層所關聯的協議時,無需更改其他的層。
“每層只能和相鄰的層通訊”:
為了理解這個原則,我們必須了解機器是怎樣利用OSI模型來通訊的。
想象以下場景:
你坐在電腦前,打開你的閱讀器。你在閱讀器的地址欄里輸入1個網址,那個網站就出現了。
雖然你其實不知情,但其實你就在使用OSI模型。
大體來講,位于OSI第7層的利用程序(此處是閱讀器),與第1⑷層(合稱“網絡層”)對話,以便這4層把機器上的利用程序所要的信息從遠真個機器上(比如google.com的服務器)傳輸過來。
在1個傳輸進程中,我們會逾越OSI模型的各層,從上到下。
因而可知,多虧了第2個原則,我們能保證在信息的傳輸進程中,OSI模型的各層都會被逾越,也就保證每層的作用都能得到實現。固然了,差不多是這樣。由于實際上對互聯網,OSI模型是1個理論模型,第7層實際上是跳過5,6層而直接和底下4層通訊的。所以是 7 -> 4 -> 3 -> 2 -> 1 。
好了,今天的課程就到這里。
總結1下需要記住的知識點:
OSI7層模型是1個規范,其規定了機器之間如何通訊
OSI模型是1個理論模型,互聯網實際使用的是TCP/IP模型
OSI模型有7層
每層都有1個特定的作用
第1⑷層合稱為“網絡層”
每層相對獨立
每層只能和相鄰的層通訊
當傳輸數據時,我們從OSI的最上層遍歷到最下層,在另外一個機器那里,曾是相反的方向,從最下層到最上層
現在你應當對OSI7層模型有了1個大體的了解。
下1課,我們就深入其中,學習OSI第1層(物理層)的細節。
明天見啦!
下一篇 DLNA的一些體會