Skip to main content
Article thumbnail
Location of Repository

Abstract Learning to Talk Cisco IOS Inferring the IOS Command Language from Router Configuration Data

By Donald Caldwell

Abstract

Networks and the functionality that they deliver are growing increasingly complex, making network management a steadily growing challenge. A key component of network management is configuration management. Router configurations capture and reflect all levels of network operation, and it is highly challenging to manage the detailed configurations of the potentially huge number of routers that run a network. While tools exist to help automate network configuration management, none of the tools of which we are aware directly address the problem of feature evolution and expansion. We present the design and implementation of a learning system for the Cisco IOS router configuration language and an adaptive parser built on top of the learning system, which constitute the first step to building a configuration management system capable of adapting to new and evolving network features. Based on valid configurations, the learning system infers the IOS language, from which we can generate a parser for IOS. Our tools allow for incremental learning and relieve a network analyst of the burden of writing an IOS parser and maintaining it as the IOS language changes. We have built a prototype system and validated its accuracy and efficiency by running it on the configuration files of Tier-1 ISP networks. Our results show that from only 81 configuration files, we can learn enough IOS to successfully parse all of the 819 IOS configurations in under 10 minutes

Year: 2009
OAI identifier: oai:CiteSeerX.psu:10.1.1.134.6266
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • http://citeseerx.ist.psu.edu/v... (external link)
  • http://www.cs.princeton.edu/~y... (external link)
  • Suggested articles


    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.