我有一个SQL Server不断地从networking接口发送数据。 正在发送的数据太高; 大约每秒7MB。 我用防病毒扫描服务器,但没有发现任何东西。
我怎样才能确定什么是我的服务器上使用这么多的带宽?
如果存在感染的机会,使用防病毒工具扫描服务器将毫无用处。 这可能是因为感染本身不能被发现。 如果担心存在感染,则需要使服务器脱机并在硬盘上执行扫描。 考虑使用带有防病毒软件的启动光盘,比如卡巴斯基救援光盘。
要查看进程占用了多less带宽,只需打开内置的“资源监视器”工具,然后查看networking子部分:

您也可以使用perfmon来创build一个监视器,然后使用Process类中的计数器来确定它正在使用的IO数量。 IO将是networking和磁盘I / O的统计,所以您仍然可以合理地猜测哪些进程正在占用带宽。
如果您想安装第三方软件,请查看NetLimiter 。
如果你想去核心,使用networking监视器来捕获数据包或将服务器端口镜像到嗅探器服务器上,并尝试将数据重build为有意义的数据。
在你的情况下,你已经缩小到IIS和工作进程的可执行文件。 你现在要检查哪个网站占用了这么多的带宽。 IIS可以为每个可以使用LogParser检查的站点创build日志文件。 有人已经做了一个快速免费的程序,可以检查日志和显示一些统计数据。 它被称为“ IIS Trafic监视器 ”。确保检查它的文档 。
还有其他的付费工具来确定IIS的带宽使用情况,但我会让你find它们,以免我的链接似乎是一个认可。
如果在IIS服务器之前有任何一种网关或防火墙,它可能有能力检查跨越其边界的数据包,并根据像HTTP这样的应用层stream量重build统计数据(这意味着它可以根据URL和目录)。
我会开始浏览networkingstream量 – http://www.wireshark.org/download.html
在MS SQL中,您还可以运行分析器跟踪来查看数据库活动。 也许MySQL有一个类似的function?