Search by Tags

Ethernet/Network (Linux)

 

Compare with Revision




Subscribe for this article updates

The Toradex images currently provide two utilities for network configuration: connman and systemd-networkd. By default, the Ethernet port is managed by connman and the USB RNDIS interface by systemd-networkd. Depending on the application, it might make sense to use one of those utility over the other.

By default connman will try to configure any available network interfaces and tries to keep only (the best) connection connected at any time. The design is targeted towards interactive, wireless devices such as tablets etc.

The systemd provided utility systemd-networkd on the other hand emphasizes on headless server systems with static configuration.

Below are instructions how to use connman and/or systemd-networkd.

Connman

Our latest V2.x images use connman as the overall connection management framework. The GUI management tool can be started with connman-properties or by starting the taskbar applet connman-applet.

The command line interface tool connmanctl can be used in a interactive shell mode or as a single command using arguments.

root@apalis-t30:~# connmanctl services
*AO Wired                { ethernet_00142d269dfd_cable }
root@apalis-t30:~# connmanctl services ethernet_00142d269dfd_cable
[ ethernet_00142d269dfd_cable ]

  Type = ethernet
  Security = [ ]
  State = online
  Favorite = True
  Immutable = False
  AutoConnect = True
  Name = Wired
  Ethernet = { Method=auto Interface=enp7s0 Address=00:14:2D:26:9D:FD MTU=1500 }
  IPv4 = { Method=dhcp Address=192.168.10.162 Netmask=255.255.255.0 Gateway=192.168.10.1 }
  IPv4.Configuration = { Method=dhcp }
  IPv6 = { }
  IPv6.Configuration = { Method=auto Privacy=disabled }
  Nameservers = [ 8.8.8.8 ]
  Nameservers.Configuration = [ ]
  Timeservers = [ 192.168.10.1 ]
  Timeservers.Configuration = [ ]
  Domains = [ colibri.net ]
  Domains.Configuration = [ ]
  Proxy = { URL=http://wpad.colibri.net/wpad.dat Method=auto }
  Proxy.Configuration = { }
  Provider = { }

Using the interactive mode to configure a static Ethernet address

root@colibri-t30:~# connmanctl
connmanctl> config ethernet_00142d259a48_cable --ipv4 manual 192.168.10.2 255.255.255.0 192.168.10.1
connmanctl> exit

root@colibri-t30:~# connmanctl config ethernet_00142d259a48_cable --nameservers 8.8.8.8

root@colibri-t30:~# connmanctl
connmanctl> config ethernet_00142d259a48_cable --ipv4 dhcp
connmanctl> exit

Tethering

Connman can be used for tethering which allows to share a connection of a device for another locally connected device. The Toradex module running Connman would be the device sharing the connection.

Tethering puts some requirements on the kernel. The README in the Connman source tree holds more information on this requirements.

USB gadget tethering

Note: Since image V2.4 systemd-networkd has control over the USB gadget Ethernet interface (RNDIS). Remove the rndis.network file under /etc/systemd/networkd and make sure usb/rndis is not part of NetworkInterfaceBlacklist in /etc/connman/main.conf.

To enable tethering on the USB gadget interface make sure the USB gadget driver is loaded/enabled first (see USB Device Mode (Linux)). Then Connman can be used to enable tethering mode:

# connmanctl 
connmanctl> tether gadget on
connmanctl> [  194.725436] device usb0 entered promiscuous mode
[  194.737525] tether: port 1(usb0) entered forwarding state
[  194.743077] tether: port 1(usb0) entered forwarding state
Enabled tethering for gadget

To preconfigure Connman to automatically start Gadget interfaces upon start-up two configuration files are needed:

The main.conf under /etc/connman/main.conf

[General]
PersistentTetheringMode=true
TetheringTechnologies=gadget

The service settings file under /var/lib/connman/settings

[global]
OfflineMode=false

[Wired]
Enable=true
Tethering=false

[Gadget]
Enable=true
Tethering=true

For other configuration options, the Python interface documentation has some useful configuration examples: https://pythonhosted.org/pyconnman/config.html

systemd-networkd

If you plan to use systemd-networkd as primary network configuration utility, you should remove connman first (when using a console only image, you won't need to remove connman-gnome). You can use the package manager to remove the package from pre-built images by invoking

opkg remove connan-gnome connman

To remove connman when building a image using OpenEmbedded remove CONMANPKGS from IMAGE_INSTALL in the image recipe recipes/images/angstrom-lxde-image.bb in the meta-toradex layer (see OpenEmbedded (core) how to build a complete image).

Manual Configuration for Wired Connections

Create a file named 'wired.network' under /etc/systemd/network/

root@colibri-vf:~# vi /etc/systemd/network/wired.network

For dynamic IP connection fill in the file with the following content:

[Match]
Name=eth0

[Network]
DHCP=ipv4

For static IP connection:

[Match]
Name=eth0

[Network]
Address=192.168.0.1/24
Gateway=192.168.0.255
DNS=8.8.8.8

Bridge

Using systemd-networkd one can easily setup a network bridge between two Ethernet interfaces:

/etc/systemd/network/eth.network

[Match]
Name=eth*

[Network]
Bridge=br0

/etc/systemd/network/bridged.network

[Match]
Name=br0

[Network]
DHCP=ipv4

VLAN

This example configures a dynamic IP configuration on the ethernet device (untagged) and also creates a new Ethernet interface associated with VLAN 100 (tagged). The example uses a dynamic IP configuration on VLAN 100 too.

/etc/systemd/network/wired.network

[Match]
Name=eth0

[Network]
DHCP=ipv4
VLAN=eth0.100

/etc/systemd/network/eth0.100.netdev

[NetDev]
Name=eth0.100
Kind=vlan

[VLAN]
Id=100

/etc/systemd/network/eth0.100.netdev

[NetDev]
Name=eth0.100
Kind=vlan

[VLAN]
Id=100

/etc/systemd/network/vlan100.network

[Match]
Name=eth0.100

[Network]
DHCP=v4

Integrating Network Files Into an OpenEmbedded/Yocto Image

The integration should be done similarly to the existing 'rndis.network' file, see bbappend and files sub directory of our systemd configuration: http://git.toradex.com/cgit/meta-toradex.git/tree/recipes-core/systemd?h=V2.5-next

First place the above file 'wired.network' inside systemd folder:

~/oe-core/stuff/meta-toradex/recipes-core/systemd/systemd

Than edit the bbappend file adding the 'wired.network' file like bellow:

vi ~/oe-core/stuff/meta-toradex/recipes-core/systemd/systemd_%.bbappend
FILESEXTRAPATHS_prepend := "${THISDIR}/systemd:"

SRC_URI += " \
    file://wired.network \
    file://rndis.network \
    file://0001-systemd-udevd.service.in-set-MountFlags-shared.patch \
"

PACKAGECONFIG_append = " networkd"

do_install_append() {
    # The network files need to be in /usr/lib/systemd, not ${systemd_unitdir}...
    install -d ${D}${prefix}/lib/systemd/network/
    install -d ${D}/etc/systemd/network/
    install -m 0644 ${WORKDIR}/rndis.network ${D}${prefix}/lib/systemd/network/
    install -m 0644 ${WORKDIR}/wired.network ${D}/etc/systemd/network/
}

FILES_${PN} += " \
    ${nonarch_base_libdir}/systemd/network \
"

Manual Network Configuration

For testing and debugging purposes, one can use iproute2 utilities to manually set up a static IP and BusyBox' udhcpc utility to explicitly request an IP address using DHCP. Note that such a configuration will not be persistent across reboots.

Make sure to disable the networking management daemons to avoid interference:

systemctl stop connman.service
systemctl stop systemd-networkd.socket
systemctl stop systemd-networkd.service

Get a list of interfaces using ip link:

# ip link
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0:  mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:14:2d:59:ca:81 brd ff:ff:ff:ff:ff:ff
3: sit0@NONE:  mtu 1480 qdisc noop state DOWN mode DEFAULT group default 
    link/sit 0.0.0.0 brd 0.0.0.0
4: can0:  mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
    link/can

Static Network Configuration

Enable the network interface (e.g. eth0):

# ip link set $interface up

Assign a static IP address:

# ip addr add $IP_address/$subnet_mask broadcast $broadcast_address dev $interface

Then add your gateway IP address:

# ip route add default via $default_gateway

For example:

# ip link set eth0 up
$ ip addr add 192.168.10.2/24 broadcast 192.168.10.255 dev eth0
$ ip route add default via 192.168.10.1

To undo these configurations (e.g. before switching to a dynamic IP), first remove any assigned IP address:

# ip addr flush dev $interface

Then remove any assigned gateway:

# ip route flush dev $interface

And finally disable the interface:

# ip link set $interface down

Dynamic Network Configuration

The utility udhcpc can be used to get a one time lease for an IP address from the DHCP server serving the local network:

# udhcpc -i eth0
udhcpc (v1.23.2) started
...
Sending discover...
Sending select for 192.168.10.108...
Lease of 192.168.10.108 obtained, lease time 86400
...

Ethernet/Network interfaces

Colibri T20/T30

The Colibri T20/T30 modules provide an Ethernet network connection through an AX88772B chip connected to the second EHCI USB 2.0 controller.

[    4.193401] usb 1-1: new high speed USB device using tegra-ehci and address 2
[    4.443757] usb 1-1: New USB device found, idVendor=0b95, idProduct=772b
[    4.450451] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    4.457589] usb 1-1: Product: AX88772B
[    4.461332] usb 1-1: Manufacturer: ASIX Elec. Corp.
[    4.466219] usb 1-1: SerialNumber: 000001
...
[    5.314474] ASIX USB Ethernet Adapter:v4.1.0 09:33:56 Jul  4 2011
[    5.314479] <6>    http://www.asix.com.tw
...
[    5.337205] eth%d: status ep1in, 8 bytes period 11
[    5.342226] eth0: register 'asix' at usb-tegra-ehci.1-1, ASIX AX88772B USB 2.0 Ethernet, 00:0e:c6:87:72:01
...
[    5.674034] Netfilter messages via NETLINK v0.30.
[    5.678773] nf_conntrack version 0.5.0 (2227 buckets, 8908 max)
[    5.684918] ctnetlink v0.93: registering with nfnetlink.
[    5.690323] xt_time: kernel timezone is -0000
[    5.694915] ip_tables: (C) 2000-2006 Netfilter Core Team
[    5.700294] arp_tables: (C) 2002 David S. Miller
[    5.704950] TCP cubic registered
[    5.708173] NET: Registered protocol family 17
[    5.712623] NET: Registered protocol family 15
...
[    9.958314] eth0: rxqlen 0 --> 5
[   10.032823] eth0: ax88772b - Link status is: 0

Colibri VF50/VF61

The Colibri VF50/VF61 modules provide an Ethernet network connection using an internal Ethernet controller communicating via RMII interface.

[   20.417573] fec 400d1000.ethernet eth0: NXP/Freescale FEC PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=400d1000.etherne:00, irq=-1)
[   20.569406] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  160.418064] fec 400d1000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[  160.426085] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

Using Second Ethernet Controller on Colibri VFxx

Vybrid has two on-chip Ethernet controllers available via two independent RMII interfaces. One controller is connected to the on-module PHY which is used according to the standard Colibri Ethernet pin-out. To use the second on-chip Ethernet controller an external PHY (on the carrier board) needs to be connected to the RMII interface. Refer to the Colibri Vybrid datasheet. Please use the link below to download the reference schematics and CAE data for RMII based Ethernet:

Note: The RMII pin-out of the second Ethernet controller is not compatible with other modules in the Colibri family.

To enable software support for the second Ethernet controller, a custom device tree is required. Our Kernel tree contains a custom device tree for the dual Ethernet Colibri Carrier Board: Device trees for dual Ethernet Board

To make sure U-Boot selects the device tree automatically, you can make use of the fdt_board variable:

setenv fdt_board dual-eth
saveenv

For more details how to customize the device tree refer to the article Device Tree Customization.

Note: The second instance of the internal Ethernet controller (FEC1) is the default/on-module Ethernet controller on Colibri VFxx while the first instance of the internal Ethernet controller (FEC0) is the additional Ethernet controller. However, currently the native order of the FEC instances is used to assign the interface names (eth0 for FEC0, eth1 for FEC1). The device tree alias is used by U-Boot to assign the primary MAC address (ethaddr) to the device behind the alias ethernet0 and the secondary MAC address (eth1addr) to device behind the alias ethernet1. However, the Linux kernel does not name interfaces according to those aliases. A method to work around this limitation is to use a udev rule file which renames the network interfaces (/etc/udev/rules.d/20-ethernet.rules):


# Ethernet network device rules file
#


# Do not assign ethX names, since they might be already in use.
# Use udevadm to get possible selectors.
# udevadm info -a -p /sys/class/net/eth0

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNELS=="400d0000.ethernet", NAME="fec1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNELS=="400d1000.ethernet", NAME="fec0"

Using Hardware Switch on Colibri VFxx

The NXP Vybrid SoC provides a hardware Ethernet Switch controller which can control the two network interfaces (MACs). This allows Ethernet frames to pass through without any intervention by the CPU.

Our BSP V2.6 Beta 2 and later provide the driver as a configuration option CONFIG_FSL_L2_SWITCH. Apply the following device tree changes to enable the driver:

diff --git a/arch/arm/boot/dts/vf-colibri-dual-eth.dtsi b/arch/arm/boot/dts/vf-colibri-dual-eth.dtsi
index 8fed730..4cc2421 100644
--- a/arch/arm/boot/dts/vf-colibri-dual-eth.dtsi
+++ b/arch/arm/boot/dts/vf-colibri-dual-eth.dtsi
@@ -14,20 +14,15 @@
        };
 
        aliases {
-               ethernet0 = &fec0;
-               ethernet1 = &fec1;
+               ethernet0 = &esw;
        };
 };
 
-&fec0 {
-       phy-mode = "rmii";
-       pinctrl-names = "default";
-       pinctrl-0 = <&pinctrl_fec0>;
-       status = "okay";
-};
-
-&fec1 {
-       status = "okay";
+&esw {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_fec0 &pinctrl_fec1>;
+       status = "okay";
 };

The boot log should show the assignment of the two PHYs:

[    0.856500] libphy: fsl l2 switch MII Bus: probed
[    0.861269] fsl l2 switch MII Bus mdiobus(0) register ok.
[    0.867796] eth-switch 400e8000.l2-switch eth0: eth0: Ethernet switch 00:14:2d:49:ca:81

Note: With the L2 switch driver the Ethernet physical layer transceiver (PHY's) are no longer connected to the Linux Ethernet port. This means that the Linux port will always appear to be UP, even when both Ethernet ports are disconnected. Earlier versions of the driver did connect only the PHY of port 0 to the Ethernet interface, which added a dependency between PHY0 and the Ethernet interface (see net: fsl_l2_switch: drop registering phy in switch mode).

Ethernet Benchmark (iperf)

As the following benchmarks show a sustained data rate of around 95 Mbits/sec is possible while the CPU utilisation usually stays well below 25 % on one single core.

Ethernet Benchmark as Client

Host (Ethernet Benchmark as Client)

sumo@sumo-PORTEGE-R700:~$ iperf -s
------------------------------------------------------------.
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------.
[  4] local 10.0.1.98 port 5001 connected with 10.0.1.108 port 45648
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  5] local 10.0.1.98 port 5001 connected with 10.0.1.108 port 54417
[  5]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  4] local 10.0.1.98 port 5001 connected with 10.0.1.108 port 54418
[  4]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  5] local 10.0.1.98 port 5001 connected with 10.0.1.108 port 38978
[  5]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  4] local 10.0.1.98 port 5001 connected with 10.0.1.108 port 38979
[  4]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec

Target (Ethernet Benchmark as Client)

root@colibri_t20:~# iperf -c 10.0.1.98
------------------------------------------------------------.
Client connecting to 10.0.1.98, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.108 port 45648 connected with 10.0.1.98 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec
root@colibri_t20:~# iperf -c 10.0.1.98
------------------------------------------------------------.
Client connecting to 10.0.1.98, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.108 port 54417 connected with 10.0.1.98 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec
root@colibri_t20:~# iperf -c 10.0.1.98
------------------------------------------------------------.
Client connecting to 10.0.1.98, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.108 port 54418 connected with 10.0.1.98 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec
root@colibri_t20:~# iperf -c 10.0.1.98
------------------------------------------------------------.
Client connecting to 10.0.1.98, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.108 port 38978 connected with 10.0.1.98 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec
root@colibri_t20:~# iperf -c 10.0.1.98
------------------------------------------------------------.
Client connecting to 10.0.1.98, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.108 port 38979 connected with 10.0.1.98 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec

CPU Utilisation (Ethernet Benchmark as Client)

root@colibri_t20:~# tegrastats

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [8%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [15%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [19%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [15%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [23%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [11%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [8%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [14%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [15%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [11%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [14%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [19%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [27%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [9%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [2%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [11%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [15%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [18%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [19%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [14%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [2%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [12%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [15%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [13%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [14%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [13%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [29%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [1%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [10%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [13%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [16%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [19%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 48/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

Ethernet Benchmark as Server

Host (Ethernet Benchmark as Server)

sumo@sumo-PORTEGE-R700:~$ iperf -c 10.0.1.108
------------------------------------------------------------.
Client connecting to 10.0.1.108, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.98 port 58818 connected with 10.0.1.108 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    114 MBytes  95.0 Mbits/sec
sumo@sumo-PORTEGE-R700:~$ iperf -c 10.0.1.108
------------------------------------------------------------.
Client connecting to 10.0.1.108, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.98 port 58819 connected with 10.0.1.108 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.9 Mbits/sec
sumo@sumo-PORTEGE-R700:~$ iperf -c 10.0.1.108
------------------------------------------------------------.
Client connecting to 10.0.1.108, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.98 port 58820 connected with 10.0.1.108 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    113 MBytes  94.9 Mbits/sec
sumo@sumo-PORTEGE-R700:~$ iperf -c 10.0.1.108
------------------------------------------------------------.
Client connecting to 10.0.1.108, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.98 port 58823 connected with 10.0.1.108 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    114 MBytes  94.9 Mbits/sec
sumo@sumo-PORTEGE-R700:~$ iperf -c 10.0.1.108
------------------------------------------------------------.
Client connecting to 10.0.1.108, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------.
[  3] local 10.0.1.98 port 58824 connected with 10.0.1.108 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec    114 MBytes  94.9 Mbits/sec

Target (Ethernet Benchmark as Server)

root@colibri_t20:~# iperf -s
------------------------------------------------------------.
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------.
[  4] local 10.0.1.108 port 5001 connected with 10.0.1.98 port 58818
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.1 sec    114 MBytes  94.1 Mbits/sec
[  5] local 10.0.1.108 port 5001 connected with 10.0.1.98 port 58819
[  5]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  4] local 10.0.1.108 port 5001 connected with 10.0.1.98 port 58820
[  4]  0.0-10.1 sec    113 MBytes  94.1 Mbits/sec
[  5] local 10.0.1.108 port 5001 connected with 10.0.1.98 port 58823
[  5]  0.0-10.1 sec    114 MBytes  94.1 Mbits/sec
[  4] local 10.0.1.108 port 5001 connected with 10.0.1.98 port 58824
[  4]  0.0-10.1 sec    114 MBytes  94.1 Mbits/sec

CPU Utilisation (Ethernet Benchmark as Server)

root@colibri_t20:~# tegrastats

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [3%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [23%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [6%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [23%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [23%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [9%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [17%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [5%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [20%,1%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [23%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [5%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [27%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [27%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [24%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [25%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [26%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [21%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [22%,0%]@-1 EMC 0 AVP 0 VDE 0
RAM 47/372MB (lfb 64x4MB) Carveout 30/116MB (lfb 86MB) GART 0/32MB (lfb 32MB) IRAM 0/256kB (lfb 256kB) cpu [0%,0%]@-1 EMC 0 AVP 0 VDE 0

Ethernet Connection

[  488.496786] eth0: ax88772b - Link status is: 1

Ethernet Disconnection

[  968.624787] eth0: ax88772b - Link status is: 0

Raw Network Stack Bandwidth

root@colibri_t20:~# iperf -s
------------------------------------------------------------.
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------.
[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 56104
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  1.74 GBytes  1.49 Gbits/sec
[  6] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 39502
[  6]  0.0-10.0 sec  1.72 GBytes  1.48 Gbits/sec
[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 39503
[  4]  0.0-10.0 sec  1.65 GBytes  1.41 Gbits/sec
[  6] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 39504
[  6]  0.0-10.0 sec  1.74 GBytes  1.50 Gbits/sec
[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 39505
[  4]  0.0-10.0 sec  1.85 GBytes  1.58 Gbits/sec
root@colibri_t20:~# iperf -c localhost
------------------------------------------------------------.
Client connecting to localhost, TCP port 5001
TCP window size: 49.3 KByte (default)
------------------------------------------------------------.
[  3] local 127.0.0.1 port 56104 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.74 GBytes  1.49 Gbits/sec
root@colibri_t20:~# iperf -c localhost
------------------------------------------------------------.
Client connecting to localhost, TCP port 5001
TCP window size: 49.3 KByte (default)
------------------------------------------------------------.
[  3] local 127.0.0.1 port 39502 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.72 GBytes  1.48 Gbits/sec
root@colibri_t20:~# iperf -c localhost
------------------------------------------------------------.
Client connecting to localhost, TCP port 5001
TCP window size: 49.3 KByte (default)
------------------------------------------------------------.
[  3] local 127.0.0.1 port 39503 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.65 GBytes  1.41 Gbits/sec
root@colibri_t20:~# iperf -c localhost
------------------------------------------------------------.
Client connecting to localhost, TCP port 5001
TCP window size: 49.3 KByte (default)
------------------------------------------------------------.
[  3] local 127.0.0.1 port 39504 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.74 GBytes  1.50 Gbits/sec
root@colibri_t20:~# iperf -c localhost
------------------------------------------------------------.
Client connecting to localhost, TCP port 5001
TCP window size: 49.3 KByte (default)
------------------------------------------------------------.
[  3] local 127.0.0.1 port 39505 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.85 GBytes  1.59 Gbits/sec