Skip Links

Network World

Jeff Doyle

Adding JUNOS to Your Repertoire

By jdoyle on Fri, 07/11/08 - 3:10am.


I suppose it seems odd to start a few posts about Juniper Networks’ JUNOS on a blog that’s part of what Network World very prominently labels “Cisco Subnet.” But most of the bloggers here attend at least in part to helping their readers work toward industry certifications, advance their technical knowledge, and become more aware of industry issues.

Here’s why I think it’s important for you to have at least a passing familiarity with JUNOS:

For a long time, if you were not in a service provider or very large enterprise environment you had little reason to know much about JUNOS. But with Juniper’s introduction a few years ago of smaller, enterprise-focused routers and now with their release of the MX and EX switch series – and their accompanying campaign to get a better foothold in the small to medium enterprise and data center space – there’s an increasing motivation for engineers in those markets to learn something about Juniper’s flagship operating system.

So I’m going to start a series of posts (there may be posts on other topics intermixed with these) that will help you gain a high-level understanding of JUNOS. I’m going to try to approach it from an IOS perspective: Where it’s similar and where it’s significantly different.

The first issue, before getting into JUNOS itself, is: What do you do if you want more than a passing familiarity, and want to get some practical hands-on experience?

I was lucky when I first started learning IOS.  I was working for a provider that maintained a large stock of spare Cisco routers, so I could grab a little stack of routers from the spares and build myself a practice lab. In the early 1990’s I was a Cisco Instructor, and could play in the training labs to my heart’s content after the students went home for the day. By the mid 1990’s, when I started writing my first Cisco Press book, there was enough used Cisco gear floating around that it was fairly easy to pick up old routers (mostly 2500s and a couple of AGS+s) and build my own lab for a few thousand dollars. Since that time, careful shopping on eBay has allowed me to keep my lab reasonably updated. Nowadays, if you have access to an IOS image, you can use Dynamips to build a small virtual Cisco network right on a PC for just the cost of the PC.

JUNOS, for a long time, was a different story. Juniper started off going after the service provider market, which meant big honkin’ boxes. Even the low-end stuff ran into the tens of thousands of dollars, so unless you worked at a service provider and had spare-time access to a lab, or worked (as I did from 1998 to 2006) at Juniper itself, the only way to get hands-on with JUNOS was to attend a training class. And that’s hardly sufficient for someone wanting to spend an extensive amount of time learning on his or her own.

One nice option, for those with a little inside information, was the Olive. More on that at the end of this post.

These days getting access to JUNOS for self-education purposes is easier, with Juniper’s introduction of lower-end routers. You can buy a J2300 for under $2000 US, and they’ve been out long enough now that you can pick up used ones on eBay for under $1000.

I’ve got eight of them in my own lab, but here’s the best news: You can get by with just one. JUNOS has a capability called logical routers, that lets you build a small virtual network inside a single physical box. A little like Dynamips.

I’ll explain how to set up JUNOS logical routers in a later post.

But let’s start with a little history, which will also introduce you to the JUNOS kernel.

The Story of the Olives

The foundation of any operating system is the kernel. When Juniper engineers started developing what would become JUNOS, they could have written a new kernel from scratch. Instead, they chose to use FreeBSD. It didn’t make much sense to write an entirely new kernel when a famously stable open-source kernel was available.

A side effect of JUNOS being built on a FreeBSD kernel was that it could be installed on a plain old PC. In fact, the control plane – called the Routing Engine – of the first Juniper routers was nothing more than a 233Mhz Pentium PC. The developers could then build PC-based routers to test JUNOS while the first hardware platforms were still under development.

The development code name of the first Juniper router, the M40, was Martini, because a martini is a gin-based drink and gin is flavored with juniper berries (get it?).  A PC that had been turned into a JUNOS router, then, was called an Olive (get it?).

After Juniper released the M40, the Juniper sales and engineering teams used Olives as a cheap way to get JUNOS in front of potential customers and into the hands of their engineers to play with. Olives were also used in the first JUNOS training classes, since PCs were easier to ship around than 300 lb. M40s.

Although almost all of the FreeBSD interface drivers were stripped out of the JUNOS kernel, a couple were left in specifically so Olives could be built. So if you knew the right procedures (don’t ask me what they are, I can’t tell you) and knew what interfaces to use (don’t ask me, I can’t tell you) you could easily build an Olive.

As Juniper grew, customers calling into the technical support center asking for help with the Olives in their labs started to become a problem. As a result, Juniper began suppressing the distribution of Olives or instructions on how to build one to their customers (which is why I can’t tell you the build procedures or what interfaces to use). These days, with the availability of the inexpensive J-series, Olives have no more practical use.

The point of my telling you this story is partially because some of you have probably heard of Olives, so I thought I’d answer the question before it is asked. But more importantly, it gives you a first insight into the JUNOS kernel: It’s a highly modified FreeBSD kernel.

In the next post, I’ll tell you a little about what goes on top of that kernel.

 

About Jeff Doyle on IP Routing

Jeff Doyle is president of Jeff Doyle and Associates, an IP network consultancy. Jeff is the author of Routing TCP/IP, Volumes I (read an excerpt) and II and of OSPF and IS-IS: Choosing an IGP for Large-Scale Networks. He is a frequent speaker on IPv6, MPLS, and large-scale routing.

Contact him.

 

Most Discussed Posts