Fix it now
The host asked the guest to do something and the guest did not answer within the time allowed. 0x800705B4 is Win32 error 1460, a plain timeout with nothing more specific in it. The useful question is not why it timed out but what stopped the guest replying, and the integration service status usually says.
Get-VMIntegrationService -VMName 'Server1'
Get-VMIntegrationService -VMName 'Server1' | Where-Object { $_.SecondaryOperationalStatus -eq 'ProtocolMismatch' }
- Read both the enabled flag and the status. A ProtocolMismatch on any service means the guest components are out of step with the host, and that is the whole answer.
- Inside the guest, check the components are running:
Get-Service -Name vmic*. Set any that should be automatic and are not, then start them. - Patch the guest. On Windows guests the integration components are serviced through Windows Update; on Linux guests they ship with current kernels, so a kernel update is the equivalent.
- If only backups and production checkpoints fail, run
vssadmin list writersinside the guest and look for a writer that is not in a stable state.
Control integration services from Hyper-V rather than from inside the guest. The matching guest service starts and stops automatically when you change its state on the host, so changing both by hand is how the two ends end up disagreeing.
If the operation completes, stop here. If every service reports healthy and it still times out, the next section covers what else makes a guest slow to answer.
Why it happens
Integration services are a matched pair: a component inside the guest and a provider on the host, talking over the virtual machine bus rather than over the network. Through that channel the host asks the guest to shut down cleanly, exchanges heartbeats, synchronises time, passes key and value data, offers a guest service interface for file copy, and, most importantly for backups, asks the guest to quiesce its storage. Microsoft names the six services exactly: Guest Service Interface, Heartbeat, Key-Value Pair Exchange, Shutdown, Time Synchronization and VSS.
None of those requests waits forever. Each has a timeout, and Win32 error 1460 is what comes back when one expires: this operation returned because the timeout period expired. That is all it says. A guest that is paging heavily, waiting on slow storage, or busy with its own scheduled work can miss the window and produce exactly this while looking perfectly healthy from the inside.
Backups and production checkpoints go further than a simple request. The host asks the guest’s shadow copy service to freeze every writer so the disks are consistent at a single moment. That involves every application writer registered inside the guest, so one writer in a failed state, a volume with too little free space, or a guest under load turns into a host-side timeout. The two ends of that conversation are logged separately, on the host and in the guest, and reading only one of them is how these get misdiagnosed.
The guest’s integration components are out of step with the host
You have this one if SecondaryOperationalStatus reports ProtocolMismatch on one or more services, or the guest has not been patched for a long time.
- For Windows guests, install pending updates inside the guest. The components are serviced through Windows Update and are not installed from the host.
- For Linux guests, update the kernel or the distribution’s Hyper-V packages; the components are built into current kernels.
- Re-run
Get-VMIntegrationServiceand confirm no service still reports ProtocolMismatch.
This is the check to run first, because it is a single command and it either identifies the fault outright or rules it out.
The service the operation needs is switched off
You have this one if The failing operation maps exactly to one integration service that is disabled on the machine or stopped in the guest.
- Enable it on the host by its documented name:
Enable-VMIntegrationService -VMName 'Server1' -Name VSSfor backups and production checkpoints, or Shutdown, Heartbeat, Time Synchronization, Key-Value Pair Exchange or Guest Service Interface as appropriate. - Confirm the matching service inside the guest is running with
Get-Service -Name vmic*. - Retry the operation with both ends agreeing.
The names PowerShell accepts are Guest Service Interface, Heartbeat, Key-Value Pair Exchange, Shutdown, Time Synchronization and VSS. A friendlier-looking label copied from a settings page will be rejected.
Shadow copy inside the guest is unhealthy
You have this one if Only backups and production checkpoints fail, and vssadmin list writers in the guest shows writers in a failed or unstable state.
- Free space on the guest’s volumes. Shadow copies need room, and a full volume is the most common single cause.
- Restart the services behind any failed writer, or reboot the guest, then list the writers again.
- Read the guest’s own application and system logs at the moment of the failure for the writer’s complaint.
- If a third-party backup agent installs its own provider inside the guest, check whether it and the host-level backup are competing for the same freeze.
The guest cannot answer in time because the platform is overloaded
You have this one if Failures move around between guests, cluster at the same time each night, and line up with backup windows.
- Stagger backup jobs so fewer machines are quiesced at once.
- Check host storage latency during the window rather than averaged over the day.
- Check whether the guest has enough memory to avoid heavy paging while it is being frozen.
- Retry a single machine outside the window. If it succeeds, you have contention rather than configuration.
The guest operating system has no supported components
You have this one if An old or unusual guest that has never had working integration services, where the host reports the components as absent.
- Confirm whether components exist at all for that guest operating system on this host generation.
- Where they do not, accept crash-consistent backups taken at the host level and add an in-guest backup for anything that needs application consistency.
- Plan a move to a supported guest operating system. This gap does not close on its own and it widens with every host update.
Full reference
The six services, and what each one is for
| PowerShell name | What it does | What fails without it |
|---|---|---|
VSS |
Quiesces guest storage for a consistent copy | Host-level backups and production checkpoints |
Shutdown |
Asks the guest to shut down cleanly | Clean shutdown; the host is left with a hard power off |
Heartbeat |
Reports that the guest is responding | The host’s view of guest health |
Time Synchronization |
Keeps the guest clock aligned with the host | Clock drift, which breaks Kerberos before it breaks anything else |
Key-Value Pair Exchange |
Passes small values between host and guest | Inventory and automation that reads them |
Guest Service Interface |
Allows file copy into the guest | Copy-VMFile |
Those are the names Enable-VMIntegrationService -Name accepts. A command written with a settings-page label instead of one of these fails outright.
Checking both ends
Get-VMIntegrationService -VMName 'Server1' | Format-Table Name, Enabled, PrimaryOperationalStatus, SecondaryOperationalStatus
Enable-VMIntegrationService -VMName 'Server1' -Name VSS
Get-Service -Name vmic* | Format-Table Name, DisplayName, Status, StartType
vssadmin list writers
The host view and the guest view have to agree. A service enabled on the host with its guest counterpart stopped produces a timeout that looks like a network problem, and a service running in the guest that the host has disabled is simply never asked to do anything. Microsoft’s guidance is to control these from Hyper-V and let the guest service follow, rather than managing both.
Keeping the components current
- Windows guests: the components arrive through Windows Update inside the guest. There is nothing to install from the host.
- Linux guests: the components are built into current kernels, so a kernel update is how you update them.
- A guest whose operating system is past end of support will not receive component updates again, and the mismatch widens with each host update.
SecondaryOperationalStatusequal to ProtocolMismatch is the published way to find guests that have fallen behind, and it is worth running across the whole host rather than only against the machine that failed.
When backups are the only thing failing
- Confirm VSS is enabled on the host for that machine and running in the guest.
- Run
vssadmin list writersin the guest and note any writer that is not stable. - Check free space on every volume in the guest, not just the system volume.
- Check whether a third-party backup agent inside the guest is also taking a freeze at the same time.
- Retry outside the backup window with nothing else running, to separate a broken writer from contention.
- If it succeeds outside the window and fails inside it, the fix is scheduling, not configuration.
Raising the timeout is not the fix
The host-side timeouts are not intended as tuning knobs, and lengthening a freeze window makes the guest’s applications wait longer rather than making them healthier. A freeze is a genuine pause: applications inside the guest stop writing while it lasts. Extending it to accommodate a writer that takes too long trades a failed backup for a slower application, and the writer is still broken.
When a licence is the actual fix
Most of the fixes above cost nothing: patch the guest, start a service, free some space, move a backup window. There is one case where they do not help. Once a guest operating system has passed the end of its support life its integration components will not be updated again, so the mismatch returns with every host update and the timeouts come back with it. Rebuilding or upgrading that guest is the durable answer and it needs a licence of its own. Where those guests sit on a busy Hyper-V host, the edition maths is worth checking: Windows Server 2025 Standard entitles the host to two virtual operating system environments and Datacenter entitles it to an unlimited number, so past a handful of machines per host Datacenter is usually the cheaper shape. Arco can check which fits your machine density and supply either.
Every code this article covers
| Code | What it points at | Source |
|---|---|---|
Event ID 4096 |
Not published by Microsoft. It appears where a request to the guest’s integration components did not complete in time; the entry names the machine and the operation | not published by the vendor |
0x800705B4 |
Win32 error 1460: this operation returned because the timeout period expired. A plain timeout with no more specific cause recorded | Microsoft Learn |
Event ID 18590 |
Not published by Microsoft. It appears on the host against a machine that could not be quiesced or backed up as requested | not published by the vendor |
Event ID 8229 |
Not published by Microsoft. It appears in the guest around a shadow copy writer refusing an event; read the writer name in the entry | not published by the vendor |
Confirm the fix worked
Get-VMIntegrationServiceshows every required service enabled with no ProtocolMismatch.Get-Service -Name vmic*inside the guest shows the matching services running.- A production checkpoint of the machine completes, and removing it merges cleanly.
vssadmin list writersin the guest shows every writer stable with no errors.- The backup job that was failing completes and reports an application-consistent result.
Questions people ask about this
Can I raise the timeout instead of fixing the guest?
The host-side timeouts are not tuning knobs, and lengthening a freeze makes the guest’s applications wait longer rather than making them healthier. Fix what is slow or failing inside the guest.
Do integration services still come from the host?
Not for Windows guests. Microsoft documents them as being serviced through Windows Update inside the guest, and for Linux guests they are built into current kernels.
My Enable-VMIntegrationService command is rejected. Why?
Almost always because the name is a settings-page label rather than one of the accepted values. The names PowerShell takes are Guest Service Interface, Heartbeat, Key-Value Pair Exchange, Shutdown, Time Synchronization and VSS. For backups, use VSS.
Does the failure mean my backup is worthless?
It means that backup did not complete as an application-consistent copy. Some products fall back to a crash-consistent copy, which is better than nothing and is not what a database needs. Check what your product actually produced.
Is a newer Windows Server edition required to fix this?
No. Standard and Datacenter behave identically here. Edition only decides how many virtual machines you may run on the host.
