# low network speed

## DaggyStyle

Greetings,

I got an strange network speed issue I could use some help with. my a gentoo server is connected via a cat5e cable to my router (tl-wdr4300) which runs openwrt 15.05.

I have a acestar 3.5' case with a hdd in it connected to a usb plug in the router which holds media content and is shared via nfs3 with writing permissions to my user.

both network card's speed it set to 1Gb/s, see:

router:

```

Settings for eth0.1:

        Supported ports: [ ]

        Supported link modes:   1000baseT/Full 

        Supported pause frame use: No

        Supports auto-negotiation: No

        Advertised link modes:  1000baseT/Full 

        Advertised pause frame use: No

        Advertised auto-negotiation: No

        Speed: 1000Mb/s

        Duplex: Full

        Port: MII

        PHYAD: 0

        Transceiver: external

        Auto-negotiation: on

        Link detected: yes

```

server:

```

Settings for eth0:

        Supported ports: [ TP MII ]

        Supported link modes:   10baseT/Half 10baseT/Full 

                                100baseT/Half 100baseT/Full 

                                1000baseT/Half 1000baseT/Full 

        Supported pause frame use: No

        Supports auto-negotiation: Yes

        Advertised link modes:  10baseT/Half 10baseT/Full 

                                100baseT/Half 100baseT/Full 

                                1000baseT/Half 1000baseT/Full 

        Advertised pause frame use: Symmetric Receive-only

        Advertised auto-negotiation: Yes

        Link partner advertised link modes:  10baseT/Half 10baseT/Full 

                                             100baseT/Half 100baseT/Full 

                                             1000baseT/Full 

        Link partner advertised pause frame use: Symmetric Receive-only

        Link partner advertised auto-negotiation: Yes

        Speed: 1000Mb/s

        Duplex: Full

        Port: MII

        PHYAD: 0

        Transceiver: internal

        Auto-negotiation: on

Cannot get wake-on-lan settings: Operation not permitted

        Current message level: 0x00000033 (51)

                               drv probe ifdown ifup

        Link detected: yes

```

when I try to write or read a file to/from the router via the nfs share I get extremely low speeds, see:

write:

```

dagg@NCC-5001-D /mnt/router_media $ dd if=/dev/zero of=data.file bs=1M count=1K

1024+0 records in

1024+0 records out

1073741824 bytes (1.1 GB) copied, 94.4662 s, 11.4 MB/s

```

read:

```

dagg@NCC-5001-D /mnt/router_media $ dd if=data.file > /dev/null

2097152+0 records in

2097152+0 records out

1073741824 bytes (1.1 GB) copied, 140.078 s, 7.7 MB/s

```

I thought it might the usb2's speed, so I've ran a test between the server and the router and I got this:

```

dagg@NCC-5001-D /mnt/router_media $ dd if=/dev/zero bs=1M count=1K | nc -n 10.0.0.138 12345

nc: using stream socket

1024+0 records in

1024+0 records out

1073741824 bytes (1.1 GB) copied, 52.3727 s, 20.5 MB/s
```

afaik, 1Gb/s is 125 MB/s and both the cards and the cable are compatible so I don't understand why such low speed?

where can I start investigating?

----------

## eccerr0r

It was quite a while before I finally could get data in excess of 100MB/sec through my Gbit ethernet.  The problem that was plaguing me the most?

The CPU/hardware speed of one of the devices...

The first time I had a Gbit ethernet device was a 1.6GHz Pentium-M (laptop), it simply didn't have the CPU/bus horsepower to crank out 100MB/sec.  Once I started using two high speed machines (first, an Itanium 1.3GHz machine (64-bit PCI) to a 2.6GHz Core2 machine (PCI Express)) I was starting to hit that 100MB/sec mark (ramdisk to ramdisk, my disks could only get 50-60MB/sec)...  I don't know how well the tl-wdr4300 is optimized for copying data back and forth but it very well might be a problem... 

Now with SSDs I can transfer at that 100MB/sec mark through Gbit Ethernet.

I did not even set any of my Gbit devices to large frames in fear of compatibility issues with my 10/100 devices sharing the same network.  You will likely need to set up large frames to get above 100MB/sec.

----------

## DaggyStyle

will try bumping the mtu up. thanks for the tip.

the issue isn't even hdd related, I get a crappy 20Mb/s on a wired line were I should expect at least 60Mb/s.

----------

## eccerr0r

Well for me, it wasn't hdd related either until the raw horsepower of the hardware reached a certain point (64 bit PCI and PCIe bus speeds) - I'd most likely guess that these low power routers have horrible I/O speeds due to trying to be as cheap as possible and you simply won't get the speeds no matter what you do.  Getting 20MB/sec with /dev/zero is a good sign that at least having Gbit interfaces wasn't a total waste...

----------

