celestiaorg / celestiaorg/go-header

feat(p2p): ensure exhange can distinguish peers based on their pruning strategy

Open
#333 2 comments 1 reaction 0 assignees View on GitHub
Dominant language
Go
Stars
21
Forks
33
Avg merge
5d 20h
Merged PRs (30d)
7

Description

Currently, the exchange protocol assumes every peer has the whole history of headers. As pruning lands, this assumption will no longer hold. However, the protocol should still strive to find all the headers in the p2p network, such that an exchange client can request any header in the past without needing to store them locally.

The simplest solution is to assume we have at least one connection to a node retaining the whole history. It can be either manually configured, e.g., TrustedPeer, or discovered over DHT, or probed out of immediate connections.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the exchange protocol and how peers are configured or discovered, including TrustedPeer, DHT discovery, and probing immediate connections. Define how a client identifies peers by pruning strategy and verify that requests for any historical header can be routed to a peer retaining the needed history.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.