Skip to content
Discussion options

You must be logged in to vote

The socket client in a CometBFT or Tendermint Core node makes use of a communication protocol that we call the "Tendermint Socket Protocol" or TSP over the 4 connections between a node and the application.

This is an extremely simple request/response-based protocol that takes place over TCP. Each request or response message is protobuf-encoded, but has a length delimiter prefix that is encoded as a varint.

In the v0.34.x release series, this length delimiter prefix is encoded as a signed varint, using the binary.PutVarint method.

In the v0.37.x release series, this length delimiter prefix has changed to instead use an unsigned varint (using binary.PutUvarint). This change happened because:

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by thanethomson
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
abci Application blockchain interface
1 participant