日経NETWORK 12月号 いちから学ぶネットワーク動作試験の作法

新しいネットワークを接続したとき、ネットワークの動作試験(テスト)を正しく行う必要がある。
そこで、あらゆる規模のネットワークに適用できる「テストの作法」を紹介する。

■Part.1 これがみんなの定石だ! 動作テストの基本を押さえよう
・「なぜネットワーク動作試験(テスト)を行うのか」についての主要となる回答は以下の2点である。
 →設計者が意図した通りにネットワークが動くか確認する
 →テスト時に意図した通りに動くことを確認することで、正常時の状態を把握し、後のトラブルに備える
・ネットワーク構築時の作業工程のどの段階で、設計やテストを実施するか認識しておかなければならない。
・まずは「要件定義」で、そのネットワークで実現したい機能を明確にし、その後、具体的にどのような機器を用いてどのような構成にするか、「基本設計」と「詳細設計」で決定する。
・テスト項目は、要件定義書、基本設計書、詳細設計書で定義したネットワークの動作を確認できるように作成する。
 →「設計者の意図」=「設計書で定義したネットワークの動き(機能)」
・必要とされる機能が実現されているか、漏れなく確認できるように作成する。
・テスト仕様書で作成したテスト項目は、なるべく検証環境で消化し、現場でのテストは必要最小限に抑えることが重要。
・テスト項目は、チェックする機能の種類や策定した担当者の経験・考え方によって異なる可能性があるため、テストの内容を一通り作成した後、別の人にレビューしてもらうことが必須である。
・ネットワークのテストには以下の4種類に分けられ、以下の順番で実施する。
 ①単体テスト:ネットワークを構成する機器の1台1台が正常に動作するかどうかを確認
 ②結合テスト:単体テストを済ませた機器どうしを接続し、ネットワークとしての動作を確認
 ③性能テスト:要求されるトラフィック量や同時接続数などの負荷に耐えられるか、遅延が大きくないかを確認
 ④総合テスト:ネットワークをサーバーなどとも接続し、システム全体として正常に通信できるかを確認
・あるテスト項目で問題が発覚し修正を行ったところ、別のテスト項目に影響がないか再テストを行う必要があり、こうしたテストを「回帰テスト」と呼び、ネットワークのテストでも必要となる。
・テスト仕様書には、「どんな状況が観測できたら、そのテスト結果は正しいと見なすか」という判断基準を明記し、テスト結果の検証をしやすいよう分かりやすい形に整理しておく。

■Part.2 シンプル構成のネットワークでは障害時の疎通を中心にテスト
・ここでは、小規模でシンプルな構成のネットワークを例に、テストで実施する作業を見ていく。
・単体テストでの主な確認方法は外観や起動確認、ポート番号確認等の「目視」とパラメータなどの設定値をすべて入力し、エラーにならないかなどの「コマンド入力」である。
・結合テストでは、正常時・異常時それぞれにおいてパケットが意図通りの経路で通信できるかどうかを確認する。
・次に、パケットを運んだり冗長化を実現したりするために必要なプロトコルの挙動を1個ずつ確認する。
・正常時のテストでは、機器を接続した状態で、通信可能・不可能なセグメントを整理し、そのセグメント間で利用する経路を整理した後、「ping」や「traceroute」コマンドで通信可能かどうかを確認する。
・テスト結果はターミナルソフト「Tera Term」のログ保存機能を使ったり、コマンドの実行結果をテキストファイルで残すなど、ログとして残しておく。
・障害時のテストでは、障害が起こる可能性がある箇所(障害ポイント)をすべて洗すことから始め、障害が起こる前のネットワーク状態を記録し、障害ポイントで意図的に障害を起こし、適切な経路に切り替わるか確認する。
・トラブル発生時に、どこに問い合わせ、報告するのかなど、運用担当者がすべて行動をまとめ、あらかじめ予行演習をしておく。

■Part.3 中規模以上の環境ではWANや性能テストに注意
・ここでは、「WAN」と「IP電話」に関連するテストにしぼって見ていく。
・WANサービスは通信事業者が提供するネットワークであり、契約の手間と料金がかかるため、検証環境ではWANサービスに近いネットワークを仮に作成し、疑似環境下でテストを進めていく。
・IP電話に関するテストでは、以下の項目についてテストを実施する。
 →機器のハードウェアに問題がないか、設定が設計書通りか、ネットワークに接続し内線・外線の発着信が正常か確認
 →通話可能であるセグメント同士で、エンド・ツー・エンドの音声通話ができるか実際に電話をかけて確認
 →回線容量以上のトラフィックが流れた場合でも、音声パケットが優先的に処理されるかを確認
・既に運用しているネットワークに対し、一気に新たなネットワークに切り替えるのは難しいため、ネットワークを段階的に切り替えていく必要があり、テストもこの段階ごとに実施する。

先月に引き続いてネットワークに関することについて学んだが、今までネットワークの構築や設計について触れる機会があまりなかったため、ネットワーク試験についていろいろなことを理解するいい機会になった。
特に、自分が今業務を行っている作業のなかで、実際に現場に出向いてネットワークを設定する機会が今後出てくるので、この特集で学んだネットワークテストの基礎やネットワーク規模の状況に応じた対応等をまとめて整理したうえで、自分の今後の実作業に生かしていきたいと思う。


コメントを残す