qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC] QEMU Guest and Host channel


From: Dong Xu Wang
Subject: [Qemu-devel] [RFC] QEMU Guest and Host channel
Date: Sun, 12 May 2013 23:12:20 +0800
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130328 Thunderbird/17.0.5

Hi,

Now QEMU has a guest agent tool:
http://wiki.qemu.org/Features/QAPI/GuestAgent

Guest agent is used to send "guest agent commands" to agent, and agent will do some work and return the results via QMP protocol. Now qemu-guest-agent is mainly for single direction: Host->Guest, that is users will send command from host to guest.

I think it is useful to extend single direction to two-way protocol. Because sometimes, guest OS might have interest in Host's information, such as QEMU versions, with/without hardware assist virtualization features, host OS versions, host RAM/CPU usage.

Guest and host channel will add a individual command interface called
"qemu-channel", (in the future, it is possible to merge it with qemu-ga).

Usage can be like this:
1) install qemu-channel to guest OS. In windows, it also can be installed as a service, like qemu-ga.exe.
2) qemu-channel open a listen socket, waiting for user input.
3) interact with qemu-channel, using socat/nc to send command to qemu-channel, such as:
{"execute":"get-host-ramsize"}
4) qemu-channel communicates with QEMU, via a certain transport method. QEMU returns the results to qemu-channel.
5) qemu-channel writes result to client.

Since qemu guest agent already has channel/service/commands code, I think I can re-use some of them.

Do you have any suggestions or requests about my RFC? Please let me know your ideas, thanks in advance. :)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]