If you have things like bittorrent running (on your computer or other computers in the house) then that will take a chuck of your bandwidth and slow down the websites speed test. Its also possible viruses are eating your bandwidth.
If neither or those are the case, then 20mps is probably the speed between your modem and comcast, and there is a bottle neck somewhere else. Either at your router, the desitination you're trying to reach, or on one of the main lines that connects comcast to other ISPs.
also dial up cannot go faster then 56k (.05mps) so your still going around 27 times faster then your mother's dial up.