I am trying to get a better handle on the timing of the agent deployment process and what affects how long it takes to deploy an agent update to a Windows 7 WS. We have a single ZCM 11.4.2 primary server appliance (so it is a SLES OS) and a Windows 7 Proxy server. I am trying to deploy the ZCM 11.4.2 agent to Windows 7 WS that are currently running

At 9:30 AM I assigned the updated agent from the ZCM control center to the WS.
At 9:31 AM I used a quick task to refresh the WS.
At 9:32 AM the ZCM control center shows that the agent was refreshed.

It is now 11:00 AM and the WS still hasn't started the agent update process.

1. When the agent is assigned to a WS in our environment, is the agent assigned directly from the linux ZCM control center to the WS? Or is the assignment sent from the ZCM control center to the Windows Proxy server then from that to the destination WS?

2. Do I have to wait a longer time from the time I assign the updated agent to the WS in the control center until the time I use a quick task to refresh the WS from the control center? If so, what is a reasonable time?

3. If the problem is timing delays in telling the ZeUS update service on the WS to start then is there a way I can programmatically tell the WS to check for an update?

I have seen variations from minutes to hours from when I assign an updated agent to a WS and when the agent is updated. This is too long for our environment. How can I reliably guarantee that an agent will be updated within a specific time window?