excessive TCP duplicate acks?

From: Andrew Gallatin <gallatin_at_cs.duke.edu>
Date: Fri, 26 Jan 2007 11:59:06 -0500 (EST)
When running some benchmarks, I noticed tons of duplicate acks showing
up in systat -tcp (thousands, or tens of thousands per second).
Taking a trace, I see that -current seems to send "lots" of duplicate
acks.  At first I thought this was a driver bug, but I've seen it with
3 different drivers (mxge, nve, xl) and at various network speeds.  It
seems to happen when the -current machine is the "sender" in a
netperf, and seems to happen with both a linux a FreeBSD receiver,
and is easy to reproduce using -current from yesterday (running 
on amd64 if it matters).

>From my very naive tcpdump reading skills, it looks like the FreeBSD
machine sends a full window with a partial payload and a push flag in
the last segment.  It ignores (or does not yet see the receiver's
acks).  It then spews tons of duplicate acks at the reciever until it
notices the acks, and starts sending data again.  This happens over
and over again..

Is this normal, or is there something wrong? 

In the appended tcpdump snippet taken at the receiver, 172.31.193.16
was sending a netperf (netperf -H172.31.193.15 -- -s65535 -S32767) to
172.31.193.15.  I can make a raw dump file available if anybody
is interested.

Thanks,

Drew


11:14:13.524661 IP 172.31.193.16.65344 > 172.31.193.15.32809: S 1455368652:1455368652(0) win 65535 <mss 1460,nop,wscale 0,nop,nop,timestamp 262294 0,sackOK,eol>
11:14:13.524668 IP 172.31.193.15.32809 > 172.31.193.16.65344: S 3829892109:3829892109(0) ack 1455368653 win 5792 <mss 1460,sackOK,timestamp 1314603 262294,nop,wscale 9>
11:14:13.524727 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.525051 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 1:1449(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.525061 IP 172.31.193.15.32809 > 172.31.193.16.65344: . ack 1449 win 17 <nop,nop,timestamp 1314603 262294>
11:14:13.525174 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 1449:2897(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>


<..many packets omitted..>

11:14:13.530344 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 62265:63713(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530467 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 63713:65161(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530474 IP 172.31.193.15.32809 > 172.31.193.16.65344: . ack 65161 win 94 <nop,nop,timestamp 1314604 262294>
11:14:13.530504 IP 172.31.193.16.65344 > 172.31.193.15.32809: P 65161:65536(375) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530511 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530516 IP 172.31.193.15.32809 > 172.31.193.16.65344: . ack 65536 win 94 <nop,nop,timestamp 1314604 262294>
11:14:13.530518 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530525 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530533 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530540 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530547 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530554 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530561 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530569 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530576 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530584 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530591 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530597 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530604 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530612 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530619 IP 172.31.193.16.65344 > 172.31.193.15.32809: . ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530752 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 65536:66865(1329) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.530760 IP 172.31.193.15.32809 > 172.31.193.16.65344: . ack 66865 win 94 <nop,nop,timestamp 1314604 262294>
11:14:13.530884 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 66865:68313(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
11:14:13.531007 IP 172.31.193.16.65344 > 172.31.193.15.32809: . 68313:69761(1448) ack 1 win 65535 <nop,nop,timestamp 262294 1314603>
Received on Fri Jan 26 2007 - 15:59:12 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:05 UTC