oxidecomputer / oxidecomputer/opte

Less-straightforward `Deny` decisions don't bump layers' `out_`/`in_deny` stats

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

Nobody has claimed this yet.

Dominant language
Rust
Stars
77
Forks
11
Avg merge
9d 20h
Merged PRs (30d)
8

Description

https://github.com/oxidecomputer/opte/blob/d777d6b0b241cd1806e60b92110587996b7d5ea2/lib/opte/src/engine/layer.rs#L1235-L1240

A few lines above, we bump the aforementioned kstat in response to an explicit Action::Deny. We should generally be doing this regardless of what path was taken to decide upon a packet drop, particularly since we only see hits on any rule with a more complex action like the overlay layer has.

It would be better still to get #744 revived even if I don't yet have the time to plumb it into omicron.

Contributor guide

Open the contributing guide

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 in lib/opte/src/engine/layer.rs at lines 1235-1240, then trace the packet-drop decision paths beyond an explicit Action::Deny. Check how the overlay layer's complex actions currently affect hit and drop statistics, and verify that every decision resulting in a drop updates the layers' out_ and in_deny kstats.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
networking, observability
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.