Thanks for the replies. Well, I always thought that the miners served out the blockchain not the clients. And my client is behind a firewall, with no port forwarding, so how are other clients attaching to it?
Bitcoin-Qt establishes 8 outgoing connections to peer nodes when it starts up. It then listens for incoming connections and will accept connections until the maxconnections limit is reached. By default, Bitcoin-Qt will use uPnP to open the 8333 port on your router if it is supported. You can specify listen=0 if you do not want to accept incoming connections.
I use NetLimiter to limit the upload bandwidth used by Bitcoin-Qt and I specify maxconnections to limit the total number of connections to something that is manageable.