Network upgrade

Added capacity for an extra six hosts on my LAN and now most of my network infrastructure supports 2.5Gbps ethernet speeds. And my janky rack is obsolete now.

The equipment is four TP-Link TL-SG108-M2 ethernet switches which I got from Amazon.

Oh, and I should probably mention that the TP-Link switches come with piddly little adhesive feet, but I didn’t use them, I got some of these big honkin’ ones instead: 25x Rubber Feet Pads Self Adhesive Isolation Feet Speakers Foot Shock Absorption. My logic is that more space between switches equals better cooling.

John's four new Ethernet switches

John's janky rack

Cut-through switching

Today I learned that cut-through switching is a thing. Basically it starts sending frames before the full frame has been received, thereby reducing latency:

In computer networking, cut-through switching, also called cut-through forwarding, is a method for packet switching systems, wherein the switch starts forwarding a frame (or packet) before the whole frame has been received, normally as soon as the destination address and outgoing interface is determined. Compared to store and forward, this technique reduces latency through the switch and relies on the destination devices for error handling. Pure cut-through switching is only possible when the speed of the outgoing interface is at least equal or higher than the incoming interface speed.

Ethernet on ‘trick’

Note to self: I’ve disabled my second NIC enp7s0 for now, I can enable it when its cable arrives.

-------------------
Mon Mar 28 16:34:31 [bash:5.0.17 jobs:0 error:0 time:1505]
root@trick:/home/jj5
# cat /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
  ethernets:
    enp10s0:
      addresses:
      - 10.3.2.5/16
      gateway4: 10.3.1.1
      nameservers:
        addresses:
        - 10.1.1.113
        search: []
    #enp7s0:
    #  addresses:
    #  - 10.1.2.5/16
    #  nameservers:
    #    addresses: []
    #    search: []
  version: 2

-------------------

1000baseT for RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller

I have a Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06) in my new Ubuntu Trusty (14.04.1) server. As you can see here:

root@orac:/home/jj5# lspci
...
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
...

I was having a problem with the card only supporting 100baseT speeds. I downloaded and installed the Realtek driver (and rebooted):

# bunzip2 r8168-8.039.00.tar.bz2
# tar xf r8168-8.039.00.tar
# cd r8168-8.039.00
# ./autorun.sh
# reboot

That didn’t fix the problem.

I installed the ethtool package and ran it:

# apt-get install ethtool
# ethtool p2p1
Settings for p2p1:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: Unknown
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
                               drv probe ifdown ifup
        Link detected: yes

As you can see the speed is 100Mb/s, not 1000Mb/s. It says that 1000baseT full duplex is supported. I tried forcing the speed:

# ethtool -s p2p1 speed 1000 duplex full advertise 0 autoneg off

But that didn’t work. The ethtool program reported the card was still operating and 100Mb/s.

Then I tried plugging in a different cable… and that fixed the problem!