[發明專利]一種基于多狀態機的協議解析系統及方法在審
| 申請號: | 201710048041.1 | 申請日: | 2017-01-21 |
| 公開(公告)號: | CN106817372A | 公開(公告)日: | 2017-06-09 |
| 發明(設計)人: | 邱志斌;方曉亮;涂高元;郭永興;陸云燕;陳雅賢 | 申請(專利權)人: | 廈門天銳科技股份有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 361000 福建省廈門市廈*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 狀態機 協議 解析 系統 方法 | ||
技術領域
本發明涉及一種基于多狀態機的協議解析系統及解析方法。
背景技術
現有的協議一般都是以鍵-值對的形式定義的。鍵也就是通常所說的特征碼,值則是通常所說的有效數據。在實際操作時,通過對特征碼的循環匹配,將相應的有效數據進行保存,當識別到的特征碼為結束特征碼的時候,則輸出匹配結果。
現有的解析方法存在著如下幾點不足:
(I)解析速度慢;
(II)在網絡數據傳輸中,特征碼可能被分段傳輸,導致特征碼匹配不到;
(III)無法定義特征碼出現的先后順序;
(V)所有的特征碼都聚集在一個狀態機里面,可能造成狀態機爆炸;
(IV)沒有容錯機制和跳轉機制。
以下對本案涉及到的幾個名詞進行解釋:
(I)狀態:用于匹配的最小單位。比如特征碼China包含有C、h、i、n和a五個狀態。
(II)狀態機:一個有向圖形,由一組節點和一組相應的轉移函數組成。
(III)前置狀態:用于保存上次匹配結束時的最終狀態。
發明內容
本發明的目的,在于提供一種基于多狀態機的協議解析方法,其可提高解析效率,解決特征碼被分段傳輸的問題,并可進行容錯處理。
為了達成上述目的,本發明的解決方案是:
一種基于多狀態機的協議解析系統,包括:
多狀態機生成模塊,用于定義需要的狀態機以及狀態機之間的跳轉關系;以及,
狀態機匹配模塊,用于待匹配數據的輸入、中間匹配結果的保存以及最終匹配結果的輸出。
一種基于多狀態機的協議解析方法,包括如下步驟:
步驟1,初始化所有狀態機,并定義各狀態機之間的跳轉關系,形成多狀態機;
步驟2,將待匹配的數據輸入多狀態機進行匹配,輸出匹配結果。
上述步驟1中,對基于Http協議的多狀態機,將特征碼“POST”作為根狀態機下的特征碼,“/r/n/r/n”為“POST”特征碼下的結束特征碼。
上述步驟1中,對基于Smtp協議的多狀態機,將特征碼“To:”作為根狀態機下的特征碼,“/r/n/r/n”為“To:”特征碼下的結束特征碼。
上述步驟2的具體內容是:
步驟21,將待匹配的數據輸入多狀態機進行匹配;如果前置狀態不為空,則將當前狀態恢復為前置狀態;否則從根狀態機開始匹配;
步驟22,如果匹配到特征碼,則執行步驟23,否則執行步驟25;
步驟23,如果特征碼為結束特征碼,則執行步驟24,否則保存對應的有效數據,并跳轉到該特征碼對應的狀態機,并執行步驟22;
步驟24,將獲取到的有效數據進行整合并分析:如果有效數據符合解析的協議特征,則輸出解析結果并跳轉到該特征碼對應的狀態機;否則判定匹配結果為臟數據,丟棄獲取到的有效數據,并跳轉到容錯狀態機;執行完上述操作后執行步驟22;
步驟25,匹配結束,將最后匹配到的狀態保存為前置狀態。
上述步驟24中,容錯狀態機為根狀態機。
采用上述方案后,本發明具有以下特點:
(1)本發明采用多狀態機間跳轉的方式,可以解耦狀態之間的關系,可以避免狀態機爆炸,提高解析效率;
(2)本發明可以解決特征碼被分段傳輸而導致的匹配失敗問題;
(3)本發明具有容錯機制,可以對臟數據進行識別和處理;
(4)狀態機匹配之后,輸出的即是最終數據,而不是一堆無序的狀態。
附圖說明
圖1是本發明的多狀態機的拓撲圖;
圖2是本發明的多狀態機匹配流程圖。
具體實施方式
以下將結合附圖,對本發明的技術方案進行詳細說明。
本發明提供一種基于多狀態機的協議解析系統,包括如下兩個模塊:
(1)多狀態機生成模塊,用于定義需要的狀態機以及狀態機之間的跳轉關系;
(2)狀態機匹配模塊,用于待匹配數據的輸入、中間匹配結果的保存以及最終匹配結果的輸出。
基于以上系統,本發明還提供一種基于多狀態機的協議解析方法,包括如下步驟:
步驟1,生成多狀態機
包含:
步驟11,初始化所有狀態機;
步驟12,定義各狀態機之間的跳轉關系,形成多狀態機。
以下將以基于Http協議和Smtp協議的多狀態機的生成為例,說明步驟1的實現過程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門天銳科技股份有限公司,未經廈門天銳科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710048041.1/2.html,轉載請聲明來源鉆瓜專利網。





