[發明專利]解析通信協議的方法、存儲介質、設備及系統有效
| 申請號: | 201710339629.2 | 申請日: | 2017-05-15 |
| 公開(公告)號: | CN108881125B | 公開(公告)日: | 2021-02-02 |
| 發明(設計)人: | 張磊;陳少杰;張文明 | 申請(專利權)人: | 武漢斗魚網絡科技有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 武漢智權專利代理事務所(特殊普通合伙) 42225 | 代理人: | 沈林華 |
| 地址: | 430000 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 解析 通信協議 方法 存儲 介質 設備 系統 | ||
1.一種解析通信協議的方法,其特征在于,該方法包括以下步驟:
S1、協議的拆分:根據協議頭與協議體之間的協議分隔符,將通信協議拆分成協議頭部分和協議體部分;并將協議頭部分的信息存儲至一個協議頭字符串變量中,將協議體部分的信息存儲至一個協議體字符串變量中;
S2、協議頭的解析:將協議頭字符串變量中的協議頭標識符去除;根據鍵值對標識符將協議頭字符串變量中剩余的信息分割,得到每個協議頭字段信息對應的鍵值對信息;根據每個鍵值對信息中的鍵和值的信息,得到對應的協議頭字段信息的內容;
S3、協議體的解析:根據數據內容標識符將協議體字符串變量中的內容拆分成數據類型部分和數據內容部分;將數據類型部分中的數據類型標識符去除,得到數據類型的信息;根據鍵值對標識符將數據內容部分分割,得到每條數據對應的鍵值對信息;根據每個鍵值對信息中的鍵和值的信息,得到對應的每條數據的內容;
其中,步驟S1具體包括以下操作:
步驟S101、將通信協議的所有內容賦值于一個協議字符串變量中;并創建一個用于定位協議分隔符的位置的游標變量;
步驟S102、從協議字符串變量的首字符開始,按照每次取出與協議分隔符長度相同的字符串的方式循環取出協議字符串變量中的字符串;每次取出字符串后,將取出的字符串與協議分隔符進行匹配,若匹配失敗,則從協議字符串變量的下一個字符開始繼續循環取出字符串,并將當前游標變量的值加1;若匹配成功,則保存當前游標變量的值;
步驟S103、根據保存的游標變量的值,從協議字符串變量中截取出協議頭部分的字符串并存儲至協議頭字符串變量中;從協議字符串變量中截取出協議體部分的字符串并存儲至協議體字符串變量中。
2.如權利要求1所述的解析通信協議的方法,其特征在于,步驟S2具體包括以下操作:
步驟S201、將協議頭字符串變量中的協議頭標識符去除;并將去除后的剩余內容存儲至一個協議頭內容字符串變量中;
步驟S202、創建一個用于存放鍵值對標識符的位置信息的游標集合;
步驟S203、從協議頭內容字符串變量的首字符開始,按照每次取出與鍵值對標識符長度相同的字符串的方式循環取出協議頭內容字符串變量中的字符串;每次取出字符串后,將取出的字符串與鍵值對標識符進行匹配,若匹配失敗,則從協議頭內容字符串變量的下一個字符開始繼續循環取出字符串,并將當前位置信息的值加1;若匹配成功,則將當前的位置信息記錄到所述游標集合中,再從協議頭內容字符串變量的下一個字符開始繼續循環取出字符串,并將當前位置信息的值加1;如此循環,直至協議頭內容字符串變量中的所有內容遍歷完全;
步驟S204、根據當前游標集合中所有的相鄰的兩條位置信息,從協議頭內容字符串變量中截取出所有的協議頭字段信息對應的鍵值對信息;
步驟S205、根據截取出的每個鍵值對信息中的鍵和值的信息,得到對應的協議頭字段信息的內容。
3.一種存儲介質,其上存儲有計算機程序,其特征在于:所述計算機程序被處理器執行時實現上述權利要求1或2中任一項所述方法的步驟。
4.一種解析通信協議的設備,包括存儲器、處理器及存儲在所述存儲器上并在所述處理器上運行的計算機程序,其特征在于:所述處理器執行所述計算機程序時實現上述權利要求1或2中任一項所述方法的步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢斗魚網絡科技有限公司,未經武漢斗魚網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710339629.2/1.html,轉載請聲明來源鉆瓜專利網。





