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

Reducing the search space for probes #37

Open
michielbdejong opened this issue Sep 19, 2024 · 5 comments
Open

Reducing the search space for probes #37

michielbdejong opened this issue Sep 19, 2024 · 5 comments

Comments

@michielbdejong
Copy link
Member

If we make the product decision #36 to say we want to find all comms loops and not just all credit loops then this does mean on the technical side we can't really use max-flow. The idea of how MTCS uses max-flow is tightly connected to the credit graph being a directed graph.

So we could either look at a form of pre-processing (preceding the probe) that would work on an undirected graph, or using something like nack messages to stop unfruitful probe flooding trees early.

And in any case, if we use pre-processing then it needs to be adaptive to network links being added/removed.

@michielbdejong
Copy link
Member Author

In a directed graph, nodes could tell each other how far away they are from the edge of the network.
Actually, maybe there is no reason this wouldn't also work in a bidirectional graph.
And maybe the measure would then not be how many steps you can go without hitting a leaf, but how many steps you can go without repeating links.
Would this be a privacy concern?

@michielbdejong
Copy link
Member Author

Of course, when two nodes meet, they might both think they are e.g. 17 hops from the edge, and in a directed graph this would work, you can add that up, the total would be 17+1+17.
But in an undirected graph it might well be that there is a link in common.
So maybe I'll work on directed graphs first!

@michielbdejong
Copy link
Member Author

What would also be really helpful for reducing the search space is if probes were prohibited from following the full path of an already traced loop

@michielbdejong
Copy link
Member Author

Probes could easily record which announced loops they are forked on, or make sure they don't follow both directions of a loop

@michielbdejong
Copy link
Member Author

Probes also don't have to enter known dead ends

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant