I think one of the peers, either you or the person you're trying to download or upload to, needs to be "connectable" with a forwarded port. If you don't have a forwarded port, you'll only be able to download and upload with peers that do have an open port.