Patent ID: 8842548

Claim:
A network packet forwarding device having superset packet forwarding for automatic filter overlap processing, comprising: one or more input ports configured to receive packets from one or more source devices; a plurality of output ports configured to send packets to two or more destination devices; packet forwarding circuitry coupled between the input ports and the output ports and configured to forward packets from the input ports to the output ports; at least one ingress filter engine coupled to the packet forwarding circuitry and configured to use ingress filter rules to control at least in part how packets are forwarded from the input ports to the output ports, the ingress filter engine being configured to provide a single forwarding action per packet; at least one egress filter engine coupled to the packet forwarding circuitry and configured to use egress filter rules to control at least in part how packets are sent by the output ports to destination devices; a filter interface configured to allow a user to define a plurality of filters representing how packets are desired to be forwarded from input ports to output ports; and a dynamic filter processor configured to analyze the user-defined filters, to automatically identify filters having different forwarding actions for packets from a single input port as overlapping filters, to automatically generate the ingress filter rules so that packets matching ingress filter rules for an overlapping filter are forwarded to all output ports associated with any other overlapping filter, to automatically generate the egress filter rules, and to automatically apply the ingress and egress filter rules to the ingress and egress filter engines so that the ingress and egress filter engines are configured to cause packets from the single input port to be forwarded according to the different forwarding actions provided by the overlapping filters; wherein the ingress filter rules generated for overlapping filters forward packets to a superset of all output ports associated with the overlapping filters and wherein egress filter rules generated for overlapping filters allow only packets that match the overlapping filters to be sent by the output ports to the destination devices.