Computer networks and the Internet have become necessary tools in many daily activities; as such, they share the expectation to be "always on" and highly available. Throughout a decades-long evolution of increasing reliance, campus/enterprise networks and Wide-Area Networks (WANs) have been engineered and maintained by an increasingly large set of skilled practitioners, i.e., network operators or engineers. While strikingly similar to the evolution of software and software development by programmers and software engineers, there has not been similar attention to the discipline of network operations as there has to that of software engineering.
In this work, we analyze the deployment and operation of two large networks over a period of five to ten years. Our analogy-based approach is to apply software source code artifact analysis techniques to network device configurations. Specifically, we analyze the repositories of router and switch configurations of both a large campus and a service-provider network; these repositories store the actions of hundreds of practitioners maintaining thousands of pieces of equipment over more than ten years time. Our results expose the evolution of these networks both longitudinally in time and by network device types and topological roles. We reverse-engineer operators' work behavior in terms of how they use version control tools, how they change network device configurations, and how long their changes last in a production network. Lastly, we evaluate our proposed analogy between software engineering and network operations, i.e., that network operators are programmers, by comparing and contrasting the analysis of software development to that of modern network operations.
[1]
Audris Mockus,et al.
Automating the Measurement of Open Source Projects
,
2003
.
[2]
Harvey P. Siy,et al.
If your ver-sion control system could talk
,
1997
.
[3]
Dirk Draheim,et al.
Process-centric analytical processing of version control data
,
2003,
Sixth International Workshop on Principles of Software Evolution, 2003. Proceedings..
[4]
Gregorio Robles,et al.
Remote analysis and measurement of libre software systems by means of the CVSAnalY tool
,
2004,
ICSE 2004.
[5]
David Fiedler.
SysAdmin : The journal for UNIX systems administrators
,
1994
.
[6]
Subhabrata Sen,et al.
Extracting Network-Wide Correlated Changes from Longitudinal Configuration Data
,
2009,
PAM.
[7]
Alva L. Couch,et al.
On observed reproducibility in network configuration management
,
2004,
Sci. Comput. Program..
[8]
David A. Maltz,et al.
Unraveling the Complexity of Network Management
,
2009,
NSDI.
[9]
Walter F. Tichy,et al.
Implementation and evaluation of a revision control system
,
1982
.