Hello. I've been having some serious network throughput issues recently. Prior to these issues, I was running 7.0-STABLE from a few months back. I recently build a world/kernel from csup(1) on 2008-Jul-25 and started noticing the issues. I'm currently on a RELENG_7 from 2008-Aug-02 and am building another one today.
The server is running samba, dnsmasq, an NFS server, and is the gateway for a couple of freebsd machines. I first noticed the issue when I was unable to play mp3s served over samba. I was getting a throughput of about 3 KBytes/sec over my gigabit switched network. After a few weeks of trying different versions of samba and watching tcpdump/trafshow, I decided to try another test: % ssh gateway cat /dev/zero | dd of=/dev/null load: 0.00 cmd: dd 68286 [runnable] 0.00u 0.00s 0% 844k 3680+0 records in 3680+0 records out 1884160 bytes transferred in 512.856684 secs (3674 bytes/sec) ^C3680+0 records in 3680+0 records out 1884160 bytes transferred in 513.392858 secs (3670 bytes/sec) Killed by signal 2. Again, not even 4 KB/s throughput over ssh. What's weird is that not all network traffic is slow. I'm able to download at almost my full DSL speed (7168 Kbps) and here's the strange bit: NFS is fast! From the same machine as above, I have an NFS mountpoint: % dd if=/nfs/some_large_file of=/dev/null 55980+0 records in 55980+0 records out 28661760 bytes transferred in 0.147159 secs (194767476 bytes/sec) Which is what I would expect for a gigabit network. Even if I perform the same test over ssh: % ssh workstation cat /nfs/some_large_file | dd of=/dev/null 55980+0 records in 55980+0 records out 28661760 bytes transferred in 2.791392 secs (10267909 bytes/sec) This is reasonable considering ssh overhead. The kernel config for the server contains: include GENERIC ident DDB options KDB options KDB_TRACE options DDB options DDB_NUMSYM My internal network is on 172.23.20.x and the DSL modem is connected to the same NIC on 192.168.0.1: # ifconfig nfe0 nfe0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_MTU,TSO4> ether 00:15:f2:17:0c:20 inet 172.23.20.1 netmask 0xffffff00 broadcast 172.23.20.255 inet 192.168.0.3 netmask 0xffffff00 broadcast 192.168.0.255 media: Ethernet autoselect (1000baseTX <full-duplex,flag0,flag1>) status: active # ipfw show 00100 62968 8170100 allow ip from any to any via lo0 00110 0 0 deny ip from any to 127.0.0.0/8 00120 0 0 deny ip from 127.0.0.0/8 to any 00130 25444031 23419621364 divert 8668 ip from any to any via 192.168.0.3 00140 0 0 deny ip from not 172.23.20.0/24 to 172.23.20.0/24 dst-port 137-149,445 00150 20639141 15067620538 allow tcp from any to any established 00160 21 10683 allow ip from any to any frag 00170 79791 4696696 allow tcp from any to any setup 65530 5713367 8864760207 allow ip from any to any 65535 0 0 deny ip from any to any Other than that, I'm not doing anything out of the ordinary. Why is NFS behaving correctly and why are ssh/smbd connections so slow? I've pasted my dmesg output below. I've used this configuration for years and it wasn't until a recent RELENG_7 upgrade that I've had any problems. The box was 99-100% idle during those tests and I don't see an interrupt storm or anything funny like that. Any ideas? -- Rick C. Petty >From /var/run/dmesg.boot: Copyright (c) 1992-2008 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 7.0-STABLE #5: Sat Aug 2 19:43:25 CDT 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/DDB module_register: module sk/miibus already exists! Module sk/miibus failed to register: 17 module_register: module skc/sk already exists! Module skc/sk failed to register: 17 module_register: module pci/skc already exists! Module pci/skc failed to register: 17 module_register: module rl/miibus already exists! Module rl/miibus failed to register: 17 module_register: module cardbus/rl already exists! Module cardbus/rl failed to register: 17 module_register: module pci/rl already exists! Module pci/rl failed to register: 17 Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ (2211.34-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x20f32 Stepping = 2 Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> Features2=0x1<SSE3> AMD Features=0xe2500800<SYSCALL,NX,MMX+,FFXSR,LM,3DNow!+,3DNow!> AMD Features2=0x3<LAHF,CMP> Cores per package: 2 real memory = 1073676288 (1023 MB) avail memory = 1037037568 (988 MB) ACPI APIC Table: <Nvidia AWRDACPI> FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 ioapic0: Changing APIC ID to 2 ioapic0 <Version 1.1> irqs 0-23 on motherboard kbd1 at kbdmux0 ath_hal: 0.9.20.3 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413) acpi0: <Nvidia AWRDACPI> on motherboard acpi0: [ITHREAD] acpi0: Power Button (fixed) acpi0: reservation of 0, a0000 (3) failed acpi0: reservation of 100000, 3fef0000 (3) failed Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pci0: <memory> at device 0.0 (no driver attached) isab0: <PCI-ISA bridge> at device 1.0 on pci0 isa0: <ISA bus> on isab0 pci0: <serial bus, SMBus> at device 1.1 (no driver attached) atapci0: <nVidia nForce CK804 UDMA133 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xf000-0xf00f at device 6.0 on pci0 ata0: <ATA channel 0> on atapci0 ata0: [ITHREAD] ata1: <ATA channel 1> on atapci0 ata1: [ITHREAD] atapci1: <nVidia nForce CK804 SATA300 controller> port 0x9f0-0x9f7,0xbf0-0xbf3,0x970-0x977,0xb70-0xb73,0xd800-0xd80f mem 0xd0002000-0xd0002fff irq 20 at device 7.0 on pci0 atapci1: [ITHREAD] ata2: <ATA channel 0> on atapci1 ata2: [ITHREAD] ata3: <ATA channel 1> on atapci1 ata3: [ITHREAD] atapci2: <nVidia nForce CK804 SATA300 controller> port 0x9e0-0x9e7,0xbe0-0xbe3,0x960-0x967,0xb60-0xb63,0xc400-0xc40f mem 0xd0001000-0xd0001fff irq 21 at device 8.0 on pci0 atapci2: [ITHREAD] ata4: <ATA channel 0> on atapci2 ata4: [ITHREAD] ata5: <ATA channel 1> on atapci2 ata5: [ITHREAD] pcib1: <ACPI PCI-PCI bridge> at device 9.0 on pci0 pci5: <ACPI PCI bus> on pcib1 vgapci0: <VGA-compatible display> mem 0xc0000000-0xc7ffffff irq 16 at device 6.0 on pci5 atapci3: <Promise PDC40718 SATA300 controller> port 0xa000-0xa07f,0xa400-0xa4ff mem 0xc9041000-0xc9041fff,0xc9000000-0xc901ffff irq 17 at device 7.0 on pci5 atapci3: [ITHREAD] atapci3: [ITHREAD] ata6: <ATA channel 0> on atapci3 ata6: [ITHREAD] ata7: <ATA channel 1> on atapci3 ata7: [ITHREAD] ata8: <ATA channel 2> on atapci3 ata8: [ITHREAD] ata9: <ATA channel 3> on atapci3 ata9: [ITHREAD] atapci4: <Promise PDC40718 SATA300 controller> port 0xa800-0xa87f,0xac00-0xacff mem 0xc9040000-0xc9040fff,0xc9020000-0xc903ffff irq 18 at device 8.0 on pci5 atapci4: [ITHREAD] atapci4: [ITHREAD] ata10: <ATA channel 0> on atapci4 ata10: [ITHREAD] ata11: <ATA channel 1> on atapci4 ata11: [ITHREAD] ata12: <ATA channel 2> on atapci4 ata12: [ITHREAD] ata13: <ATA channel 3> on atapci4 ata13: [ITHREAD] nfe0: <NVIDIA nForce4 CK804 MCP9 Networking Adapter> port 0xb000-0xb007 mem 0xd0000000-0xd0000fff irq 22 at device 10.0 on pci0 miibus0: <MII bus> on nfe0 e1000phy0: <Marvell 88E1111 Gigabit PHY> PHY 9 on miibus0 e1000phy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX-FDX, auto nfe0: Ethernet address: 00:15:f2:17:0c:20 nfe0: [FILTER] pcib2: <ACPI PCI-PCI bridge> at device 11.0 on pci0 pci4: <ACPI PCI bus> on pcib2 pcib3: <ACPI PCI-PCI bridge> at device 12.0 on pci0 pci3: <ACPI PCI bus> on pcib3 pcib4: <ACPI PCI-PCI bridge> at device 13.0 on pci0 pci2: <ACPI PCI bus> on pcib4 pcib5: <ACPI PCI-PCI bridge> at device 14.0 on pci0 pci1: <ACPI PCI bus> on pcib5 cpu0: <ACPI CPU> on acpi0 powernow0: <Cool`n'Quiet K8> on cpu0 device_attach: powernow0 attach returned 6 cpu1: <ACPI CPU> on acpi0 powernow1: <Cool`n'Quiet K8> on cpu1 device_attach: powernow1 attach returned 6 acpi_button0: <Power Button> on acpi0 acpi_tz0: <Thermal Zone> on acpi0 pmtimer0 on isa0 orm0: <ISA Option ROM> at iomem 0xc0000-0xccfff pnpid ORM0000 on isa0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] atkbd0: [ITHREAD] ppc0: parallel port not found. sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0: configured irq 4 not in bitmap of probed irqs 0 sio0: port may not be enabled sio0: configured irq 4 not in bitmap of probed irqs 0 sio0: port may not be enabled sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 8250 or not responding sio0: [FILTER] sio1: configured irq 3 not in bitmap of probed irqs 0 sio1: port may not be enabled vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 1.000 msec ipfw2 (+ipv6) initialized, divert loadable, nat loadable, rule-based forwarding disabled, default to deny, logging disabled ad0: 157066MB <Hitachi HDS722516VLAT80 V34OA6MA> at ata0-master UDMA100 ad12: 715404MB <Seagate ST3750330AS SD04> at ata6-master SATA150 ad14: 715404MB <Seagate ST3750330AS SD04> at ata7-master SATA150 ad16: 715404MB <Seagate ST3750330AS SD04> at ata8-master SATA150 ad18: 715404MB <Seagate ST3750330AS SD04> at ata9-master SATA150 ad20: 476940MB <WDC WD5000AAKS-65TMA0 12.01C01> at ata10-master SATA300 ad22: 476940MB <WDC WD5000AAKS-65TMA0 12.01C01> at ata11-master SATA300 ad24: 476940MB <WDC WD5000AAKS-00TMA0 12.01C01> at ata12-master SATA300 ad26: 476940MB <WDC WD5000AAKS-65TMA0 12.01C01> at ata13-master SATA300 SMP: AP CPU #1 Launched! GEOM_LABEL: Label for provider ad0s1g is ufs/cache. Trying to mount root from ufs:/dev/ad0s1a GEOM_LABEL: Label ufs/cache removed. GEOM_LABEL: Label for provider ad0s1g is ufs/cache. GEOM_LABEL: Label ufs/cache removed. nfe0: link state changed to UP Additional messages from dmesg -a: Aug 16 14:02:20 gateway login: ROOT LOGIN (root) ON ttyv3 nfe0: promiscuous mode enabled nfe0: promiscuous mode disabled _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"