# HG changeset patch # User Nobuyasu Oshiro # Date 1315416476 -32400 # Node ID b332c1050979336e69c47a32362d407313a3a73c # Parent 5ec6fc18719106fd14b2082e4828f75525df0c21 modify index.html diff -r 5ec6fc187191 -r b332c1050979 OpenSourceConference/index.html --- a/OpenSourceConference/index.html Thu Sep 08 01:14:58 2011 +0900 +++ b/OpenSourceConference/index.html Thu Sep 08 02:27:56 2011 +0900 @@ -192,21 +192,23 @@

RFB protocol

  • Remote Frame Buffer Protocol :
    GUI操作によるリモートアクセス用の通信プロトコル。VNCで用いられる。
  • 転送される画面(フレームバッファ)のデータは変更があった部分(差分)だけが矩形単位で送られる。
  • - +
    - + + - + +
    -

    で囲まれている矩形のデータだけが送られてくる。

    +

    で囲まれている矩形のデータだけが送られてくる。

    @@ -306,9 +295,7 @@

    RFB Protocol

  • FramebufferUpdate
  • - -
    - +
    @@ -317,7 +304,7 @@ - + @@ -335,8 +322,15 @@
    バイト数
    型   [値]
    1
    U8         0
    U8          0
    message-type
  • 以下number-of-rectanglesの数だけ矩形のデータが続く
  • + - + +
    + + + + + + @@ -368,28 +362,82 @@ + + + + + + +
    バイト数
    型   
    説明
    2encoding-type
    ...
    ...
    PIXEL DATA
    +
    + + - -
    -

    RFB Protocol

    -
  • 図を入れる
  • -
  • 指定された領域の矩形を更新しているのが分かる図
  • -
    -

    RFB Protocol

    -
  • RFB ProtocolにはFramebufferUpdateRequestだけではなく、キーボード・マウスポインタの入力を伝えるkeyEventやPointerEvent等もある。
  • -
  • TreeVNCでは画面の共有を行いたいのでそれらのイベントに対しての実装は行っていない。
  • -
    + + +

    + Framebufferupdate +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    x-position224
    y-position146
    width800
    height521
    encoding-type16(ZRLE)
    ZRLEData...
    + + + + + + + +
    + + + + + +
    + +
    -

    負荷分散

    +

    データ転送量

  • 負荷分散を行う上で重要: -> 転送するデータ量を見積もること
  • ネットワークの帯域やswtichにかかる負荷を把握するため。負荷を把握していないと負荷分散できているかどうかも解らない。
  • RFB Protocolで送られてくるデータ量: -> 先頭の20バイトを読むことで見積もることができる。