TWI672023B - 網路封包處理方法及其裝置 - Google Patents
網路封包處理方法及其裝置 Download PDFInfo
- Publication number
- TWI672023B TWI672023B TW107147860A TW107147860A TWI672023B TW I672023 B TWI672023 B TW I672023B TW 107147860 A TW107147860 A TW 107147860A TW 107147860 A TW107147860 A TW 107147860A TW I672023 B TWI672023 B TW I672023B
- Authority
- TW
- Taiwan
- Prior art keywords
- network packet
- belonging
- bytes
- receiving
- category
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 24
- 238000007689 inspection Methods 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一種網路封包處理方法,其中網路封包包含複數個位元組,位元組的類別包含檔頭類別、應用類別、以及檢查類別,網路封包處理方法,包含:接收屬於檔頭類別的全部位元組;以及根據設定資訊接收並解析屬於應用類別的部分位元組直到接收到屬於應用類別的指定位元組為止。
Description
本揭示文件有關一種網路封包處理方法及其裝置,尤指一種針對網路封包進行即時處理的網路封包處理方法及其裝置。
在網路通訊協定中普遍採用分層的結構,因此需要對網路封包進行一層層的拆解才能得到網路封包中的資料。在一般情況下,通常是等到整筆網路封包接收完,並且確認接收到的網路封包為有效網路封包之後,才會對網路封包中的資料進行解析,以進一步使用經過解析的資料。
為了更清楚說明前述概念,要先說明網路封包的結構。請參考第1圖,其為網路封包NP的示意圖。網路封包NP包含複數個位元組0~9,位元組0~9的類別包含檔頭類別HT、應用類別AT、以及檢查類別TT,其中位元組0及位元組1的類別屬於檔頭類別HT、位元組2~7的類別屬於應用類別AT、以及位元組8~9的類別屬於檢查類別TT。應注意的是,第1圖所示之網路封包NP結構僅為例示,並非用來作為限制。
當要解析網路封包NP中屬於應用類別AT的位元組2~7之資料時,通常等到整筆網路封包NP接收完,即依序接收屬於檔頭類別HT的位元組0及位元組1、屬於應用類別AT的位元組2~7、以及屬於檢查類別TT的位元組8及位元組9後,並透過一校驗和(Checksum)機制來判斷網路封包NP的完整性為完整後才能開始進行。
然而,拆解網路封包將會花費大量的處理時間,在特定情況下(例如,需要在極短時間解析資料的情況),將會延遲到後續對網路封包資料的處理,造成處理時間延遲等問題。
本案之第一態樣是在提供一種網路封包處理方法,其中網路封包包含複數個位元組,位元組的類別包含檔頭類別、應用類別、以及檢查類別,網路封包處理方法,包含:接收屬於檔頭類別的全部位元組;以及根據設定資訊接收並解析屬於應用類別的部分位元組直到接收到屬於應用類別的指定位元組為止。
本案之第二態樣是在提供一種網路封包處理裝置,與伺服器電性連接,其中網路封包包含複數個位元組,位元組的類別包含檔頭類別、應用類別、以及檢查類別,網路封包處理裝置,包含:接收單元以及解析單元。接收單元用以接收網路封包;以及解析單元與接收單元電性連接,用以透過接收單元接收屬於檔頭類別的全部位元組,
並根據設定資訊接收並解析屬於該應用類別的部分位元組直到接收到屬於應用類別的指定位元組為止。
本揭露之網路封包處理方法及其裝置主要是利用嵌入式系統的硬體架構,可以在接收封包的同時對封包進行拆解,以取得封包中的資料,達到預先解析封包以降低解析時間的功效。
1‧‧‧金融交易系統
200‧‧‧網路封包處理裝置
300‧‧‧交易所
310‧‧‧行情伺服器
320‧‧‧交易伺服器
110、210‧‧‧接收單元
130、230‧‧‧解析單元
250‧‧‧傳送單元
HT‧‧‧檔頭類別
AT‧‧‧應用類別
TT‧‧‧檢查類別
NP‧‧‧網路封包
DB‧‧‧指定位元組
OD‧‧‧委託單
S110~S130、S210~S270‧‧‧步驟
為讓揭示文件之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附圖式之說明如下:第1圖為網路封包的示意圖;第2圖為根據本揭示文件一實施例的網路封包處理裝置的示意圖;第3圖為根據本揭示文件一實施例的網路封包處理方法的流程圖;第4圖為根據本揭示文件一實施例的金融交易系統的示意圖;第5圖為根據本揭示文件一實施例的應用於金融交易的網路封包處理裝置的示意圖;以及第6圖為根據本揭示文件一實施例的應用於金融交易的網路封包處理方法的流程圖。
以下將配合相關圖式來說明本發明的實施例。
在圖式中,相同的標號表示相同或類似的元件或方法流程。
請參閱第1至3圖。第2圖為根據本揭示文件一實施例的網路封包處理裝置的示意圖,第3圖為根據本揭示文件一實施例的網路封包處理方法的流程圖。於本實施例中,第2圖所示之網路封包處理裝置100可用以根據第3圖所示之網路封包處理方法所描述之步驟,即時對第1圖所示之網路封包NP進行拆解。
首先,說明網路封包處理裝置100的結構。如第2圖所示,網路封包處理裝置100包含接收單元110以及解析單元130。接收單元110與解析單元130電性連接,接收單元110用以接收網路封包NP,解析單元130用以透過接收單元110接收並解析網路封包NP中的位元組0~9。於本發明各實施例中,網路封包處理裝置100可以利用現場可程式化邏輯閘陣列(Field Programmable Gate Array,FPGA)來實施,或是利用其他形式的嵌入式系統板。
接著,說明第3圖所示之網路封包處理方法應用於網路封包處理裝置100以對第1圖所示之網路封包NP進行拆解的例子。
如第3圖所示,網路封包處理方法包含步驟S110以及步驟S130。
在步驟S110中,接收屬於檔頭類別的全部位元組。
於一實施例中,解析單元130用以透過接收單元110接收屬於檔頭類別HT的全部位元組,即接收位元組0
及位元組1。
在步驟S130中,根據設定資訊接收並解析屬於應用類別的部分位元組直到接收到屬於應用類別的指定位元組為止。
於一實施例中,先假設指定位元組DB已根據設定資訊被選定為屬於應用類別AT的位元組5。其中,設定資訊為當指定位元組DB的位置符合預設計數值時,例如已知屬於應用類別AT的位元組5之位置為五個計數值,因此為了將位元組5選定為指定位元組DB,即可將預設計數值設定為五,藉以達成目的;另外,指定位元組DB的選擇依據係根據需求來決定,例如使用者關心的資料係位於位元組5中。在指定位元組DB被選定為屬於應用類別AT的位元組5之後,解析單元130將根據設定資訊透過接收單元110接收並解析屬於應用類HT的位元組2、位元組3、位元組4及位元組5。
應注意的是,上述「接收並解析」指的是解析單元130在透過接收單元110接收位元組時,將同時解析所接收的位元組。舉例來說,解析單元130透過接收單元110接收位元組2時,將同時解析位元組2;解析單元130透過接收單元110接收位元組3時,將同時解析位元組3;其餘以此類推。藉此,可無需將整筆網路封包接收完,即可預先解析屬於應用類別AT的位元組之資料。
接下來,進一步說明將與前述網路封包處理裝置100類似的網路封包處理裝置200以及網路封包處理方法
應用到金融交易的例子。
請參閱第1圖、第4至第6圖。第4圖為根據本揭示文件一實施例的金融交易系統的示意圖,第5圖為根據本揭示文件一實施例的應用於金融交易的網路封包處理裝置的示意圖,第6圖為根據本揭示文件一實施例的應用於金融交易的網路封包處理方法的流程圖。
首先,說明金融交易系統1與網路封包處理裝置200的結構。如第4圖所示,金融交易系統1包含網路封包處理裝置200、以及設置於交易所300中的行情伺服器310與交易伺服器320,且網路封包處理裝置200係與行情伺服器310及交易伺服器320電性連接。
如第5圖所示,網路封包處理裝置200包含接收單元210、解析單元230以及傳送單元250。接收單元210、解析單元230以及傳送單元250依序電性連接,接收單元210用以接收網路封包NP,解析單元230用以透過接收單元210接收並解析網路封包NP中的位元組0~9,傳送單元250用以根據封包判斷訊號DS來傳送委託單OD。於本發明各實施例中,網路封包處理裝置200可以利用現場可程式化邏輯閘陣列(Field Programmable Gate Array,FPGA)來實施,或是利用其他形式的嵌入式系統板。
接著,說明第6圖所示之網路封包處理方法應用於金融交易系統1以進行金融交易的例子。
如第6圖所示,網路封包處理方法包含步驟S210、步驟S230、步驟S250、步驟S260以及步驟S270,
其中由於步驟S210及步驟S230分別與第3圖之步驟S110及步驟S130類似,故不另贅述。
在步驟S230之後將進入到步驟S250及步驟S260,亦即步驟S250及步驟S260可同步進行。
在步驟S250中,根據解析所接收到屬於應用類別的部分位元組與指定位元組中之至少一部分資料,產生委託單。
於一實施例中,先假設使用者關心的資料(例如最佳五檔或成交價)分別位於位元組2、位元組3以及位元組5(其指定位元組DB),其中使用者關心的資料之位置係可被事先得知的。在使用者關心的資料之位置被得知之後,解析單元230將根據位元組2、位元組3以及位元組5之資料,產生委託單,其中委託單的內容可為高於成交價時買一張。應注意的是,前述使用者關心的資料與委託單的內容僅為例示,並非用來作為限制。
於此同時,在步驟S260中,接收屬於應用類別的剩餘位元組與屬於檢查類別的全部位元組。
於一實施例中,解析單元230透過接收單元210接收屬於應用類別AT的位元組6及位元組7、以及屬於檢查類別的位元組8及位元組9。換言之,在步驟中,網路封包NP已被完整接收。
在步驟S260後進入步驟S270。在步驟S270中,利用一校驗和(Checksum)機制判斷網路封包的完整性為完整後,產生封包判斷訊號。
於一實施例中,解析單元230透過校驗和機制判斷網路封包NP的完整性為完整後,將在步驟S250中所獲得的委託單OD傳送至交易伺服器320以進行下單,其中校驗和機制為所屬技術領域中具有通常知識者之通常知識,故不另贅述。
在將網路封包處理裝置200以及網路封包處理方法應用到金融交易的例子中可以了解到,由於步驟S250與步驟S260可同步進行,因此可縮短金融交易的時間,對於分秒必爭的金融交易而言是相當重要的。
綜上所述,本揭露之網路封包處理方法及其裝置主要是利用嵌入式系統的硬體架構,可以在接收網路封包的同時對封包進行拆解,以取得網路封包中的資料,在確定接收到的網路封包內容正確後,便會將網路封包內傳送至交易伺服器,達到預先解析網路封包以降低解析時間的功效。
在說明書及申請專利範圍中使用了某些詞彙來指稱特定的元件。然而,所屬技術領域中具有通常知識者應可理解,同樣的元件可能會用不同的名詞來稱呼。說明書及申請專利範圍並不以名稱的差異做為區分元件的方式,而是以元件在功能上的差異來做為區分的基準。在說明書及申請專利範圍所提及的「包含」為開放式的用語,故應解釋成「包含但不限定於」。
另外,除非說明書中特別指明,否則任何單數格的用語都同時包含複數格的涵義。
以上僅為本發明的較佳實施例,凡依本發明請求項所做的均等變化與修飾,皆應屬本發明的涵蓋範圍。
Claims (8)
- 一種網路封包處理方法,其中一網路封包包含複數個位元組,該些位元組的類別包含一檔頭類別、一應用類別、以及一檢查類別,該網路封包處理方法包含:接收屬於該檔頭類別的全部位元組;以及根據一設定資訊接收並解析屬於該應用類別的部分位元組直到接收到屬於該應用類別的一指定位元組為止。
- 如請求項1所述的網路封包處理方法,係用於一金融交易,且該網路封包係由一行情伺服器提供,其中在根據該設定資訊接收並解析屬於該應用類別的部分位元組直到接收到屬於該應用類別的該指定位元組為止的步驟之後更包含:根據解析所接收到屬於應用類別的部分位元組與該指定位元組中之至少一部分資料,產生一委託單。
- 如請求項2所述的網路封包處理方法,其中在根據該設定資訊接收屬於該應用類別的部分位元組直到收到屬於該應用類別的該指定位元組為止的步驟之後更包含:接收屬於該應用類別的剩餘位元組與屬於該檢查類別的全部位元組;以及利用一校驗和(Checksum)機制判斷該網路封包的完整性為完整後,將該委託單傳送至一交易伺服器以進行下單。
- 如請求項1所述的網路封包處理方法,其中,該設定資訊為當該指定位元組的一位置符合一預設計數值時。
- 一種網路封包處理裝置,其中一網路封包包含複數個位元組,該些位元組的類別包含一檔頭類別、一應用類別、以及一檢查類別,該網路封包處理裝置,包含:一接收單元,用以接收該網路封包;以及一解析單元,與該接收單元電性連接,用以透過該接收單元接收屬於該檔頭類別的全部位元組,並根據一設定資訊接收並解析屬於該應用類別的部分位元組直到接收到屬於該應用類別的一指定位元組為止。
- 如請求項5所述的網路封包處理裝置,係用於一金融交易,且該接收單元係與提供該網路封包的一行情伺服器電性連接,其中該解析單元根據所接收到屬於應用類別的部分位元組與該指定位元組中之至少一部分資料,產生一委託單。
- 如請求項6所述的網路封包處理裝置,更包含:一傳送單元,與該解析單元電性連接,用以在該解析單元在根據該設定資訊接收屬於該應用類別的部分位元組直到收到屬於該應用類別的該指定位元組為止的步驟之後,接收屬於該應用類別的剩餘位元組與屬於該檢查類別的全部位元組,並在利用一校驗和(Checksum)機制判斷該網路封包的完整性為完整後,將該委託單傳送至一交易伺服器以進行下單。
- 如請求項5所述的網路封包處理裝置,其中,該設定資訊為當該指定位元組的一位置符合一預設計數值時。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW107147860A TWI672023B (zh) | 2018-12-28 | 2018-12-28 | 網路封包處理方法及其裝置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW107147860A TWI672023B (zh) | 2018-12-28 | 2018-12-28 | 網路封包處理方法及其裝置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI672023B true TWI672023B (zh) | 2019-09-11 |
| TW202027468A TW202027468A (zh) | 2020-07-16 |
Family
ID=68618994
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW107147860A TWI672023B (zh) | 2018-12-28 | 2018-12-28 | 網路封包處理方法及其裝置 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI672023B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI880356B (zh) * | 2023-09-22 | 2025-04-11 | 致茂電子股份有限公司 | 網路封包處理方法 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW200926800A (en) * | 2007-08-08 | 2009-06-16 | Maxlinear Inc | TS packet grooming |
| CN103166855A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市共进电子股份有限公司 | 识别和转换网络报文中的地址信息的方法和系统 |
| WO2014117688A1 (zh) * | 2013-01-30 | 2014-08-07 | 华为技术有限公司 | 一种数据传输方法和相关装置 |
| US20150195387A1 (en) * | 2014-01-08 | 2015-07-09 | Cavium, Inc. | Methods and systems for flexible packet classification |
| US20180240099A1 (en) * | 2015-05-11 | 2018-08-23 | George Ernest Bester | Method and a system for authenticating and identifying the location of a communication device |
-
2018
- 2018-12-28 TW TW107147860A patent/TWI672023B/zh active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW200926800A (en) * | 2007-08-08 | 2009-06-16 | Maxlinear Inc | TS packet grooming |
| CN103166855A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市共进电子股份有限公司 | 识别和转换网络报文中的地址信息的方法和系统 |
| CN103166855B (zh) | 2011-12-12 | 2016-09-21 | 深圳市共进电子股份有限公司 | 识别和转换网络报文中的地址信息的方法和系统 |
| WO2014117688A1 (zh) * | 2013-01-30 | 2014-08-07 | 华为技术有限公司 | 一种数据传输方法和相关装置 |
| US20150195387A1 (en) * | 2014-01-08 | 2015-07-09 | Cavium, Inc. | Methods and systems for flexible packet classification |
| US20180240099A1 (en) * | 2015-05-11 | 2018-08-23 | George Ernest Bester | Method and a system for authenticating and identifying the location of a communication device |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI880356B (zh) * | 2023-09-22 | 2025-04-11 | 致茂電子股份有限公司 | 網路封包處理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202027468A (zh) | 2020-07-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5670341B2 (ja) | 改良された自動化された取引システム | |
| CN115297003B (zh) | 跨安全网络边界的配置验证的系统和方法 | |
| US11057502B2 (en) | Cloud assisted behavioral automated testing | |
| US20180198624A1 (en) | Private blockchain transaction management and termination | |
| CN102118230B (zh) | 一种基于ttcn的网络协议性能测试方法 | |
| CN102752216B (zh) | 一种识别动态特征应用流量的方法 | |
| WO2021232590A1 (zh) | 基于私有链的用户验证方法、装置、计算机设备及存储介质 | |
| TWI672023B (zh) | 網路封包處理方法及其裝置 | |
| CN112597240A (zh) | 一种基于联盟链的联邦学习的数据处理方法与系统 | |
| CN101690005B (zh) | 移动终端的基于web的空中预配置和激活 | |
| CN107070940A (zh) | 一种从流式登录日志中判断恶意登录ip地址的方法及装置 | |
| CN106878285B (zh) | 一种应用于反熔丝器件编程及测试系统的通信方法 | |
| CN113225320A (zh) | 一种用户可配置报文格式保密的网络报文解析方法 | |
| CN103984633B (zh) | 一种银行主机下传作业的自动化测试系统 | |
| US20140379553A1 (en) | Method and a system for sending an electronic message | |
| CN112165463B (zh) | 审计数据的生成方法、装置、设备和计算机可读存储介质 | |
| US20140164205A1 (en) | Market access system and method | |
| CN108989046A (zh) | 一种ssl证书链自动补全方法 | |
| CN112769739B (zh) | 数据库操作违规处理方法、装置及设备 | |
| US20230262032A1 (en) | Obfuscation of input data values into observable data values using symbology-based encodings | |
| CN114968769B (zh) | 一种接口测试方法、装置及设备 | |
| CN114117337B (zh) | 一种面向工业控制终端设备的单向安全检测与多因子加权评估系统 | |
| CN111385257A (zh) | 网络封包处理方法及其装置 | |
| CN107632935A (zh) | 一种软件系统压力测试方法、装置、设备及存储介质 | |
| CN110120987B (zh) | 一种WiFi连接方法及装置 |