Declarative configuration management for complex and dynamic networks

Network management and operations are complicated, tedious, and error-prone, requiring signifcant human involvement and domain knowledge. As the complexity involved inevitably grows due to larger scale networks and more complex protocol features, human operators are increasingly short-handed, despite the best effort from existing support systems to make it otherwise. This paper presents coolaid, a system under which the domain knowledge of device vendors and service providers is formally captured by a declarative language. Through effcient and powerful rule-based reasoning on top of a database-like abstraction over a network of devices, coolaid enables new management primitives to perform network-wide reasoning, prevent misconfguration, and automate network confguration, while requiring minimum operator effort. We describe the design and prototype implementation of coolaid, and demonstrate its effectiveness and scalability through various realistic network management tasks.

[1]  Robert Grimm,et al.  PADS: A Policy Architecture for Distributed Storage Systems , 2009, NSDI.

[2]  Martín Casado,et al.  Practical declarative network management , 2009, WREN '09.

[3]  Leslie Lamport,et al.  Consensus on transaction commit , 2004, TODS.

[4]  Jeffrey D. Ullman,et al.  A Survey of Research in Deductive Database Systems , 1995 .

[5]  R. Grimm,et al.  PADS : A Policy Architecture for Building Distributed Storage Systems , 2008 .

[6]  Jonathan M. Smith,et al.  MOSAIC: unified declarative platform for dynamic overlay composition , 2008, CoNEXT '08.

[7]  Paul Francis,et al.  CONMan: a step towards network manageability , 2007, SIGCOMM.

[8]  O. Bonaventure,et al.  Towards validated network configurations with NCGuard , 2008, 2008 IEEE Internet Network Management Workshop (INM).

[9]  Benjamin C. Pierce,et al.  Relational lenses: a language for updatable views , 2006, PODS '06.

[10]  B SchneiderFred Implementing fault-tolerant services using the state machine approach: a tutorial , 1990 .

[11]  Timothy Roscoe,et al.  InfoSpect: using a logic language for system health monitoring in distributed systems , 2002, EW 10.

[12]  Jennifer Rexford,et al.  Automated provisioning of BGP customers , 2003, IEEE Netw..

[13]  Ion Stoica,et al.  Declarative routing: extensible routing with declarative queries , 2005, SIGCOMM '05.

[14]  Nick Feamster,et al.  Detecting BGP configuration faults with static analysis , 2005 .

[15]  Xu Chen,et al.  PACMAN: a platform for automated and controlled network operations and configuration management , 2009, CoNEXT '09.

[16]  Scott Shenker,et al.  Overcoming the Internet impasse through virtualization , 2005, Computer.

[17]  Zheng Cai,et al.  Design and implementation of the Maestro network control platform , 2008 .

[18]  Ion Stoica,et al.  Declarative networking: language, execution and optimization , 2006, SIGMOD Conference.

[19]  Wouter Joosen,et al.  PoDIM: A Language for High-Level Configuration Management , 2007, LISA.

[20]  Carsten Lund,et al.  Darkstar: Using exploratory data mining to raise the bar on network reliability and performance , 2009, 2009 7th International Workshop on Design of Reliable Communication Networks.

[21]  Carsten Lund,et al.  Modeling and understanding end-to-end class of service policies in operational networks , 2009, SIGCOMM '09.

[22]  Atul Singh,et al.  BFT Protocols Under Fire , 2008, NSDI.

[23]  Justin Cappos,et al.  Rhizoma: A Runtime for Self-deploying, Self-managing Overlays , 2009, Middleware.

[24]  Larry L. Peterson,et al.  Sophia: an Information Plane for networked systems , 2004, Comput. Commun. Rev..

[25]  Xu Chen,et al.  ShadowNet: A Platform for Rapid and Safe Network Evolution , 2009, USENIX Annual Technical Conference.

[26]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[27]  Timothy Roscoe,et al.  Predicate routing: enabling controlled networking , 2003, CCRV.

[28]  Anja Feldmann,et al.  NetScope: traffic engineering for IP networks , 2000, IEEE Netw..

[29]  Dina Katabi,et al.  Enabling Configuration-Independent Automation by Non-Expert Users , 2010, OSDI.

[30]  Raghu Ramakrishnan,et al.  Database Management Systems , 1976 .

[31]  James Kelly,et al.  Rapid service creation using the JUNOS SDK , 2009, PRESTO '09.

[32]  Ratul Mahajan,et al.  Measuring ISP topologies with Rocketfuel , 2004, IEEE/ACM Transactions on Networking.

[33]  Ion Stoica,et al.  Implementing declarative overlays , 2005, SOSP '05.

[34]  K. N. Dollman,et al.  - 1 , 1743 .

[35]  Hong Yan,et al.  A clean slate 4D approach to network control and management , 2005, CCRV.

[36]  Albert G. Greenberg,et al.  Configuration management at massive scale: system design and experience , 2007, IEEE Journal on Selected Areas in Communications.

[37]  Martín Casado,et al.  Ethane: taking control of the enterprise , 2007, SIGCOMM '07.

[38]  Albert G. Greenberg,et al.  The cutting EDGE of IP router configuration , 2004, Comput. Commun. Rev..

[39]  Martín Casado,et al.  NOX: towards an operating system for networks , 2008, CCRV.