7.5. TCP Analysis

Wireshark 2.1

7.5. TCP Analysis

wsug_graphics/ws-tcp-analysis.png

TCP ACKed unseen segment

TCP Dup ACK <frame>#<acknowledgement number>

  • The segment size is zero.
  • The window size is non-zero and hasn’t changed.
  • The next expected sequence number and last-seen acknowledgment number are non-zero (i.e. the connection has been established).
  • SYN, FIN, and RST are not set.

TCP Fast Retransmission

  • This is not a keepalive packet.
  • In the forward direction, the segment size is greater than zero or the SYN or FIN is set.
  • The next expected sequence number is greater than the current sequence number.
  • We have more than two duplicate ACKs in the reverse direction.
  • The current sequence number equals the next expected acknowledgement number.
  • We saw the last acknowledgement less than 20ms ago.

TCP Keep-Alive

TCP Keep-Alive ACK

  • The segment size is zero.
  • The window size is non-zero and hasn’t changed.
  • The current sequence number is the same as the next expected sequence number.
  • The current acknowledgement number is the same as the last-seen acknowledgement number.
  • The most recently seen packet in the reverse direction was a keepalive.
  • The packet is not a SYN, FIN, or RST.

TCP Out-Of-Order

  • This is not a keepalive packet.
  • In the forward direction, the segment length is greater than zero or the SYN or FIN is set.
  • The next expected sequence number is greater than the current sequence number.
  • The next expected sequence number and the next sequence number differ.
  • The last segment arrived within the calculated RTT (3ms by default).

TCP Port numbers reused

TCP Previous segment not captured

TCP Spurious Retransmission

  • In the forward direction, the segment length is greater than zero or the SYN or FIN is set.
  • This is not a keepalive packet.
  • The segment length is greater than zero.
  • Data for this flow has been acknowledged. That is, the last-seen acknowledgement number has been set.
  • The next sequence number is less than or equal to the last-seen acknowledgement number.

TCP Retransmission

  • This is not a keepalive packet.
  • In the forward direction, the segment length is greater than zero or the SYN or FIN is set.
  • The next expected sequence number is greater than the current sequence number.

TCP Window Full

TCP Window Update

  • The segment size is zero.
  • The window size is non-zero and not equal to the last-seen window size.
  • The sequence number is equal to the next expected sequence number.
  • The acknowledgement number is equal to the last-seen acknowledgement number.
  • None of SYN, FIN, or RST are set.

TCP ZeroWindow

TCP ZeroWindowProbe

TCP ZeroWindowProbeAck

  • The segment size is zero.
  • The window size is zero.
  • The sequence number is equal to the next expected sequence number.
  • The acknowledgement number is equal to the last-seen acknowledgement number.
  • The last-seen packet in the reverse direction was a zero window probe.