SSH X Forwarding を経由してyoutubeを見てみた

Red Hat が取り組んでいるデスクトップ仮想化では、SolidICE ( クライアントPCのビデオメモリに直接書込みを行うことで、サーバー側のメモリに画像作成=> クライアントに転送 のオーバーヘッドを無くす ) が鍵になるようだが、元々Xでは、サーバー側の画面を Xlibのレベルでクライアントに転送する機能が備わっているため、Xを正しく設定すれば、上の仮想化方式と同様の速度が出せそうに見える。<<参考リンク>>
http://sourceforge.jp/magazine/08/05/14/0053212

元々はPC側

# xhost +

などを実施し、VMにて、

DISPLAY=192.168.1.11 firefox --no-remote

などとして試すつもりだったのだが、PC側のXのセキュリティの関係で上手く動作しなかったため、SSHのフォワーディング機能を使ってVMの画面を転送してみた。

X Forwarding自体はsystem-config-cluster, virt-manager など頻繁に使っており、VMに対して使用可能であることは確認していたのだが、Firefox, flash などビデオメモリに負荷をかける機能はあまり使わないようにしていたので、今回ビデオ機能の性能テストもかねて、youtubeを見てみた。。<< X Forwarding >>
http://d.hatena.ne.jp/aaabbb_200904/20090509/1241885290

ホストOSは、Fedora10のKVM, ゲストOSとしてはUbuntu9.04 32bitを使い、Flashプラグインは、Adobeのサイトからダウンロードできた Ubuntu 8.04用のdebファイルを使用した。以下の結果は自己責任にて (ry


で、実際にyoutubeを見てみたのだが、感想としてはまあまあ見られるといったところで、やはり動きが大きい場面ではチラつきが発生しているようだ。とはいえ全く見られないわけではなく、、アナログテレビより若干ぼやけている感じ、、といったところだと思う。

なお、一見して、CPU使用率はゲスト、ホスト、PC共に余裕があったため、何がチラつきの原因なのかを調べてみたのだが、youtubeの画面が映っている間は常に、クライアントPCの100MBitイーサネットを使いきっている状態になっているのが原因のようだ。。 (パケットロスによって細部が飛んでいる) もちろんクライアントPCから直接youtubeを見た場合にはこの事象は起こらない。画面を大きくしてもCPU, イーサネット共に余裕があるままである。。

PC側のイーサネットが100Mbitのため、この部分の確認は簡単にはできないため、、そのうち 1Gbitイーサネットに変更できたらまたイーサネットが原因だったかを確認してみようと思う。

基本的には youtubeの画像は既に圧縮が行われており、またX Forwarding の場合には既に直接クライアントPC側へ書込みを行うようになっているはずなので、プロトコルの変更を行ったとしても、これ以上の高速化は難しそうだ。。(別にLinuxに限ったことではなく、デスクトップ仮想化全体の問題として )
Xではなく、もう一段低いレイヤーでチューニングを行うことで、これ以上の改善が見込めるのだろうか。。。それともクライアントPC側にもやはり1Gbitイーサネットが必要なのだろうか。。微妙なところだ。。