-
Notifications
You must be signed in to change notification settings - Fork 430
Feb 2020: New improvements to IPFS Bitswap #114
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
Conversation
@johnnymatthews Is this one ready to go? |
Ran through Grammarly for consistency. Also changed `wantlist` to `want-list` as to not mess with spell-checkers and make automatic translation easier.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for these changes @edgo914, great work!
@@ -13,23 +13,23 @@ related: | |||
Bitswap is a core module of IPFS for exchanging blocks of data. It directs the requesting and sending of blocks to and from other peers in the network. Bitswap is a _message-based protocol_ where all messages contain [wantlists](#wantlist) or blocks. Bitswap has a [Go implementation](https://github.com/ipfs/go-bitswap) and a [JavaScript implementation](https://github.com/ipfs/js-ipfs-bitswap). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like I missed a wantlist to want-list change here, but can no longer edit.
|
||
A wantlist is a data structure that an IPFS node sends to the network to tell peers which blocks it wants. The wantlist contains [CIDs](https://docs-beta.ipfs.io/concepts/content-addressing/) (content-addressed identifiers that refer to particular blocks desired) along with priority and cancellation information. | ||
A _want-list_ is a data structure that an IPFS node sends to the network to tell peers which blocks it wants. It's a list of data that the IPFS node wants. The want-list contains [CIDs](https://docs-beta.ipfs.io/concepts/content-addressing/) (content-addressed identifiers that refer to particular blocks desired) along with priority and cancellation information. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It'd be great to see an example of a want-list here.
|
||
### Session | ||
|
||
IPFS content blocks are often connected to each other through a [Merkle DAG](https://docs-beta.ipfs.io/concepts/merkle-dag/). If a sender's block requests are related, a mechanism called a _Bitswap session_ in the Go implementation can optimize block requests sent to other peers. This mechanism can increase transfer speed and reduce the number of duplicate blocks on the network. Active peers are favored, as they are tracked relative to them having the requested blocks and how quickly they respond. | ||
IPFS content blocks are often connected through a [Merkle DAG](https://docs-beta.ipfs.io/concepts/merkle-dag/). If a sender's block requests are related, a mechanism called a _Bitswap session_ in the Go implementation can optimize block requests sent to other peers. This mechanism can increase transfer speed and reduce the number of duplicate blocks on the network. Active peers are favored, as they are tracked relative to them having the requested blocks and how quickly they respond. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's keep internal links relative:
through a [Merkle DAG](/concepts/merkle-dag/).
Closing this PR. Changes made in 112. |
No description provided.