monero-ccs-proposals/anon-perfect-peer-to-peer-protocol.md
luigi1111 61bd4f6f8d Merge branch 'anon_payout' into 'master'
completion of anon-perfect-peer-to-peer-protocol.md

See merge request monero-project/ccs-proposals!581
2025-05-10 20:01:01 +00:00

108 lines
2.4 KiB
Markdown

---
layout: cp
title: "anon: perfect peer to peer protocol from bottom to top"
author: anon
date: 24 Jan 2021
amount: 240.12021
milestones:
- name: Feb.
funds: 33% (80.04007 XMR)
done: 8 July 2021
status: finished
- name: Mar.
funds: 33% (80.04007 XMR)
done: 8 May 2025
status: finished
- name: Apr.
funds: 33% (80.04007 XMR)
done: 10 May 2025
status: finished
payouts:
- date: 11 July 2021
amount: 80.04007
- date: 10 May 2025
amount: 160.08014
---
## Proposal completion (28th, April 2025)
All remaining funds (160.08014XMR) ~~will be repurposed or reallocated to a similar proposal (subject to community consensus).~~ will be paid out to anon who has requested payout using his original PGP key.
## What
~~~
Perfection is not attainable, but if we chase perfection we can catch excellence.
On the way to perfect monero blockchain synchronization daemon
which is correct, simple and efficient.
On the way to perfect peer to peer protocol implementation that
forbids arbitrary devitation in peers behavior,
balances available resources between unsynchronized and synchronized peers,
keeps new block propogation latency as low as possible.
All related layers hierarchy:
input/output loop
v
socket
v
ssl socket
v
connection
v
abstract tcp server
v
levin protocol + portable storage
v
net node
v
cryptonote protocol + core rpc server
v
cryptonote core + crypto
v
blockchain db + tx pool
The following layers are not correct:
ssl socket,
connection,
abstract tcp server,
net node,
cryptonote protocol,
tx pool.
The following layers are very inefficient:
portable storage.
All above layers aren't simple.
There are few critical errors that must be fixed first:
segfaults,
enormous RAM usage,
enormous CPU load,
deadlocks,
unexpected delays in asynchronous code.
Work will be done in the following order:
fix critical errors,
simplify,
fix incorrect behvaiour,
simplify,
add new changes,
simplify,
increase efficiency,
simplify.
The above final aim and related scope require much more than 3 months work.
~~~
## Who
~~~
anon
~~~
## Proposal
~~~
Dedicate at least 3 months (12 hours per each day including weekends) to Monero Project for a total of 240.12021 XMR.
~~~