Skip to content

Roadmap

Angelo Corsaro edited this page Oct 30, 2020 · 36 revisions

At the present stage most of our effort is into the Rust rewrite of zenoh, which is currently incubated on the rust-master branch.

Milestone Features

July 2020

Our next milestone in terms of development will be toward the end of July 2020. By then we should have a rust version of zenoh that has the following features -- items in bold text are already completed, those in italic are almost done, the rest is being worked out on the rust-master branch.

  • zenoh-net Rust API
  • zenoh Rust API
  • TCP/IP Transport
  • Brokered Communication
  • Peer-to-Peer
  • Distributed Query Resolution
  • Dynamically loadable Plug-in API
  • HTTP Plugin (also used for management)
  • REST API
  • Clique Routing
  • UDP-Multicast based Discovery
  • Support for Fragmentation
  • UDP/IP transport (Best effort only)
  • Memory Storage backend
  • zenoh-net ffi
  • UDP/IP transport

September 2020

We are starting to discuss and gather feedback on the features that will make it on the September 2020 milestone. Feel free to comment and contribute either through the zenoh Gitter Account or by commenting this page.

APIs

  • C API
  • Python API

Transports

  • Best effort Channel mapping to Best Effort Transport
  • Dropping strategy for reliable channel

Storages & Backends

  • Storage Interceptors

Connectors

October 2020

  • Rust Based zenoh beta release
  • Unified configuration for zenoh-net and zenoh
  • Multiplatform CI
  • API Documentation for Rust Release
  • Updated zenoh.io
  • Automatic Local Query Consolidation

November 2020

Microcontroller Support

Routing

  • Unicast brokered Discovery for peer-to-peer communication
  • Unicast Closure-based Discovery

Zero-Copy

  • zero-copy support

Storages & Backends

  • File System Storage Backend
  • Influx-DB Storage backend
  • RDBMS Backend

APIs

  • zenoh API for C

Next

Transcoding

  • Add transcoding for supported zenoh types

Testing

  • Add more system testing

APIs

  • Go-Lang API
  • Java API

Transport

  • Reliability for best-effort transports
  • Support for TLS
  • Support for DTLS (?)

Notifications

  • Add callback for relevant events on discovery, disconnections, etc.

Security

  • Authentication and Access Control -- constrain access to specific set of keys to given identities.
Clone this wiki locally