Skip to content

feat: message verification and retry #2075

@weboko

Description

@weboko

This is a feature request

Problem

Feature that is useful for application developers is to know if message was actually seen and/or stored by the network.

Proposed Solutions

We need to implement one mechanism for message verification that would consume sender on one end and receiver on another and recognize messages that are not seen by the network or stored there.

This mechanism should populate a pool of messages to be re-send and automatically re-broadcast them with behavior specified in the reliability RFC.

Note: peer renewal should kick in in case failures happen during sending again and again.

This should be optional feature and enabled by option parameter passed to createLightNode.

TODO:

  • implement message monitoring component that would mark and cache messages that are not sent;
    • adapt it to monitor Filter and / or Store;
    • adapt it to monitor LightPush;
  • re-send messages if they are not successfully sent;
flowchart LR
  LightPush --> MessageMonitor
  Filter --> MessageMonitor
  MessageMonitor-- resend marked messages -->LightPush
Loading

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    To Do

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions