看着TCP查看器我可以看到有超过 25 个 svchost 进程使用 TCP 和 UDP 端口。如果这些 svchost 进程是 Windows 所需的各种服务,那么为什么会有这么多进程使用网络?
答案1
根据维基百科:
在 Windows NT 系列操作系统中,svchost.exe(服务主机或 SvcHost)是一个托管多个 Windows 服务的系统进程。其可执行映像 %SystemRoot%\System32\Svchost.exe 或 %SystemRoot%\SysWOW64\Svchost.exe(适用于在 64 位系统上运行的 32 位服务)在多个实例中运行,每个实例托管一个或多个服务。它在所谓的共享服务进程的实现中至关重要,其中多个服务可以共享一个进程以减少资源消耗。
因此,预计您会在 svhost.exe 上运行许多 Windows 进程。其中许多进程仅使用 TCP/IP 端口(套接字)来进程间通信通过 localhost。这就是为什么你可以看到 svhost.exe 上有大量网络流量。
此外您还可以查找哪个 Windows 服务正在 svhost 上运行。我在我的计算机上运行“tasklist /svc”命令,它返回了 svhost 和一些正在运行的 Windows 服务之间的依赖关系: