蟒蛇。类,结构,字典?

时间:2011-02-11 03:11:44

标签: python tcp ctypes pcap

我正在将TCP / IP数据包分解为字符串格式。构建和存储它的最佳方法是什么?我应该将它存储为ctypes结构,python类,字典还是其他方式?每种方法的优缺点是什么?

3 个答案:

答案 0 :(得分:8)

你应该使用一个班级。它为您提供了将来最大的灵活性。

字典具有更详细的语法来访问其内容,并且在您需要时不允许添加方法。

ctypes实际上是用于访问打包以在其他API中使用的结构。如果您的数据将保留在Python中,唯一的好处是它在内存中会更紧凑。

答案 1 :(得分:1)

我是这类词汇的忠实粉丝,因为

  1. 你可以做像thisPacket ['srcPort']
  2. 这样的事情
  3. 然后你可以将你的数据包推送到像MongoDB这样的东西,然后以很酷的方式查询它们(即给我80端口上的所有数据包,并且来自某个设置了特定标志的子网)

答案 2 :(得分:1)

我非常喜欢详细的要求。

缺乏这些,我会选择一个名为元组。

您可以执行thisPacket.srcPort

等操作

然后,您可以将数据包推送到像MongoDB这样的东西,然后以很酷的方式查询它们