A method and system are provided for implementing a firewall architecture
in a network device. The firewall architecture includes a plurality of
network layers, a first firewall engine, and one or more callout modules.
The layers send packets and packet information to the first firewall
engine, maintain and pass packet context to subsequent layers, and
process the packets. The first firewall engine compares the packet
information to one or more installed filters and returns an action to the
layers indicating how to treat the packet. The callouts provide
additional functionality such as intrusion detection, logging, and
parental control features.