The following high-level requirements have been identified:

  • layered architecture
    • lowest level mechanisms
    • high level policy
  • tiered architecture
    • frontend
    • middleware
    • agents
  • component architecture
    • functional blocks
  • multiple frontends
  • system resource management
    • discovery
    • allocation
    • utilization
  • communication
    • point to point
    • aggregate
    • low latency/high bandwith
    • asynchronous
    • fault tolerant
  • heterogeneous data support
  • guaranteed cleanup
  • ability to enter quiescent state on demand (e.g. get to consistent state)
  • single instance can be shared by multiple tools

Junction Requirements

  • The infrastructure should provide a set of predefined junctions to support common operations
  • Junctions can be user defined
  • There is a mechanism to register/de-register junctions
  • Junctions can be composed
  • Junctions can be activated/deactivated/(re-)configured
    • Reconfigure may just be a normal message intercepted by the plugin
  • Junctions can be bound to different dataflows
  • Limit plugin propagation
  • A junction can query its location in topology
  • Junctions are supported on leaf nodes
  • Junction dependencies will be managed by the infrastructure (e.g. autoload dependent junctions)
  • The junction has access to communication synchronization primitives
    • e.g. receive from any child, receive from n children
  • Junctions can access system interfaces (e.g. open), though this is not encouraged

Entry Point
Routing Framework
Session Management
Security Model

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License