Для того, что бы надежно обеспечивать безопасность, firewall должен отслеживать и управлять всеми соединениями, проходящими через него. Для выработки окончательных решений о разрешении того или иного соединения для служб TCP/IP (то есть пропустить, запретить, аутентифицировать или зашифровать данную попытку соединения, сделать запись об этом в журнале), firewall должен уметь получать, хранить, извлекать и манипулировать информацией со всех уровней сетевой модели и из других приложений.
Не достаточно только лишь просматривать отдельные пакеты. Информация о состоянии, извлеченная из состоявшихся ранее соединений и других приложений, является основным фактором при принятии окончательного решения для текущей попытки установления соединения. В зависимости от типа проверяемого пакета, для принятия конечного решения важными могут быть как текущее состояние соединения, которому он принадлежит (полученное из его истории), так и состояние приложения, его использующего.
Таким образом, для обеспечения наивысшего уровня безопасности, firewall должен уметь считывать, анализировать и использовать следующую информацию: