If user use -device virtio-net-pci, virtio-net driver will add a header
to raw net packet that colo-proxy can't handle it. COLO-proxy just
focus on the packet payload, so we skip the virtio-net header to compare
the sent packet that primary guest's to secondary guest's.

V6:
 - p1: Remove the using_vnet_hdr, I will send a independent
       patchset about it.
 - p2: Change option input way from vnet_hdr=on/off to vnet_hdr_support.
       Use nf->direction to decide check nf->netdev->vnet_hdr_len or 
nf->netdev->peer->vnet_hdr_len.
 - p3: Change option input way from vnet_hdr=on/off to vnet_hdr_support.
 - p4: No change.
 - p5: No change.
 - p6: Change option input way from vnet_hdr=on/off to vnet_hdr_support.
       Fix commit log.
 - p7: No change.
 - p8: No change.
 - p9: Change option input way from vnet_hdr=on/off to vnet_hdr_support.
       Use nf->direction to decide check nf->netdev->vnet_hdr_len or 
nf->netdev->peer->vnet_hdr_len.
 - p10: New patch to add new example for the case needs vnet hdr.

V5:
 - patch1: No change.
 - patch2: Keep the long line in qemu-option.hx.
           Squash patch2 into old patch3.
           Add more comments.
           Fix the return value.
 - patch3: Add more comments in commit log.
 - patch4: Add Suggested-by tag.
           Fix commit log.
           Move vnet_hdr to SocketReadState.
 - patch5: No change.
 - patch6: Squash old patch6 into this patch.
 - patch7: No change.
 - patch8: Remove the offset_all.
 - patch9: Squash old patch11 and the patch12.


V4:
 - Add vnet_hdr option for filter-mirror, filter-redirector,
   filter-rewriter,colo-compare.
 - Use new design to impliment virtio-net support for colo-proxy.
 - Fix codestyle.
 - Remove unused option for filter-rewriter.
 - Add filter-rewriter virtio-net support.
 - Address other comments.


Zhang Chen (10):
  net: Add vnet_hdr_len arguments in NetClientState
  net/filter-mirror.c: Make filter mirror support vnet support.
  net/filter-mirror.c: Add new option to enable vnet support for
    filter-redirector
  net/net.c: Add vnet_hdr support in SocketReadState
  net/colo.c: Make vnet_hdr_len as packet property
  net/colo-compare.c: Make colo-compare support vnet_hdr_len
  net/colo.c: Add vnet packet parse feature in colo-proxy
  net/colo-compare.c: Add vnet packet's tcp/udp/icmp compare
  net/filter-rewriter.c: Make filter-rewriter support vnet_hdr_len
  docs/colo-proxy.txt: Update colo-proxy usage of net driver with
    vnet_header

 docs/colo-proxy.txt   | 26 ++++++++++++++
 include/net/net.h     |  7 +++-
 net/colo-compare.c    | 86 +++++++++++++++++++++++++++++++++++++-------
 net/colo.c            |  9 ++---
 net/colo.h            |  4 ++-
 net/filter-mirror.c   | 98 ++++++++++++++++++++++++++++++++++++++++++++++++---
 net/filter-rewriter.c | 51 ++++++++++++++++++++++++++-
 net/net.c             | 34 ++++++++++++++++--
 qemu-options.hx       | 19 +++++-----
 9 files changed, 296 insertions(+), 38 deletions(-)

-- 
2.7.4




Reply via email to