Skip to content
This repository has been archived by the owner on Aug 1, 2024. It is now read-only.
/ tendermint Public archive

Commit

Permalink
Documentation of v0.35 p2p layer: peer manager (#8982)
Browse files Browse the repository at this point in the history
* Doc: documentation of new p2p layer, first commit

* Doc: p2p peer manager abstraction, first commit

* Doc: life cycle of a peer, first part

* Doc: life cycle of a p2p peer, picture added

* typos

* Doc: life cycle of a p2p peer picture updated

* Doc: life cycle of a p2p peer section refactored

* Doc: p2p connection policy and connection slots

* Doc: peer manager defines the connection policy

* Doc: peer manager connection slots upgrading

* Doc: peer manager eviction procedure introduced

* Doc: several corrections in peer manager documentation

* Doc: peer ranking mechanism documented

* Doc: EvictNext peer manager transition documented

* Doc: concept of candidate peer added to peer manager

* Doc: peer manager documentation, aesthetic changes

* Apply suggestions from code review (again)

Co-authored-by: Sergio Mena <[email protected]>

* Spec of v0.35 p2p layer moved to spec/p2p/v0.35

* Spec: p2p markdown links fixed

* Spec: addressing more issues on peer manager spec

* Spec: p2p peer manager DialNext algorithm

* Spec: p2p peer manager Dial and Accepted algorithms

* Spec: p2p router dialing peers thread

* Spec: p2p router accept peers threads

* Spec: p2p router evict peers routine

* Spec: p2p router routing messages routines

* Spec: p2p v0.35 readme points to other documents

* Spec: fixing markdown links

* Apply suggestions from Josef's code review

* They state that this is a work in progress, that has been interrupted to focus on the specification of the p2p layer adopted by Tendermint v0.34.

Co-authored-by: Josef Widder <[email protected]>

* Spc: p2p v0.35 spec mentions new p2p layer

Co-authored-by: Jasmina Malicevic <[email protected]>
Co-authored-by: Sergio Mena <[email protected]>
Co-authored-by: Josef Widder <[email protected]>
Co-authored-by: Daniel Cason <[email protected]>
  • Loading branch information
5 people authored Aug 8, 2022
1 parent d433ebe commit d0c3457
Show file tree
Hide file tree
Showing 4 changed files with 615 additions and 0 deletions.
14 changes: 14 additions & 0 deletions spec/p2p/v0.35/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Peer-to-peer communication substrate - WIP

This document details the operation of the [`p2p`][p2p-package] package of
Tendermint, refactored in the `v0.35` release.

**This is a work in progress** ([#8935][issue]). The following files represent the current (unfinished) state of this documentation. It has been decided not to finish the documents at this point in time, but to publish them here in the current form for future reference.

- [Peer manager](./peer_manager.md): determines when a node should connect to a
new peer, and which peer is preferred for establishing connections.
- [Router](./router.md): implements the actions instructed by the peer manager,
and route messages between the local reactors and the remote peers.

[issue]: https://github.com/tendermint/tendermint/issues/8935
[p2p-package]: https://github.com/tendermint/tendermint/tree/v0.35.x/internal/p2p
Loading

0 comments on commit d0c3457

Please sign in to comment.