Subscribe to Blog Notification Emails

Latest Blog Post

Why Java APIs and Industry-Standard CLIs are Different

Kenneth Duda
by Kenneth Duda on Jul 15, 2015 4:45:59 AM

In the past few years, the tech industry has watched with increasing concern as various entrenched participants have brandished copyright law as a weapon to stifle competition and innovation. Recently, we have been treated to yet another novel claim: that after over a decade of broad adoption, the industry-standard set of commands that a user types into a command line interface (or CLI) to configure a network device is subject to copyright.

This startling claim raises many questions, but today I want to address one in particular:
What effect, if any, does the recent decision in Oracle v. Google have on this new dispute over CLI commands? Those who have watched the long-running battle between Google and Oracle know that an appeals court recently held that APIs may be copyrightable. Some have suggested that this decision should also resolve the question of whether CLI commands are subject to copyright. Wait, what? What do Java APIs have to do with communication device configuration commands?

Nothing, actually.

Let’s compare some salient features of command languages and the Java APIs:

Aspect Industry-standard command language Java APIs

nature of "copyrighted" material

short English words or phrases typed by the user

Java source code declaring the API

who uses the "copyrighted" material

end user

software developer

purpose of using "copyrighted" material

operating the final product

software development

method of using "copyrighted" material

entering commands into a device

creating code in an editor (typically on a different device than ultimately runs the library) using the API

Folks, the industry-standard CLI is the way the end user operates their networking devices. It is there to allow a network engineer to configure options on the device—much the same as the buttons on a microwave or a television remote control. If copyright limits the types of user input a device can accept, that has troubling implications in the networking industry and beyond.

The industry-standard CLI has allowed many different products across the industry to use a similar command language to the great benefit of customers and vendors alike. Like many open standards, the industry-standard CLI has encouraged multi-vendor interoperability.

I hope you’ll join me in condemning any effort to use the copyright laws to upset this established order and force customers to learn a new command language for each networking device they buy.

To all software developers: if you would like to join a company that embraces open standards, we'd love to talk to you. We have positions open in Santa Clara, Vancouver, Nashua, Bangalore, and Dublin. Please send a resume to

Opinions expressed here are the personal opinions of the original authors, not of Arista Networks. The content is provided for informational purposes only and is not meant to be an endorsement or representation by Arista Networks or any other party.
Kenneth Duda
Written by Kenneth Duda
Kenneth Duda is a pioneer in high-performance networking software and lead architect of Arista Networks EOS, a stateful modular operating system for all Arista Networks products. He is also the co-author of network virtualization specifications including VXLAN with VMware and NVGRE with Microsoft. From 2005 to 2008, Ken was also the Acting President of Arista Networks.

Related posts

CloudVision: A Cognitive Management Plane

The last 40 years have seen tremendous growth and progress in the data networking industry. Ethernet, IP, MPLS, GRE, IPsec,...

Kenneth Duda
By Kenneth Duda - May 7, 2018
Protecting IP or Market Share?

It's tough times on Tasman Drive. Struggling to apply old technology to the new world of cloud computing, Cisco is potentially...

Kenneth Duda
By Kenneth Duda - February 2, 2016