Transtracer: 分散システムにおけるTCP/UDP通信の終端点の監視によるプロセス間依存関係の自動追跡

書誌事項

タイトル別名
  • Transtracer: Automatically Tracing for Processes Dependencies in Distributed Systems by Monitoring Endpoints of TCP/UDP

抄録

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

Distributed systems in Web services are becoming more complex to respond to various demands by the Web services users. As a result, it becomes difficult for system administrators to understand the processes dependencies in a distributed system. In such a situation, when system administrators add changes to parts of the system, the area of influence by the change cannot be identified, which may lead to a more significant outage than expected. Therefore, system administrators need to trace dependencies between unknown processes automatically. The previous method discovers the dependency by detecting the transport connection using the Linux packet filter on the hosts at ends of the network connection. However, since the method adds the additional processing to the packet processing in the Linux kernel, it gives extra latency to the application traffic. In this paper, we propose an architecture that traces the dependency between unknown processes by monitoring network sockets, which are endpoints of TCP/UDP connection. Our proposed architecture enables tracing without missing unknown processes as long as they use the TCP/UDP protocol stack in the Linux kernel. The architecture makes the monitoring processing only reading the connection information from sockets. Since the processing is independent of the application communication, it does not affect the network latency of the application. Finally, as a result of the evaluation of latency overhead and additional resource load compared with the previous method, we confirmed that our architecture reduces the latency overhead by 13-20 % and reduces the resource load by 43.5 %.

収録刊行物

キーワード

詳細情報 詳細情報について

  • CRID
    1050574047122920320
  • NII論文ID
    170000180863
  • Web Site
    http://id.nii.ac.jp/1001/00200765/
  • 本文言語コード
    ja
  • 資料種別
    conference paper
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ