Uploading data tends to be much slower than downloading, and it turns out there's a very good explanation for it.