如何把二進制“天書”變成“人話”


如何把二進制“天書”變成“人話”


網絡流量貫穿業務流轉的各個環節,從我們電腦、手機,到數據中心、WEB組件和應用等都需要通過網絡流量完成數據交互。因此,網絡流量存在著巨大的應用價值。

但原始的網絡流量以二進制方式呈現,無法直接讀取和應用,因此需要通過相關工具和技術,把網絡流量變成更加容易讀取的數據信息,進而更好地應用在業務場景中,實現其價值最大化。在這過程中就要對網絡流量進行採集、解碼和分析。

接下來,我們就來看看如何把天書般的網絡流量翻譯成“人話”,更好地為我們所用。


第一步:網絡流量採集

採集網絡流量需要藉助相關工具來實現,如果是臨時性抓取網絡流量,可以採用一些開源工具,例如Wireshark、Tcpdump等;但如果需要長期對網絡流量進行捕獲和分析,就需要一些專業的工具了,例如專業的探針設備。

第二步:網絡數據包解碼

在完成網絡流量的採集之後,就要對數據包進行解析。數據包解析的過程,是對二進制比特流中各個位置的字段進行提取和解析的過程。在不同的分析工具和應用場景下,所需要分析的層級是不同的。


如何把二進制“天書”變成“人話”

首先,根據使用場景的不同,需要解析的層級是不同的

1、網絡性能監控場景:如果是用做網絡性能的分析,只需要對網絡相關層級進行解析即可。對應上圖TCP/IP協議模型,即需要對鏈路層、網絡層、傳輸層進行解析。按照各個字段所在的位置和長度,可以獲取報文長度、流量大小、連接數、源IP、目的IP、源端口、目的端口、TCP建連、TCP斷連、TCP耗時等網絡性能指標。

通過對TCP/IP的解析,可以精準地分析某一個IP、端口、連接的交互狀況,這也是網絡故障分析至關重要的一個使用場景。例如連接中是否存在網絡耗時過長、TCP三次握手成功率低、丟包、傳輸效率低等情況。


如何把二進制“天書”變成“人話”

2、應用性能監控場景:如果用作應用性能、交易性能的監控分析,則需要對TCP/IP協議所承載的應用層報文進行解析。從而獲得交易渠道、交易代碼、交易流水號、交易金額、返回碼、交易類型等等業務相關指標信息,經過計算,還可以獲得交易量、交易耗時、交易成功率、交易響應率等指標,甚至可以做到單筆交易流水的全流程追蹤。

其次,不同數據包類型的解碼分析也有所不同

1、通用協議的解碼分析:

  • 通用協議的解碼分析相對容易,TCP/IP作為標準的通信協議,在對數據包鏈路層、網絡層、傳輸層進行解碼時,只需要參照標準格式規範進行解碼分析即可;
  • HTTP、DNS等通用的應用層協議,也可以參照標準的規範進行解碼分析。
如何把二進制“天書”變成“人話”

2、私有協議解碼分析:

  • 不同的行業都存在著私有應用層協議,如果協議採用的是標準接口格式,只需要參照標準的格式進行解碼分析即可。但並非所有私有協議都會採用標準接口格式進行消息的傳輸,如果是非標準接口的協議,則需要按照接口規範進行協議解碼。
  • 對於行業或者用戶私有的報文格式,則需要按照其報文封裝格式規範進行單獨的解碼。
  • 此外,TCP或者UDP所承載的應用層消息部分,其實包含了大量有價值的信息,例如交易渠道、交易代碼、交易流水號、交易金額、返回碼、交易類型等等,這是通常解碼中容易被忽略的地方。

私有協議解碼相對較複雜,為了提升網絡數據分析效率,天旦基於大量協議解碼經驗積累,融和AI技術,開發了Smart Decoder智能解碼引擎,無需專業代碼編寫,即可實現大部分私有協議的可視化智能解碼。

如何把二進制“天書”變成“人話”

部分天旦智能解碼支持的協議

第三步:網絡流量數據的應用

對網絡流量進行解碼分析後,就可以進一步應用在很多場景中了。例如:

1、網絡性能監控:利用網絡流量數據,可以建立覆蓋數據中心重要鏈路、關鍵設備、核心服務的監控視圖,實時提煉網絡性能的關鍵監控指標,實現精準故障告警與自動化故障診斷。

2、業務性能監控:通過網絡流量鏡像技術,即可全網採集數據,覆蓋傳統網絡、虛擬化、雲環境,實現端到端的一體化業務性能監控,精準及時告警。

3、數據庫性能監控:從數據庫通訊報文解析的相關指標,可以用於數據庫監控,利用網絡流量零侵入的方式對數據庫的每一筆SQL語句進行監控。

4、業務創新:

對網絡流量數據中應用層協議進行解碼分析,可以獲得高價值的業務數據。通過活用業務大數據,實現實時風控、精準營銷、商業智能等創新應用。


分享到:


相關文章: