找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3545|回复: 8

弱问个有关网络监控的通用问题

[复制链接]
发表于 2008-9-2 17:47:14 | 显示全部楼层 |阅读模式
关于监控一个进程对外的连接,如果监控程序和被监控进程分离,那么监控程序是不是只能通过系统命令netstat监控到连接端口、对方地址等等信息。
如果要想监控每一条连接传输速度,是不是就需要把监控程序写到被监控进程里面,比如用ace的qos那样把传输句柄注册到reactor,在handle_qos中读取传输速度了?:$
发表于 2008-9-2 21:57:10 | 显示全部楼层
没明白你想做的事情。。。
发表于 2008-9-3 09:22:43 | 显示全部楼层
实现类似防火墙的功能? 监视进程网络连接流量? 如果是这个,不应该从ACE着手,应该从系统 API着手,或者驱动。
 楼主| 发表于 2008-9-3 09:38:48 | 显示全部楼层
想做的就是监控一个我们的那个程序中的每一条连接的速度,就比如平时下载东西,有提示速率、完成百分比这样的情况。
防火墙这样的级别倒是不用。
我想,是不是只有从已经使用的reactor框架中多注册一个QOS_MASK才可以监控qos(ACE_Flow_Spec)。
用netstat能看到我的程序的所有对外的连接,但是看不到传输速度、完成百分比。这样,做监控程序就一定要写入做好的reactor连接管理了?

[ 本帖最后由 sokiiya 于 2008-9-3 09:39 编辑 ]
发表于 2008-9-3 14:09:42 | 显示全部楼层
netstat命令是看当前网络的连接情况,当然不会显示网络流量了。要知道流量,只有程序本身实现,用你说的在Reactor中注册QOS_MASK。外部程序需要知道某个进程A的网络流量的话,只有通过网络驱动了,或者通过PCAP抓报文(先获得A进程的相关端口,然后设置规则抓取报文)。
 楼主| 发表于 2008-9-3 15:00:47 | 显示全部楼层
恩问的就是这个。
谢谢。
另外,多说句,怎么感觉只有抓报文,对udp的监控,有没有外部捕获tcp的。。。?
发表于 2008-9-3 17:04:59 | 显示全部楼层
外部捕获tcp的...是什么意思?
 楼主| 发表于 2008-9-3 18:47:55 | 显示全部楼层
就是抓tcp的传输流。。。答案是肯定的,呵呵。
不过感觉ace的qos对ACE_SOCK_Stream不怎么好使。我把原来用好的reactor框架里面的每一条连接(ACE_SOCK_Stream)的QOS_MASK都注册reactor,可惜handle_qos没有反应,而handle_input照常使用。估计handle_input的时候才有qos事件,所以又试着把那些连接的qos都单注册到一个新的reactor,这时,qos没响应,handle_input也什么事件也不响应了。
发表于 2009-2-25 17:30:49 | 显示全部楼层
QoS我也想用下,跟你的类似的情况,呵呵

不知道你进展如何,我还在研究。。。:lol
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-12-23 22:30 , Processed in 0.033668 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表