Synchronize with the network get slower (almost "exponentially") when you are reaching the end of the blockchain, and for some users it get stuck at some point.
On my case I got like 1 block per minute or more, and I was around 90% for
2 days. But then I realized that if I restarted the client it begun to download the chain again at a rate of ~3 blocks per second, but then after a couple of minutes it was getting slower and slower.
It looked like there was an inverse relationship between the number of peers connected (~10) to my client and the syncing speed, so I tried starting bitcoin-qt with maxconnections=2 and the speed kept at ~2 blocks per second, with 4 connections it was like 3, but then with 5 it was slower...
So, I could finally synchronize with the network in a couple of hours using maxconnections=4
I do have UPnP on my router, and (eg) BitTorrent works just fine.
could somebody explain this behaviour?