Eeems-Org / Eeems-Org/oxide

Duplex ringbuffer for client connection instead of socket

Open
#436 0 comments 0 reactions 0 assignees View on GitHub
enhancement to-triage
Dominant language
C
Stars
281
Forks
25
PR merge metrics
No merged PRs in 30d

Description

A ringbuffer for requests and a ringbuffer for responses would be interesting. Similar to io_uring. The only issue is that the current protocol has variable sized packets which would not work with the ringbuffer implementations.

If the protocol could support data sizes, perhaps with some other mechanism to transmit the packet body, the headers could be zero copy, but some care would be needed on the consumer end to block until it's done working with the header. Probably not really worth it for how light the headers are.

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are named. Start by locating the client socket connection and current variable-sized packet protocol, then assess how request and response ringbuffers could carry packet bodies and data sizes. Done would require a defined, workable protocol and connection design rather than only an implementation sketch.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.