就 encapsulated 協定,每個 dissector 負責解碼一部分協定,然後交給下個階段 dissector。整個 dissection 流程,一開始是 Frame dissector 解碼擷取檔封包本身 (例如 timestamps)。然後資料交給 lowest-level data dissector,例如解析 Ethernet header。payload 再交給下一個 dissector (例如
IP) 等等。
Dissection 實作有兩種方式:內建或 plugin。一開始發展可以用 plugin 減少編譯時間。
doc/README.dissector
proto_register_protocol()
https://www.wireshark.org/docs/wsdg_html_chunked/ChapterDissection.html
沒有留言:
張貼留言