Kernel modules, on the other hand, can process packets efficiently and with minimum overhead-which is important for performance reasons.
Flow-based routers use the main CPU to process new flows and packets through the switch.
Knowledge-based processors contain embedded databases that store information required to process packets that travel through a network at wireline speeds.
Performance increases are realized for a small number of processors, but fails to scale linearly over larger numbers of processors (or cores) and a processor with, for example, eight cores may not process packets significantly faster than one with two cores.
This allows users to develop designs that are able to process packets at line-rate, a capability generally unafforded by software based approaches.
All computers see all packets pass by, but the Ethernet interface ignores packets that aren't addressed to the local computer or the broadcast address, so the software only has to process packets targeted at the receiving computer.
Multicast can cause unnecessary load on host devices by requiring them to process packets they have not solicited.
Argus processes packets into detailed network flow audit data for operations, performance and security management.