创建了2个套接字Raw socket和socket,都调用recvfrom(),一个专门捕获数据包,一个在9001端口监听UDP请求,怎么不行?
来源: 互联网 发布时间:2016-05-22
本文导语: 我创建了2个套接字,一个Raw socket,一个socket, 每个socket都调用recvfrom(),一个专门捕获网络上的数据包, 一个专门在9001端口监听UDP请求,为什么执行监听9001端口的recvfrom执行时,一直等待, 而捕获数据包的recvfrom...
我创建了2个套接字,一个Raw socket,一个socket,
每个socket都调用recvfrom(),一个专门捕获网络上的数据包,
一个专门在9001端口监听UDP请求,为什么执行监听9001端口的recvfrom执行时,一直等待,
而捕获数据包的recvfrom()却收不到数据,直到有发往9001的数据为止。
能不能让2个recvfrom同时执行,你监听你的,我捕获我的。
谢谢!!!
每个socket都调用recvfrom(),一个专门捕获网络上的数据包,
一个专门在9001端口监听UDP请求,为什么执行监听9001端口的recvfrom执行时,一直等待,
而捕获数据包的recvfrom()却收不到数据,直到有发往9001的数据为止。
能不能让2个recvfrom同时执行,你监听你的,我捕获我的。
谢谢!!!
|
两个recvfrom?你是2个线程不?同时肯定得多线程啊。
|
不能!
你是要对recvfrom的数据进行分析,对吧??
你能在一个端口9001,bind两个socket吗??
要不你这样吧?你用raw socket接受,把“,你监听你的,我捕获我的”的两个功能放到一个function里去!把raw socket数据分析,并把数据传给"你监听你的"里去!
我很菜,什么时候有空了,我得研究研究这个!很有研究价值·!哎,没钱呀,现在连一台电脑都买不起,郁闷!
你是要对recvfrom的数据进行分析,对吧??
你能在一个端口9001,bind两个socket吗??
要不你这样吧?你用raw socket接受,把“,你监听你的,我捕获我的”的两个功能放到一个function里去!把raw socket数据分析,并把数据传给"你监听你的"里去!
我很菜,什么时候有空了,我得研究研究这个!很有研究价值·!哎,没钱呀,现在连一台电脑都买不起,郁闷!