Dependable SIAC (Single IP Address Cluster)
WebサーバをはじめとしたTCPアプリケーション向けのソフトウェアロードバランサです。
主な機能
- パケットルーティングのための中央サーバを持たず、単一障害点を持たない設計になっています。
- クライアントからのリクエスト内容を解析し、リクエスト内容に応じた担当ノードを決定します。
- リクエスト解析はカーネル内のモジュールで行われます。リクエスト解析モジュールは動的に追加できる設計になっています。
ダウンロード
ドキュメント
バイナリ
- dtsd_1.0.0_amd64.deb
- dtsd-doc_1.0.0_amd64.deb
- dtsd-httpri_1.0.0_amd64.deb
- dtsd-loadmonitor-client_1.0.0_amd64.deb
- dtsd-loadmonitor-server_1.0.0_amd64.deb
- dtsd-wui_1.0.0_amd64.deb
- dts-lib_1.0.0_amd64.deb
- dts-module-2.6.32-45-generic_1.0.0+2.6.32-45.102_amd64.deb
- dts-source_1.0.0_all.deb
- dts-util_1.0.0_amd64.deb
- fakemac-module-2.6.32-45-generic_1.0.0+2.6.32-45.102_amd64.deb
- fakemac-source_1.0.0_all.deb
ソースコード
- ソースコード一括ダウンロード (tar形式 約2MB)
ライセンス
ライセンスはGPL(一部パッケージはBSDライセンス)となっています。 詳しくは各ソースコードのdebian/copyrightをご覧ください。
リクエストインスペクタ
リクエストインスペクタは、本システムにおいてクライアントからのリクエスト内容を解析して処理割り当てノードを決定するためのプログラムです。以下は、新しいリクエストインスペクタを設計実装するためのチュートリアルと、Webクライアントが送ってきたUser-agent文字列に応じて割り当てノードを決定する"User agent リクエストインスペクタ"のソースコードおよびドキュメントです。
- リクエストインスペクタ チュートリアル(HTML)
- User agent リクエストインスペクタ
文献
- Hajime Fujita, Yutaka Ishikawa: DTS: Broadcast-based Content-aware TCP Connection Handover, IPSJ Transactions on Advanced Computing Systems Vol.4 No.2 (ACS 33), pp. 59-69, Mar 2011.
- Hajime Fujita, Yutaka Ishikawa: Anytime Available Single IP Address Cluster, The 13th IEEE International High Assurance Systems Engineering Symposium (HASE 2011) pp. 168-173 (Short Paper)
- Hajime Fujita, Hiroya Matsuba, Yutaka Ishikawa: TCP Connection Scheduler in Single IP Cluster, 8th IEEE International Symposium on Cluster Computing and the Grid (CCGRID'08), pp. 366-375, May 2008
謝辞
JST CREST「実用化を目指した組込みシステム用ディペンダブルオペレーティングシステムの開発」(DEOS)プロジェクトのもと、東京大学によって開発されました。