mbox series

[V4,0/3] net/filter: Optimize filters vnet_hdr support

Message ID 20211026181730.3102184-1-chen.zhang@intel.com (mailing list archive)
Headers show
Series net/filter: Optimize filters vnet_hdr support | expand

Message

Zhang Chen Oct. 26, 2021, 6:17 p.m. UTC
This series make filters and colo-compare module support vnet_hdr by
default. And also support -device non-virtio-net(like e1000.) at the same time.
It can adapt -device automatically to avoid wrong setting between
different filters when enable/disable virtio-net-pci. So no need to keep the
"vnet_hdr_support" flag in filter's property. 

Optimize the filter transfer protocol from:
1.size -----> 2.real network payload.
to:
1.size -----> 2.vnet_hdr_len. -----> 3.real network payload.

When receiving node get the network packet, it will compare with
the local vnet_hdr_len. If they are not the same, report a error.
because this kind of packet cannot be correctly parsed by receiving
node. For the colo-compare, it need to compare whether the two sides
vnet_hdr_len are equal.


v4:
    Rewrite patches to impliment it in filter transfer protocol payload.
    Remove filters and colo-compare's "vnet_hdr_support" flag.

v3:
    Fix some typos.
    Rebased for Qemu 6.2.

v2:
    Detect virtio-net driver and apply vnet_hdr_support
    automatically. (Jason)

Zhang Chen (3):
  net/filter: Remove vnet_hdr from filter-mirror and filter-redirector
  net/filter: Remove vnet_hdr from filter-rewriter
  net/colo-compare.c: Remove vnet_hdr and check in payload from
    colo-compare

 net/colo-compare.c    | 41 +++++++-------------
 net/filter-mirror.c   | 88 ++++++++++---------------------------------
 net/filter-rewriter.c | 26 +------------
 qemu-options.hx       | 25 ++++++------
 4 files changed, 45 insertions(+), 135 deletions(-)