python中网络管理器的最佳数据结构

时间:2012-08-20 05:46:50

标签: python python-2.7

在网络管理器中使用哪种最佳数据结构来处理网络中的数据包丢失? 我正在将数据包从一个系统发送到另一个系统[server / UDP]。收集数据包[client / UDP]然后必须使用它们并将其写入文件。

客户端系统中有2个线程: 1)像重复数据包一样处理数据包丢失,在丢失数据包上发送信号 2)一次获取少量数据包并将其写入文件。

我正在使用python。我应该使用哪种数据结构来存储数据包?我想为此滑动窗口算法。最多5个缓冲区,每个缓冲区最多可容纳10个数据包。

1 个答案:

答案 0 :(得分:0)

如果要在字节级别创建数据包并自行管理协议,则应该使用结构包提供的C样式结构的等效结构:http://docs.python.org/library/struct.html。这使您可以更好地控制数据包的内存布局。

如果您不关心内存布局,那么您可以创建自己的类来保存所需的值。

您可以使用内置的python列表来实现滑动窗口。例如,它们可以用作双端队列。