Packet Plumbing

Thoughts on plumbing frames, packets and segments.

My name is Ryan Goodfellow. I'm an engineer at the Oxide Computer Company. My work focuses on networking at the hardware/software interface on the illumos operating system. Specific areas of interest include routing protocols, operating system network architecture, network testbeds and emulation.


Tinkering is the process of learning by experimentation. Poking at things to see how they respond. Collecting observations to build higher level understanding and peeling back layers of complexity to build deeper understanding. When combined with open-source systems, tinkering becomes an even more powerful tool for building knowledge. This series of posts explores networking systems through tinkering and source code.


Architecture is what allows complex systems to evolve and maintain stability at the same time. At Oxide, we're working on building open systems beyond the traditional network black-box function boundaries. These efforts are revealing a fully programmable data plane which, presents new complexities that must be approached at the operating system network architecture level to be successful. This series of posts explores the opportunities in this space.