Repository navigation
Count ICMP-needed drops from L3Router #406
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -2187,11 +2187,17 @@ control Ingress( | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| if (meta.dropped) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| // Handle dropped packets | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ig_dprsr_md.drop_ctl = 1; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| // Drops recorded in the L3 router need to be counted, but | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| // we do not convert them to _actual_ packet drops in the | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| // deparser. We forward such packets to the host to generate an | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| // ICMP response in our stead. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| if (meta.drop_reason != 0) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| drop_port_ctr.count(ig_intr_md.ingress_port); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| drop_reason_ctr.count(meta.drop_reason); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| if (meta.dropped) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ig_dprsr_md.drop_ctl = 1; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+2197
to
+2200
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I believe these are all the cases this affects. There's some duplication for the multicast blocks. Is it worth adding checks for the TTL, ARP, and NDP cases? Lines 1141 to 1143 in 9ffd5a1
Lines 1189 to 1191 in 9ffd5a1
Lines 1247 to 1249 in 9ffd5a1
Lines 1252 to 1254 in 9ffd5a1
Lines 1329 to 1331 in 9ffd5a1
Lines 1334 to 1336 in 9ffd5a1
Lines 1386 to 1388 in 9ffd5a1
Lines 1391 to 1393 in 9ffd5a1
Lines 1465 to 1467 in 9ffd5a1
Lines 1470 to 1472 in 9ffd5a1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| } else if (!meta.is_mcast) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| egress_ctr.count(ig_tm_md.ucast_egress_port); | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| if (ig_tm_md.ucast_egress_port != USER_SPACE_SERVICE_PORT) { | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Noting that this is somewhat similar to
check_counter_incrementedin https://github.com/oxidecomputer/dendrite/pull/362/changes#diff-892387f02bc3907dbe15941e9c76aecc0b8ca4b85d61f6a6130686aaba5b77caWhich was moved from a helper that already exists in main. Could we easily achieve the same end with only one of these?
dendrite/dpd-client/tests/integration_tests/mcast.rs
Lines 74 to 103 in 9ffd5a1