categories: オプソ

Remote desktop trial using SPICE protocol via mobile broadband connection

This post is continued story from these posts ( 1, 2, 3 ).

Previously I tried SPICE protocol as alternative of Microsoft’s RDP, but at that time SPICE protocol was very early development so I could not satisfy my needs to use in daily use. But situation has changed. RHEL 6 has included SPICE protocol for VDI, so I’ve tried once again.

1. Environment

  • Physical Host: Scientific Linux 6
  • kernel: 2.6.32-71.el6.x86_64
  • qemu-kvm-0.12.1.2-2.160.el6_1.2.x86_64
  • spice-server-0.8.0-1.el6.x86_64

  • Virtual Desktop: Fedora 15(i686)

  • kernel: 2.6.38.8-35.fc15.i686.PAE

  • xorg-x11-drv-qxl-0.0.21-3.fc15.i686

I’ve also used DNS, ddclient, and some router for this trial.(not written in this post)

2. Create Physical host

First, I’ve created normal kvm host. After the installation, I’ve also installed spice-server via yum.

3. Create Virtual Desktop

This procedure is just a little bit complex. First, I’ve created virtual machine using virt-manager and installed Fedora 15. But virt-manager only treat with VNC connection, so I’ve changed the configuration of virtual machine to work with SPICE.

4. Modify configuration to work with SPICE

After the installation, I’ve dumped configuration of virtual machine to XML file.

1
2
3
4
5
(at Guest OS)
# halt -p
(at Host OS)
# virsh dumpxml <virtual machine name> > <XML filename>
# virsh undefine <virtual machine name>

and edit XML file. Red charactor shows changes from original XML file.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<domain type='kvm'>
  <name>f15</name>
  <uuid>4845a1da-cf61-62dc-783c-d0bff899b68e</uuid>
  <memory>786432</memory>
  <currentMemory>786432</currentMemory>
  <vcpu>1</vcpu>
  <os>
    <type arch='i686' machine='rhel6.1.0'>hvm</type>
    <boot dev='hd'/>
    <boot dev='cdrom'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/mnt/storage/cdimg/fedora/Fedora-15-i386-netinst.iso'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' unit='0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/home/vm/f15.img'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </disk>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:c1:29:97'/>
      <source bridge='br0'/>
      <target dev='vnet4'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target port='0'/>
    </console>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <graphics type='spice' port='5930' autoport='no' listen='0.0.0.0'/>
    <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </sound>
    <video>
      <model type='qxl' vram='32768' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </memballoon>
  </devices>
</domain>

After the edit I defined virtual machine again.

1
# virsh define /home/vm/f15.xml

After definition, I cannot see console in virt-manager anymore. The reason is that virt-manager doesn’t support SPICE. So I issued virsh command to boot virtual machine.

1
# virsh start f15

5. Connect virtual machine from Windows client

Windows client bianry can be downloded from spice-space.org. I’ve downloaded spice-client-win32-0.6.3.zip and spice_libs_win32_063_and_earlier.zip.

After download, I unzipped both package and moved spicec.exe to libs directory for spicec.exe works with some libraries.

6. User Experience

I’ve tried. See movie.

7. Conclusion

SPICE protocol works good with mobile broadband and LAN connection, but you will feel some stress about some multimedia experience. SPICE connection via mobile broadband will consume about 800kbps bandwidth from my experience.

Enjoy.

今日はXen4.0でネットワークパフォーマンスを計測した結果を公開した

Xen4.0 and vt-d Network Performance BenchmarkView more presentations from mkiuchi3. SlideShareとか使ってみる。グラフの元データはここからダウンロードしてください。プレゼン自体はSlideShareからダウンロードできます。

あるFLOSSプロジェクトが失敗する運命にあるか判別する方法

あるFLOSSプロジェクトが失敗する運命にあるか判別する方法 むう・・・どうやらgnviewプロジェクトには難破船が来ているようだ・・・orz

今日はDNSの逆引きゾーンファイル書くときはIPアドレスも逆順で書かなければならないことを知った

クラスBのプライベートアドレスとか使ってると困るというか今さら気づいた。hogehoge.fugafugaが172.16.0.1となるときは 1.0 IN PTR hogehoge.fugafuga. としないといけない。あー。

翻訳とかしてみる

あるソフトウェアの翻訳をお手伝いしている。英語は読み書きは怪しいながらもできなくはない、というレベルなので挑戦してみる。SPACE ALCとにらめっこしながら。ホフク前進している感じ。じわじわ行くぜ。

『オープンソースソフトウェアの育て方』読了

http://www.amazon.co.jp/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%81%AE%E8%82%B2%E3%81%A6%E6%96%B9-Karl-Fogel/dp/4873114128 これ読んでリポジトリが気になった。でも俺にはそこまでいらねえやとも思った。

ありうる話

http://anond.hatelabo.jp/20090926040206 ありうるというか、現実にこういう理屈が通ってるんだろうな・・・。俺の会社もだんだんこういう方向になってる。憂鬱になる。

長岡まつり大花火大会

行ってきた!土手にごろっと転がって日本一の花火をまったり見れる!最高! 撮影したのは3日目のものです。2日目は残念ながら天候に恵まれなかったようです。 元ソースはEXLIM EX-V7(H.264)で、ffmpegで変換しました。(ソースはこのエントリの末尾に) そしてHTML5のvideoタグを使ってあげてみる!(OggTheora256k+OggVorbis128k) Firefox3.5以降で見てください。 実際には視野角いっぱいに花火が広がってド迫力なのですが、普通のカメラでは視野が狭くなってそれを伝えられない。広角レンズ買う人の気持ちがわかるわ。 ベスビアス超大型スターマイン ここにビデオが表示されます。Firefox3.5以降で対応 ハローキティ花火(ちゃんと形がハローキティの顔になっている所に注目!) ここにビデオが表示されます。Firefox3.5以降で対応 ベスビアス超大型スターマインその2

iphone用に動画をffmpegでエンコードする

チラ裏的に。 ffmpeg -threads 4 -i -r 29.97 -vcodec libx264 -s 480x272 -flags +loop -cmp +chroma -deblockalpha 0 -deblockbeta 0 -crf 24 -bt 256k -refs 1 -coder 0 -me umh -me_range 16 -subq 5 -partitions +parti4x4+parti8x8+partp8x8 -g 250 -keyint_min 25 -level 30 -qmin 10 -qmax 51 -trellis 2 -sc_threshold 40 -i_qfactor 0.71 -acodec libfaac -ab 128k -ar 48000 -ac 2 こんなのエンコードしてる 【ニコニコ動画】【100MB版】THE IDOLM@STER WAKAMURA RECYCLE VOL.02 (meets Perfume)高画質版+おまけ付 すげぇ。アイドルマスターもPerfumeも知らないけど余裕でお金出すよ!Perfumeにも興味出るね!ニコニコやっぱすげーよ。才能集まりすぎ! more チラ裏の裏。 でも未だにPSGでピコピコ音はさすがにアレというか。最近のゲーム音楽の人はけっこうすごいよ。 こんなのとか 【ニコニコ動画】ファイナルファンタジータクティクス 戦闘曲とか FFT こんなのとか 【ニコニコ動画】浜渦正志のバトルメドレー すげーかっけー。ゲームミュージックサイコー!!

ejabberdを立ち上げ

XMPPプロトコルで動作するIMサーバであるejabberdを起動。これがなぜかDNSでの名前解決を前提としていたためBINDの設定まで行った。鯖側の古いFedoraはrpmではイマイチうまく動かなかったので最新の安定版をtarballからコンパイルしてあっさり起動。PidginとiChatでいろいろいじってみる。なるほどなるほど。 ・・・別に一人でチャットしたいわけじゃなくて。ちょっと下ごしらえです。

planetはRSSリーダじゃない方が読みやすい

と思った。時々開くのはPlanet GNOMEPlanet Fedoraだけど。ブラウザにざ〜っと表示されるいろいろな人の多様な考えが面白い。