Determine how the BES Client knows there is something to do?

From RiceFamily Wiki
Jump to: navigation, search

Clients become aware of new items / actions through the following methods:

  • UDP Notification ( usually within 10 to 30 seconds of an Action being submitted from a Console Operator )
  • Command Polling Interval ( off by default, configurable )
  • Command Polling following an automatic relay selection ( once every 6 hours by default if applicable )
  • Command Polling following a restart of the client service (or computer as a whole)
  • the Gather Interval (24 hours by default)

Basically, by default, out of the box, clients only guarantee a check once every 24 hours, so you may have to wait as long as 24 hours for something new to be noticed if they just did a Gather right before you create/deploy something.

Command Polling is a way to ensure that the maximum amount of time a client will wait until checking in is lower when the system is awake and online.

Part of the reason I think using Command Polling on all machines is a good idea is that a computer that is asleep will not receive UDP notifications, which means it may have missed commands that it won't know about until it polls for commands again or gathers. The same is true if a laptop is changing WiFi networks and the UDP notification is set to the old IP instead of the new one because it hasn't registered it's new IP with the relays yet. This is why a machine that would otherwise get UDP notifications could miss them, and why command polling is a good fallback, even if it is ideal to try to ensure UDP is working.