rsync with an SSH transport
scp can’t resume transfers where it left off. rsync can.
All it takes is:
rsync -r –partial –progress –rsh=ssh user@host:sekrit/ .
You may also want to add the —bwlimit option to specify the maximum transfer speed (in kbytes/s).