Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> everyone knew the ways in which that was a bad idea

The state machine pattern is used currently in verbs. That was the state of the art for many decades before higher level interfaces appeared.

Why was it a bad idea? Can you elaborate?



Do you mean the RDMA verbs API? Or something else? I'll point out that it's an API, so an implementation pattern isn't relevant. (it's also an awfully obscure one, and I say that as someone who was involved in standardizing the pre-Infiniband Virtual Interface Architecture API that it derives from)

It's a relic of the old 7-layer model, where you looked at each layer in isolation, and was ditched in high-performance networking code starting with Van Jacobsen's in maybe 1991. No one ever hit 10mbit/sec with a state machine-coded stack.

Note that very few people write network protocol implementations, so it baffles me why they thought to suggest that their high-level design pattern would be useful in low-level kernel code.


Yes, I meant the RDMA verbs API.

Thanks for the insight.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: