An attacker sends a TCP segment with the ACK flag set to a remote host for the purpose of determining if the host is alive. This is one of several TCP 'ping' types. The RFC 793 expected behavior for a service is to respond with a RST 'reset' packet to any unsolicited ACK segment that is not part of an existing connection. So by sending an ACK segment to a port, an attacker identify that the host is alive by looking for a RST packet. Typically a remote server will respond with a RST regardless of whether a port is open or closed. In either case, the attacker can determine that the host is alive. TCP ACK pings cannot discover the state of a remote port because the behavior is the same in either case. TCP ACK pings are most likely to fail in cases where a stateful firewall is present. The firewall will look up the ACK packet in its state-table and discard the segment because it does not correspond to any active connection. A TCP ACK Ping has the following characteristics:1. Host Discovery: Can be used to discover if a host is alive via RST response packets sent from the host.2. Effective Against: Stateless Firewalls due to a typical lack of rules that reject unsolicited ACK packets.3. Weak Against: Stateful Firewalls due to the ability to reject a packet not part of an existing connection.4. Port State: Unable to determine if a port is open or closed.