プロフィール

大山恵弘

  • Author:大山恵弘
  • 公式なサイトはこちら

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

ブロとも申請フォーム

ブログ内検索

RSSフィード

リンク

FC2カウンター

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【VMM】 Characterization of network processing overheads in Xen 【性能評価】

In VTDC 2006.
http://workspace.globus.org/vtdc06/

XenのDom0とDomUを、両方とも1つのCPU上で動かした場合と、それぞれ1つのCPU上で動かした場合とで、ネットワーク性能を比較した。IPerfベンチマークを利用。

アブストに「2CPUで動かすほうが1CPUで動かすよりもexpensiveだった」と書いてあるので、まずギョッとする。マルチコアの時代もこれで終わりかって。

そんなことがあるのか、キャッシュのせいか、などと思いながら読むと、スループットは2CPUのほうが高いという結果。2CPUのほうが各処理にかかるサイクルが多いので、expensiveであるという表現に至ったようだ。native, 1CPU, 2CPUで、スループット的には、1550, 750, 1100くらい。ペイロード1バイトを受信するのにかかるサイクルが、17, 37, 46。

CPUを複数使えば、全体としての処理サイクルが増えるのは当たり前という気がするが...

それはそれとして、ネットワークI/O周りの性能のグラフは、見ててなかなか楽しい。
スポンサーサイト

【異常検知】Profiling Users in GUI Based Systems for Masquerade Detection 【セキュリティ】

In 2006 IEEE Workshop on Information Assurance.
http://www.cse.buffalo.edu/~ashish/research.html

Windows XPのGUI動作を学習して異常検知。

シェルコマンドを使った異常検知はたくさん研究されているが、GUIコマンドについても異常検知が必要という問題意識。

マウスの動き、クリック、キータイプ速度などを利用。

サポートベクタマシンを利用して特徴ベクタを学習、分類。

GUIに関する公開されたデータセットはないので、研究室のユーザ3人を対象にログを収集。

いかにも既存研究ありそうな気がする研究だが、確かにたくさんある。差分は、たくさんのGUI情報を扱うことと、認証でなくなりすまし検出に使っているところらしい。

【セキュリティ】 Safe Java Native Interface 【プログラミング言語】

In IEEE ISSSE 2006.
http://www.cs.princeton.edu/~appel/papers/

SafeJNIの提案。アッペルさんの最近の研究。

JNIを使ったときにJavaの型安全性をバイパスできるような抜け道をidentifyした。

・Javaの世界からもらったリファレンスはJNI APIを使って操作されることを期待されている。しかしそれにしたがわず、リファレンスをいじったりたどったりすれば、想定外の領域をアクセスできる。
・JNI API関数の関数テーブルを上書きされてしまう。
・Cのコードは、Javaの世界からもらった配列の添字を超えてアクセスできる。
・Cのコードはヒープのどこでも読めるので、privateみたいなアクセス制御機構が効かない。
・JNIではmalloc/freeのような感じで明示的にメモリ管理をするので、ダングリングポインタ、多重フリー、メモリリークなどのバグが入る。
・JavaからCに来る時点で、どんなオブジェクトも単一の型に変換されるので、Javaの世界とCの世界で型が合わないことがある。
・Cの世界からJavaの世界のオブジェクトをアクセスするときには、型を意識して適切な関数を呼び出さなければならない。
・Cの関数からJavaの関数を呼び出せる。呼び出しから返った後には例外の検査などが必要。それをしないと予期しない結果になる。
・Cの世界にはJavaのセキュリティマネージャの制御が及ばない。

解決。

・CCuredをJavaハンドルポインタと読み出しオンリーポインタで拡張(?)した型システム。JNIに関連するinvariantを静的に強制。リファレンスをいじられて変なとこ触られたり、関数テーブルを上書きされることを防ぐ。

Javaハンドルポインタは、読むことも書くこともできない(JNI APIに渡される)ポインタ。

読み出しオンリーポインタは、そのポインタが指す領域に書き込みできないポインタ。Cで言う、ポインタのconstみたいなもの。

・動的検査の挿入。配列境界、アクセス制御、例外などの検査。

・安全なメモリ管理。メモリ領域に有効タグをつける。確保したらセット。フリーしたらクリア。タグがクリアされてる領域をフリーしようとしたら二重フリーと判断。

あまり奇をてらわず、スタンダードな感じ。

| ホーム |


 BLOG TOP 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。