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.
Zhang Chen (6): net/filter-mirror.c: Add filter-mirror and filter-redirector vnet support. net/net.c: Add vnet header length to SocketReadState net/colo-compare.c: Make colo-compare support vnet_hdr_len net/socket.c: Add vnet packet support in net_socket_receive() net/colo.c: Add vnet packet parse feature in colo-proxy net/colo-compare.c: Add vnet packet's tcp/udp/icmp compare include/net/net.h | 4 +++- net/colo-compare.c | 48 +++++++++++++++++++++++++++++++++++++++--------- net/colo.c | 9 +++++---- net/colo.h | 4 +++- net/filter-mirror.c | 25 ++++++++++++++++++++----- net/filter-rewriter.c | 2 +- net/net.c | 24 ++++++++++++++++++++++-- net/socket.c | 6 ++++++ 8 files changed, 99 insertions(+), 23 deletions(-) -- 2.7.4