-
Notifications
You must be signed in to change notification settings - Fork 220
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
perf(comms)!: optimise connection establishment #3658
Merged
stringhandler
merged 5 commits into
tari-project:development
from
sdbondi:comms-switch-identity-and-yamux-upgrade
Jan 3, 2022
Merged
perf(comms)!: optimise connection establishment #3658
stringhandler
merged 5 commits into
tari-project:development
from
sdbondi:comms-switch-identity-and-yamux-upgrade
Jan 3, 2022
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
stringhandler
approved these changes
Jan 3, 2022
sdbondi
added a commit
to sdbondi/tari
that referenced
this pull request
Jan 5, 2022
* development: fix: allow 0-conf in blockchain db (tari-project#3680) test: fix cucumber WalletQuery.feature (tari-project#3677) test: fix `wait for` step (tari-project#3673) perf(comms)!: optimise connection establishment (tari-project#3658) fix: remove noise negotiation for debugging on bad wire mode (tari-project#3657) feat: add follow on checkpoint (tari-project#3676) ci: fix tari collectibles build (tari-project#3670) feat: example to generate vanity node_ids (tari-project#3654) fix: prefer configured seeds over dns seeds (tari-project#3662) docs: update RFC-0230_HTLC to use TariScript (tari-project#3622) feat: add invoke write method to proxy (tari-project#3667) ci: add tauri build (tari-project#3669) test: fix cucumber metadata signature (tari-project#3665) feat: add asset proxy (tari-project#3659) test: fix cucumber (tari-project#3660)
sdbondi
added a commit
to sdbondi/tari
that referenced
this pull request
Jan 5, 2022
* development: fix: allow 0-conf in blockchain db (tari-project#3680) test: fix cucumber WalletQuery.feature (tari-project#3677) test: fix `wait for` step (tari-project#3673) perf(comms)!: optimise connection establishment (tari-project#3658) fix: remove noise negotiation for debugging on bad wire mode (tari-project#3657) feat: add follow on checkpoint (tari-project#3676) ci: fix tari collectibles build (tari-project#3670) feat: example to generate vanity node_ids (tari-project#3654) fix: prefer configured seeds over dns seeds (tari-project#3662) docs: update RFC-0230_HTLC to use TariScript (tari-project#3622) feat: add invoke write method to proxy (tari-project#3667) ci: add tauri build (tari-project#3669) test: fix cucumber metadata signature (tari-project#3665) feat: add asset proxy (tari-project#3659) test: fix cucumber (tari-project#3660)
sdbondi
added a commit
to sdbondi/tari
that referenced
this pull request
Jan 11, 2022
* development: (28 commits) feat: covenants implementation (tari-project#3656) ci: add tor script to binaries bundle (tari-project#3689) chore: remove testnet reset todo in wallet (tari-project#3685) feat: dibbler new genesis block with faucet utxos (tari-project#3688) ci: fix clippy warning on generated proto module (tari-project#3690) test: fix metadata signature cucumber (tari-project#3687) refactor!: clean up #testnet reset TODOs (tari-project#3682) feat(comms)!: add signature to peer identity to allow third party identity updates (tari-project#3629) chore: remove moving lock.mdb (tari-project#3674) chore: merge weatherwax feat!: provide a compact form of TransactionInput (tari-project#3460) fix: allow 0-conf in blockchain db (tari-project#3680) v0.22.1.1 v0.22.1 ci: add build step (tari-project#3678) test: fix cucumber WalletQuery.feature (tari-project#3677) test: fix `wait for` step (tari-project#3673) fix: edge cases causing bans during header/block sync (tari-project#3661) perf(comms)!: optimise connection establishment (tari-project#3658) fix: end stale outbound queue immediately on disconnect, retry outbound messages (tari-project#3664) ...
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Optimise connection establishment:
Additional: remove tokio-tungstonite dependency from base node (part of warp default-features for websockets)
Motivation and Context
By performing identity protocol before yamux upgrade, we can send the identity message without incurring the header cost of yamux and also avoids having to close a substream after identities are exchanged. It is important that the identity protocol is as trim as possible, so a manual framing implementation is used rather than the tokio length-delimited framing codec.
This is a network breaking change, nodes upgraded to this will not be able to communicate with older nodes and vice-versa.
How Has This Been Tested?
Existing tests pass, manually between two upgraded nodes