I’m sure you’ve all heard of Cisco IOU by now, and I’m finally catching up with the other bloggers of the world by mentioning it.  It’s an executable version of an IOS image that runs on a Unix (or Unix-like) platform and it’s the backend behind Cisco’s Learning Labs.  Instead of running an emulator and loading up various images, you just run the executable and you’re on the console of a Cisco router.  It has layer 2 support, so you can fire up switches as well.  Being a binary makes it way more efficient than GNS3 will ever be, and the layer 2 support is a wonderful, wonderful feature to have.