Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Peer Management: Automated actions upon reconnection #1464

Open
4 tasks
fryorcraken opened this issue Aug 8, 2023 · 0 comments
Open
4 tasks

Peer Management: Automated actions upon reconnection #1464

fryorcraken opened this issue Aug 8, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request track:restricted-run Restricted run track (Secure Messaging/Waku Product), e.g. filter, WebRTC

Comments

@fryorcraken
Copy link
Collaborator

Planned start date:
Due date:

Summary

In the context of using req/resp protocols, especially filter, a disconnection/reconnection to a remote peer may mean a lost to internet connection, which may lead to:

  • missing incoming messages (remote filter node was not able to push messages)
  • failed to send messages (remote light push node was unavailable during the connection loss)

Taking an holistic view, js-waku should provide handy API/plugins to enable an app to restore services and repair from temporary loss of connectivity.

Acceptance Criteria

  • Filter subscriptions are restored upon reconnection
  • Filter PING is regularly used to confirm subscription are still active, if error is detected, it should trigger a subscription restoration attempt.
  • API is available to indicate when sending via light push is available, especially after sending failure
  • Store query is automatically done using last received message after it is detected that a disconnection or subscription loss happened.

Tasks

RAID (Risks, Assumptions, Issues and Dependencies)

  • Unsure if this should be core functionality or a plug-in as automated store query may be a heavy operation.
    • For example. if light push sent to fail a message, then it may be application logic to re-attempt sending but js-waku needs to provide API to make it clear when it is ready to send again.
    • Steps are likely to implement most of the logic in separate plug-in or application and then review what needs to be integrated in core logic.
  • Risk of overloading remote nodes when automated actions are done upon network unstability (e.g. connection loss may be due to remote node overloaded), need to be sure back-off strategies are used when relevant and possibly rotating between use remote nodes.
@fryorcraken fryorcraken added track:restricted-run Restricted run track (Secure Messaging/Waku Product), e.g. filter, WebRTC milestone Tracks a subteam milestone E:2023-peer-mgmt labels Aug 8, 2023
@fryorcraken fryorcraken added this to Waku Aug 10, 2023
@weboko weboko added the blocked This issue is blocked by some other work label Aug 10, 2023
@weboko weboko moved this to To Do in Waku Aug 10, 2023
@fryorcraken fryorcraken changed the title [Milestone] Peer Management: Automated actions upon reconnection [Epic] Peer Management: Automated actions upon reconnection Aug 24, 2023
@fryorcraken fryorcraken added epic Tracks a yearly team epic (only for waku-org/pm repo) and removed milestone Tracks a subteam milestone labels Aug 24, 2023
@fryorcraken fryorcraken added enhancement New feature or request and removed epic Tracks a yearly team epic (only for waku-org/pm repo) E:2023-peer-mgmt labels Sep 22, 2023
@fryorcraken fryorcraken changed the title [Epic] Peer Management: Automated actions upon reconnection Peer Management: Automated actions upon reconnection Sep 22, 2023
@danisharora099 danisharora099 moved this from To Do to Priority in Waku Oct 16, 2023
@danisharora099 danisharora099 self-assigned this Oct 17, 2023
@danisharora099 danisharora099 moved this from Priority to To Do in Waku Oct 17, 2023
@chair28980 chair28980 removed the blocked This issue is blocked by some other work label Nov 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request track:restricted-run Restricted run track (Secure Messaging/Waku Product), e.g. filter, WebRTC
Projects
Status: To Do
Development

No branches or pull requests

4 participants