Research project on Service Discovery in Ethereum 2.0 (continuation of this project)
This is a follow-up research project on Service Discovery in Ethereum 2.0 (Discv5) (available at: https://github.com/harnen/p2p-service-discovery). The previous project was successfully completed, but requires additional security analysis, traffic optimization and documentation to allow integration and deployment in the production code.
DEVP2P is a set of network protocols that form the Ethereum peer-to-peer network and act as an entry point for multiple different networks and applications. A service discovery system is thus necessary to allow each user to find its peers. The main challenge facing such a decentralised system is to efficiently manage the scarce resources of registrant nodes. The platform needs to decide how to place service advertisements to enable fast lookups for applications with thousands of users and avoid having less popular services to be hard to find by their users. This task is crucial for the efficiency of the whole platform, but becomes especially challenging under the presence of malicious nodes who can try to manipulate or overload the system.
To the best of our knowledge, there is no other existing work that proposes a service discovery mechanisms suitable for work with Ethereum 2.0. Similar work has been done for p2p content exchange networks (e.g., BitTorrent), but either require assistance from a centralized tracker, are not scalable enough or comes with an additional set of assumptions. Our goal is to discover nodes offering a specific service, without having a separate, dedicated p2p network (or a swarm) for each service.. Our solution aims at proposing a new service discovery mechanism for the DEVP2P network that can be used to discover any service in the network efficiently, with good performance for any service regardless of the popularity and with resistance to malicious nodes behaviour (with the focus on sybil, spam and eclipse attacks).
The specific outcome of this project is to improve the service discovery mechanism, designed during the last project, on already identified aspects, such as traffic load balancing, optimal topic table structure or measurements on the resistance against various (e.g., DoS, Sybil and Eclipse) attacks by malicious nodes. The outcome of this project will be:
- Improvement of the existing network simulator.
- Specifications of the service discovery mechanism with the proposed improvements.
- Technical report including the performance evaluation of the proposed mechanism along with an evaluation of the security resistance against security attacks.
- (Optional) Service discovery performance evaluation in a real testbed using production software (go-ethereum).
The project is organised in three main milestones of the project together with their deliverables. We represent our progress with the following:
-
Complete tasks
-
Pending or uncomplete tasks
-
Objective 1: Traffic optimization and load balancing
- Task: Improve the current discv5 to avoid hotspots in the network and avoid unnecessary load on participating nodes
- Deliverable: Updated Discv5 specification and evaluation results.
- Deadline: 31/3/2021
-
Objective 2: Investigate topic table structure
- Task: Investigate on the optimal structure of the topic table to ensure fairness among all topics
- Deliverable: Updated Discv5 specification and evaluation results.
- Deadline: 30/4/2021
-
Objective 3: Additional security analysis
- Task: Extend on security analysis to avoid any malicious behaviour and measure the risk of sybil attacks.
- Deliverable: Updated Discv5 specification and security analysis report.
- Deadline: 21/5/2021
-
Objective 4: Configuration parameters analysis
- Task: Extend existing evaluation to test multiple configuration parameters to choose the optimal ones to be used in production software.
- Deliverable: Updated Discv5 specification and evaluation report.
- Deadline: 21/6/2021
-
Objective 5: Publication-ready technical report
- Task: Write a technical report including the final specs of the discovery mechanism, all results of the evaluation and the conclusions of the investigation.
- Deliverable: Technical report including specs and evaluation. (Paper )
- Deadline: 21/7/2021
-
Objective 6: Evaluation on a real testbed