I'm getting a similar issue at present. Server running on 2008 R2 x64, WinXP, Win7 and WinPE clients. DS 6.9 SP5 MR3.
I've found that the workaround is to put delays into all of my jobs so the DS doesn't lose track of things. I use ping -n 10 127.0.0.1 at the end of batch script tasks to delay things by 10 seconds. I use the deployment task for copying files and folders rather than xcopy (eg. for copying the token-replaced unattend.xml file, rather than using a dos copy command). For vbscripts, I use wscript.sleep 10000 to slow things up a little so that the server is ready to receive the status message from the client.
Also, check the transaction log size for your db - make sure the db is set to Simple Logging (not bulk logged or full logging), and regularly shrink the transaction log, keeping the space available for the db.
This only started occurring for me after migrating the server from 2003 to 2008 x64. A Symantec ticket has been opened but to be honest I have given up waiting on the support team and got annoyed with the delays while they worked on it because this was impacting my deployment. I've found that reliability has been increased after carrying out the above steps.