Skip to content
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

Add EIP: Portal Wire Protocol a framework for discv5 #8629

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions EIPS/eip-7718.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
eip: 7718
title: Portal Wire Protocol a framework for discv5
description: A generic framework over discv5 which allows new overlay protocols to be built without reimplementing DHT primitives
author: Kolby ML (@KolbyML)
discussions-to: https://ethereum-magicians.org/t/eip-7718-portal-wire-protocol-a-framework-for-discv5/20230
status: Draft
KolbyML marked this conversation as resolved.
Show resolved Hide resolved
type: Standards Track
category: Networking
created: 2024-06-06
---

## 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

KolbyML marked this conversation as resolved.
Show resolved Hide resolved
Specification of the _Portal Wire Protocol_ are on [/ethereum/portal-network-specs](https://github.com/ethereum/portal-network-specs/blob/4ce803e90a24becc9f76e7c18dc188ccf84e9f8e/portal-wire-protocol.md).

## Rationale

Reducing the amount of duplicate code for primitive DHT functions, to enable cleaner and quicker development of sub-protocols over Discv5

TBD <!-- TODO -->

## Security Considerations

Needs discussion. <!-- TODO -->

## Copyright

Copyright and related rights waived via [CC0](../LICENSE.md).
Loading