Troubles with netdump(4)

Alexander V. Chernikov melifaro at ipfw.ru
Sat Mar 13 11:48:55 UTC 2021


> On 10 Mar 2021, at 10:07, Mamontov Roman <mr.xanto at gmail.com> wrote:
> 
> Hello.
> 
> I try to use netdump(4) option for transmitting kernel dumps to a remote server. 
> When  I caused a kernel panic by sysctl debug.kdb.panic I found, that netdumping 
> to  remote  server  happens very slow: systat -ifstat on remote side show speed 
> around 5KB/s.
> 
> On netdump-client side I have:
> root at host-1:/home/roman # uname -mv
> FreeBSD 12.2-STABLE GENERIC  amd64
> root at host-1:/home/roman # 
> root at host-1:/home/roman # dumpon -l
> em0
> root at host-1:/home/roman # cat /etc/rc.local
> #!/bin/sh
> /sbin/dumpon -c 192.168.7.11 -s 192.168.7.12 em0
> root at host-1:/home/roman # ifconfig em0
> em0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
>        options=81209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER>
>        inet 192.168.7.11 netmask 0xffffff00 broadcast 192.168.7.255
>        media: Ethernet autoselect (1000baseT <full-duplex>)
>        status: active
>        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> root at solution:/home/roman #
> 
> On netdumpd-side:
> root at host-2:/home/roman # uname -mv
> FreeBSD 12.2-STABLE GENERIC  i386
> root at host-2:/home/roman # ifconfig em0
> em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>        options=81209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER>
>        inet 192.168.7.12 netmask 0xffffff00 broadcast 192.168.7.255
>        media: Ethernet autoselect (1000baseT <full-duplex>)
>        status: active
>        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> root at solution-old:/home/roman #
> 
> Both (host-1 and host-2) have the same stable/12 revision:
> # cat /usr/src/.gituprevision
> stable/12:879039312
> #
> 
> When  I  try test network bandwith between host-1 and host-2 with iperf3, I see 
> next results:
> root at host-1:/home/roman # iperf3 -u -b 0 -c 192.168.7.12
> Connecting to host 192.168.7.12, port 5201
> [  5] local 192.168.7.11 port 37112 connected to 192.168.7.12 port 5201
> [ ID] Interval           Transfer     Bitrate         Total Datagrams
> [  5]   0.00-1.00   sec   346 MBytes  2.90 Gbits/sec  248710
> [  5]   1.00-2.00   sec   345 MBytes  2.89 Gbits/sec  247750
> [  5]   2.00-3.00   sec   345 MBytes  2.90 Gbits/sec  247990
> [  5]   3.00-4.00   sec   331 MBytes  2.78 Gbits/sec  238020
> [  5]   4.00-5.00   sec   262 MBytes  2.20 Gbits/sec  188260
> [  5]   5.00-6.00   sec   345 MBytes  2.89 Gbits/sec  247560
> [  5]   6.00-7.00   sec   345 MBytes  2.89 Gbits/sec  247660
> [  5]   7.00-8.00   sec   345 MBytes  2.90 Gbits/sec  247980
> [  5]   8.00-9.00   sec   342 MBytes  2.87 Gbits/sec  245760
> [  5]   9.00-10.00  sec   344 MBytes  2.88 Gbits/sec  246830
> - - - - - - - - - - - - - - - - - - - - - - - - -
> [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
> [  5]   0.00-10.00  sec  3.27 GBytes  2.81 Gbits/sec  0.000 ms  0/2406520 (0%)  sender
> [  5]   0.00-10.07  sec  0.00 Bytes  0.00 bits/sec  0.000 ms  0/0 (0%)  receiver
> 
> iperf Done.
> root at host-1:/home/roman #
> 
> Capturing  traffic  between  host-1 and host-2 not show anything criminal (as I 
> understand).
> 
> Next  I  try  netdumping  to  another  FreeBSD-host  (virtual machine on VMWare 
> hypervisor):
> root at host-3:~ # uname -mv
> FreeBSD 12.2-STABLE r369412 GENERIC  amd64
> root at host-3:~ # ifconfig em0
> em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>        options=81009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,VLAN_HWFILTER>
>        inet 192.168.7.18 netmask 0xffffff00 broadcast 192.168.7.255
>        media: Ethernet autoselect (1000baseT <full-duplex>)
>        status: active
>        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> root at host-3:~ #
> 
> And netdumping to this host are still slow (~the same 5KB/s). 
> 
> Next step another FreeBSD-host (virtual machine on VirtualBox hypevisor):
> root at host-4:~ # uname -mv
> FreeBSD 12.2-STABLE r369412 GENERIC  amd64
> root at host-4:~ # ifconfig em0
> em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>        options=81009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,VLAN_HWFILTER>
>        inet 192.168.7.19 netmask 0xffffff00 broadcast 192.168.7.255
>        media: Ethernet autoselect (1000baseT <full-duplex>)
>        status: active
>        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> root at host-4:~ #
> 
> Both (host-3 and host-4) are installed from FreeBSD-12.2-STABLE-amd64-20210304-r369412-bootonly.iso
> When  I  caused  a  kernel panic by sysctl debug.kdb.panic on host-4, netdumping to 
> host-3 show the same 5 KB/s.
netdump requires explicit acks from the other side.
Could you try dumping the exchange between the dumping host and the server to verify that acks are sent immediately after receiving the next chunk?
> 
> Is  there an particularity in netdump, that can't transmitting crash dumps over 
> network faster than 5KB/s? Or this is a "feature" of my test-suite?
> 
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"



More information about the freebsd-stable mailing list