All Posts
Notes on systems, networks, and the occasional rabbit hole. Press ⌘K to search.
Building a Search Engine in Rust: Crawl, Index, Rank
A Semaphore-bounded Tokio web crawler, an inverted index, and BM25 ranking that beats naive keyword counting — crawl, index, rank in a few hundred lines.
Gerdu: A Multi-Protocol, Raft-Backed Key-Value Store in Go
An in-memory key-value store in Go: one small cache interface behind LRU/LFU/weak implementations, four wire protocols at once, and Raft replication where the cache itself is the state machine.
PathForge: Writing a BGP-4 Daemon from Scratch in Rust
Building a from-scratch BGP-4 daemon in Rust against RFC 4271: wire framing you can fuzz, the session state machine, one Tokio task per peer, and the best-path decision process as a sort comparator.
Writing a Small S3 Proxy in Rust
A thin, S3-compatible gateway in Rust: routing requests to the right backend by bucket name, API-key auth with per-user roles and allow-lists, and a sliding-window rate limiter.
Building Sentry: A Secure Job Runner with cgroups and mTLS
Running Linux processes under hard CPU, memory, and I/O limits with cgroups v2, streaming their logs over gRPC, and authenticating everyone with mutual TLS.
Snake on a Cube: 3D Snake in Rust and WebAssembly
3D Snake crawling across all six faces of a cube, compiled to WebAssembly with three-d. The whole game lives in the seams where one face's coordinates meet another's.
Reimplementing S3 from Scratch: An Object Store in Rust
Building R3, an S3-compatible object store in Rust: filesystem-backed objects, multipart upload assembly, and versioning with delete markers — where the real difficulty is the metadata, not the bytes.
NetChaos: Declarative Network Chaos with eBPF and Kubernetes
A Kubernetes-native network fault injection framework: describe failures as CRDs, drive them with an operator reconcile loop, and deliver packet drops at kernel speed with eBPF.
Data-Mining PCAP files using Weka and Python DPKT library
Using Weka, Python DPKT to find malicious traffic flows in FTP server control flows.
OpenStack REST API Direct Call
Some OpenStack wrapper libraries like OpenStack4j or Cloud4j does not cover all OpenStack REST API. I tried to explain a simple and general approach for Open...
GSoC 2015 RouteFlow Proposal
Here it is my Google Summer of Code proposal for unified end-to-end tests of RouteFlow project for 2015
Playing With K-nearest Neighbors Algorithm
This program is an inefficient (in terms of computing and memory complexity) yet simple demonstration to implement k-nearest neighbors unsupervised classific...
Why does functional programming matter?
Like any other missing feature in any programming language imperative programming languages address these problems by making more libraries with complex inte...
Collecting Data Using Windows Azure Part 2
How to obtain beautifull network graphs by collecting twitter data
Spanning Tree
Just about everything you'll need to style in the theme: headings, paragraphs, blockquotes, tables, code blocks, and more.
Hello Complex Networks!!!
I just wanted to refresh my JavaScript programming skills along with exercising my homeworks. I searched few Network Visualization JS libraries in the net I ...
Collecting Data using Windows Azure Part 1
I decided to develop an Azure WebJob to collect my twitter data into MongoDB, using LinqToTwitter library along with MongoDB made this job pretty easy.