Slow local TCP transfers on -CURRENT

Kevin Day toasty at dragondata.com
Fri May 1 18:06:08 UTC 2009


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 at 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 at 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: <UP,HOST,DONE,LOCAL>
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: <UP,DONE>
recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
       0         0         0         0      1500         1         0


nfe0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu  
1500
         
options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4>
        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?

-- Kevin



More information about the freebsd-net mailing list