聊完了學習網路模型的優點,我們接著藉由 OSI 七層的理論框架,舉個例子回顧一下 TCP/IP 分層在做的事,並且來談談那些常見的、根據 TCP/IP 所實作出來的服務吧。
上個系列提到 TCP/IP 的文章中聊到過,每一層大家各司其職,互相不會參與各自在做的事情。
我們來舉個不是很精確的例子,但是能簡單的形容分層架構實際在做什麼:
想像現在有個幫賣家寄送包裹給顧客的服務,這個服務的「應用」就是某位商品賣家將商品放入包裹,透過「傳輸」的媒介如貨車、機車等,把包裹通過城市的交通「網路」送到顧客家中。運輸的過程由於路途遙遠,可能要轉運多次,但我們也會規劃好途中每個節點「存取」貨物的細節,確保最終把商品送到顧客手裡。
這裡的「應用」「傳輸」「網路」及「存取」就分別對應著 TCP/IP 從上至下的不同層
*包裹傳遞示意圖
應用:每個賣家都可以是一個應用,有人賣甜點、有人賣書本,而甜點和書本都會被裝在包裹中運輸
傳輸:目的就是將包裹送至顧客手中,但需要考慮許多細節,例如包裹掉了是否要重送一份?顧客簽收後是否也要讓賣家知道?路上塞車了怎麼辦?
網路:定義地址是什麼形式,轉運的過程要經過哪些轉運站?
存取:負責兩個轉運站之間的貨物運輸,像是路線是走平面、高速道路,亦或是水路?
每個層級都處理各自擅長的事情,最終達到將資料從賣家送到顧客手中的目的。
那麼,真實的 TCP/IP 服務都有哪些呢?或許應用層可以有多種不同的應用,但是傳輸層、網際網路層,會有很多種變化嗎?
這個系列接下來要聊的,就會是不同的,但是蠻常見的 TCP/IP 服務。
*OSI, TCP/IP 常見服務對應表
以上便是一些常見的服務,如應用層的 HTTP、DHCP 等,傳輸及網際網路層的 TCP、UDP、IP、ICMP,還有網路存取層的 MAC、ARP 等等。
這裡僅僅列出幾種淺談即止,其他常見的 TCP/IP 服務其實還有相當多的。