On 07/14/2017 11:25 AM, Jason Wang wrote:

On 2017年07月13日 13:52, Zhang Chen wrote:
If primary packet's sequence number not same with secondary packet's
sequence number, no need to compare the packet other field.

Signed-off-by: Zhang Chen <zhangchen.f...@cn.fujitsu.com>
  net/colo-compare.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/net/colo-compare.c b/net/colo-compare.c
index 0f8e198..2caeb80 100644
--- a/net/colo-compare.c
+++ b/net/colo-compare.c
@@ -222,6 +222,12 @@ static int colo_packet_compare_tcp(Packet *spkt, Packet *ppkt)
      ptcp = (struct tcphdr *)ppkt->transport_header;
      stcp = (struct tcphdr *)spkt->transport_header;
  +    if ((ptcp->th_flags & TH_SYN) != TH_SYN &&
+        ptcp->th_seq != stcp->th_seq) {
+ trace_colo_compare_main("colo_packet_compare_tcp seq not same");
+        return -1;
+    }
       * The 'identification' field in the IP header is *very* random
       * it almost never matches.  Fudge this by ignoring differences in

Do we have any statistics numbers for this?

Rethink about this patch, I will remove it in next version and send a independent
patch in the future.
Because in FTP get test, primary guest send lots of packet differ to secondary guest's,
the packet payload are not same, but the total payload are same.
I think I have to buffer some packet's payload depend on sequence number for comparison?
Any idea about this?

Zhang Chen


Zhang Chen

Reply via email to