From owner-freebsd-net@FreeBSD.ORG Sat May 2 12:50:03 2009 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 876A61065675 for ; Sat, 2 May 2009 12:50:03 +0000 (UTC) (envelope-from lstewart@freebsd.org) Received: from lauren.room52.net (lauren.room52.net [210.50.193.198]) by mx1.freebsd.org (Postfix) with ESMTP id 00F178FC12 for ; Sat, 2 May 2009 12:50:02 +0000 (UTC) (envelope-from lstewart@freebsd.org) Received: from lstewart.caia.swin.edu.au (lstewart.caia.swin.edu.au [136.186.229.95]) (authenticated bits=0) by lauren.room52.net (8.14.3/8.14.3) with ESMTP id n42CG9BS043617 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 2 May 2009 22:16:10 +1000 (EST) (envelope-from lstewart@freebsd.org) Message-ID: <49FC3984.8050609@freebsd.org> Date: Sat, 02 May 2009 22:16:04 +1000 From: Lawrence Stewart User-Agent: Thunderbird 2.0.0.21 (X11/20090412) MIME-Version: 1.0 To: Kevin Day References: <00C19FCC-837A-44B8-A0C9-C56E3D02F8EF@dragondata.com> In-Reply-To: <00C19FCC-837A-44B8-A0C9-C56E3D02F8EF@dragondata.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,SPF_SOFTFAIL autolearn=disabled version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on lauren.room52.net Cc: freebsd-net@freebsd.org Subject: Re: Slow local TCP transfers on -CURRENT X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 May 2009 12:50:03 -0000 Kevin Day wrote: > > I've been seeing this for a few months now on -CURRENT. TCP transfers to > local IP addresses (but not 127.0.0.1) are incredibly slow. > > Transfer from localhost: > > # scp "root@127.0.0.1:/boot/kernel/kernel" . > kernel > 100% 11MB 11.1MB/s 00:00 > > Appropriately fast. > > > Transfer from an IP on a local interface: > > # scp "root@216.14.96.4:/boot/kernel/kernel" . > kernel > 0% 16KB 13.0KB/s 14:37 ETA > > > The routes seem normal: > > > # route get 127.0.0.1 > route to: localhost > destination: localhost > interface: lo0 > flags: > recvpipe sendpipe ssthresh rtt,msec mtu weight expire > 0 0 0 0 16384 1 0 > > # route -n get 216.14.96.4 > route to: 216.14.96.4 > destination: 216.14.96.0 > mask: 255.255.255.128 > interface: nfe0 > flags: > recvpipe sendpipe ssthresh rtt,msec mtu weight expire > 0 0 0 0 1500 1 0 > > > nfe0: flags=8843 metric 0 mtu 1500 > options=19b > ether 00:30:48:c6:dd:9c > inet 216.14.96.4 netmask 0xffffff80 broadcast 216.14.96.127 > > Takes 10-60 minutes to copy, stalling frequently during the transfer. > It's not limited to just scp either, all TCP transfers seem to stall > this way. > > > > I don't believe I'm doing anything unusual, has anyone seen anything > like this? Known fallout from the ARPv2 work I believe. As a workaround until it gets fixed: route add -host (if-ip) -iface lo0 (note I haven't tested this myself) (see the Jan 2009 freebsd-net@ thread "Bacula: VERY SLOW on SAME host" for some details). Cheers, Lawrence