上次提到了抽象化對於電腦發展的重要性,對於網路,抽象化也扮演非常重要的腳色。
網路和電腦一樣是非常複雜的系統,要從頭到尾瞭解需要花費很大的功夫。所以網路和電腦一樣使用抽象化,讓使用上層功能時,不需要完全知道下層功能的所有原理,只要知道下層提供了什麼服務,再透過使用這些服務,就能疊加上去形成新的服務,讓更上層更容易使用。
同時,網路剛出現時,大家都各自發展自己的網路實作,不同公司提供的網路系統無法互相使用。為了解決這個問題,必須要有大家共同遵守、統一的介面,讓不同廠商做出來的東西可以互相搭配,逐漸發展出網路的「OSI 模型」。
OSI 模型是由電腦、通訊相關的國際標準化組織所提出,描述了網路世界的大架構。內容將網路分為七層,從最低的第 1 層實體層開始,往上到第 7 層應用層。就像前段所說,高層只要知道低層提供了什麼服務,不需要知道低層是如何實現的。接著我們就能用低層提供的服務,做出更複雜但更好用的服務提供給更高層。不過 OSI 模型只是一個大架構,提供網路世界的概念,並不提供實作細節。
第一、第二層是實體層和資料連結層,做的事情比較偏向電腦硬體,規定訊號怎麼傳送。
第三層是網路層,主要定義在眾多用網路線連結的電腦之間,要怎麼走才能將資訊送到正確的地方。
第四層傳輸層會定義兩台電腦要如何溝通、傳送失敗時怎麼辦、怎麼保證資料會送達目的地。
更上面的層做的事情就比較偏向拿到資料後,電腦要怎麼處理格式、要如何和電腦程式溝通。
這篇只有稍微講了一下網路的概念,對於網路怎麼運作可能還是很模糊。下一篇再來講些比較實際的東西,例如大家可能常聽到的前端、後端、瀏覽器、伺服器等東西是在幹嘛?