您好,登錄后才能下訂單哦!
小編給大家分享一下wireshark如何解析ceph網(wǎng)絡(luò)通信,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
wireshark從2.0版開(kāi)始支持ceph協(xié)議解析
下載地址:https://www.wireshark.org/download/
使用tcpdump在ceph集群上抓包,e.g.:tcpdump -i ens33 -s 0 -w 3ceph.pcap host 172.16.134.95 and host 172.16.134.96 ,
ens33是網(wǎng)絡(luò)接口名字,3ceph.pcap是保存的抓包的文件名字,host 172.16.134.95 and host 172.16.134.96是在這兩個(gè)節(jié)點(diǎn)之間流動(dòng)的數(shù)據(jù)包
注意:tcpdump抓包要從ceph集群會(huì)話開(kāi)始抓,否則在會(huì)話中間抓包,wireshark不識(shí)別。
1、GUI處理在頁(yè)面上所有用戶的顯示包塊對(duì)話框,源碼在ui/qt下面
2、core主要的“膠水”模塊,把別的模塊整合到一起,源碼在根目錄下
3、Epan包分析引擎,用協(xié)議書(shū)的形式分析包。源碼在epan目錄下
4、Wiretap用于讀、寫(xiě)捕獲的文件,源碼在wiretap目錄下
5、Capture捕獲網(wǎng)絡(luò)數(shù)據(jù)的接口模塊,源碼在capture下
參考:https://www.wireshark.org/docs/wsdg_html_chunked/ChWorksOverview.html
當(dāng)Wireshark從文件加載數(shù)據(jù)包時(shí),每個(gè)數(shù)據(jù)包都會(huì)被解析。 Wireshark嘗試檢測(cè)數(shù)據(jù)包類型,并從數(shù)據(jù)包中獲取盡可能多的信息。在此運(yùn)行中,只需要包列表窗格中顯示的信息。
當(dāng)用戶在數(shù)據(jù)包列表窗格中選擇特定數(shù)據(jù)包時(shí),將再次解析該數(shù)據(jù)包。 這一次,Wireshark嘗試獲取每一條信息并將其放入數(shù)據(jù)包詳細(xì)信息窗格中。
每個(gè)解剖器解碼其協(xié)議的一部分,然后將解碼交給后續(xù)解剖器以獲得封裝協(xié)議。
參考:https://www.wireshark.org/docs/wsdg_html_chunked/ChapterDissection.html
wireshark根目錄下epan/dissectors/packet-ceph.c是分析ceph網(wǎng)絡(luò)協(xié)議的源碼
10514行,注冊(cè)解析器函數(shù),
10516行,創(chuàng)建ceph_handle,如果有相應(yīng)的包調(diào)用dissec_ceph_old函數(shù)解析.
10518行,在啟發(fā)式解析器中加添dissect_ceph_heur,dissect_ceph_heur判斷是不是ceph的網(wǎng)絡(luò)包。wireshark分為普通字符串表,整數(shù)表和啟發(fā)式解析表,
啟發(fā)式解析器的特點(diǎn)是:一旦特定“連接”的數(shù)據(jù)包被識(shí)別為屬于對(duì)于特定的協(xié)議,Wireshark應(yīng)該始終直接調(diào)用該解析器解析此協(xié)議。
7091行,判斷是不是ceph網(wǎng)絡(luò)協(xié)議,其中C_BANNER定義在830行,C_BANNER_SIZE_MIN定義在833行
可見(jiàn)wireshark根據(jù)網(wǎng)絡(luò)包中的ceph v標(biāo)志,判斷是否為ceph網(wǎng)絡(luò)協(xié)議。
7099行,如果判斷是ceph協(xié)議,調(diào)用ceph_handle處理。在10516行中創(chuàng)建了ceph_handle。
7081行,調(diào)用dissect_ceph函數(shù),解析網(wǎng)絡(luò)包
07019行,在網(wǎng)絡(luò)包列表protocol字段中,設(shè)置Ceph字段
當(dāng)在一個(gè)網(wǎng)絡(luò)包列表中點(diǎn)擊一個(gè)網(wǎng)絡(luò)包時(shí),下方的網(wǎng)絡(luò)包詳細(xì)信息中,以樹(shù)形詳細(xì)列出網(wǎng)絡(luò)包的詳細(xì)信息。
用proto_item_add_subtree注冊(cè)下層的協(xié)議
c_dissect_xxx解析子樹(shù)。
以上是“wireshark如何解析ceph網(wǎng)絡(luò)通信”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。