oxidecomputer / oxidecomputer/ingot

Want better integration of Internet checksums

Open
#6 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
13
Forks
2
PR merge metrics
No merged PRs in 30d

Description

OPTE currently has a lot of manual handling of Internet checksums for the types we expose here. Some things we maybe want to generate code for:

  • Computing and storing Internet checksum values for header bytes correctly.
  • Capture the notions of pseudoheaders, used between layers in a packet.
  • Tracking whether checksums include the body of a packet (e.g., IPv4 (header-only) vs. TCP/UDP), and including this data (split over multipel buffers?).
  • Computing Internet checksum over an arbitrary buffer. We can maybe pull htis in from OPTE.
  • Possible checksum validation.

These mechanisms should be optional, particularly when processing packets expecting offload of these capabilities.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by surveying the existing manual checksum handling in OPTE and the packet types exposed by ingot. Clarify which checksum, pseudoheader, body-inclusion, buffering, and validation capabilities belong in scope, including optional offload behavior. Done means the agreed mechanisms are implemented with coverage for the supported cases.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.