In traditional Network Packet Brokers, filtering is built on sequential rules. Each rule is evaluated in turn, and each could impact the others. At a small scale, this works. But as environments grow, this introduces uncertainty during new requests, updates and tool changes, leading to rule conflicts.
Where traditional filtering starts to break
Consider a realistic environment where traffic from a trunk port includes VLANs 100-200, a mix of TCP, UDP, SCTP, and other protocols. Multiple tools depend on overlapping parts of that traffic.
To support this, engineers typically build a rule set that looks something like this:
- Match VLAN ranges combined with TCP for the IDS
- Drop specific IPs, ports
- Isolate some protocols
- Define additional rules for specific ports like 80 and 443
On paper, this is logical. In reality, these rules overlap heavily. Multiple tools compete for similar traffic. At that point, filtering stops being about defining intent and becomes an exercise in managing side effects.
Engineers are forced to think in terms of:
- Rule priority: which rule is evaluated first
- Duplication: whether the same packet is unintentionally sent multiple times
- Exclusion: whether a rule prevents traffic from reaching another tool
Even small changes can have unpredictable consequences. Adding a new condition for one tool can silently affect another. The only safe way to proceed is to trace through the entire rule chain, often line by line.
The scaling problem no one plans for
The real issue becomes visible when the environment needs to evolve.
Imagine a new requirement: a tool needs access to traffic from a specific IP address. In a traditional setup, this is not just about adding a new rule. It requires revisiting the entire rule set.
Engineers must:
- Analyze which existing rules already match this new specific IP
- Adjust rule order to ensure correct forwarding
- Prevent duplication across multiple tools
- Validate that no traffic is accidentally dropped
This is where operational friction appears. Changes take longer. Confidence drops. Teams become cautious about modifying configurations, even when necessary.
Configure and forget. A shift from rule management to intent-based filtering.
Profitap XX and X2 series Network Packet Brokers (NPBs) address this problem by removing the root cause: rule dependency.
Instead of building a sequential chain of rules, the broker applies rules independently. Each tool receives traffic as specified in the rules. Thus, traffic forwarding can be done without relying on shared logic or rule ordering.
Instead of sequential rule dependency:
- Rules are applied independently
- Traffic selection is deterministic and non-conflicting
- Overlaps are handled implicitly without manual resolution
- All rules run at once at line rate
There is no dependency between them, and there is no need to consider how one affects the other. Overlap still exists, but it is intentional. If multiple tools need the same traffic, they receive it by design, not by coincidence.
What changes for the engineer
When a new tool is introduced, the process no longer involves re-evaluating the entire system. Instead, engineers define a new rule and apply it. Existing configurations remain untouched.
Why this matters beyond the network team
While the technical improvement is clear, the impact reaches further.
For security teams, it means faster deployment of new capabilities. When a new detection or analysis tool is needed, it can be integrated immediately without redesigning the infrastructure.
For operations, it reduces the risk of outages or blind spots caused by configuration errors. Visibility remains consistent, even as the environment evolves.
For decision makers, it translates into a more resilient and adaptable monitoring architecture. Investments in tools are no longer limited by the complexity of the underlying packet broker.
A comparison by example
The following is an example of a traditional conflicting rules and how the Profitap approach solves the conflict.
Example of traditional conflicting rules
|
Match VLAN 100–200 + TCP → Tool A Match VLAN 100–200 + TCP + Src IP 192.168.1.1 → Tool B Match TCP + Source IP 192.168.1.1 → Tool C Match VLAN 300–400 → Tool B Match VLAN 160 + Source IP 192.168.1.1 → Tool B Match VLAN 100–200 + TCP + Src IP 192.168.1.1 → Tool A Match TCP + dst port 80 → Tool C Match TCP + dst port 443 → Tool B Match VLAN 100–200 + UDP + dst port 443 → Tool A, Tool B |
Action Accept Action Accept Action Accept Action Accept Action Accept Action Drop Action Accept Action Accept Action Accept |
Traditional outcome: Conflicting
Result: Most of the rules overlap, requiring extensive rule planning in advance. Rule order determines whether traffic is sent to A, B, or C. Adding Tool D requires rewriting and reordering the rules, increasing the risk of duplication, where the same packet may be sent multiple times unintentionally.
Engineers need to revisit multiple rules, adjust ordering, and test for side effects. It is not uncommon for this to take hours, sometimes longer, especially in production environments where mistakes are costly.
Profitap outcome: Non-Conflicting
All tools are receiving the intended traffic; there is no need to reorganize rules. Result:
Tool A
- VLAN 100–200 + TCP (all ports) + All src IPs except 192.168.1.1
- VLAN 100-200 + UDP dst 443
Tool B
- VLAN 100–200 + TCP (all ports) + src IPs 192.168.1.1
- VLAN 300–400
- TCP dst port 443
- VLAN 100-200 + UDP dst 443
Tool C
- TCP + dst port 80
- TCP + src IP 192.168.1.1
Priority classes
What happens when multiple rules apply to the same packet -for example, when they share the same input and output ports but differ in criteria and actions. In such scenarios, one rule may permit the packet while another may block it, and some rules may also have differing match conditions. The key question then becomes: which rule takes precedence?
The Profitap Network Packet Brokers has priority classes (up to 6).
If a packet matches multiple rules with identical source and destination physical ports on the broker, the rule with the highest priority class takes precedence. In addition, when multiple matching rules share the same priority class, a drop action overrides the allow action. In summary, priority is evaluated only when a packet matches multiple rules with the same input and output ports.
Conclusion
The non-conflicting rules are not just a cleaner configuration; they are a better configuration. It is a system that engineers can trust to behave exactly as intended, even as requirements change. This is achieved because there is no dependency between rules and no priority conflicts. However, priority can be assigned if several rules have the same input and output ports.
