Internet speeds are SLOW
-
Hello all! What a cool product. My Netgear must have been hit by lightning and died so I took out this old P4/1GB/40GB Dell Dimension 4700 found an old NIC in a drawer and setup pfSense (something I had been wanting to learn to use anyhow).
One of my NICs is the internal Intel NIC and the other is an RTL8129 chipset. The Internet performance is dismal - less than 3MB Down but the up is good 10MB. I'm on Comcast 30MB connection. With my desktop plugged right into the modem I get less than 20 MB so there may be some Comcast issues but there is definatly something wrong with my home made gateway here.
I know that Intel NICs are recommended but can they really make this big a difference? I swapped WAN and LAN NICs but I get the same results. I'm about to take out that old trusty Linksys WRT54G tomorrow.
Any ideas? I would much rather get this box working - but I really don't want to buy a NIC if I can help it.
-
How are you testing your internet speeds?
-
Check for an interface mismatch. If your modem is set at 100Mb FD, rather than auto, then pfSense will fail to auto-negatiate a speed and fall back to HD. You will see a lot of errors on the interface in Diagnostics: Interfaces: if that is the case.
Could also be a cable fault.Steve
-
I am using http://www.speedtest.net/ and http://myspeed.visualware.com/index.php
Is there another site I should use?
Thank you, stephenw10. Can you tell me how to check for the mismatch? I don't see interfaces under diagnostics.
I replaced one of the cables. I same results.
-
WAN (DHCP): 98.249.234.152 100baseTX <full-duplex>LAN 192.168.0.1 100baseTX <full-duplex>Status: Interfaces
WAN interface (rl0)
Status up
DHCP up
MAC address 00:80:ad:b6:89:fe
IP address 98.249.234.152
Subnet mask 255.255.248.0
Gateway 98.249.232.1
ISP DNS servers 127.0.0.1
75.75.75.75
75.75.76.76
216.146.35.35
216.146.36.36
Media 100baseTX <full-duplex>In/out packets 4909835/6531611 (1.03 GB/4.96 GB)
In/out packets (pass) 4460194/6531611 (1019.78 MB/4.96 GB)
In/out packets (block) 449641/0 (33.31 MB/0 bytes)
In/out errors 0/0
Collisions 0
LAN interface (fxp0)
Status up
MAC address 00:13:20:6b:78:15
IP address 192.168.0.1
Subnet mask 255.255.255.0
Media 100baseTX <full-duplex>In/out packets 6558625/4468742 (4.96 GB/1.00 GB)
In/out packets (pass) 6534033/4468742 (4.96 GB/1.00 GB)
In/out packets (block) 24592/0 (1.77 MB/0 bytes)
In/out errors 0/0
Collisions 0Using dial-on-demand will bring the connection up again if any packet triggers it. To substantiate this point: disconnecting manually will not prevent dial-on-demand from making connections to the outside! Don't use dial-on-demand if you want to make sure that the line is kept disconnected.</full-duplex></full-duplex></full-duplex></full-duplex>
-
-
Ooops, yes Status: Diagnostics:. Anyway no errors there and I assume your NICs are still set to auto-negotiate (the default setting).
In that case I would look at an MTU problem. Try setting the WAN MTU lower.
Also you can test the download speed directly to the pfSense box by downloading a file from a known good source:
fetch -o /dev/null http://speedtest.wdc01.softlayer.com/downloads/test.zip
or 100MB test file
fetch -o /dev/null http://speedtest.wdc01.softlayer.com/downloads/test100.zip
Steve
-
I thought that I should report that I just tried IPFire on near identical hardware (Same NIC types) and the other system had 1GB ram (I just realized this one has 512MB). The results are the same. I think I am going to throw the Linksys WRT54G a it just to test and report back.
I ran the command "fetch -o /dev/null http://speedtest.wdc01.softlayer.com/downloads/test.zip" at
Diagnostics: Execute command > Execute Shell commandIt completed after a couple of minutes but didn't give me any output as to speed. Should I have done that in the PHP Execute are instead?
Oh, and Steve, thanks for your help. You have been great. I would have abandoned this altogether had you not provided some suggestions. I would really like to get it working. I'll try the command in the PHP Execute box before installing the Linksys.
-
I plugged into a 10/100 switch instead of my 10/100/100 and got the above result.
Still not the 20Mbps I get with my computer plugged right into the modem, but better.
-
You have to run the fetch command at the CLI to see the output. Sorry I should have said that.
So where is the switch?
Steve
-
My Computer connected directly to the LAN side of the pfSense box. (FYI I typically try these tests three times to make sure they are consistent. I post if they are in the same range.
My computer has Gigabit Ethernet so I think that either the Realtek NIC or pfSense has trouble negotiating with Gigabit ports.
Steve, how can I get to the Command LIne Interface (CLI)? The live terminal isn't responding to keyboard input - only to the keyboard or mouse being connected or disconnected as in…
usm0: <logitech 0="" 2="" usb-ps="" trackball,="" class="" blah="" on="" usbus0<br="">usm0: 3 buttons and [XYZ] coordinates ID=0
Those are the last two lines with the lines above that related to the USB Keyboard. How do I enter the command?</logitech>
-
That theory is out. Again connected to the 10/100
(the cables are 7 ft. to answer where is the switch) The switch is mounted to the wall behind the desk.
Oh, and the WAN port on my old Lynksys seems defunct so I can't get a test on that.
-
fetch -o /dev/null http://speedtest.wdc01.softlayer.com/downloads/test.zip
Results: 100% of 11MB 153 kBpsI found a couple of other network cards. Linksys LNE100TX v5.1 & Netwok Everywhere NC100 v2.1 if you think they would do the trick.
-
Okay, I found another WRT54GL with dd-wrt and I connected it.
The first test was 25+ down and 5+ up and the above was likely due to Comcast caching. I switched to the Naples, FL server and got:
but it still could be because of cached data. Much better results though.
I'm leaving the Linksys device for now until I can get some more suggestions. Now that I can browse leisurely from my laptop I will look through some posts here and see what kind of hardware people are getting good results with and then see if I have any of that laying around here.
Thank you, Steve. You have been an huge help.
-Brian
-
Hmm, no menu on the console eh? Which install type are you running? If you selected embedded kernel or you're using a NanoBSD image then the console is switched to the serial port, which is more common on an embedded appliance.
However you can still get to the console menu by connecting via SSH. Once at the menu slect option 8 for the command line.When I said where is the switch I meant where in the network is it. Since you say your client machine is connected directly to the pfSense LAN port I assume the switch is between the WAN port and the cable modem? Any reason you have switch there at all?
Steve
-
Sorry Steve!
I was testing many different connections. Typically I have this setup…
Modem > Router/Firewall > Gigabit Switch > My Desktop PC
> Gigabit Switch on the other side of the house > Entertainment Center PC
> TV
> DirecTV HD DVR
> Two printers
> 10/100 Switch
> Linux server
> 4 PC workbenchI was doing tests of pfSense with my PC attached to:
The LAN port of the pfSense machine directly
The 10/100 switch in between the LAN port of pfSense and my PC
The Gigabit switch n between the LAN port of pfSense and my PCI actually confirmed that the Gigabit ports were getting 2 to 3 Mbbs down while the 10/100 was getting about 10 Mbps down. That is the LAN port of the pfSense machine attached to the various ports. Gigabit is out but probably due to the age of the NICs I am assuming.
All in all the Linksys router wins but I am eager to dive back in and test other hardware. I have a few computers that are newer that might be up to the challenge, but I might wait until I can get my hands on better NIC cards.
-
What does dmesg show? After boot, go to Diag>Command and run dmesg. Paste the output here.
I suspect you have a NIC sharing an IRQ with some other component of the system, sometimes that'll cause significant performance degradation.
-
fetch -o /dev/null http://speedtest.wdc01.softlayer.com/downloads/test.zip
Results: 100% of 11MB 153 kBpsSorry I totally overlooked this result above. How was that achieved? It seems very slow. Implies the slow part of the connection is the WAN interface. I would try swapping WAN and LAN and re-running that test.
Steve
-
Steve, thanks. I rebooted and selected the option on the box itself to get the console and ran command right from the console. I will swap interfaces later and give the result again, but swapping the WAN and LAN was one of the very first things I did to no effect so I don't have much hope in the result being much different.
I have the machine disconnected from the network now. The family wants the Internet up and working for a while without interruption. Here is the report from only a machine connected to the LAN side.
$ dmesg
Copyright 1992-2010 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 8.1-RELEASE-p13 #0: Fri Apr 12 10:54:59 EDT 2013
root@snapshots-8_1-amd64.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.8 amd64
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) 4 CPU 2.80GHz (2793.02-MHz K8-class CPU)
Origin = "GenuineIntel" Id = 0xf41 Family = f Model = 4 Stepping = 1
Features=0xbfebfbff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe>Features2=0x641d <sse3,dtes64,mon,ds_cpl,cnxt-id,cx16,xtpr>AMD Features=0x20100800 <syscall,nx,lm>TSC: P-state invariant
real memory = 536870912 (512 MB)
avail memory = 484552704 (462 MB)
ACPI APIC Table: <dell 4700 ="">FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 1 core(s) x 2 HTT threads
cpu0 (BSP): APIC ID: 0
cpu1 (AP/HT): APIC ID: 1
ioapic0: Changing APIC ID to 8
ioapic0 <version 2.0="">irqs 0-23 on motherboard
lapic0: Forcing LINT1 to edge trigger
wlan: mac acl policy registered
ipw_monitor: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
ipw_monitor: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
module_register_init: MOD_LOAD (ipw_monitor_fw, 0xffffffff804732e0, 0) error 1
wpi: You need to read the LICENSE file in /usr/share/doc/legal/intel_wpi/.
wpi: If you agree with the license, set legal.intel_wpi.license_ack=1 in /boot/loader.conf.
module_register_init: MOD_LOAD (wpi_fw, 0xffffffff80656da0, 0) error 1
ipw_bss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
ipw_bss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
module_register_init: MOD_LOAD (ipw_bss_fw, 0xffffffff804731a0, 0) error 1
ipw_ibss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/.
ipw_ibss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf.
module_register_init: MOD_LOAD (ipw_ibss_fw, 0xffffffff80473240, 0) error 1
kbd1 at kbdmux0
cryptosoft0: <software crypto="">on motherboard
padlock0: No ACE support.
acpi0: <dell 4700 ="">on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, f00000 (3) failed
acpi0: reservation of 1000000, 1e688c00 (3) failed
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
cpu0: <acpi cpu="">on acpi0
cpu1: <acpi cpu="">on acpi0
acpi_hpet0: <high precision="" event="" timer="">iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 900
acpi_button0: <power button="">on acpi0
acpi_button0: enable wake failed
pcib0: <acpi host-pci="" bridge="">port 0xcf8-0xcff on acpi0
pci0: <acpi pci="" bus="">on pcib0
pcib1: <acpi pci-pci="" bridge="">irq 16 at device 1.0 on pci0
pci1: <acpi pci="" bus="">on pcib1
vgapci0: <vga-compatible display="">port 0xe898-0xe89f mem 0xdff00000-0xdff7ffff,0xc0000000-0xcfffffff,0xdfec0000-0xdfefffff irq 16 at device 2.0 on pci0
agp0: <intel 82915g="" (915g="" gmch)="" svga="" controller="">on vgapci0
agp0: detected 7932k stolen memory
agp0: aperture size is 256M
vgapci1: <vga-compatible display="">mem 0xdff80000-0xdfffffff at device 2.1 on pci0
pcib2: <acpi pci-pci="" bridge="">irq 16 at device 28.0 on pci0
pci2: <acpi pci="" bus="">on pcib2
uhci0: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-a="">port 0xff80-0xff9f irq 21 at device 29.0 on pci0
uhci0: [ITHREAD]
usbus0: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-a="">on uhci0
uhci1: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-b="">port 0xff60-0xff7f irq 22 at device 29.1 on pci0
uhci1: [ITHREAD]
usbus1: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-b="">on uhci1
uhci2: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-c="">port 0xff40-0xff5f irq 18 at device 29.2 on pci0
uhci2: [ITHREAD]
usbus2: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-c="">on uhci2
uhci3: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-d="">port 0xff20-0xff3f irq 23 at device 29.3 on pci0
uhci3: [ITHREAD]
usbus3: <intel 82801fb="" fr="" fw="" frw="" (ich6)="" usb="" controller="" usb-d="">on uhci3
ehci0: <intel 82801fb="" (ich6)="" usb="" 2.0="" controller="">mem 0xffa80800-0xffa80bff irq 21 at device 29.7 on pci0
ehci0: [ITHREAD]
usbus4: EHCI version 1.0
usbus4: <intel 82801fb="" (ich6)="" usb="" 2.0="" controller="">on ehci0
pcib3: <acpi pci-pci="" bridge="">at device 30.0 on pci0
pci3: <acpi pci="" bus="">on pcib3
rl0: <realtek 10="" 8129="" 100basetx="">port 0xdc80-0xdcff mem 0xdfbfef80-0xdfbfefff irq 17 at device 1.0 on pci3
miibus0: <mii bus="">on rl0
rlphy0: <realtek internal="" media="" interface="">PHY 1 on miibus0
rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl0: [ITHREAD]
fxp0: <intel 82562ez="" (ich6)="">port 0xdc40-0xdc7f mem 0xdfbff000-0xdfbfffff irq 20 at device 8.0 on pci3
miibus1: <mii bus="">on fxp0
inphy0: <i82562et 10="" 100="" media="" interface="">PHY 1 on miibus1
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp0: [ITHREAD]
pci0: <multimedia, audio="">at device 30.2 (no driver attached)
isab0: <pci-isa bridge="">at device 31.0 on pci0
isa0: <isa bus="">on isab0
atapci0: <intel ich6="" udma100="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xffa0-0xffaf irq 16 at device 31.1 on pci0
ata0: <ata 0="" channel="">on atapci0
ata0: [ITHREAD]
ata1: <ata 1="" channel="">on atapci0
ata1: [ITHREAD]
atapci1: <intel ich6="" sata150="" controller="">port 0xfe00-0xfe07,0xfe10-0xfe13,0xfe20-0xfe27,0xfe30-0xfe33,0xfea0-0xfeaf irq 20 at device 31.2 on pci0
atapci1: [ITHREAD]
ata2: <ata 0="" channel="">on atapci1
ata2: [ITHREAD]
ata3: <ata 1="" channel="">on atapci1
ata3: [ITHREAD]
pci0: <serial bus,="" smbus="">at device 31.3 (no driver attached)
atrtc0: <at realtime="" clock="">port 0x70-0x7f irq 8 on acpi0
ppc0: <parallel port="">port 0x378-0x37f,0x778-0x77f irq 7 on acpi0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes threshold
ppc0: [ITHREAD]
ppbus0: <parallel port="" bus="">on ppc0
plip0: <plip network="" interface="">on ppbus0
plip0: [ITHREAD]
lpt0: <printer>on ppbus0
lpt0: [ITHREAD]
lpt0: Interrupt-driven port
ppi0: <parallel i="" o="">on ppbus0
uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
uart0: [FILTER]
orm0: <isa option="" roms="">at iomem 0xc0000-0xca7ff,0xca800-0xcbfff on isa0
sc0: <system console="">at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <generic isa="" vga="">at port 0x3c0-0x3df iomem 0xa0000-0xbffff 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]
p4tcc0: <cpu frequency="" thermal="" control="">on cpu0
p4tcc1: <cpu frequency="" thermal="" control="">on cpu1
Timecounters tick every 1.000 msec
IPsec: Initialized Security Association Processing.
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 12Mbps Full Speed USB v1.0
usbus4: 480Mbps High Speed USB v2.0
acd0: CDROM <lite-on cd-rom="" ltn-489s="" 8ds2="">at ata0-master UDMA33
ad4: 38146MB <hitachi hds728040pla320="" pf1oa63a="">at ata2-master UDMA100 SATA
ugen0.1: <intel>at usbus0
uhub0: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus0
ugen1.1: <intel>at usbus1
uhub1: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus1
ugen2.1: <intel>at usbus2
uhub2: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus2
ugen3.1: <intel>at usbus3
uhub3: <intel 1="" 9="" uhci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus3
ugen4.1: <intel>at usbus4
uhub4: <intel 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr="">on usbus4
lapic1: Forcing LINT1 to edge trigger
SMP: AP CPU #1 Launched!
Root mount waiting for: usbus4 usbus3 usbus2 usbus1 usbus0
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub3: 2 ports with 2 removable, self powered
Root mount waiting for: usbus4
Root mount waiting for: usbus4
uhub4: 8 ports with 8 removable, self powered
Trying to mount root from ufs:/dev/ad4s1a
ugen0.2: <vendor 0x0557="">at usbus0
uhub5: <vendor 2="" 9="" 0x0557="" product="" 0x7000,="" class="" 0,="" rev="" 1.10="" 1.00,="" addr="">on usbus0
uhub5: 4 ports with 4 removable, self powered
ugen0.3: <dell>at usbus0
ukbd0: <dell 0="" 3="" dell="" usb="" keyboard,="" class="" 0,="" rev="" 1.10="" 3.01,="" addr="">on usbus0
kbd2 at ukbd0
ugen0.4: <logitech>at usbus0
ums0: <logitech 0="" 2="" 4="" usb-ps="" trackball,="" class="" 0,="" rev="" 1.00="" 2.00,="" addr="">on usbus0
ums0: 3 buttons and [XYZ] coordinates ID=0
pflog0: promiscuous mode enabled
fxp0: link state changed to UP
fxp0: link state changed to DOWN
fxp0: link state changed to UP
ugen0.4: <logitech>at usbus0 (disconnected)
ums0: at uhub5, port 4, addr 4 (disconnected)</logitech></logitech></logitech></dell></dell></vendor></vendor></intel></intel></intel></intel></intel></intel></intel></intel></intel></intel></hitachi></lite-on></cpu></cpu></at></keyboard></generic></system></isa></parallel></printer></plip></parallel></parallel></at></serial></ata></ata></intel></ata></ata></intel></isa></pci-isa></multimedia,></i82562et></mii></intel></realtek></mii></realtek></acpi></acpi></intel></intel></intel></intel></intel></intel></intel></intel></intel></intel></acpi></acpi></vga-compatible></intel></vga-compatible></acpi></acpi></acpi></acpi></power></high></acpi></acpi></dell></software></version></dell ></syscall,nx,lm></sse3,dtes64,mon,ds_cpl,cnxt-id,cx16,xtpr></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe> -
SATA controller and the NIC are sharing an IRQ. That could be why. At times it is, though it's common and usually causes no problems, it'd be my strongest suspicion in this case. Mucking with BIOS settings may change that around (things like PNP OS setting). Disabling unused hardware in the BIOS may also do it.