Dup acks auf einem OpenBSD Paketfilter

From: Matthias Teege <matthias-dbq(at)mteege.de>
Date: Tue, 6 Jan 2009 19:03:17 +0100

Moin,

ich habe auf einem älteren OpenBSD DSL Router ein Problem mit DUP
ACKs. Die Übertragungsraten steigen bis zum Maximum von ca. 600 K/s
und fallen dann auf 15 K/s anschließend steigen sie wieder auf ca. 600
K/s. Der Prozess wiederholt sich alle paar Sekunden. Die Transferrate
schwankt ständig zwischen Minimum und Maximum. Im Tcpdump [1] sind
eine Menge DUP Acks zu sehen. Es sieht so aus, als versuche der Router
erfolglos Pakete zu bestätigen. Das Problem kann ich mit Linux-,
Freebsd- und OpenBSD Klienten reproduziert und auch wenn ich direkt vom
Router Dateien lade, tritt es auf. Ein Windowssystem, dass ich probiert
habe, funktioniert problemlos. Die Hardware des Routers ist ausreichend
dimensioniert und der Load geht nicht über 60% idle. Kollisionen oder
Fehler habe ich nicht auf den Interfaces.

Ein Beispieldump lege ich auf den Webserver [1], netstat -s -p tcp hänge
ich an diesen Email.

Da ich momentan keine brauchbare Theorie zu dem Verhalten habe, wäre
ich für ein paar gute Ideen dankbar.

Vielen Dank
Matthias

tcp:
        5882507 packets sent
                4914033 data packets (4568645965 bytes)
                1722 data packets (1739325 bytes) retransmitted
                0 fast retransmitted packets
                604648 ack-only packets (831460 delayed)
                0 URG only packets
                9 window probe packets
                364882 window update packets
                1870 control packets
                0 packets hardware-checksummed
        4618993 packets received
                3204431 acks (for 4567890298 bytes)
                26191 duplicate acks
                0 acks for unsent data
                0 acks for old data
                1298346 packets (1643904321 bytes) received in-sequence
                25454 completely duplicate packets (32283064 bytes)
                1467 old duplicate packets
                0 packets with some duplicate data (0 bytes duplicated)
                106415 out-of-order packets (143898159 bytes)
                0 packets (0 bytes) of data after window
                0 window probes
                569 window update packets
                13 packets received after close
                28 discarded for bad checksums
                0 discarded for bad header offset fields
                0 discarded because packet too short
                0 discarded for missing IPsec protection
                0 discarded due to memory shortage
                4618986 packets hardware-checksummed
                0 bad/missing md5 checksums
                0 good md5 checksums
        193 connection requests
        1821 connection accepts
        1914 connections established (including accepts)
        2042 connections closed (including 94 drops)
        0 connections drained
        1 embryonic connection dropped
        3204478 segments updated rtt (of 2614203 attempts)
        1712 retransmit timeouts
                85 connections dropped by rexmit timeout
        15 persist timeouts
        0 keepalive timeouts
                0 keepalive probes sent
                0 connections dropped by keepalive
        2829147 correct ACK header predictions
        1268079 correct data packet header predictions
        4111 PCB cache misses
        0 ECN connections accepted
                0 ECE packets received
                0 CWR packets received
                0 CE packets received
                0 ECT packets sent
                0 ECE packets sent
                0 CWR packets sent
                        cwr by fastrecovery: 98
                        cwr by timeout: 1712
                        cwr by ecn: 0
        2 bad connection attempts
        1876 SYN cache entries added
                0 hash collisions
                1821 completed
                0 aborted (no space to build PCB)
                54 timed out
                0 dropped due to overflow
                0 dropped due to bucket overflow
                1 dropped due to RST
                0 dropped due to ICMP unreachable
        355 SYN,ACKs retransmitted
        18 duplicate SYNs received for entries already in the cache
        0 SYNs dropped (no route or no space)
        98 SACK recovery episodes
                143 segment rexmits in SACK recovery episodes
                204581 byte rexmits in SACK recovery episodes
        2192 SACK options received
        107564 SACK options sent

[1] http://mteege.de/2009/01/a.dmp

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 06 Jan 2009 - 19:03:47 CET

search this site