Its down to a combination of things
1. Max 500mA for a pair of ports (hub)
2. other devices running of same Hub
3. Loss of power per length of cable due to resistance of cable.
Constant plugging in out loads drivers for all ports and can cause conflicts i.e. device not recognised.
Generally devices are better using the ports directly off the motherboard or on a USB-PCI card
ie USB port run from a header off the port to say front ports on a PC are generally weaker than the rear ports.
I use USBdeview to unload driver from the registry and stop conflicts click here