generated from ipfs/ipfs-repository-template
-
Notifications
You must be signed in to change notification settings - Fork 88
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
[ipfs/go-bitswap] Connection State Tracking #95
Comments
Jorropo
changed the title
Connection State Tracking
[ipfs/go-bitswap] Connection State Tracking
Jan 27, 2023
hacdias
pushed a commit
that referenced
this issue
Jan 30, 2023
on a tick, do not keep searching for providers for the same block. instead rely on a periodic search for more providers. (which will run no matter what, even w/o ticks, to optimize found providers). also backoff tick time to reduce broadcasts. fix #95, fix #107 This commit was moved from ipfs/go-bitswap@49a96fb
guseggert
pushed a commit
that referenced
this issue
Mar 15, 2023
This commit was moved from ipfs/interface-go-ipfs-core@b1299ab
Jorropo
pushed a commit
that referenced
this issue
Mar 22, 2023
Implement API that allows iteration over multihashes and offsets in `MultihasIndexSorted`. The API is specific to this index type; therefore, the type is now exported along with its constructor funtion. Write test that asserts `GetAll` and `ForEach` behave consistently. Relates to #95 This commit was moved from ipld/go-car@1398bba
Jorropo
pushed a commit
to ipfs/go-libipfs-rapide
that referenced
this issue
Mar 23, 2023
This commit was moved from ipfs/interface-go-ipfs-core@b1299ab
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Currently, we handle enqueuing broadcast wants synchronously when we process "connect" events. Instead, we should do the minimal amount of work possible when processing events, handing broadcast wants in the background.
General Design
There are two parts to this design:
States
Transitions
Ideas
I'm having trouble completely fleshing out this design so I'm going to write some other ideas:
The important part is that if any subsystem signals that the peer should transition from available to connected, the peer must transition to connected, even if it ends up transitioning back to available.
I have some ideas on how to do this, but I'll have to try to write them up later.
The text was updated successfully, but these errors were encountered: