-
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Designing nack messages #39
Comments
Thanks to ack/nack on meet, the DISBURSEMENT transactions have become orders of magnitude faster. Can now run up to line 7950 (27 STANDARD and 7922 DISBURSEMENT transactions) in 29 seconds. |
I'm feeling like I want to rewrite a node implementation from scratch. Are events (reacting to incoming messages) even the right approach? Or should the design be more state-driven (incoming messages update the state, and at any point the node can decide to look at its state and trigger some action)? The latter feels like it may become cleaner, so the node has a better model of its environment and doesn't depend on replies from other nodes to continue what it was doing. |
In any case, the Sarafu data set has 1,000,000 transactions of which 422,721 are standard, across 55,000 nodes, so we'll have to do a about 4 orders of magnitude more than what the simulation is handling right now. |
In any case, we don't want to trigger a flood probe from every meet event, and we want to build in queuing and filtering, and in general be much more deliberate about when a probe is forwarded. Maybe nacks coming back from probes can be very useful to identify dead-end branches. Leaf nodes never have to participate in any probes |
In the light of #37 I'm thinking of
nack
messages that indicate that a node knows it has no further loops.This can be because it is a leaf, or because all its other neighbours have sent a
nack
message.So I'm going to track
nack
messages in the FriendsEngine.As an extra step in the meet process, a
meet
will either be followed by anack
, or be replied to with anack
or anack
, and the flood probe for the newly created link will only be sent if nonack
was sent and anack
was received.I'm also considering
ack
in response toprobe
but I think that will be too expensive.The text was updated successfully, but these errors were encountered: