OSI模型(Open System Interconnection Reference Model,縮寫爲OSI),全名「開放式系統互聯通訊參考模型」,是一個試圖使各類計算機在全世界範圍內互聯爲網絡的標準框架。1983年國際標準組織(ISO)發佈了著名的ISO/ICE 7489標準,它定義了網絡互聯的七層框架,也就是開放式系統互聯參考模型。微信
什麼是協議(protocol)?通俗的來說,協議是一種雙方都明白或者必須遵照的事先約定,好比說長城上放狼煙,是由於人們已經預先設定好狼煙這個物理信號表明了「敵人入侵」這一抽象信號。這樣一個「狼煙=敵人入侵」就是一個簡單的協議。協議能夠更復雜,好比摩爾斯碼(Morse Code),使用短信號和長信號的組合,來表明不一樣的英文字母。網絡
一樣,計算機之間的通訊也要遵循不一樣層次的協議,來實現計算機的通訊。早期的計算機網絡,都是由各廠商本身規定一套協議,IBM,Apple,和MicroSoft都有本身的網絡協議,好比MicroSoft的兩臺電腦用網線連起來,互相說話能聽懂。可是MicroSoft和Apple的電腦鏈接起來講話就聽不懂了,想一想你和我微信聊天,我是MicroSoft電腦,你是Apple電腦,你發送的消息到我這裏顯示不了或者解析成另外一個意思,這樣通信就不能進行了(經過上面的圖咱們能夠看到,表示層就是消除不一樣設備之間固有數據格式差別的)。框架
爲了把全世界的全部不一樣類型的計算機都鏈接起來,就必須規定一套全球通用的協議,爲了實現這個目標,互聯網協議簇(Internet Protocol Suite)就成爲了通用協議標準。互聯網協議包含了上百種協議,可是最重要的兩個協議是TCP和IP協議,而咱們一般把基於TCP和IP協議的全部協議統稱爲」TCP/IP協議(蔟)」。ui
互聯網的實現,分紅好幾層,每一層都有本身的功能,就像建築物同樣,每一層都靠下一層支持。咱們在上圖中已經大體標出了每一層的功能。 OSI模型就是這樣的一個分層,它是一個由國際標準化組織提出的概念模型,試圖提供一個使各類不一樣的計算機和網絡在世界範圍內實現互聯的標準框架。它將計算機網絡體系結構劃分爲七層,每層均可以提供抽象良好的接口。計算機網絡
TCP/IP和OSI模型組並不能精確的匹配,可是咱們能夠儘量的參考OSI模型並在其中找到TCP/IP的對應位置。如上圖所示,咱們已經標出了TCP/IP對應的四層位置所在。一般人們認爲OSI模型最上面三層(應用層、表示層、會話層)在TCP/IP中是一個應用層。因爲TCP/IP有一個相對比較弱的會話層,由TCP和RTP下的打開和關閉鏈接組成,並在TCP/UDP下的各類應用提供不一樣的端口號,這些功能被單個的應用程序添加。blog
前面咱們說過,TCP/IP協議是互聯網協議(簇)的統稱,他是互聯網標準通訊的基礎,它提供點對點的連接機制,將數據應該如何封裝、定址、傳輸、路由以及在目的地如何接收,都加以標準化。而OSI模型是開放式系統互聯通訊參考模型接口
筆者的理解是:OSI是一個完整的、完善的宏觀模型,它包括了硬件層(物理層),固然也包含了不少上面途中沒有列出的協議(好比DNS解析協議等);而TCP/IP(參考)模型,更加側重的是互聯網通訊核心(也是就是圍繞TCP/IP協議展開的一系列通訊協議)的分層,所以它不包括物理層,以及其餘一些不相干的協議;其次,之因此說是參考模型,是由於其自己也是OSI模型中的一部分,所以參考OSI模型對其分層。路由