It's been 3 to 4 years since the battle of Yavin by the time ESB starts. The events of this part of the film seem to take less than 4 days total - within that time, a probe droid lands on Hoth, discovers the shield generator, and the Imperial fleet assaults the Rebel's Echo Base while the Rebels evacuate.
So here they are, a sizeable Rebel force with a big hangar, at least a dozen T-47 Airspeeders to defend it, medical facilities, an ion cannon, local tauntaun mounts, a command center, and a shield generator - but how long have they been there? If they've been there a long time, how come the snowspeeders aren't yet adapted to the cold? If they haven't been there a long time, how come they have this big ice base complete with a massive Ion cannon on top?
It seems like they haven't been there that long, yet the empire is already breathing down their necks. Did Vader simply get incredibly lucky and catch the Rebels just as they were settling in to their new base?