Download speed is determined by the website downloading a file of a known size from a server to your computer, measuring the amount of time it took to download. So, for example, if the webapp downloaded a 100KB file in 2 seconds, you would have a download speed of 50KB/sec (100/2 = 50).
Upload speed is determined the same way - a file (I would assume the same file it downloaded) is uploaded from your computer to the server, and the webapp measures the time it took to upload the file and calculates the speed.
As for your speeds, it varies by ISP, your purchased package, and even internet congestion. Mine, for example, showed:
Download Speed: 13905 kbps (1738.1
KB/sec transfer rate)
Upload Speed:
2416 kbps (302 KB/sec transfer rate)
Your maximum speeds, both up and down, are usually set by your ISP and isn't something you can adjust. The reason that your download speed is higher (usually very much so) is that most of what you do on the internet involves far more downloading (especially if we're talking about watching videos/playing games!) than uploading.
DSLReports.com has some tools that you might be able to use:
Tweak Test: "Tests if your computer is setup correctly for broadband TCP connectivity. Your PC may not be tuned properly to take full advantage your full connection speed. For those with high speed connections (faster cable networks, FiOS, etc), tuning your TCP stack is necessary if you wish to fully utilise the available bandwidth in one single download."
- Be careful if you're running a newer OS like Windows Vista or Windows 7 - the TCP stack doesn't take well to being messed with.
Line Quality Testing:: "Packet loss tests on your line, including identification of any problem routers en-route to you. If you are HAVING TROUBLE with your broadband connection, and it relates to packet loss, excessive latency, or internet or ISP congestion, this test may help find the cause."
You can also take a look at DSLReport's FAQ on Broadband technology.