天天看點

OSI七層模型——傳輸層OSI

文章目錄

  • OSI
    • OSI簡介
    • OSI之傳輸層功能

OSI

OSI簡介

TCP/IP是計算機最基本的一種網絡通信協定,TCP/IP協定基于OSI七層模型的設計思想。OSI是國際标準化組織對網際網路通信的一種标準架構,友善對網際網路通信進行标準化處理。TCP/IP就是在這種标準下的一簇通信協定。

以下就是OSI模型的7層。

應用層
表示層
會話層
傳輸層
網絡層
資料鍊路層
實體層

OSI之傳輸層功能

供端到端(最終使用者到最終使用者)的透明的、可靠的資料傳輸服務。

傳輸層的代表協定由TCP、UDP。

這一層中,接收上層傳過來的socket資料,然後進行資料的封包,可能根據socket設定的通信協定,封裝成UDP或者TCP的包,在封包過程中還會将端口号進行封裝,例如TCP協定下主要用到的一些端口。,再進入下一層進行IP協定的封包,傳輸到另外的端口,

端口号 服務程序 說明
20 FTP 檔案傳輸協定(資料連接配接)
21 FTP 檔案傳輸協定(控制連接配接)
23 telnet 網絡虛拟終端協定
25 SMTP 簡單郵件傳輸協定
80 HTTP 超文本傳輸協定
179 BGP 邊界路由協定

在傳輸層中,不同的協定有着不同的處理機制。

UDP協定,接收之後校驗失敗也不會重傳,直接會丢棄;TCP協定則會觸發重傳機制,在UBOOT當中僅實作了UDP協定,在UDP協定的基礎上,實作了TFTP的通信協定。

之前我在UBOOT當中,借助UDP協定,實作了一系列的指令,通過這種方式可以實作線上更新底層軟體的功能。

之前沒有OSI七層模型的概念,在實作過程中,直接對UDP的包進行了解析,所有的UDP包到達之後,都會進行一個switch的判斷,判斷完成之後,對環境變量進行配置,在啟動腳本中進行變量的判斷,然後進行tftp擷取檔案的請求,将檔案寫入qspi以此實作網絡更新的功能。

現在了解分層概念之後,認為不應該在UDP層面進行switch判斷,應實作于更上層,實作一個類似于tftp的應用,來進行資料包的解析,具體接口應研究tftp應用的實作。tftp具體屬于哪一層應在後續分析,至少不屬于傳輸層以下的層面,應屬于會話層、表示層、應用層。

繼續閱讀