Skip to content

wslrelay.exe

Windows ProcessMicrosoft Corporation

Also called wslrelay, wsl relay, wsl localhost relay

WindowsSystem Component

WSL localhost and stdio relay. It forwards ports and some console streams between Windows and a distro. It is not the hypervisor and not WslService.

What you need to know

wslrelay is the port/stdio relay, not the hypervisor.

wslrelay.exe forwards localhost ports and some stdio between Windows and WSL. vmcompute.exe and the utility VM are the compute side. wslhost.exe handles broader interop. Ending a relay can drop a forwarded web server, not Hyper-V itself.

Safe?
Yes, during WSL networking or pipes
Is it Hyper-V?
No. It is a port/stdio relay
Same as wslhost?
No. wslhost is interop I/O
Feex says
If I see wslrelay while I bound a Linux app to localhost, I treat that as the port bridge. I do not open Hyper-V Manager and hunt vmms for that listen.

What is wslrelay.exe?

wslrelay is the port/stdio relay, not the hypervisor. It is not vmms.exe and it is not vmcompute.exe. Those run compute. This image only bridges localhost and some streams.

What does it do?

It maps a Linux listen onto Windows localhost and can carry stdio for a launched process. It does not manage VMs and it does not list distributions.

Why is it running?

A distro published a port, a tool used localhost forwarding, or WSL needed a stdio bridge. No forwarded sockets often means this relay should be idle or gone.

Why are there multiple copies?

Several wslrelay.exe copies can be several port or stdio bridges. That is not several Hyper-V management services.

Is it safe?

Usually safe

A Microsoft wslrelay in the WSL package is the localhost/stdio bridge. A wslrelay.exe in Temp is not. This is still not Hyper-V vmms.

A legitimate copy normally runs from:

C:\Program Files\WindowsApps\MicrosoftCorporationII.WindowsSubsystemForLinux_*\wslrelay.exe

  • Expected publisher: Microsoft Corporation
  • Job is port and stdio relay
  • Not vmcompute.exe and not vmms.exe

Can I end it?

That forwarded port drops

Ending wslrelay.exe can break localhost access to that Linux listener. The utility VM can stay up. Stopping vmms.exe is a different, Hyper-V story.

Can I remove it?

No

Do not delete wslrelay.exe. Stop the Linux process that published the port, or run wsl --shutdown. Do not disable Hyper-V to remove this relay.

Should it start with Windows?

A forward or stdio bridge starts it. It is not Startup Apps.

Normal resource behavior

These are contextual labels, not universal averages.

CPU
Follows traffic on the bridged port
Memory
Small
Disk
Low
Network
Localhost and mirrored/NAT WSL traffic

File information

wslrelay.exe file information
Executable name wslrelay.exe
Common legitimate path C:\Program Files\WindowsApps\MicrosoftCorporationII.WindowsSubsystemForLinux_*\wslrelay.exe
Publisher Microsoft Corporation
Signature expectation Signed by Microsoft Windows

Common problems

Browser cannot hit localhost:3000 after an optimizer killed the relay

Restart the Linux server or the distro. The app is still in the VM. vmms was never this bridge.

Confused with wslhost file hangs

\\wsl.localhost file I/O is wslhost. A dead localhost port is this relay.

Troubleshooting

Diagnose before you change anything destructive.

Confirm the Linux process is still listening

Inside the distro, check the port. If it listens there but Windows localhost fails, the relay is the Windows side. Hyper-V Manager will not show this socket.

wsl --shutdown, then start the app again

That rebuilds relays. Do not replace vmcompute.exe to "fix localhost."

Technical details

Technical details
wslrelay.exe technical details
Image name wslrelay.exe
Role WSL localhost and stdio relay

Sources and verification

Reviewed by Feex editorial. Last verified August 2026 Status: Feex Reviewed. How we research.

Was this article useful?

A yes or no is enough. Pick a reason if you want, or add a short note.

Was this article useful?