Browsed by
Tag: simulation

Cisco Modeling Labs 1.0: First Impressions & Getting Started

Cisco Modeling Labs 1.0: First Impressions & Getting Started

2014-09-16 01.30.37 pm

When a Legend becomes Real

I’m still pinching myself. Last week I delivered my very first Cisco Modeling Labs (CML) 1.0 demo to a customer. Overall, they were pretty darn excited, however there are some things that we need to address to make it a GREAT fit for their specific testing/validation environment.

Let’s take a step back and talk high level about CML for a moment. CML is the Cisco TAC supported variant of VIRL. The FCS date for CML 1.0 was 08.11.14. Almost a month later and several hours behind the wheel, I can say it was totally worth the wait. If your looking for a deep dive into the architecture behind the scenes, check out my previous blog post on the subject.

Let’s start with some of the most important aspects of CML to set expectations accordingly.

  • CML is NOT an emulator. The CML images are compiled specifically for the virtual machine environment (KVM). This is how you can scale to 150-200 nodes. It’s actual IOS/XR/XE/NX-OS code optimized for the VM. I was a huge fan of GNS/Dynamips, but the scale always left something to be desired. This is one of the major issues with emulation, PERFORMANCE.
  • CML WILL NOT validate ASICs, line cards, or any other hardware specific functionality/behavior. If your getting CML for this reason, it will NOT be a good representation.
  • CML is GREAT for config verification and migration/functionality testing. For example going from single IPv4 stack to dual stack, testing PfR configs, IGP configs, route policies, etc…
  • CML will also be GREAT for testing new code and features. The BU’s are committed to updating the CML images. For example: My IOSv image is 15.4(2)T1 which is pretty recent.  “IOSv Software (VIOS-ADVENTERPRISEK9-M), Version 15.4(2)T1”
  • CML is GREAT for troubleshooting problems in an isolated environment.
  • CML allows you to integrate the virtual simulated environment with the physical lab network.
  • CML images available TODAY/09.16.14 are IOSv (included with your 15 node base license), IOS XR, and IOS XE in the form of CSR1000v. There is also a Linux server image for hosts.
  • CML team recommends UCS C220 M3 server or C460 M2, but you can really bring your own hardware for the host. ESXi 5.0, 5.1 or 5.5 is REQUIRED. Check out this URL for the data sheet and requirements. 
  • There is NO cloud/hosted offering of CML.
  • Be sure to check out the CML Q&A for anything I may have missed.

Craig Brown (TME): Cisco Modeling Labs Overview

Getting Started (see inline for ordering info)

  1. Download the install guide
  2. Setup your ESXi host
  3. Download the CML OVA
  4. Deploy the CML OVA
  5. Run through the “First Time” scripts on the Ubuntu guest
  6. Install the necessary license keys
  7. Add any additional images (IOS-XRv, CSR1000v, linux server)
  8. Download the CML client (OSX or Windows) from http://IP_OF_CML_SERVER/download
  9. Connect to the CML server
  10. Design, Build, Visualize, Simulate

This is a really just an overview. Your gonna want to go through the install guide and ensure your following the requirements and recommendations. I’ll be posting an instructional video on youtube shortly with a step-by-step guide on how to get started.


  • Only GigE virtual interfaces are supported currently. No serial interfaces or 10G/40G
  • Additional images (IOS-XRv, CSR1000v, etc) must be purchased separately. Only IOSv is included with the base license
  • Modeling of traffic patterns (traffic flow creation) are slated for the CML 1.1 release

Thoughts and Closing

In closing, I hope your as excited as I am about CML. It’s been a long time coming and I’m really glad the CML team took the time to get this right. I see many applications for CML in my personal journey. Let’s start with my home lab. I’m blessed to have access to Cisco hardware, but my lab gets HOT and my electric bill goes through the roof. I’ll use CML to validate customer configs, design and test IWAN/PfR configs, CCIE DC studies (NX-OSv image), EEM applet validation, and routing configs. Hopefully this saves me from the hundreds of dollars in electric to run a cat6500 and nexus 3k’s at home. 🙂

I used GNS3/Dynamips and IOU/IOL for many years. I will just say this, CML blows them away. I love GNS, but my problem has also been two fold. Scale and relevance. With regards to relevance, I was running the 7200 image and old IOS code. It’s just not current enough and emulated platforms suffer when it comes to performance. IOU/IOL is internal to Cisco only.

If your wondering about VIRL personal edition, my understanding is we’ll eventually release this to Cisco DEVNET. I just don’t have any committed date (update Dec 1st, 2014) at this point in time. This is going to be great for those studying for Cisco certifications from the CCNA to CCIE level.

If your interested in a 30 day trial of CML, reach out to your Cisco account team.

I hope you found this post informative and helpful. If you have any suggestions on how I can best demonstrate CML, please leave feedback. I’m going to talk to the CML team and see if they plan on conducting a WISP lab at Cisco Live next year. If not, I’ll be hosting one. It’s that good. EVERYONE needs to see it.

UPDATE: I’m told by one of the TME’s that CML will be demoed at Cisco Live, Cancun in Nov. 

Ordering Information

2014-09-16 02.13.06 pm



Virtual Internet Routing Lab/Cisco Modeling Lab:

UPDATE (08.07.2014):

Cisco Modeling Labs 1.0 Corporate Edition
Available August 11, 2014

This is an excerpt from an email one of my colleagues received today.

“We are very excited to announce that Cisco Modeling Labs 1.0 Corporate Edition is expected to ship on Monday, August 11th (if this changes we’ll let you know).

As you know, Cisco Modeling Labs 1.0 Corporate Edition is a game changing product with powerful virtualization features that provide corporations and service providers around the world with agility, flexibility and cost savings.

Product information can be found at the following locations:

Thank you again for your patience and continued interest in Cisco Modeling Labs 1.0 Corporate Edition.

The CML Team”


I wanted to take a few moments and give an update on CML/VIRL. I have had many inquires from my clients about CML/VIRL, it just makes sense to summarize these conversations and post something for those of us that can’t wait to get our hands on the first customer shipping (FCS) of CML/VIRL. ***IMPORTANT*** CML is the TAC supported version of VIRL. Just keep this in mind when we get into the “When” section of this post.


First off what the heck is CML/VIRL? CML started off as a project called Virtual Internet Routing Lab (VIRL) and is a graphical front-end to virtualized networking devices. Hold the phone! That sounds like IOU/IOU-WEB or GNS/Dynamips… What makes CML/VIRL better? Glad you asked. With GNS3/Dynamips your emulating the ASIC/CP-CPU hardware and running the actual IOS image on that emulated node. Each node is emulated and in the case of GNS3/Dynamips your choices are limited to older hardware such as 2600 and 7200 series routers. The images supported are only the monolithic IOS images and not the newer IOS-XE images found on newer routers such as the ASR1K and 4451x. I have ALWAYS had GNS3/Dynamips on my laptops as a quick and dirty syntax validation tool and for small scenario recreates (BGP peering configs, ACL validation, etc…). It’s especially useful in offline environments like studying for the CCIE R&S on a coast-to-coast flight. But, alas all was not good. My hardware choices were limited and the topologies were small because if they grew too big, my MacBook would become a personal space heater. This brings me to my biggest complaint about Dynamips, performance. Because the complete hardware is emulated to accommodate the original IOS image, it’s as slow as a Smart FourTwo (slowest 0-60 car). With CLM/VIRL each node is a virtual appliance that runs images designed for x86. The hypervisor is KVM/QEMU, Openstack is the orchestration, VM maestro is the graphical topology edition tool, and AutoNetKit is used for network configuration and rendering. This allows your lab/topology to scale much better then Dynamips or IOU, have better performance, and introduce other appliances into the environment such as a linux jumpbox or any other appliances we decide to support (no commitments here, just theory). 2014-07-09 12.23.51 am   2014-07-09 12.42.18 am Now for a dose of sad news, L2 appliances are not supported in CML/VIRL. Perhaps in the future this may be different, but for now it’s L3 only. You do get the vswitch within KVM, so it’s not a total bust. In fact, this is a critical component as connecting your lab devices together and connecting the virtual world to the physical world. Also, no serial interface support, Ethernet only. Again, perhaps this will change down the road…


What virtual appliances will be supported? 1) IOS-XE: VM CSR1000V 2) IOS-XR: VM XRVR 3) NX-OS: VM vNXOS 4) IOS: VM vIOS 5) Servers/3rd party appliances Host OS is ubuntu server v12.04.2 2014-07-09 12.24.06 am


This is my number one question from clients. I personally first saw VIRL back at Cisco Live US 2013 in Orlando, FL. They had a demo setup just outside the WISP labs. That year I hosted my own WISP lab (Nexus 3548 Algoboost technology) and got to spend a decent amount of time playing with the beta and talking to the team. Keep this key factor in mind. There are two VIRL platforms.

1) Individual customers

2) Corporate customers

For individual customers the target is July 30th, 2014 TBD and will be available to ANY customer registered on Devnet. This is community supported. For more information on ‘Devnet’, please take a look at For corporate customers joining the “dev-innovate” program. VIRL will be included in the software bundle. For corporate customer looking for a TAC supported VIRL, this is the CML product and the target date is July 15th August 11th, 2014. ***Disclaimer*** Target dates are subject to change 


Because your tired of getting burns from your laptop after running a 14 node simulation in GNS/Dynamips or you don’t want to deal with getting the right image for IOU/IOL (Cisco employees of course) <GRIN> In all seriousness, I personally have been looking for something more realistic/serious for a test/dev environment. There are many times where customers ask for input on designs and I want to validate a theory via syntax before making a recommendation. I have done this for over 7 years with either real hardware (sometimes VERY expensive) or dynamips, albeit to a much smaller scale and with those limited node selection. My other major driver for VIRL is one of my customers is an ASR 9K shop and I don’t know IOS-XR that well. What better way to learn and save on my home lab electricity bill? Here are some of the “official” use cases.

  • Learn or provide training on new IOS versions or releases without the cost of purchasing, deploying, and maintaining expensive hardware
  • Stage and / or develop device configurations ahead of actual deployments
  • Test new software capabilities without impacting actual networks or hardware
  • Evaluate changes to network architectures or configurations – what-if scenarios
  • Trouble-shoot or diagnose control- or management-plane issues without scheduling network maintenance windows
  • Create and connect virtual instances of new hardware or solutions to real, existing networks to evaluate their impact, performance, or behavior

Each of these activities – prior to VIRL – required expensive hardware resources that were both static and costly.  VIRL on the other hand allows complete flexibility in terms of the architectures that can be created, limited only by the compute resources (which are significantly less costly than network hardware) that can be dedicated for use.


Deploy the Ubuntu VIRL OVA of course… Just kidding! While getting started really is that easy, getting everything setup and configured is a little more involved. There will also a bare metal installer. I’ll be updating this section shortly when more public information is available. The resource requirements are pretty high for laptop/individual deployments. For example XRv requires 1.3GB of RAM (real or swap). Keep this in mind as it will limit how many VMs can be run. Real world customer deployments will be based on properly sized UCS servers. Mac (OSX 10.7+) /PC (Windows 7) minimum requirements: 8-16GB RAM (4-8GB for VIRL) and 20GB of disk space 2014-07-09 12.41.25 am


VIRL enables customers to support many critical missions – designing, training, release-testing, configuration-staging, and others – without the expense of buying and staging real network hardware.  Networks of any complexity can be created and tested using the same software that will run on the real routing platforms.

The cost of network hardware required for training, testing, certification, pre-deployment, and other non-production activities can be a significant burden for customers – from the lone individual studying for CCIE to the largest of SPs.  VIRL, by providing the ability to deploy large, multi-OS virtual networks on comparatively inexpensive compute platforms, can significantly reduce both capital expenses and the expenses – both monetary and time-wise – associated with deploying hardware for non-production activities.

If you found this post to be helpful, please leave feedback.


2014-07-09 12.43.27 am