-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Description
There will be a new major release to support v1.1. We will probably implement these changes as part of v3. v2 is currently staged but I don't want to further inflate that release.
Features needed, per the current status of the named topic proposal:
- Update transfer-ID handling #62. This includes removing the special case of 2^64-1 being an invalid transfer-ID.
- Check for node-ID collisions in LibUDPard. A possible way to do it is to expose the transfer metadata for every received frame via an out-parameter of
udpardRxSubscriptionReceive, and similarly forudpardRxRPCDispatcherReceive. - New header format Notes on future transport frame headers specification#143. Use v2 header by default; switch back to v1 header automatically if one is received.
- Subject-ID space spanning the full u16 range. The larger subject-ID values can only be emitted using v2 header.
- Topic hash support for subscriptions.
- Add a new AVL tree containing instances of
UdpardInternalRxSessionthat require acknowledgements to be sent (new states: number of acknowledgements sent (should be 2 per ack)). The application will check the queue periodically in a way similar to the transmission queue. We could push to the transmission queue directly, but this approach is flawed for two reasons: 1. Memory allocation for the new queue items may fail, which will cause ack loss, while linking AVL trees does not require any additional memory. 2. We don't want the library to be involved with higher-level concepts that involve the composition/interpretation of the transfer payload; it should deal with the low-level transport only.
Metadata
Metadata
Assignees
Labels
No labels