[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v2 00/10] Add colo-proxy based on netfilter
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [RFC PATCH v2 00/10] Add colo-proxy based on netfilter |
Date: |
Fri, 8 Jan 2016 11:19:27 +0000 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
* Zhang Chen (address@hidden) wrote:
> From: zhangchen <address@hidden>
>
> Hi,all
>
> This patch add an colo-proxy object, COLO-Proxy is a part of COLO,
> based on qemu netfilter and it's a plugin for qemu netfilter. the function
> keep Secondary VM connect normal to Primary VM and compare packets
> sent by PVM to sent by SVM.if the packet difference,notify COLO do
> checkpoint and send all primary packet has queued.
>
> You can also get the series from:
>
> https://github.com/zhangckid/qemu/tree/colo-v2.2-periodic-mode-with-colo-proxyV2
Are you sure that tag is correct? The series of commits doesn't seem to match
up with the set of commits posted.
Dave
>
> Usage:
>
> primary:
> -netdev tap,id=bn0 -device e1000,netdev=bn0
> -object colo-proxy,id=f0,netdev=bn0,queue=all,mode=primary,addr=host:port
>
> secondary:
> -netdev tap,id=bn0 -device e1000,netdev=bn0
> -object colo-proxy,id=f0,netdev=bn0,queue=all,mode=secondary,addr=host:port
>
> NOTE:
> queue must set "all". See enum NetFilterDirection for detail.
> colo-proxy need queue all packets
> colo-proxy V2 just can compare ip packet
>
>
> ## 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.
>
> V2:
> rebase colo-proxy with qemu-colo-v2.2-periodic-mode
> fix dave's comments
> fix wency's comments
> fix zhanghailiang's comments
>
> v1:
> initial patch.
>
>
>
> zhangchen (10):
> Init colo-proxy object based on netfilter
> Jhash: add linux kernel jhashtable in qemu
> Colo-proxy: add colo-proxy framework
> Colo-proxy: add data structure and jhash func
> net/colo-proxy: Add colo interface to use proxy
> net/colo-proxy: add socket used by forward func
> net/colo-proxy: Add packet enqueue & handle func
> net/colo-proxy: Handle packet and connection
> net/colo-proxy: Compare pri pkt to sec pkt
> net/colo-proxy: Colo-proxy do checkpoint and clear
>
> include/qemu/jhash.h | 61 ++++
> net/Makefile.objs | 1 +
> net/colo-proxy.c | 939
> +++++++++++++++++++++++++++++++++++++++++++++++++++
> net/colo-proxy.h | 24 ++
> qemu-options.hx | 6 +
> trace-events | 8 +
> vl.c | 3 +-
> 7 files changed, 1041 insertions(+), 1 deletion(-)
> create mode 100644 include/qemu/jhash.h
> create mode 100644 net/colo-proxy.c
> create mode 100644 net/colo-proxy.h
>
> --
> 1.9.1
>
>
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK
- Re: [Qemu-devel] [RFC PATCH v2 00/10] Add colo-proxy based on netfilter,
Dr. David Alan Gilbert <=