Sensing Activity on the Physical Connection
The hypervisor maintains a global count of the number of bytes that the hypervisor receives on the debugging connection. The hypervisor increments this count each time a byte is received. A change to the counter value can provide an indication to a guest of session receive activity on any session, which implies that the physical connection is intact. Note that a changing counter value does not guarantee an active session because the hypervisor could misconstrue noise as received data.
The hypervisor also maintains a local, session-specific copy of the global counter that is updated from the global counter whenever the guest attempts to retrieve data from the session. If the guest needs to test for incoming activity, the guest can specify the HV_DEBUG_RETRIEVE_TEST_ACTIVITY option value in the Options parameter in a call to the HvRetrieveDebugData hypercall function. If the guest specifies this option, HvRetrieveDebugData will compare the local and global counters before doing anything else. If the local and global counters match, no receive activity on the physical connection has occurred since the local counter was last updated, and HvRetrieveDebugData returns an error. Guests can use this feature to detect inactivity and implement a time-out mechanism.
Send comments about this topic to Microsoft
Build date: 11/16/2013