Try backing off SnapMirror's TCP window (options snapmirror.window_size) to lower the effective throughput, or nail down 'kbs' options in your snapmirror.conf.
Yup - tried the "options snapmirror.window_size 32768" and throttling the mirror speed down.
I still don't understand why, if the connection was ropey, it didn't just keep trying to establish the baseline rather than just giving up and failing to initialise.
I'll have to see what our networking guys come up with on the ipsec side.
Cheers, Raj.