FreeBSD Daily Topics

2009年10月22日FreeBSDステータスレポート200904-09 その5 - libprocstat(3)プロジェクト、TCPおよびSCTP向けCUBIC帯域量制御アルゴリズムモジュール、ネットワークスタックの仮想化

heads-up

The libprocstat(3) project

実行中のシステムおよびコアファイルの両方から環境に依存せずに整理された形でプロセスの情報とオープンされているファイルの情報を取得するためのライブラリlibprocstat(3)が開発段階にあると報告されています。このライブラリを使うことでlsof(1)やfstat(1)のようなファイル・プロセスのモニタリングツールの開発が可能になります。

libprocstat(3)の開発に合わせて同ライブラリを使うように書き換えられたfstat(1)やfuser(1)ユーティリティも提供されており、kvm(3)インターフェースを直接経由することなく情報の取得ができていることが確認できるようです。libprocstat(3)を使うことで、カーネルで提供されるライブラリのバイナリインターフェース(ABI)の互換性を気にする必要がなくなります。

今後の開発課題として、VMオブジェクトおよびファイルディスクリプタに関連付けられたファイルシステムパスを取得するためのKVMベースネームキャッシュルックアップの実装と、ABIに依存しないうえに拡張可能な形式でプロセス情報をカーネルからファイルにポーティングする方法の可能性を模索していく作業があげられています。

Modular Congestion Control

Lawrence Stewart氏から、すでに実装されているNewRenoアルゴリズムおよびH-TCPアルゴリズムを補うためのCUBIC帯域量制御アルゴリズムの実装が完成したという報告がおこなわれています。受け取ったパッチを取り込み可能な形へ書き換える過程で、同モジュールをTCPおよびSCTPの量スタックにおいて使えるように変更したという説明もあります。CURRENTにコミットする同機能を使ってFreeBSD 8.1-RELEASEへの取り込みが間に合うように協力して欲しいという説明があります。

Network Stack Virtualization

ネットワークスタックの仮想化に関する取り組みが紹介されています。これはFreeBSDカーネルから複数の依存しないネットワークを管理できるようにするための取り組みで、Jail環境ごとに独立したネットワーク環境を実現します。それぞれに独立したプライベートネットワークインターフェースの管理やIPv4/v6ネットワークとポートスペース、ルーティングテーブル、IPsec設定、ファイアウォールなどが管理できるようになります。

次の作業としてはほかのサブシステムへの適用や関連するドキュメントを更新する前に、まずはネットワークスタックの仮想化を完了させアロケータフレームワークをより広範囲に適用することだと説明があります。長期的な目標としてはSYS-V IPCなどのほかのサブシステムの仮想化やより優れた特権ハンドリング、リソースの制御などがあげられています。

リリースが近づいているFreeBSD 8.0-RELEASEではvnetの機能は実験的な機能としての提供になります。この機能は8.2-RELEASEでのプロダクション品質化を目指すと説明があります。

おすすめ記事

記事・ニュース一覧