GNS3 – An Interview

It used to be that the only way to get any direct, hands-on experience with any networking gear was to have access to some actual, physical equipment. It was an expensive prospect, and often out of reach for most beginners to invest significant dollars into owning their own lab gear. Back in 2000, when I first got started in this area, there were no companies offering remote rack rentals, there were no good simulators, and there weren’t companies selling refurbished networking products at a deep discount. Ebay was available, but the products you were looking at there were quite often from questionable sources and probably not genuine. Needless to say it was very difficult to gain experience working hands-on with the products you were hoping to get familiar with.

Certification training, especially on a budget, was something that was very difficult to do on your own.

Over the years projects like Dynamips and Dynagen would provide some limited simulation functionality for Cisco IOS, but in 2007 as part of a university Master’s thesis project, Jeremy Grossman would begin developing GNS3.

GNS3 would evolve to become one of the most widely used networking simulators available and many a networking student working towards certification would find it an invaluable resource for learning.

Now, in 2014, GNS3 continues its evolution.

Now, I’m a sucker for a local success story and Stephen Guppy, CEO and Co-Founder of GNS3 is located just south of me in Calgary. I thought I’d reach out to him to discuss the past, present, and future of GNS3 and talk to him a little bit about their role in training and certification for the networking professional.

In The Beginning…

Stephen recounted the story of how GNS3 began as Jeremy’s university project, and while he now remains the sole developer, there have been a number of others involved over the years. After Jeremy moved to Calgary he met Stephen replying to an ad for a roommate. Over the past few years, GNS3 has been primarily a labor of love but recently the two really started to ask the question – “What does the community want from GNS3?”

After surpassing the 10 million download mark, they decided to launch a crowd funding campaign, in the hopes that they might make GNS3 sustainable in the long-term. So far that campaign has been a great success with over 13,000 contributors and over $553K in funding. The midnight launch of the campaign actually broke Crowdtilt (now Tilt) but they were very responsive and had things back up and running quickly. They met their initial goal in 3.5 hours and hit over 100K in 18 hours.

For contributors to the campaign, the first Alpha release of the new GNS3 became available April 1st, 2014, and Beta releases in mid-July. Their goal is to have the first version of the “final” product in December.

Fresh Start

The original GNS3 had become somewhat bloated with redundant modules and was a bit of a patchwork over the years with multiple contributors. For this new iteration Jeremy started from the ground up, with less than 5% of the original code going in. The design goal here was to develop a solid framework that could have modules added onto it. This meant simplicity when adding on support for VMware, HP, Juniper, etc.

The GUI and general feel of GNS3 hasn’t changed much so long time users of the product aren’t going through a huge learning curve with the new version either. The end result is a much more robust tool that takes up fewer resources, loads and runs faster, and is generally a lot friendlier to use.

Multi-vendor

Jeremy and Stephen had seen some interesting data over the last two years, and that was a steep decline in Cisco usage, with Stephen indicating a 25%-45% decline year over year. As they expanded into markets outside the US, other vendors were more dominant, including huge demand for Juniper and Huawei. GNS3 for many years had been known as a “Cisco” simulator but in reality, they aren’t. Their goal is to be the “CML for all vendors” and be able to offer the network engineer a platform to work on whatever vendor product they require.

The huge surge in virtualization has made it incredibly easy to integrate various vendor systems into GNS3. Not only that but with more and more vendors offering ‘free’ versions of their platforms to use in lab and test environments, access to the software has never been easier.

The L’s – Legalities and Licensing

Stephen admits they rarely have to address any legal/licensing issues because they’ve simply made sure they were always on the right side of the law.

“A lot of the things we provide are fully, freely available for anybody. The vendors provide it. XRV, 1000V, the 3600 series, Cisco provides that for free, online, anybody can download it. All that we are able to integrate within GNS3.”

They also have direct relationships with a lot of the major vendors, including Cisco, having been in talks with the product managers for CML and VIRL, as well as having other vendors approach them directly asking for integration into GNS3. Stephen mentions the relationship with the vendors should be “symbiotic” and in their discussions with various internal product managers, etc. all have indicated that GNS3 has value for them, providing highly trained people and a platform for test and development.

“We never want to do something illegal and be taken down because a lot of people depend on our product.”

On CML and VIRL

“I hope Cisco pushes the boundaries, GNS3 has needed a little competition.” Stephen says, laughing. Having known about CML and VIRL for a very long time due to their relationships within Cisco, they’ve been very excited for release of these products. Stephen calls these a “declaration to all the other vendors” and a challenge to them to provide the same level of support for the network professional.

CML, the paid, TAC-supported platform has already been released, but VIRL – the free, community-supported platform remains vaporware. However, should Cisco decide to release VIRL sooner than later, I wondered how a “free” product would impact them?

Stephen admits these products will impact GNS3 in some way, as a competing product, but a lot of the feedback from those with early access to these new platforms seems to be that while they were generally good products, people eventually moved back to GNS3.

“Cisco is building a whole new community from the ground up and that’s not easy.”

The Community

In 7 years the GNS3 community has evolved to a group that has very knowledgeable people who understand the product very well.  Stephen says plans here are to really nurture this relationship and harness the people within the community, starting with a “legitimate, real community portal”. He cites Thwack (the Solarwinds community portal) as an example.

“You help out, you get points, you get a t-shirt.”

Long-Term Strategy

I’ll admit that over the course of the interview with Stephen I learned a lot about the product that I didn’t know. I had been guilty of seeing GNS3 as a “Cisco simulator” but learned that their focus has not been single-minded, and that support for pretty much any vendor was their goal.

Training and Certification remain a huge part of what they are focused on. Plans include a full CCNA platform including labs and documentation, all for free.

“We want to provide all the material and all the resources you need in order to get your certifications. We would love to do it all the way up to CCIE and equivalent expert certifications in all fields, and provide it for free. All you have to do is be a part of the community.”

This is huge. As anyone who has set a goal for a particular vendor certification, the costs associated with the training and studying are sometimes a limiting factor. For GNS3 to be able to offer community-driven material as well as a platform for labs, is incredible and speaks volumes about the goals Jeremy and Stephen have for their software.

“Networks run our lives. They make our lives possible and the network professional, while it is a very thankless task, is probably one of the most important, or I think the most important profession in the world. Vendors make it extremely difficult for them to be good at their job and I think that’s a huge miss from them. We look at training not as a source of revenue but just as something that needs to be done. Someone needs to step up and be able to provide all of this, and we have the eyes on us to be able to do that, so that’s the ultimate goal.”

“You never have to pay for training again, if you chose to.”

As the new product evolves it’s plain to see that these guys are passionate about what they are doing and the energy they are putting into this new iteration of their product is tremendous. The GNS3 brand itself has undergone a massive overhaul as they reimagine themselves not only as a training tool but as a legitimate choice for network modeling, development, proof-of-concept work, etc.

It’s clear that as GNS3 evolves from “that Cisco simulator” into a full-fledged multi-vendor, multi-purpose network virtualization platform that it seeks to become a core component of every network professional’s toolset.

8 thoughts on “GNS3 – An Interview

  1. Pingback: GNS3 1.0 Public is Out « Cisco Skills

  2. wow, you have got to be fucking kidding me with this shit. Grossman wrote nothing more than a klugy wrapper in the beginning. He didn’t write core hypervisor code(Dynamips) for IOS. He didn’t even write the framework to integrate the ASA nor Olive, and yet he is framing GNS3 as its the magical piece of the pie that allows you to generate these network *emulations*. This is absolutely absurd.

    Give Chris Filot credit
    Give Steenbergen credit
    Give the unknown engineers at Cisco that leaked ASA guests, that leaked the titanium images!

    You guys are spreading mis-information. Shit, I was using dynamips before Grossman even knew what a fucking router was. Bad form!

      • I honestly didn’t think I would need to elaborate, but sure:

        GNS3 is nothing more than a GUI that allows you to manipulate the real tooling that performs all of the network emulations/simulations. I think its absolutely absurd that Jeremy Grossman is framing GNS3 as a tool he invented, holistically, for router emulation. He invited a GUI, nothing more, nothing less. It pretty basic:

        1. GNS3 leverages dynamips for IOS emulation. Jeremy had absolutely no hand in developing that and according to your article provides “limited functionality”. Actually, dynamips provides 100% of the IOS emulation functionality on GNS3.

        2. GNS3 leverages IOU. IOU are specific IOS simulation images created at Cisco by each BU. Jeremy Grossman has absolutely no hand in creating those images.

        3. Dynagen began to integrate multi-vendors(Olive) as well as PEMU and QEMU support for the ASA via Tap/Tuns. This groundwork was used for GNS3. Hell, look at the “GNS3 Management Console”. Its a clone of the Dynagen management console, without the robustness of commands.

        4. When GNS3 did support titanium, it was again on QEUM. Titanium is created by the DCBU at Cisco. Jeremy Grossman had no hand in creating those images.

        Look, I can go on and on about how GNS3 is a clone of Dynagen(and originally it was a mere wrapper!) but substantially less streamlined but I wont. What grinds my gears is that your articles doesn’t give enough credit to the people that build all of the “under the hood” technologies that makes GNS3 functional. What really grinds my gears, way more than your article, is this, from “our story” on GNS3’s site

        “Until, in a flurry of croissants and French press coffee, he hit on something big. Something that would allow him to test and design networks anywhere in the world: GNS3. ”

        BULL-SHIT. Nothing “hit” him. Again, he created a GUI based on a very functional Alpha build of Dynagen.

      • I’m a bit unclear on where you feel there is misinformation?

        Neither my article, nor anything I can find on the GNS3 site makes any claim that Jeremy Grossman wrote Dynamips. The GNS3 folks are the ones who maintain it now, as Chris stepped away from it about 8 years ago. Credit for code and contributors is all there as well.

        https://github.com/GNS3/dynamips

        In fact, all contributors for both the legacy GNS3 code and the new are credited here:

        https://github.com/GNS3/gns3-legacy/graphs/contributors

        https://github.com/GNS3/gns3-server/graphs/contributors

        Allow me to try and address your numbered points:

        1 – Yes, GNS3 leverages Dynamips. I did not say, nor have GNS3 said, that Jeremy developed it. While he has maintained it for the last 8 years since Chris stopped working on the project, there has been no claim that it is “his”.

        2 – GNS3 *can* leverage IOU, but it is not central to using GNS3, it is merely an option. Again, my article nor anything on the GNS3 site claims Jeremy Grossman has anything to do with creating those images.

        3 – Great information on ASA/Olive integration with Dynagen. It’s not really relevant information unless you are simply trying to stake “who got there first”? This isn’t really the point of the article.

        4 – Once again, there are no claims that Jeremy or anyone at GNS3 created Titanium.

        It’s great that your passionate about this project and others like it, it’s what makes this a great community. However, I believe you are reading too much into what I have to say, and what is posted over on the GNS3 site.

        GNS3 is a tool that combines all of these great technologies into a very simple to use emulation/simulation for networkers to design, build, configure, and study complex networks without having to spend thousands of dollars on hardware.

        Nobody from this site or the GNS3 site is taking credit for anything they haven’t done.

        If you wish to take umbrage with something posted on the GNS3 site, I would suggest contacting them directly or opening a dialogue on their forum.

        Thanks again for your comments.

  3. I think you have a fundamental misunderstanding of what GNS3 actually is, judging by your article and response. Your article is riddled with mis-information and once again my gripe with Grossman is his taking credit for creating a “network visualization platform”, which he did not.

    You say that dynamips and dynagen provides limited functionality. mis-information. They provide ALL of the current IOS virtualization functionality and framework for GNS3(traditional platforms like the 3600,7200, etc)

    You imply that GNS3 is a network virutalization platform, it is not. Its a front-end. Its like me saying that Snorby is an IDS application, fully knowing that Snort is under the hood. Mis-information

    You(and Guppy) think there are no licensing problems. mis-information. You cannot run any IOS images(except for those distributed in visualization format, IOSv, XRv, ASAv, etc) legally under any license.

    Again and again you give them credit that their product is a “simulator” or “emulator”. Its not, its a front end. Atleast position your article correctly and call it exactly what it is, isn’t that fair?

    I don’t expect Grossman nor Guppy to address any of this, but I find it utterly ridiculous that they are positioning GNS3 as an emulation platform that they somehow created from scratch. Thats just not true, and not cool.

    • No edit, but I did just want to add that they previously gave credit but with their new site they make absolutely no mention of the slew of developers that build GNS3 core components. Again, the dorm room comment about it “hitting on it” really got under my skin. Pure pompous statement.

    • Dynamips and Dynagen, speaking from the perspective of the article’s timeframe, were limited. Presently, with 8+ additional years of development (without Chris) it does provide all that you describe. No misinformation there.

      We may have different opinions on the definition of “platform”. If you want to call it a front-end, great. Again nothing here that claims GNS3 is anything it is not. It combines a number of tools into whatever pedantic word you’d prefer to apply to it. Platform, front-end, GUI, take your pick.

      If any vendor has concerns with licensing, they certainly haven’t addressed it with anyone at GNS3. You presume to know what I “think” which is to say that you don’t. I have no opinion on licensing as I am not a lawyer for Cisco/Juniper/HP nor do I presume to know the intricacies of the EULAs for each of their operating systems. What I do know, is what was told to me by Stephen, and that is they have never even received so much as a Cease and Desist letter from Cisco. Fact.

      I’m sorry you have some deep personal stake in this such that you feel the need to anonymously argue semantics over whether it’s a platform or not.

      You’re right in that neither Jeremy nor Stephen will address any of this, but they simply don’t need to. They’ve made no claims about GNS3 that aren’t true and they have given credit to past and present contributions.

      Clearly however Jeremy, Stephen and the rest of the GNS3 folks are doing something well with the rather large community they’ve built and continue to grow with this product.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s