$Id: whatsnext.php,v 1.4 2006/02/27 19:49:49 jmh Exp $
Please add to and reorganize this file!
Future Work Ideas from P2 Papers
SIGCOMM '05
- Use query optimization ideas to inform new routing protocols
- Automated (multi-)query optimization
- Expressing BGP inter-domain routing policies
- Expressing overlay networks
SOSP '05
- Other overlays beyond Chord: epidemics, link-state, path-vector,
other DHTs.
- Sharing & multiquery optimization in the context of
overlays
- Transport layer optimizations
- Online debugging (P2 is "astonishingly capable" of doing
it!)
- Express security invariants for each element in isolation, and
compose them into global properties for the whole system.
- Make the execution of an overlay tamper-evident
- Reason about safety, termination, and other program
properties
- Language extensions for high-level specification of sharing,
transport, debugging and security logic.
- An overlay-specific language, rather than general Datalog.
SIGMOD '06 Submission
- Cost-based optimizations including random walks
- Adaptive query processing to react to network dynamics
- Multiquery optimization for overlays
- Incorporate negation into our language model and
implementation (affects on pipelining and dynamic data?).
- Static program checks
Integration of existing group research
- Integration of Maelstrom-style induced churn or other secure
routing
- Implementation of ProofSketch aggregation
- Implementation of SIGMOD06-style pipelined semi-naive
evaluation
- Distributed triggers a la Ankur Jain
- Gossipy things like Dahlia's
Applications, etc.
Query Optimizations
- An extensible, cost-based optimizer architecture
- Automatic rewrites including aggregate selections, magic sets,
predicate reordering
- Cache selection
- Cost-based optimizations based on neighborhood functions and/or
expander properties
Engine Architecture
Crazy Ideas
- Aspect-oriented distributed systems. Write the security logic, the transport logic, the storage logic, etc., in isolation and have the system weave them together into a single dataflow graph. Might be related to Synthesis.
- On-line checking for protocol compliance. For example, check at runtime that a particular BAN logic is being followed in the authentication aspect of the system.
- Distributed taint tracking. Newsome and Song's NDSS 05 paper on
taint checking looks for the ways that untrusted inputs
propagate through program code (using valgrind), and then tracks when
those values get used in suspicious ways. Observation 1: this is a
transitive closure computation that could be easily expressed in
datalog, as in Whaley and Lam's bdddb system. Observation 2: one
could imagine combining this with a distributed propagation
facility across machines, ala P2. This could be done either via
forward tracking in real time (to confirm suspicious behavior) or
via backtracking into historical logs (in the spirit of the Xie, et
al work on Random
Moonwalks from Oakland 05