Abstract
Discv5 is an extensible protocol which allows building new protocols on top of it. We propose a generic framework for building new distributed hash table (DHT) networks on top of Discv5 referred to as the Portal Wire Protocol
Motivation
Discv5 is implemented in many languages, has built in packet encryption, used by consensus clients, and allows building sub-protocols using its TalkRequest message type.
With the ubiquity of Discv5 in Ethereum and it being implemented in many languages, building new protocols using Discv5 as a base is beneficial as it enables quicker implementation times, stability as Discv5 is already used in production, as well as inheriting improvements and optimizations discovered by Discv5.
When building new DHT sub-protocols on Discv5, new sub-protocols often share the same primitive message types. By defining the framework Portal Wire Protocol, new networks can be built without re-implementing the DHT primitives reducing the development time and inheriting the performance optimizations of the base Portal Wire Protocol implementation.
Specification
Specification of the Portal Wire Protocol are on /ethereum/portal-network-specs.
Rationale
Reducing the amount of duplicate code for primitive DHT functions, to enable cleaner and quicker development of sub-protocols over Discv5
TBD
Security Considerations
Needs discussion.
Copyright
Copyright and related rights waived via CC0.
