如何找出 Windows 中哪些服务正在消耗带宽?

如何找出 Windows 中哪些服务正在消耗带宽?

资源监视器显示 svchost 正在消耗所有带宽。我如何检查这些服务中的哪一个是造成这种情况的原因?

我的资源监视器显示服务主机进程:

在此处输入图片描述

答案1

您可以强制在 svchost.exe 的共享实例中运行的服务使用它们自己的 svchost.exe 实例。这将允许您单独查看每个服务的带宽使用情况。使用以下命令执行此操作:

sc config <servicename> type= own

笔记:里面的空间type= own是故意留下的。

例如,要在 svchost.exe 自己的实例中运行后台智能传输服务,请运行:

sc config BITS type= own

要使更改生效,必须重新启动服务。要立即执行此操作,请使用:

net stop <servicename>
net start <servicename>

使用排除法,隔离多个服务,直到找到消耗带宽的服务。要将服务恢复为 svchost.exe 的默认“共享”实例,请使用以下命令:

sc config <servicename> type= share

答案2

进程流量监视器是一个免费的进程流量监视工具,它可以显示哪个进程或应用程序正在使用更多的网络流量。

您需要安装 WinPCap 才能使其运行。

您可以从以下位置获取该工具这里

答案3

您可能能够使用 Netstat 来帮助确定正在使用带宽的内容。

下面的例子。

打开 cmd.exe 并输入。

netstat -o -n

在此处输入图片描述

现在找到具有最多连接数的 PID。

在此处输入图片描述

这应该能帮你找到占用带宽的原因。只需终止进程或深入挖掘,就能看到进程占用带宽的原因。

使用的 Netstat 开关。更多开关这里

-n:显示活动的 TCP 连接,但是地址和端口号以数字表示,并且不尝试确定名称。

-o :显示活动的 TCP 连接,并包含每个连接的进程 ID (PID)。您可以在 Windows 任务管理器的“进程”选项卡上根据 PID 找到应用程序。此参数可以与 -a、-n 和 -p 组合使用。

答案4

网络限制器是免费的,也是监控每个应用程序带宽使用情况的绝佳选择。您还可以限制每个应用程序的带宽使用情况。

在此处输入图片描述

相关内容