哪种语言更适合数据包捕获和处理

时间:2010-01-13 03:30:28

标签: java c multithreading network-programming packet-capture

我想编写一个包含2个线程的程序,一个线程连续捕获来自网络的数据包并每隔t秒将它们转储到缓冲区中,另一个线程连续读取此缓冲区并每隔t秒处理一次。这可以是用C完成?或者Java会是更好的选择吗?

3 个答案:

答案 0 :(得分:4)

C和libpcap

答案 1 :(得分:1)

这里的答案是着名的“libpcap”。只要有一个好的libpcap包装器,就可以使用你最喜欢的语言。

所以选择你的语言,检查包装器的存在并继续。如果没有此语言的包装器,请更改您的选择,或创建自己的包装器

答案 2 :(得分:0)

当然可以在C中完成。

在Java中执行它取决于您是否可以访问Java的数据包捕获库(假设您想要捕获任意数据包,而不仅仅是专门针对您的应用程序的数据包)。