My gut says that I would be checking for connectivity issues first.
Over the years I've seen these sort of issues that when tracked down turn out to be networking issues with jittery network cards, firewalls, physical wiring, router configs, machines with duplicate ip addresses being switched on etc.
For a start set a continuous ping away, pinging the server and see if you get any drop outs over the period of time of the fails. From there you just have to dig deeper until you find the root cause. Check the event logs on both sides for any clues.
ping {servername} /t