Using ip:
up /sbin/ip link set dev enp3s0f0 txqueuelen 10000
Using ifconfig:
up /sbin/ifconfig iface-name txqueuelen 10000
This modification will run the proper ethtool command to modify the ring parameters the next time
the network interface is restarted. It will also turn on flow control and set the txqueuelen.
4.1.2.2 Ubuntu 20.04 (systemd)
Create a file called /etc/systemd/network/10-sm200c.link (“sm200c” is arbitrary and can be
changed to whatever you prefer).
Edit the file as follows, using the MAC address of your interface (which could be found with the
command “ip a” or similar):
[Match]
MACAddress=XX:XX:XX:XX:XX:XX
[Link]
MTUBytes=9000
RxBufferSize=4096
TxBufferSize=4096
RxFlowControl=On
TxFlowControl=On
TransmitQueueLength=10000
This will set the ring parameters.
It also contains entries to set flow control, MTU size (which is also set in the GUI), and the
txqueuelen. However, these entries did not have an effect during Ubuntu 20.04 testing. They have
been left here for documentation purposes.
4.1.3 Socket Buffer Sizes
Next is to configure the read and write socket buffer sizes. The Signal Hound device can keep up
to 32MB of UDP traffic in flight at any given time. We will configure the maximum buffer sizes to
50MB. To do this, edit the /etc/sysctl.conf file and add the following lines at the end of the file,
net.core.rmem_default=10000000
net.core.rmem_max=50000000