by shigemk2

当面は技術的なことしか書かない

OS*: OSv on * #kernelvm

BitVisor

  • ハイパーバイザのレイヤでカプセリングなど

bitvisor / bitvisor — Bitbucket

github.com

  • OSvとBitVisorを組み合わせたり出来る(OSb)
  • パススルーでおーけー
  • Virtioを見せればおーけー
  • OSv

Para Pass-through Virtio

  • Virtioリングだけ取り繕う
  • パススルー
  • 性能評価(forループ)をしてみると、OSbとLinuxではOSbのほうが速い。

OSpデザイン

  • App OSv HardWare

ゆるい実装の解説

  • 送受信の基本的な流れ
  • デバイスの初期化
  • 送信処理の実装
  • 受信処理の実装

Intel NIC送信の基本

  • I/O Registers Ring Buffer

送信処理の実装

  • OSv -> Driver
  • OSvはキューに積む処理を期待
  • OSvはProducerの更新を期待
  • このあたりを実装することでパケットが飛ぶ

受信処理の実装

  • Driver -> OSv Reception

残念ながらゆるい実装

  • ポーリング
  • 現在ではあまりスループットが高くないので、改善したい

まとめ

OSv OSb OSp