基於tcp的應用層協議還原

2021-09-09 01:36:22 字數 919 閱讀 1491

基於tcp的應用層協議還原技術是網路安全每個領域都需要的一種基礎技術。

首先,我們需要認識到tcp協議的兩個特徵:

tcp是一種流協議。傳送者以位元組流的形式傳遞給接收者。

tcp協議本身沒有固有的」報文」或」報文邊界」的概念。(參考:

tcp協議的特徵1意味著,在還原應用層協議之前,我們需要首先將乙個個的tcp資料報組裝成乙個位元組流,即tcp流重組

初始化tcp session的hash表,針對每一次tcp連線都建立乙個tcp session 。

收到乙個資料段,首先按照此資料段的(四元組)計算所屬tcp會話是否已經在表中存在,若存在,則根據序列號將其插入到所屬會話上下文的適當的位置。不存在的話,建立乙個tcp session節點並儲存到hash表中。

在此過程中,如果收到的資料報與鍊錶中某乙個資料報的序列號和資料長度相同的話,說明是重發包,做丟棄處理,保證鍊錶中每乙個資料報的序列號連續,且第乙個資料報為syn包,最後乙個包為fin包(或rst包);

tcp協議的特徵2意味著,在tcp流重組的基礎上,應用層協議還原還需要考慮到:

乙個完整的應用層協議資料報,可能同時存在於多個tcp資料報中。

tcp的資料報邊界和應用層資料報邊界不一定重合。

那麼我們如何確定乙個tcp流中,每個應用層資料報的邊界呢?

一般的應用層協議,首部都會有乙個標識應用層資料報長度的字段。(比如http協議的content_length欄位)

有些應用層協議,可能會通過一些特殊的標記符號,用於規定應用層資料報的邊界。(比如換行符)

基於TCP IP UDP的應用層協議

本篇文章總結一下計算機網路層中的很多協議以及其所依賴的協議 功能協議 基於的協議 網域名稱轉換 dnsudp 檔案傳送 tftp udp網路管理 snmp udpip位址配置 dhcp udp動態路由演算法,尋找路由,距離向量演算法 ripudp 動態路由演算法,鏈路狀態演算法 ospf ipint...

應用層協議

應用層協議定義了執行在不同端系統上的應用程式程序如何相互傳遞訊息。特別是定義了 交換的訊息型別,如請求訊息和響應訊息。各種訊息型別的語法,如訊息中的各個字段及其詳細描述。欄位的語義,即包含在字段中的資訊的含義。程序何時 如何傳送訊息及對訊息進行響應的規則。有些應用層協議是由rfc文件定義的,因此它們...

應用層協議

dns 網域名稱解析協議 http 超文字傳輸協議 ftp 文字傳輸協議 tlent internet遠端登入服務的標準協議 smtp 簡單郵件傳輸協議 snmp 簡單網路管理協議 ssh 協議 加密的安全的連線 ftp 給予tcp文字傳輸的協議 tftp 基於udp,簡單檔案傳輸協議 1.網域名稱...