control: add iroh gossip transport announcements and ec-node control CLI
This commit is contained in:
parent
fba1f3a7d5
commit
fe97623ba8
5 changed files with 494 additions and 23 deletions
45
evolution/proposals/ECP-0066-iroh-control-protocol.md
Normal file
45
evolution/proposals/ECP-0066-iroh-control-protocol.md
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# ECP-0066: iroh-Gossip Control Protocol For Hybrid MoQ Discovery
|
||||
|
||||
Status: Draft
|
||||
|
||||
## Decision
|
||||
|
||||
Add a first-party control protocol carried over iroh-gossip to advertise stream availability across multiple transport paths:
|
||||
|
||||
- MoQ relay (WebTransport URL + broadcast name + track),
|
||||
- iroh direct (EndpointAddr + broadcast name + track).
|
||||
|
||||
`ec-node` will expose:
|
||||
|
||||
1. `control-announce`: publish control announcements to an iroh gossip topic.
|
||||
2. `control-listen`: subscribe to the topic and print announcements.
|
||||
3. Optional integration in `wt-publish` to announce relay-published streams via the same control topic.
|
||||
|
||||
## Motivation
|
||||
|
||||
We currently have two transport worlds:
|
||||
|
||||
- relay-centric (`wt-publish`),
|
||||
- direct iroh (`moq-publish` / `moq-subscribe`).
|
||||
|
||||
Discovery is fragmented. A shared iroh control channel makes transport selection explicit and allows consumers to discover either path (or both) from one substrate.
|
||||
|
||||
## Scope
|
||||
|
||||
In scope:
|
||||
|
||||
- New control protocol data types in `ec-core`.
|
||||
- New `ControlGossip` helper in `ec-iroh`.
|
||||
- New CLI surfaces in `ec-node` for announce/listen.
|
||||
- Optional relay announcement from `wt-publish`.
|
||||
|
||||
Out of scope:
|
||||
|
||||
- Policy engine for automatic best-path selection.
|
||||
- Security policy beyond existing iroh/gossip trust boundaries.
|
||||
- Replacing existing catalog gossip immediately (coexist first).
|
||||
|
||||
## Rollout / Reversibility
|
||||
|
||||
- Additive and reversible: removing control commands and topic does not affect existing media paths.
|
||||
- Existing MoQ publish/subscribe flows continue unchanged.
|
||||
Loading…
Add table
Add a link
Reference in a new issue