- 著者
-
坪内 佑樹
古川 雅大
松本 亮介
- 雑誌
- インターネットと運用技術シンポジウム論文集
- 巻号頁・発行日
- vol.2019, pp.64-71, 2019-11-28
Web サービスの利用者による多様な要求に応えるために,Web サービスを構成する分散システムが複雑化している.その結果,システム管理者が分散システム内のプロセス間の依存関係を把握することが難しくなる.そのような状況では,システムを変更するときに,変更の影響範囲を特定できず,想定よりも大きな障害につながることがある.そこで,システム管理者にとって未知のプロセス間の依存関係を自動で追跡することが重要となる.先行手法は,ネットワーク接続を終端するホスト上で Linux のパケットフィルタを利用してトランスポート接続を検知することにより依存関係を発見する.しかし,Linux カーネル内のパケット処理に追加の処理を加えることになるため,アプリケーションの通信に追加の遅延を与えることになる.そこで,本論文では,サーバ用途で広く利用されている Linux を前提に,TCP/UDP 接続の終端点であるネットワークソケットに含まれる接続情報を監視することにより,未知のプロセス間の依存関係を網羅的に追跡可能なアーキテクチャを提案する.このアーキテクチャにより,プロセスが Linux カーネルの TCP/UDP 通信機構を利用する限り,未知のプロセスの依存を見逃さずに追跡できる.また,接続情報の監視処理は,ソケットがすでに保持する接続情報を読み取るだけとなり,アプリケーションの通信処理とは独立するため,アプリケーションの通信遅延に影響を与えない.最後に,先行手法との比較実験を行い,応答遅延オーバーヘッドとリソース負荷を評価した結果,応答遅延オーバーヘッドを 13-20%,リソース負荷を 43.5% 低減させていることを確認した.