Declarative networking /

Bibliographic Details
Main Author: Loo, Boon Thau
Other Authors: Zhou, Wenchao
Format: eBook
Language:English
Published: San Rafael, Calif. (1537 Fourth Street, San Rafael, CA 94901 USA) : Morgan & Claypool, [2012]
Series:Synthesis lectures on data management ; #23.
Subjects:
Online Access:Connect to the full text of this electronic book
Table of Contents:
  • 1. Introduction
  • 1.1 Overview of declarative networks
  • 1.2 The case for declarative networking
  • 1.2.1 Ease of programming
  • 1.2.2 Optimizability
  • 1.2.3 Balance of extensibility and safety
  • 1.3 Organization
  • 2. Declarative networking language
  • 2.1 Introduction to datalog
  • 2.2 Network datalog by example
  • 2.2.1 Overview of NDlog
  • 2.2.2 From query specifications to protocol execution
  • 2.2.3 Other requirements of NDlog
  • 2.3 Distributed computation
  • 2.4 Soft-state data and rules
  • 2.4.1 Hard-state vs. soft-state data
  • 2.4.2 Hard-state and soft-state rules
  • 2.5 Incremental maintenance of network state
  • 2.6 Summary of network datalog
  • 2.7 Summary
  • 3. Declarative networking overview
  • 3.1 Architecture
  • 3.2 DN dataflow engine
  • 3.2.1 Dataflow elements
  • 3.3 Network state storage and management
  • 3.3.1 RapidNet declarative networking engine
  • 3.4 Summary
  • 4. Distributed recursive query processing
  • 4.1 Centralized plan generation
  • 4.1.1 Semi-naïve evaluation
  • 4.1.2 Dataflow generation
  • 4.2 Distributed plan generation
  • 4.2.1 Localization rewrite
  • 4.2.2 Distributed dataflow generation
  • 4.3 Relaxing semi-naïve evaluation
  • 4.3.1 Pipelined semi-naïve evaluation
  • 4.4 Processing in a dynamic network
  • 4.4.1 Dataflow generation for incremental view maintenance
  • 4.4.2 Centralized execution semantics
  • 4.4.3 Distributed execution semantics
  • 4.5 Processing soft-state rules
  • 4.5.1 Event soft-state rules
  • 4.6 Summary
  • 5. Declarative routing
  • 5.1 Motivation
  • 5.2 Execution model
  • 5.3 Routing protocols by examples
  • 5.3.1 Best-path routing
  • 5.3.2 Distance-vector routing
  • 5.3.3 Policy-based routing
  • 5.3.4 Dynamic source routing
  • 5.3.5 Link state
  • 5.3.6 Multicast
  • 5.4 Security issues
  • 5.5 Route maintenance
  • 5.6 Evaluation
  • 5.6.1 Scalability of path-vector protocol
  • 5.6.2 Incremental evaluation in dynamic networks
  • 5.7 Summary
  • 6. Declarative overlays
  • 6.1 Execution model
  • 6.2 Narada mesh
  • 6.2.1 Membership list maintenance
  • 6.2.2 Neighbor selection
  • 6.3 Chord distributed hash table
  • 6.3.1 Chord network state
  • 6.3.2 Joining the chord network
  • 6.3.3 Chord ring maintenance
  • 6.3.4 Finger maintenance and routing
  • 6.3.5 Failure detection
  • 6.3.6 Summary of chord
  • 6.4 Evaluation
  • 6.4.1 Narada mesh formation
  • 6.4.2 Chord DHT
  • 6.5 Summary
  • 7. Optimization of NDlog programs
  • 7.1 Traditional datalog optimizations
  • 7.1.1 Aggregate selections
  • 7.1.2 Magic sets and predicate reordering
  • 7.2 Multi-query optimizations
  • 7.3 Hybrid rewrites
  • 7.4 Evaluation of optimizations
  • 7.4.1 Aggregate selections
  • 7.4.2 Magic sets and predicate reordering
  • 7.4.3 Opportunistic message sharing
  • 7.4.4 Summary of optimizations
  • 7.5 Summary
  • 8. Recent advances in declarative networking
  • 8.1 Language extensions
  • 8.2 Generating safe routing implementations
  • 8.2.1 Formally safe routing toolkit
  • 8.2.2 Declarative network verification
  • 8.3 Securing distributed systems
  • 8.3.1 Secure network datalog
  • 8.3.2 Reconfigurable security
  • 8.3.3 Application-aware anonymity
  • 8.4 Debugging distributed systems
  • 8.4.1 Network provenance model
  • 8.4.2 Distributed maintenance and querying
  • 8.4.3 Security and temporal extensions
  • 8.5 Optimizing distributed systems
  • 8.5.1 Use cases: PUMA and COPE
  • 8.5.2 Colog language and compilation
  • 8.6 Summary
  • 9. Conclusion
  • Bibliography
  • Authors' biographies.