Skip to content

Commit

Permalink
doc: update features section of spec
Browse files Browse the repository at this point in the history
  • Loading branch information
mkermani144 committed Apr 30, 2024
1 parent d121202 commit c238ef0
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions specs/system-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,25 +54,24 @@ Implementation status:
🚧 Under development
βœ… Finished

| Status | Feature | Current State |
| ------ | ------------------------- | ------------------------------------------------------------------ |
| 🚧 | Topology (ZeroLayer) | Starts as a star, upgrades to partially-connected mesh |
| 🚧 | Topology (RoseLayer) | Gossip-based partially-connected mesh |
| 🏁 | Message Delivery | Guaranteed within a 5-minute latency window |
| βœ… | Whitelisting | Configurable for both relays and nodes, being mandatory for relays |
| βœ… | Communication Security | All messages are end-to-end encrypted |
| βœ… | Sybil Attack Mitigation | Relays only accept connections from whitelisted nodes |
| 🏁 | Network Data Availability | Support planned in case of introducing state to the network |
| 🏁 | Scalability | Up to 100 non-relay nodes |
| 🏁 | Message Sending Latency | 1-second latency for dequeuing |
| N/A | Decentralization | Mostly decentralized, but some relay nodes are required |
| 🚧 | Discoverability (Nodes) | Achieved after connecting to the relay |
| 🚧 | NAT Traversal | Supports both public and private nodes |
| 🏁 | Monitoring & Analytics | Tracks connected nodes, relays, messaging rates, etc. |
| 🏁 | Message Routing | [To be determined] |
| 🏁 | Upgradability | [To be determined] |
| 🏁 | Burst Messaging | [To be determined] |
| 🏁 | Idle Network State | [To be determined] |
| Status | Feature | Current State |
| ------ | ----------------------------- | ------------------------------------------------------------------ |
| 🚧 | Topology (ZeroLayer) | Starts as a star, but the final topology is to be determined |
| 🚧 | Topology (RoseLayer) | [To be determined] |
| 🏁 | Fast Message Delivery | Guaranteed within a 5-minute latency window |
| 🏁 | Message Delivery Verification | Message delivery is verified through an ack mechanism |
| βœ… | Whitelisting | Configurable for both relays and nodes, being mandatory for relays |
| βœ… | Communication Security | All messages are end-to-end encrypted |
| βœ… | Sybil Attack Mitigation | Relays only accept connections from whitelisted nodes |
| 🏁 | Network Data Availability | Support planned in case of introducing state to the network |
| 🚧 | Scalability | Up to 40 non-relay nodes |
| - | Decentralization | Mostly decentralized, but some relay nodes are required |
| βœ… | Discoverability (Nodes) | Achieved after connecting to the relay |
| 🚧 | NAT Traversal | Supports both public and private nodes |
| 🏁 | Monitoring & Analytics | Tracks connected nodes, relays, messaging rates, etc. |
| 🏁 | Message Routing | [To be determined] |
| 🚧 | Burst Messaging | [To be determined] |
| 🏁 | Idle Network State | [To be determined] |

### Unsupported Features:

Expand All @@ -84,6 +83,7 @@ Implementation status:
| Relays count constraints support | Not planned, new relays must be added on demand |
| Persistence | Not planned |
| Discoverability (relays) | Relays are not meant to be well-known ip addresses and don't need to be discovered |
| Backward-compatibility | All RoseNet nodes and relays must use the same version of RoseNet protocol |

## RoseNet design principles

Expand Down

0 comments on commit c238ef0

Please sign in to comment.