Don't Configure the Network, Program It! Domain-Specific Programming Languages for Network Systems

Abstract

Network operators must configure networks to accomplish critical, complex, and often conflicting requirements: they must ensure good performance while maintaining security, and satisfy contractual obligations while ensuring profitable use of interdomain connections. Unfortunately, today they have no choice but to implement these high-level goals by configuring hundreds of individual network devices. These interact in complex and unexpected ways, often resulting in misconfigurations or downtime. We propose a new approach: rather than configure individual network devices, operators should program the network holistically, according to high-level policies. Towards this goal, we present Nettle, a system for clearly and concisely expressing network requirements together with mechanisms to control the network accordingly. At the lowest level, we rely on OpenFlow switches for programmable network hardware. On top of this layer, we build an extensible family of embedded domain-specific languages (EDSLs), each aimed at different operational concerns and provide convenient ways to sensibly combine expressions in these languages. We present a case study demonstrating a DSL for networks that provides fine-grained, dynamic access control policies.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jul 10, 2010
Accession Number
ADA555142

Entities

People

  • Andreas Voellmy
  • Ashish Agarwal
  • John Launchbury
  • Nick Feamster
  • Paul Hudak
  • Sam Burnett

Organizations

  • Yale University

Tags

Communities of Interest

  • Cyber

DTIC Thesaurus Topics

  • Computer Access Control
  • Computer Languages
  • Computer Networks
  • Computer Programming
  • Computer Science
  • Computers
  • Control Systems
  • Domain Specific Programming Languages
  • High Level Languages
  • Intrusion Detection
  • Intrusion Detectors
  • Language
  • Network Topology
  • Networks
  • Programming Languages
  • Security

Fields of Study

  • Computer science

Readers

  • Computer Networking
  • Database Systems and Applications
  • Systems Analysis and Design