If a client can't download a package assigned to it, does it enter a backoff period? How does this work?
If subnet masking is not configured, a NS Client will send out ICMP pings to each of the package servers in its policy config.xml file? These packet sizes are 1, 30, 200, or 400 bytes, depending on what is being done. This cannot be configured.
Once a server has been pinged its speed is kept in cache for a number of hours (6). The server will not be pinged again until this time expires. Additionally, once a server has returned a certain number of errors it is marked as bad and is skipped for a number of hours
If a client fails to download a package, it will retry the package download based upon the HKLM/SOFTWARE/Altiris/Communications/Package Delivery/
Retry Delay (mins) registry setting. This is set for 3 minutes by default. This retry delay increases at the rate of 3, 6, 12, 24, 48 minutes respectively. Each retry delay will reduce the speed of the package server by 5%. If the speed of this package server decreases below the speed of the next fastest package server, the NS Client will roll off and try to download the package from the next fastest package server.
The HKLM/SOFTWARE/Altiris/Communications/Error Expiry (mins) registry value is set by default set for 1 hour. After an hour of errors, the error count is reset so that the back off delay begins again at 100% of the package server speed. With a Retry Delay of 3 and an Error Expiry setting of 60, a package server may only be reduced by 25% of its speed by retry reductions before it is reset to 100%. If the speed of the next fastest package server is less than 75% of the value of the fastest, the client may never roll over to a new package server.
The HKLM/SOFTWARE/Altiris/Communications/Package Delivery/Maximum retry delay (mins) setting default value is 120. This key triggers the resetting of the delay back to 3 minutes or to whatever value the Retry Delay (mins) registry key is set at.
It might be beneficial to set the retry delay down to like 1 minute so that it increments with 1, 2, 4, 8, 16, 32, 64, 128, etc. and set the Error Expiry to a higher value like 130. This would allow the fastest package server to be reduced by 40% before the settings are reset.