Interdomain routing is the task of establishing connectivity among the independently administered networks (called autonomous systems) that constitute the Internet. The protocol used for this task is the Border Gateway Protocol (BGP) [1], which allows autonomous systems to independently define their own route preferences and route advertisement policies. By careful design of these BGP policies, autonomous systems can achieve a variety of objectives. Currently available configuration and policy languages are low-level and provide only a few basic constructs for abstraction, thus preventing network operators from expressing their intentions naturally. To alleviate this problem, we have designed Nettle, a domain-specific embedded language (DSEL) for configuring BGP networks, using Haskell [3] as the host language. The embedding in Haskell gives users comprehensive abstraction and calculation constructs, allowing them to clearly describe the ideas generating their BGP policies and router configurations. Furthermore, unlike previous router configuration and policy languages, Nettle allows users to both specify BGP policies at an abstract, network-wide level, and specify vendor-specific router details in a single uniform language. We have built a compiler that translates Nettle programs into configuration scripts for XORP [4] routers and a simulator that allows operators to test their network configurations before deployment. © IFIP International Federation for Information Processing 2009.
CITATION STYLE
Voellmy, A., & Hudak, P. (2009). Nettle: A language for configuring routing networks. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 5658 LNCS, pp. 211–235). https://doi.org/10.1007/978-3-642-03034-5_11
Mendeley helps you to discover research relevant for your work.