Institutional Repository
Technical University of Crete
EN  |  EL



My Space

Declarative networking

Boon Thau Loo, Condie Tyson, Garofalakis Minos, Gay David E., Hellerstein, Joseph, 1952-, Maniatis Petros, Ramakrishnan, Raghu, Roscoe Timothy, Stoica, Ion, 1965-

Full record

Year 2009
Type of Item Peer-Reviewed Journal Publication
Bibliographic Citation B.T. Loo, T. Condie, M. Garofalakis, D.E. Gay, J. M. Hellerstein, P. Maniatis, R. Ramakrishnan, T. Roscoe and I. Stoica, "Declarative networking", Communications of the ACM, vol. 52. no. 11, Nov. 2009, pp. 87-95. doi: 10.1145/1592761.1592785
Appears in Collections


Declarative Networking is a programming methodology thatenables developers to concisely specify network protocolsand services, which are directly compiled to a dataflow frameworkthat executes the specifications. This paper providesan introduction to basic issues in declarative networking, includinglanguage design, optimization and dataflow execution.We present the intuition behind declarative programmingof networks, including roots in Datalog, extensions fornetworked environments, and the semantics of long-runningqueries over network state. We focus on a sublanguage wecall Network Datalog (NDlog), including execution strategiesthat provide crisp eventual consistency semantics withsignificant flexibility in execution. We also describe a moregeneral language called Overlog, which makes some compromisesbetween expressive richness and semantic guarantees.We provide an overview of declarative network protocols,with a focus on routing protocols and overlay networks. Finally,we highlight related work in declarative networking,and new declarative approaches to related problems.