-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Monitor Aggregation for connections does not work with host firewall #12561
Copy link
Copy link
Closed
Labels
area/datapathImpacts bpf/ or low-level forwarding details, including map management and monitor messages.Impacts bpf/ or low-level forwarding details, including map management and monitor messages.area/host-firewallImpacts the host firewall or the host endpoint.Impacts the host firewall or the host endpoint.area/monitorImpacts monitoring, access logging, flow logging, visibility of datapath traffic.Impacts monitoring, access logging, flow logging, visibility of datapath traffic.good-first-issueGood starting point for new developers, which requires minimal understanding of Cilium.Good starting point for new developers, which requires minimal understanding of Cilium.
Metadata
Metadata
Assignees
Labels
area/datapathImpacts bpf/ or low-level forwarding details, including map management and monitor messages.Impacts bpf/ or low-level forwarding details, including map management and monitor messages.area/host-firewallImpacts the host firewall or the host endpoint.Impacts the host firewall or the host endpoint.area/monitorImpacts monitoring, access logging, flow logging, visibility of datapath traffic.Impacts monitoring, access logging, flow logging, visibility of datapath traffic.good-first-issueGood starting point for new developers, which requires minimal understanding of Cilium.Good starting point for new developers, which requires minimal understanding of Cilium.
The host firewall does not respect the
monitorparameter to thect_lookup[46]()functions, it simply gathers it and discards, for example:cilium/bpf/lib/host_firewall.h
Line 268 in f55ec90
cilium/bpf/lib/host_firewall.h
Lines 300 to 301 in f55ec90
This means that even with
monitorAggregationLevel=medium, aggregation of monitor notifications based on connections does not occur correctly for packets from the host towards the networks, meaning that notifications are generated once per packet rather than once every 5s per connection.The
monitorargument should be handled similarly to how it is used inbpf/bpf_lxc.cin thebpf_host.c.