All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gonglei <arei.gonglei@huawei.com>
To: Jason Wang <jasowang@redhat.com>,
	Li Zhijian <lizhijian@cn.fujitsu.com>,
	qemu-devel@nongnu.org, stefanha@redhat.com
Cc: jan.kiszka@siemens.com, Yang Hongyang <yanghy@cn.fujitsu.com>,
	zhanghailiang <zhang.zhanghailiang@huawei.com>,
	dgilbert@redhat.com,
	"peter.huangpeng" <peter.huangpeng@huawei.com>
Subject: Re: [Qemu-devel] [POC] colo-proxy in qemu
Date: Thu, 30 Jul 2015 15:16:15 +0800	[thread overview]
Message-ID: <55B9CF3F.2060202@huawei.com> (raw)
In-Reply-To: <55B9A6C6.6010008@redhat.com>

On 2015/7/30 12:23, Jason Wang wrote:
> 
> 
> On 07/20/2015 02:42 PM, Li Zhijian wrote:
>> Hi, all
>>
>> We are planning to implement colo-proxy in qemu to cache and compare
>> packets.
>> This module is one of the important component of COLO project and now
>> it is
>> still in early stage, so any comments and feedback are warmly welcomed,
>> thanks in advance.
>>
>> ## Background
>> COLO FT/HA (COarse-grain LOck-stepping Virtual Machines for Non-stop
>> Service)
>> project is a high availability solution. Both Primary VM (PVM) and
>> Secondary VM
>> (SVM) run in parallel. They receive the same request from client, and
>> generate
>> responses in parallel too. If the response packets from PVM and SVM are
>> identical, they are released immediately. Otherwise, a VM checkpoint
>> (on demand)
>> is conducted.
>> Paper:
>> http://www.socc2013.org/home/program/a3-dong.pdf?attredirects=0
>> COLO on Xen:
>> http://wiki.xen.org/wiki/COLO_-_Coarse_Grain_Lock_Stepping
>> COLO on Qemu/KVM:
>> http://wiki.qemu.org/Features/COLO
>>
>> By the needs of capturing response packets from PVM and SVM and
>> finding out
>> whether they are identical, we introduce a new module to qemu
>> networking called
>> colo-proxy.
> 
> A question here, the packet comparing may be very tricky. For example,
> some protocol use random data to generate unpredictable id or something
> else. One example is ipv6_select_ident() in Linux. So COLO needs a
> mechanism to make sure PVM and SVM can generate same random data?
> 
Good question, the random data connection is a big problem for COLO. At
present, it will trigger checkpoint processing because of the different random data.
I don't think any mechanisms can assure two different machines generate
the same random data. If you have any ideas, pls tell us :)

Frequent checkpoint can handle this scenario, but maybe will cause the
performance poor. :(

Regards,
-Gonglei

  reply	other threads:[~2015-07-30  7:17 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-20  6:42 [Qemu-devel] [POC] colo-proxy in qemu Li Zhijian
2015-07-20 10:32 ` Stefan Hajnoczi
2015-07-20 11:55   ` zhanghailiang
2015-07-20 13:12     ` Vasiliy Tolstov
2015-07-20 15:01       ` Stefan Hajnoczi
2015-07-21  1:59         ` zhanghailiang
2015-07-28 22:13           ` Samuel Thibault
2015-07-21  6:13         ` Jan Kiszka
2015-07-21  9:49           ` Stefan Hajnoczi
2015-07-27 10:13             ` Stefan Hajnoczi
2015-07-27 11:24               ` zhanghailiang
2015-07-27 11:31                 ` Samuel Thibault
2015-07-27 13:33               ` Jan Kiszka
2015-07-28 22:12                 ` Samuel Thibault
2015-07-29  7:36                   ` Jan Kiszka
2015-07-29  9:33                     ` [Qemu-devel] [PATCH] MAINTAINERS: Add Samuel Thibault as slirp maintainer Samuel Thibault
2015-08-06 10:10                       ` Stefan Hajnoczi
2015-08-06 12:29                         ` Fam Zheng
2015-08-07 10:19                           ` Stefan Hajnoczi
2015-08-07 10:34                             ` Fam Zheng
2015-07-20 12:02   ` [Qemu-devel] [POC] colo-proxy in qemu Li Zhijian
2015-07-24  2:04   ` Dong, Eddie
2015-07-24  2:12     ` Jason Wang
2015-07-24  8:04       ` Yang Hongyang
2015-07-27  3:24         ` Jason Wang
2015-07-27  3:54           ` Yang Hongyang
2015-07-27  4:49             ` Jason Wang
2015-07-27  5:51               ` Yang Hongyang
2015-07-27  7:37                 ` Jason Wang
2015-07-27  7:49                   ` Yang Hongyang
2015-07-27  8:06                     ` Jason Wang
2015-07-27  8:22                       ` Yang Hongyang
2015-07-27  7:53                 ` Jason Wang
2015-07-27  8:17                   ` Yang Hongyang
2015-07-27 18:33                   ` Dr. David Alan Gilbert
2015-07-27 10:40         ` Dr. David Alan Gilbert
2015-07-27 13:39           ` Yang Hongyang
2015-07-24  2:05 ` Dong, Eddie
2015-07-30  4:23 ` Jason Wang
2015-07-30  7:16   ` Gonglei [this message]
2015-07-30  7:47     ` Dong, Eddie
2015-07-30  8:03       ` Dr. David Alan Gilbert
2015-07-30  8:15         ` Jason Wang
2015-07-30 11:56           ` Dr. David Alan Gilbert
2015-07-30 12:10             ` Gonglei
2015-07-30 12:30               ` Dr. David Alan Gilbert
2015-07-30 12:42                 ` zhanghailiang
2015-07-30 13:59                   ` Dr. David Alan Gilbert
2015-07-30 15:17                     ` Yang Hongyang
2015-07-30 17:53                       ` Dr. David Alan Gilbert
2015-07-31  1:08                         ` Yang Hongyang
2015-07-31  1:28                           ` zhanghailiang
2015-07-31  1:31                             ` Yang Hongyang
2015-07-31  1:26                         ` zhanghailiang
  -- strict thread matches above, loose matches on Subject: below --
2015-11-10  5:26 [Qemu-devel] [POC]colo-proxy " Tkid
2015-11-10  7:35 ` Jason Wang
2015-11-10  8:30   ` zhanghailiang
2015-11-11  2:28     ` Jason Wang
2015-11-10  9:35   ` Tkid
2015-11-11  3:04     ` Jason Wang
2015-11-10  9:41   ` Dr. David Alan Gilbert
2015-11-11  3:09     ` Jason Wang
2015-11-11  9:03       ` Dr. David Alan Gilbert
2015-11-11  1:23   ` Dong, Eddie
2015-11-11  3:26     ` Jason Wang
2015-11-10 10:54 ` Dr. David Alan Gilbert
2015-11-11  2:46   ` Zhang Chen
2015-11-13 12:33     ` Dr. David Alan Gilbert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55B9CF3F.2060202@huawei.com \
    --to=arei.gonglei@huawei.com \
    --cc=dgilbert@redhat.com \
    --cc=jan.kiszka@siemens.com \
    --cc=jasowang@redhat.com \
    --cc=lizhijian@cn.fujitsu.com \
    --cc=peter.huangpeng@huawei.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=yanghy@cn.fujitsu.com \
    --cc=zhang.zhanghailiang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.