基本概念
- 應用層(Application layer)
- 傳輸層(Transport layer)
- 網路層(Network layer)
- 鏈結層(Data link layer)
- 實體層(Physical layer)

另外還有OSI七層的模型,可以見筆者的另一篇文章OSI 七層架構。
應用層 (Application layer)
應用層是網路應用程式和其協定棲身之所,在應用層的協定包含HTTP、SMTP、FTP,我們將應用層的資訊封包(packet)稱為訊息(Message)
傳輸層 (Transport layer)
傳輸層會在應用程式端點間傳輸應用層資訊,網際網路存在兩種協定TCP和UDP,這兩種協定都可以用來傳輸應用層的訊息。我們將傳輸層的封包稱為區段(segment)
TCP:提供應用程式連線導向的服務。包含保證能夠將應用層的訊息傳遞到目的地,流量控制,將較長的message切割成較短的segment,並提供壅塞控制機制。
UDP:提供應用程式無連線服務。這是一種最低限度的服務,不提供可靠性、不提供壅塞控制。
這兩種協定詳細的運作機制請看TCP與UDP的文章(目前還沒有xd)。
網路層 (Network layer)
網路層會負責將資料報(datagram)的封包從一台主機移動到另一台主機。來源端主機的網際網路傳輸層協定(TCP or UDP)會將區段(segment)加上目的端的位址送給網路層。以郵差送信來舉例,segment就像是信件本身,包含了要傳遞的訊息,datagram就像是寫上地址的信件,寫上地址後郵差就可以將信送到收信者的家的感覺。
網路層所使用的協定為IP協定和其他協定
IP:定義datagram的欄位,以及終端系統與路由器該如何處理這些欄位。
關於IP協定詳細的運作機制請看IP的文章(目前也還沒有xd)。
資料連結層 (Data link layer)
網際網路的datagram運送會經由一連串的路由器,為了將封包從某個節點(主機或路由器)搬到下一個節點必須仰賴連結層的服務,我們將連結層的封包稱為訊框(frame)。
在每個節點,網路層會將datagram向下交給連結層,由連結層將datagram打包成frame再送給下一個節點,這個打包的過程稱為封裝(encapsulation),在 datagram 外加上連結層的標頭(header)和尾部(trailer)。在下一個節點,連結層會在將frame拆解回datagram向上交給網路層,這個拆解的過程稱為解封裝(decapsulation)。
而傳輸資料的手段包含乙太網路、wi-fi、纜線連接網路等方式,可能會涉及到不同的協定去處理。
物理層 (Physical layer)
連結層的工作是將一個frame從一個網路元件搬到另一個網路元件。
實體層的工作是將frame中的個別位元從一個節點搬到下一個節點,本層的協定與實際的傳輸媒介有關,有針對同軸電纜、光纖等不同的方式。

實際的運作示意圖