Ping RTT benchmarks b/w rnet and libp2p
Did an RTT benchmark comparing my experimental p2p stack rnet vs libp2p rnet → ~220–300μs rust-libp2p → ~130–250μs py-libp2p → ~300–400μs Same machine, loopback libp2p: TCP + Noise + Yamux rnet: TCP + custom security (Deffie-Hellman based key-exchange) + Mplex rnet lagging behind by ~60μs implementation overhead from rust-libp2p rnet: https://github.com/lla-dane/rnet/
Built a secure transport layer for my p2p stack
Built a secure transport layer today for my p2p stack. Raw streams -> negotiated -> encrypted (Deffie Hellman + ChaCha20Poly1305). Feels good seeing the pieces come together. PR: https://github.com/lla-dane/rnet/pull/2
Introduced Prometheus metrics to libp2p(-py)
Introduced Prometheus/Grafana metrics to libp2p(-py), improving network observability for the core services like Gossipsub, Kad-DHT and connection lifecycle. PR: https://github.com/libp2p/py-libp2p/pull/1199
Kedarkantha Peak
Went first time trekking, to Kedarkantha peak. The elevation was around ~3800m, spent 3 days in the forest and then did river rafting in Rishikesh. Felt good to get away from code, from time to time.
Introduced AutoTLS in libp2p(-py)
Extended the TLS security module in libp2p(-py) to fetch CA authorized TLS certificates using the libp2p Auto-TLS client specification, rather than using self-signed ones. This will enable protocol execution via web-transport and browsers for libp2p(-py). PR: https://github.com/libp2p/py-libp2p/pull/1072
Implemented Floodsub from scratch
Wrote a Floodsub module for scratch in my experimental p2p stack. Learned a great deal how pubsub broadcasting systems behave under the hood with complex rust async designs. Getting ready to write Gossipsub now.
Rust async pattern -- single owner IO
Ran into an issue while building my experimental p2p stack in Rust – multiple parts of the code wanted &mut TcpStream. Turned out the design was improper. What worked for me was creating a single IO task owning the socket, with everything else communication via mpsc. Cleaner ownership, fewer borrow issues, and easier to reason about.
Got a Raspberry Pi 5
Bought a Raspberry PI 5. Planning to do some networking experiments and small infrstructure setups.
Started writing a p2p stack in Rust
Started writing an experimental p2p stack, rnet inspired from libp2p specs, to dig deeper into rust and core p2p mechanics.
Hackathon win @ETHNewDelhi'25
Attended an IRL hackathon in New Delhi. Built a p2p federated learning platform using libp2p(-py), Akave-O3 and Hedera hashgraph. Won the Filecoin/Akave track at ETHNewDelhi'25.