mbox series

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

Message ID 20211028090556.3168043-1-chen.zhang@intel.com
Headers show
Series net/filter: Optimize filters vnet_hdr support | expand

Message

Zhang, Chen Oct. 28, 2021, 9:05 a.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.

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.


v5:
    Keep the vnet_hdr_support from filters for the management layer compatibility.

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: Optimize transfer protocol for filter-mirror/redirector
  net/filter: Optimize transfer protocol for filter-rewriter
  net/colo-compare.c: Optimize transfer protocol for colo-compare

 net/colo-compare.c    | 24 +++++++++++++++++-------
 net/filter-mirror.c   | 34 ++++++++++++++++------------------
 net/filter-rewriter.c |  6 ++----
 3 files changed, 35 insertions(+), 29 deletions(-)