[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH V4 3/7] qapi/net: Add new QMP command for COLO passthrough
From: |
Markus Armbruster |
Subject: |
Re: [PATCH V4 3/7] qapi/net: Add new QMP command for COLO passthrough |
Date: |
Mon, 22 Mar 2021 13:36:05 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Zhang Chen <chen.zhang@intel.com> writes:
> Since the real user scenario does not need COLO to monitor all traffic.
> Add colo-passthrough-add and colo-passthrough-del to maintain
> a COLO network passthrough list.
>
> Signed-off-by: Zhang Chen <chen.zhang@intel.com>
> ---
> net/net.c | 10 ++++++++++
> qapi/net.json | 40 ++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+)
>
> diff --git a/net/net.c b/net/net.c
> index 725a4e1450..7c7cefe0e0 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -1199,6 +1199,16 @@ void qmp_netdev_del(const char *id, Error **errp)
> }
> }
>
> +void qmp_colo_passthrough_add(L4_Connection *conn, Error **errp)
> +{
> + /* Setup passthrough connection */
> +}
> +
> +void qmp_colo_passthrough_del(L4_Connection *conn, Error **errp)
> +{
> + /* Delete passthrough connection */
> +}
> +
> static void netfilter_print_info(Monitor *mon, NetFilterState *nf)
> {
> char *str;
> diff --git a/qapi/net.json b/qapi/net.json
> index cd4a8ed95e..ec7d3b1128 100644
> --- a/qapi/net.json
> +++ b/qapi/net.json
> @@ -851,3 +851,43 @@
> 'data': { 'protocol': 'IP_PROTOCOL', '*id': 'str', '*src_ip': 'str',
> '*dst_ip': 'str',
> '*src_port': 'int', '*dst_port': 'int' } }
>
> +##
> +# @colo-passthrough-add:
> +#
> +# Add passthrough entry according to customer's needs in COLO-compare.
> +#
> +# Returns: Nothing on success
> +#
> +# Since: 6.1
> +#
> +# Example:
> +#
> +# -> { "execute": "colo-passthrough-add",
> +# "arguments": { "protocol": "tcp", "id": "object0", "src_ip":
> "192.168.1.1",
> +# "dst_ip": "192.168.1.2", "src_port": 1234, "dst_port": 4321 } }
> +# <- { "return": {} }
> +#
> +##
> +{ 'command': 'colo-passthrough-add', 'boxed': true,
> + 'data': 'L4_Connection' }
> +
> +##
> +# @colo-passthrough-del:
> +#
> +# Delete passthrough entry according to customer's needs in COLO-compare.
> +#
> +# Returns: Nothing on success
> +#
> +# Since: 6.1
> +#
> +# Example:
> +#
> +# -> { "execute": "colo-passthrough-del",
> +# "arguments": { "protocol": "tcp", "id": "object0", "src_ip":
> "192.168.1.1",
> +# "dst_ip": "192.168.1.2", "src_port": 1234, "dst_port": 4321 } }
> +# <- { "return": {} }
> +#
> +##
> +{ 'command': 'colo-passthrough-del', 'boxed': true,
> + 'data': 'L4_Connection' }
> +
Now let's look at colo-passthrough-del. I figure it is for deleting the
kind of things colo-passthrough-add adds.
What exactly is deleted? The thing created with the exact same
arguments?
This would be unusual. Commonly, FOO-add and FOO-del both take a string
ID argument. The FOO created by FOO-add remembers its ID, and FOO-del
deletes by ID.
- Re: [PATCH V4 2/7] qapi/net.json: Add L4_Connection definition, (continued)
- Re: [PATCH V4 3/7] qapi/net: Add new QMP command for COLO passthrough,
Markus Armbruster <=
[PATCH V4 5/7] net/colo-compare: Move data structure and define to .h file., Zhang Chen, 2021/03/19
[PATCH V4 7/7] net/net.c: Add handler for COLO passthrough connection, Zhang Chen, 2021/03/19
[PATCH V4 6/7] net/colo-compare: Add passthrough list to CompareState, Zhang Chen, 2021/03/19
[PATCH V4 4/7] hmp-commands: Add new HMP command for COLO passthrough, Zhang Chen, 2021/03/19