What process does the Altiris Agent use to download a package?
The following dataflow diagram explains the process the Altiris Agent uses to download a package.
This diagram provides a graphical representation of the Software Delivery dataflow.
After you have created a SWD task, the SWD flow is the same for all packages:
- The next time the Altiris Agent checks in based on your configured settings:
- The GetClientPolicies.aspx page is passed a GUID.
- The Notification.server.name.xml file is returned to the Altiris Agent with information that includes a task definition, execution instructions, credentials, schedule and command-line parameters.
- The SWD Agent [AeXSWDAgent.dll] parses the task definition.
- The SWD Agent requests a package location from the Notification Server.
- The getPackageInfo.aspx page is called with the Computer GUID, the Package GUID, and the IP Address to look up the computer’s location and which package server would be assigned for delivery should a package server be so configured.
*TotalTime—The Agent sends a time value to indicate how long it has been trying to download the package. If the time is greater than the MaxAgentDownloadTryingTimeMins, the NS returns the codebases of the PS on the same site as the NS for that request. Default is set to off. See release notes, 5.2.7 for more information on this feature.
- The Package.xml retrieved from the Notification Server provides the snapshot location. If package servers are defined, package servers are included as a source for the Package Snapshot.xml file.
- Package Delivery Agent requests the package snapshot.
- The getSnapshot.asp file is called with the package GUID. When package servers are defined, the agent performs a speed test [SpeedTestCodebases = 1, by default in CoreSettings.config].
- Snapshot.xml returns containing a Hash, list of files in the package, and their sizes and date/time stamp. Should the package be updated, the hash would change.
- Agent evaluates the current task and the package attributes and compares them to the default settings received in the Agent Settings policy. If the prerequisites for multicast are met [enabled, package size, download to agent (not run from server), etc], then the request is passed to the multicast engine. The multicast engine checks for package availability. If there is a current multicast session running, the package is distributed during the current session. If a multicast session is not running, and the max sessions per physical subnet will not be exceeded, a new session is started. If the session fails, the multicast is tried again and again until it reverts to a standard download.
- The SWD Agent requests the package from Package Delivery.
- The Altiris Agent downloads the package from the Notification Server or the designated Package Server depending on how your solution is configured.
- The SWD Agent schedules the execution of the package.
- The package execution is scheduled.
- The package runs.
- The SWD Agent sends the execution Status to the Notification Server.
- The Status is received and processed through the Event process queue.