well if both are bits (what connection speed is mostly measured in) then there's another factor. You could possibly download up to 4,2 Mb/s, but the server you request data from can only give you 500Kb/s upload speed, so your download isn't the bad guy, but the servers upload
OT: Good work, cermage