Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 May 2020 21:38:01 +0200
From:      Vincenzo Maffione <vmaffione@freebsd.org>
To:        Anthony Arnaud <antho.arnaudisce@gmail.com>
Cc:        Luigi Rizzo <rizzo@iet.unipi.it>, "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: Netmap - Vale switch - tcp problem
Message-ID:  <CA%2B_eA9iukqVoDZFyyW2qEZ2OHfE9=fUj070uUXcYmrXt67mwqw@mail.gmail.com>
In-Reply-To: <CAGCUUMHwRghU3AMgKhQNrUs248y=NaGFN2Fm-f4khqhRsWn-qg@mail.gmail.com>
References:  <CAGCUUMGxxiv8j-W3S8Gs1g=ZbDLnU8_Hv6SVMCpmnrRXPNsUTA@mail.gmail.com> <CA%2BhQ2%2BhfDvKv8q%2BjUB-mv_TaUTHfTPabx-qem-0=PW3vu8Br=A@mail.gmail.com> <CAGCUUMHwRghU3AMgKhQNrUs248y=NaGFN2Fm-f4khqhRsWn-qg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
  I was trying to reproduce your problem (same FreeBSD release as yours).
It looks like there is some sort of bad interaction with LRO.

Starting from a fresh boot, if you keep lro enabled, e.g.
  # ifconfig vtnet0 -txcsum -rxcsum -tso4 -tso6
  # vale-ctl ....
then I experience no problem (TCP works between vtnet0 and the host,
tcpdump on vtnet0 works as expected).

As soon as you disable LRO:
  # ifconfig vtnet0 -lro
both TCP and tcpdump stop working.
If I enable LRO again, TCP restarts working, but tcpdump doesn't. I need to
reboot the machine to fix it.

Btw, creating vi0 (persistent VALE port) is not relevant for this test. You
may as well use ephemeral VALE ports (e.g. run pkt-gen -i vale0:1 -f rx).

I will have a look at the LRO issue asap. In the meantime you could avoid
disabling LRO and see if that works for you.

Cheers,
  Vincenzo

Il giorno gio 28 mag 2020 alle ore 17:16 Anthony Arnaud <
antho.arnaudisce@gmail.com> ha scritto:

> I already disabled the checksum, the vtnet config is:
>
> ifconfig vtnet1 -txcsum -rxcsum -tso4 -tso6 -lro -txcsum6 -rxcsum6 -vlanmtu
> -vlanhwtag -vlanhwfilter -vlanhwtso -vlanhwcsum up promisc
>
> vtnet1:
> flags=28943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,PPROMISC> metric
> 0 mtu 1500
>         options=1800a8<VLAN_MTU,JUMBO_MTU,VLAN_HWCSUM,LINKSTATE,NETMAP>
>         ether 0e:bd:ec:7a:08:06
>         media: Ethernet 10Gbase-T <full-duplex>
>         status: active
>         nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>
> Sorry for not having posted vtnet config before.
> PS: VLAN_HWCSUM is not switchable off for some reason!
> the problem is not that.
>
> Cheers
> Anthony
>
>
>
>
> Il giorno gio 28 mag 2020 alle ore 16:05 Luigi Rizzo <rizzo@iet.unipi.it>
> ha scritto:
>
> >
> >
> > On Thursday, May 28, 2020, Anthony Arnaud <antho.arnaudisce@gmail.com>
> > wrote:
> >
> >> Hi everyone!
> >> I would like to create a vale switch with an interface attached with the
> >> host stack and some virtual.
> >> My env is a VM with FBSD-12.1 12.1-RELEASE FreeBSD 12.1-RELEASE r354233
> >> GENERIC  amd64
> >> and VirtIO support.
> >>
> >> I performed:
> >>
> >> vale-ctl -h vale0:vtnet1
> >> vale-ctl -n vi0
> >> vale-ctl -a vale0:vi0
> >>
> >> 615.925514 bdg_ctl [149] bridge:0 port:0 vale0:vtnet1
> >> 615.925559 bdg_ctl [149] bridge:0 port:1 vale0:vtnet1^
> >> 615.925572 bdg_ctl [149] bridge:0 port:2 vale0:vi0
> >>
> >> vtnet1 is configured as mirror port.
> >> But if:
> >>
> >> tcpdump -i vtnet1
> >> or
> >> tcpdump -i vale0:vi0
> >>
> >> why can't I see any TCP packets?
> >> UDP and ICMP packet are ok.
> >>
> >> Without vale switch tcpdump show all TCP packets correctly.
> >
> >
> > You have to disable checksum offloading on vtnet1.
> >
> > Cheers
> > Luigi
> >
> > It is a bug?
> >> Thanks to all!
> >> <freebsd-net@freebsd.org>
> >> _______________________________________________
> >> freebsd-net@freebsd.org mailing list
> >> https://lists.freebsd.org/mailman/listinfo/freebsd-net
> >> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> >>
> >
> >
> > --
> > -----------------------------------------+-------------------------------
> >  Prof. Luigi RIZZO, rizzo@iet.unipi.it  . Dip. di Ing. dell'Informazione
> >  http://www.iet.unipi.it/~luigi/        . Universita` di Pisa
> >  TEL      +39-050-2217533               . via Diotisalvi 2
> >  Mobile   +39-338-6809875               . 56122 PISA (Italy)
> > -----------------------------------------+-------------------------------
> >
> >
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9iukqVoDZFyyW2qEZ2OHfE9=fUj070uUXcYmrXt67mwqw>