• Mahesh Bandewar's avatar
    net: Allow ethtool to set interface in loopback mode. · eed2a12f
    Mahesh Bandewar authored
    This patch enables ethtool to set the loopback mode on a given interface.
    By configuring the interface in loopback mode in conjunction with a policy
    route / rule, a userland application can stress the egress / ingress path
    exposing the flows of the change in progress and potentially help developer(s)
    understand the impact of those changes without even sending a packet out
    on the network.
    
    Following set of commands illustrates one such example -
        a) ip -4 addr add 192.168.1.1/24 dev eth1
        b) ip -4 rule add from all iif eth1 lookup 250
        c) ip -4 route add local 0/0 dev lo proto kernel scope host table 250
        d) arp -Ds 192.168.1.100 eth1
        e) arp -Ds 192.168.1.200 eth1
        f) sysctl -w net.ipv4.ip_nonlocal_bind=1
        g) sysctl -w net.ipv4.conf.all.accept_local=1
        # Assuming that the machine has 8 cores
        h) taskset 000f netserver -L 192.168.1.200
        i) taskset 00f0 netperf -t TCP_CRR -L 192.168.1.100 -H 192.168.1.200 -l 30
    Signed-off-by: default avatarMahesh Bandewar <maheshb@google.com>
    Acked-by: default avatarBen Hutchings <bhutchings@solarflare.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    eed2a12f
ethtool.c 49.6 KB