学位論文要旨



No 127700
著者(漢字) アブドル ハミド アマドカミル ビン
著者(英字)
著者(カナ) アブドル ハミド アマドカミル ビン
標題(和) 大規模ネットワーク監視のためのSNMPキャッシュ最適化手法の設計と実装
標題(洋) A Design and Implementation of Optimum SNMP Cache for Large-Scale Network Monitoring
報告番号 127700
報告番号 甲27700
学位授与日 2012.03.12
学位種別 課程博士
学位種類 博士(情報理工学)
学位記番号 博情第357号
研究科 情報理工学系研究科
専攻 電子情報学専攻
論文審査委員 主査: 東京大学 教授 瀬崎,薫
 東京大学 教授 浅見,徹
 東京大学 教授 安達,淳
 東京大学 教授 相田,仁
 東京大学 教授 江崎,浩
 東京大学 講師 川原,圭博
内容要旨 要旨を表示する

This dissertation envisions a new trend shall emerge on how the network is managed in the future. Since the users are becoming more dependent on the Internet for their personal and business purposes, interruption-free Internet connections are required. To achieve this, they would demand for an increase participation on the network management conducted by the ISP. As a first step, we propose that the users should be allowed to perform passive monitoring on network devices via Simple Network Management Protocol (SNMP) within the ISP domain. This privilege enables the users to provide crucial assistance to the ISP on the diagnostic analysis of network problems which may lead to expediting the recovery time. However, since current SNMP monitoring is only allowed within a closed domain, we apply a RESTful active proxy (known as Tambourine) as the basis of our work. The users can now enjoy SNMP monitoring by submitting HTTP requests to Tambourine which then performs the HTTP→SNMP translations to network devices residing in the ISP domain. The large number of users participates in this exercise leads to a large-scale network monitoring via HTTP/SNMP. Cache is an important element in Tambourine to avoid unnecessary repetitious SNMP requests to network devices.

The main challenge into designing and implementing cache in Tambourine lies in the objective itself. A large-scale network monitoring via HTTP/SNMP monitoring is considered as effective if we are able to minimize HTTP→SNMP translations through proper caching and allocation of time-to-live (TTL) of an SNMP Object Identifier (OID), and at the same time minimizes stale data that are returned to the users. This is actually contradicting to each other and therefore we need to find the optimum operational point. Additional challenges to our research originate from three main sources. First is the deficiency in the application of web/proxy cache in relation to SNMP. Unlike HTTP, SNMP is not a cache-aware protocol and thus existing rules could not be applied in Tambourine. In addition, modifying SNMP to become a cache-aware protocol is next to impossible. Second, efficient caching in Tambourine is mainly depending on how we can identify the dynamic property of an SNMP OID, and this is difficult due to two reasons: (i) a same OID for different devices may behave exactly in the opposite manner, and (ii) a dynamic OID may change into static OID (and vice-versa) at any time. In order words, generalization of the dynamic property of an OID is possible but will not always be true. And third, unlike web access, there are two types of SNMP monitoring: (i) periodic polling using conventional NMS, and (ii) on-demand polling. In the case of periodic polling, different NMS requests for different groups of OIDs with different polling interval, which itself is a challenge to us.

Since the affect of large-scale monitoring on network devices via SNMP is not well understood, our profile analysis has discovered that network devices can be categorized based on their sensitivity to the increasing number of SNMP requests. We propose the term I-type and S-type network devices, which represents SNMP-Insensitive and SNMP-Sensitive devices respectively. This categorization has a significant impact: for an I-type network device, more SNMP requests can be sent without much affecting its CPU utilization. Hence, monitoring of I-type network devices can be conducted at finer granularity resulting in a more thorough network management. We further extend this categorization into a four-quadrant matrix that is analogous to transportation vehicles. This matrix can be used to describe the profiles in simpler and common terms.

We design the cache from two problem domains. First, we look into Tambourine as an isolated entity from network devices for the purpose of designing the key caching algorithm. We develop Manager-side aggregation where the users can effectively execute periodic polling through registering the required grouping of OIDs and specifying the polling interval in the URL. Furthermore, for on demand polling, we apply a four-state transition to categorize OIDs into dynamic and static, which will be then allocated with optimum TTL. And second, we apply a feedback control framework in Tambourine in order to minimize SNMP requests and staleness ratio. We argue that this application of a feedback control is non-trivial since the feedback control is affecting network devices that are externally located. Hence, how CPU of each device reacts to the controller would need to be inferred. We also introduce the Fixed-Increase Variable-Decrease TTL allocation scheme which inspired by the Additive-Increase Multiplative-Decrease.

The design and implementation of our cache in Tambourine allows effective large-scale network monitoring via HTTP/SNMP: the ratios for HTTP→SNMP and stale data are kept low which we consider as the optimum operational point.

本論文では、将来のネットワーク管理方法に関して新しい方向性を示す。個人的およびビジネス上の目的のために、ユーザのインターネットへの依存度はますます高まっているので、インターネットサービスに中断が許されなくなる。このため、ISPが実施するネットワーク管理に、ユーザ自ら関与を希望するようになるだろう。そのための最初のステップとして、ユーザがISPドメイン内のネットワークデバイスに対してSNMP監視を実行できるようにすべきであると提案する。この権限をユーザに与えることができれば、ネットワークの問題の診断・分析が効率化され、復旧時間の短縮につながる可能性がある。しかし、現在のSNMP監視は、ある閉ざされたドメイン内でのみ許可されているので、この研究の基盤としてRESTfulアクティブプロキシ(タンバリンと呼ぶ)を利用する。ユーザがタンバリンにHTTPリクエストを送信し、タンバリンがHTTPをSNMPへ変換することにより、ISPドメイン内に存在するネットワークデバイスのSNMP監視をユーザが享受することが可能になる。キャッシュは、タンバリンにおいて重要な要素であり、ネットワークデバイスへSNMP要求が不要に繰り返されるのを防止してくれる。

タンバリンのキャッシュ設計および実装における主要な課題は、そのオブジェクト参照制御に存在する。適切なキャッシングと適切なSNMP Object Identifier (OID)のTTL割当によってHTTPからSNMPへの変換を最小限に抑えると同時に、ユーザに戻されるデータを可能な限り最新のものとすることが可能であれば、インターネット規模のSNMP監視が可能になる。 これは、実際にはお互い矛盾しているので、最適な運用ポイントを見つける必要がある。筆者らの研究における課題は、三つの主な原因から生じている。一つ目は、SNMPとの関連したweb/プロキシキャッシュ利用が不完全なことである。HTTPと違い、SNMPはキャッシュを意識したプロトコルではないために、既存のキャッシュルールをタンバリンに適用することはできない。その上、キャッシュを意識したプロトコルにSNMPを改修するのは不可能である。二つ目は、タンバリンの効率的なキャッシングは主にSNMP OID の動的プロパティをいかに識別できるかによるが、これは二つの理由により困難である。まず、異なるデバイスが保有する同じOIDは、まったく反対の意味の運用をする可能性がある。また、動的なOIDは常に静的OIDに(逆もまた同様に)変化する可能性がある。言い換えれば、OIDのプロパティを動的に決定することは可能だが、常に正しいとは限らない。三つ目は、webアクセスと異なり、二つのタイプのSNMP監視が存在することである。それは、一つは従来のNetwork Management System(NMS)を使用した定期的なポーリングで、もう一つはオンデマンドポーリングである。定期的なポーリングの場合、NMSが異なると、異なったOIDのグループに対してポーリングし、かつポーリング間隔も異なる。このこと自体も研究課題である。

ネットワークデバイスに関する大規模なSNMP監視の影響は十分に解明されていなかった。このため、プロファイル分析により、ネットワークデバイスを、SNMP要求の増加に対する感度分析に基づいて分類できることを発見した。ネットワークデバイスを分類するために、I型とS型という用語を採用する。各用語はSNMP-Insensitiveと SNMP-Sensitiveを意味する。この分類はNW管理に重大な影響を及ぼす。I型のネットワークデバイスは、より多くのSNMP要求をCPU使用率に大きな影響を与えることなく受信することができる。したがって、I 型のネットワークデバイスの監視はより細かい精度で行うことができ、結果としてより徹底したネットワーク管理が実現できる。さらに、この分類を交通車両の分類に似た四象限のマトリックスに拡張する。このマトリックスにより、より単純で一般的な用語でプロファイルを記述することができる。

二つの問題領域からキャッシュを設計した。第一に、キャッシュアルゴリズムを設計するために、ネットワークデバイスとは独立してタンバリンを解析した。Manager-side aggregationを開発し、そこで、ユーザが必要なOIDのグループ分けを登録し、そのURLにポーリング間隔を指定することによって、効果的に定期的なポーリングを実行できるようにした。さらに、オンデマンドポーリングのためには、OIDを動的および静的に分類するために、四つの状態変遷を適用した。その分類により、最適なTTLが割当てられる。第二に、SNMP要求およびデータが古くなる比率を最小限に抑えるために、タンバリンにフィードバック制御フレームワークを適用した。フィードバック制御は外部に位置するネットワークデバイスの負荷に影響があるので、フィードバック制御の適用の重要性を、我々は主張する。各デバイスのCPUがいかにフィードバック制御に反応するかを推測する必要がある。また、Additive-Increase Multiplative-Decrease に着想を得たFixed-Increase Variable-Decrease TTL割り当て方式を導入する。

筆者らが提案するキャッシュをタンバリンに設計・実装することにより、効果的なインターネット規模のSNMP監視が可能になる。つまり、HTTPからSNMPへの変換とデータの陳腐化の比率は、我々が最適な運用ポイントとして考えるレベルに保たれる。

審査要旨 要旨を表示する

本論文は「大規模ネットワーク監視のためのSNMPキャッシュ最適化手法の設計と実装」("A Design and Implementation of Optimum SNMP Cache for Large-Scale Network Monitoring ")と題し,現在のキャリアネットワークの管理が,大規模化という観点で大きな問題を抱えていることを示した上で,運用のアウトソース化,企業ネットワーク等の多数の運用者へエンド・ツー・エンドのモニタリング・サービスを提供することを実現するという将来構想の下に,それを実現するための具体的手段として,HTTPリバースプロキシ(Tambourine)に新たなキャッシュ・メカニズムを入れたシステムを提案し,システムを実装とシミュレーションの両面で評価し,その有用性を明らかにしている.本論文は,英文で記述され,7章から構成されている.

第1章は「Introduction」で,インターネットを構成する各事業者(ISP)が自社のネットワークの管理に使っているSNMPというネットワーク管理プロトコルが,本来小規模なLAN向けに開発されており,スケーラビリティに問題があるため,今日の大規模な広域ネットワークの管理には問題があるという本研究の背景と概要を述べている.特に,インターネットの中核を占めるHTTPプロトコル経由で運用者のネットワーク上の位置に寄らず通信機器を管理できるようにするため,的確に設計されたHTTP/SNMP変換器の必要性を述べている.これにより,ネットワーク上の多数の運用者が多数の通信機器を管理できるMulti-Manager Multi-Agent (MM-MA) という新しい運用形態を実現できるとしている.

第2章は「Background and Related Work」と題し,既存のSNMP(Simple Network Management Protocol)によるネットワークのモニタリングを多数のネットワーク運用者が多数の通信機器を同時にモニタできるようにするため, SNMP/HTTP変換を実現するHTTPリバースプロキシ(Tambourine)の仕様を明示している.Tambourine は,Webに対して評価の高いソフトウェアアーキテクチャ・スタイルRepresentational State Transfer(REST)に基づいた設計で,所属研究室で長い開発実績のあるソフトウェアシステムである.次に,管理対象の通信機器のSNMPリクエストに対する応答性能を実験により調べ,負荷に強いものと弱いものが存在することを明らかにしている.また,SNMPによるモニタの実態が,定期的なポーリングとオンデマンド型の2者があること,キャッシュの存在を前提に設計されていないSNMPを対象にしたキャッシュ設計の要求条件を示している.

第3章は「Effective Periodic Polling via Manager-Side Aggregation」と題し,種々の商用ネットワーク管理システム(NMS)から定期的に発せられるSNMPリクエストのパターンを明らかにし,NMS側でリクエストを集約するには,2つのURIが必要であることを示している.一つは,定期ポーリングが収集するOIDのグループを登録するため,もう一つは通信機器をポーリングして得た各OIDの値を収容するである.実際に2章で示したTambourineシステムに提案アルゴリズムを実装し,有効性を示している.

第4章は「Effective On-demand Polling via Four-State Transition」と題し,オンデマンドのポーリングに対して,キャッシュを最適化する手法を述べている.各OIDへのアクセスパターンに対してキャッシュのTTL(Time To Live)を最適化するため,デフォールト状態"0",値がほとんど変わらないOIDであることを示す状態"+1",値が頻繁に変わるOIDであることを示す状態"-1"と"-2"からなり,値が変わるたびにTTLを1/2にする4状態遷移モデルを提案している.また,その有効性を機器への1秒間のSNMPリクエスト数の削減率,取得値の変化速度に対する的確性(staleness ratio)の観点から,実装システムとシミュレーションにより示している.

第5章は「Effective On-demand Polling with Feedback Control」と題し,第4章で課題提起したオンデマンドのポーリングに対するキャッシュを最適化に対して,フィードバック制御を行うことを提案している.これはSNMPリクエスト数の削減によりモニタ対象の機器のCPU使用率が過度に上がることを避けることが目標であり,Dynamic TTL Factor (DTF) controllerとBuffer Waiting Time (BWT) controllerを持つMultiple-Input Single-Output (MISO) controllersの設計を行い,まず定性的な長所と短所の検討と実装しすてむによる評価を行っている.DTF controllerは,staleness ratioを削減し,OIDの値の変化に取得値を追従させること,BWT controllerはSNMPリクエスト数を削減するためSNMPリクエストを一旦バッファに収容して送りだす際の待ち時間を調整する.

第6章は「Discussion」と題し,本論文では対象外としたが,研究システムを実用化するために解決しなければならない,スケーラビリティ,運用上のセキュリティなどの課題について検討している.また,ネットワーク機器のモニタ面では,ポーリングによるOID値の取得以外に,機器からOID値を知らせるSNMPトラップという能動的機能もあるため,これに対する対処法,フィードバック制御の安定性についても議論を深めている.

第7章は「Conclusion」で,本論文の目標,成果,将来課題を総括している.

以上のように,本論文は,将来の大規模なネットワーク管理をエンド・ツー・エンドで実現するためのネットワーク管理システムに必要な要求条件を示し,それを実現するためにRESTに基づくHTTPリバースプロキシにHTTP/SNMP変換を実装する際のキャッシュ最適化手法を提案している.既存のネットワーク管理システムが起動するポーリング型,運用者のコマンド投入が契機のオンデマンド型の通信機器状況把握にSNMPの管理実態を分け,いずれにも最適化したものであり,通信機器の負荷を上げずに,モニタの精度を上げることに成功している.このため,提案手法は将来の大規模なネットワーク管理に寄与するものであり,通信事業者において重要なだけでなく,電子情報学上貢献するところが少なくない.

よって本論文は博士(情報理工学)の学位請求論文として合格と認められる.

UTokyo Repositoryリンク