2011-02-11 78 views
3

我將TCP/IP數據包分解爲字符串格式。結構和存儲的最佳方式是什麼?我應該將它作爲ctypes結構體,python類,字典還是其他方式存儲?每種方法的優點和缺點是什麼?Python。類,結構,字典?

+0

必須有某種庫來處理這個的... – 2011-02-11 03:20:17

回答

8

你應該使用一個類。它爲您提供了未來增長的最大靈活性。

字典有更詳細的語法來訪問它們的內容,並且不允許您在需要時添加方法。

ctypes實際上是用於訪問打包用於其他API的結構。如果您的數據將保留在Python中,唯一的好處是它將在內存中更加緊湊。

1

林字典的東西的大風扇喜歡這樣,因爲

  1. 你可以做這樣的事情thisPacket [「srcPort」]
  2. 然後,您可以胡亂塞進你的數據包到像MongoDB的,後來對它們進行查詢在冷卻的方式(即給我每個數據包進入端口80,並從一些特定的國家設置的子網)
1

我是一個具體要求的粉絲。

缺乏這些,我會去一個命名的元組。

你可以做一些事情,如thisPacket.srcPort

然後,您可以胡亂塞進你的數據包到類似的MongoDB和很酷的方式以後查詢它們