こんにちは、こじろうです。
この記事では、N/Wスペシャリスト平成27年午後Ⅱ問1に挑戦していきたいと思います。
別記事のネットワークエンジニアのススメでも紹介しましたが、文系SEからするとシステムエンジニアよりもネットワークエンジニアになった方が良いキャリアを気づかる可能性があります。
僕自身も、プログラマ➡システムエンジニア➡ITコンサルタントとキャリアチェンジしてきましたが、所々、ネットワークエンジニアとして活動し、成果を出すことに成功してきました。
文系SEのみなさまにも是非、ネットワークの知識を蓄えて頂きたく、IPAが主催しているネットワークエンジニアの資格試験について、僕なりの解答方法と、IPAが公表している模範解答を紹介していきたいと思います。
【この記事でわかること】
- N/Wスペシャリストの問題を解く上で持つべき考え方
- 平成27年午後Ⅱ問1における各設問の考え方
- 1 設問を解き始める前の前提
- 2 問題文を読みながら僕が考えていった内容
- 3 Webサーバから業務サーバへのアクセスについては、同サーバが同一セグメントにあるので、[空欄あ]アドレスも変換する…
- 4 下線部a稼働情報取得のトリガは、設備ではなくK社データセンタ側にあるが、それは運用上の利点となっている。
- 5 この稼働情報取得案に従うと、[空欄う]はフォワードプロキシ、[空欄え]は[空欄お]プロキシとして動作しているとみなすことができる。
- 6 下線部b TCP上のHTTPをUDP上のCoAPに置き換えることによって、通信アダプタと中継装置を用いた通信のTAT(Turn Around Time)を向上させることができると判断した…
- 7 HTTPとCoAPの変換機能は図5中の[空欄か]に実装することにした。
- 8 新業務サーバのデフォルトゲートウェイには、[空欄き]を…
- 9 下線部c 図8中の2つの内部L2SWに図2中の2組のL2SWを接続する。
- 10 下線部d 中継装置のT ourの設定方針
- 11 下線部e新業務サーバからのリクエストにおけるクローズ接続オプションの使い方
- 12 下線部f 設備のリソースを指定する際のURLに関する設定方針…
- 13 設問1⑶について…
- 14 設問2⑶について…
- 15 設問2⑷について…
- 16 設問2⑸について…
- 17 設問2⑹について…
- 18 設問3⑵について…
- 19 設問4⑶について…
- 20 ネットワークの勉強をして良かったなーと思うこと
設問を解き始める前の前提
詳細は以下の記事を読んで頂きたいのですが、過去問に挑戦する前に頭に入れておいて欲しいことが2つあります。参考:【文系SE】ネットワークスペシャリストー解答時のフレームワークー
- 問題文を読みつつ設問を推測する。(設問を読んでから考えていては間に合わない)
- 問題文を読んでいく中で「これ、聞かれるだろうな」と推測する。
それでは、いってみましょう!!😃
問題文を読みながら僕が考えていった内容
Webサーバから業務サーバへのアクセスについては、同サーバが同一セグメントにあるので、[空欄あ]アドレスも変換する…
設問1⑴ですが、ルーティングについての問題になります。
空欄の直前で宛先IPアドレスをLBが変換する話が書いてありますが、宛先IPアドレスと対になるのは送信元IPアドレスであるので、なんとなく答えになりそうです。
また、問題文には”同一セグメントにあるので”との記載もあります。
同一セグメントにそれぞれの端末が存在していたら、アドレスは変換されないと思うのだが…
参考:●●※更新中
Webサーバと業務サーバを介した通信において、クライアントのPCからアクセス際、それぞれのIPアドレスは仮想IPアドレスを利用するが、Webサーバ~業務サーバ間の直接の通信においては、送信元/宛先双方のIPアドレスを、”仮想ではなく、LBの実IPアドレスに変換する”ということだと思われる。
[空欄い]については、LBがWebサーバ、業務サーバへのアクセスの振り分けを実施しているわけだから、ここにもLB正(特にトラブルが無ければ、主系と推測されるのは正の方と思われる)が入ります。
模範解答は’送信元IP’でした。
下線部a稼働情報取得のトリガは、設備ではなくK社データセンタ側にあるが、それは運用上の利点となっている。
運用という単語が出てきたら、以下の2つを想起させなければならない。
- 不具合発生時の対応=切り分けや手作業の発生等
- 定常業務、もしくは不具合対応ではない、一時的なチューニング作業がどのように変わるか
①の不具合発生時の対応をベースに考えてみましょう。
データセンタ側からトラブルシューティングすることを考えると、pingを打ってどこまで通信が届いているか等、Kセンタ側から把握ができますね。
一方、設備側にトリガーがある場合は、不具合が起きた時に、設備自身に問題があるのか。途中の機器に問題があるのか、Kデータセンタからは把握ができません。
これにより、不具合発生時の対応という観点からすると、解答’はKセンタ側から不具合箇所を特定しやすいこと’と想定しました。
更に②の定常の運用業務、もしくは一時的なチューニング作業が楽になるかどうか、考えてみます。
問題文中に’定常業務は〇〇’と明示はされていませんが、設備データの収集周期を1時間~5分に徐々に短縮していく旨は記載されていますね。
このデータの収集周期の変更は、正に’一時的なチューニング作業’であるため、解答は収集周期の変更であることは明白。
これにより、定常業務という観点からすると、’稼働情報の情報収集周期の変更が容易になる’といった解答が考えられます。
一方、解答は、25文字以内という縛りがある…
解答は25文字以内ということは、上記の想定が両方とも解答として相応しいということは無さそうです。
解答を一つに縛る理由が、問題文に書いてないか再度確認します。
➁でも書きましたが、問題文中に’定常業務は〇〇’と明示はされていないものの、設備データの収集周期を1時間~5分に徐々に短縮していく旨は記載されていますね。
これより、解答は➁の収集周期の変更が容易になるだけ記載すればよいです。
模範解答は’稼働情報の情報収集周期の変更が容易になる’でした。
この稼働情報取得案に従うと、[空欄う]はフォワードプロキシ、[空欄え]は[空欄お]プロキシとして動作しているとみなすことができる。
設問2⑵ですが、
空欄うについて。
フォワードプロキシとは、社内のN/.Wからインターネット(社外)に出ていくときに利用されるサーバになります。
参考:XXX※更新中
つまり中継装置が当てはまります。
※最初LBと書いてしまいましたが、LBから外部の機器へアクセス経路(→)は書かれていまいので、解答の選択肢からは外れますね。(新業務サーバは設備のログを採取するときにLBへアクセスしないし…)
空欄え、空欄おについて。
[空欄う]がフォワードプロキシについての内容で、問題文中の[空欄お]直後には’プロキシ’という単語がありますので、[空欄え]と[空欄お]は、フォワードプロキシと対の機能である’リバースプロキシ’に関する項目と推測されます。
参考:XXX※更新中
リバースプロキシはインターネット(社外)から社内へアクセスする際に経由するサーバであり、図5と表6の記載から考えると、外部から設備へのアクセスにおいて、間に噛まされている機器、つまり通信アダプタがリバースプロキシとなります。
模範解答は
- 空欄う:中継装置
- 空欄え:通信アダプタ
- 空欄お:リバース
でした。
下線部b TCP上のHTTPをUDP上のCoAPに置き換えることによって、通信アダプタと中継装置を用いた通信のTAT(Turn Around Time)を向上させることができると判断した…
設問3⑶ですが、TAT向上に寄与するUDPの特徴を問われています。
TCPとUDPの大きな違いは、コネクションを張るか張らないか、にあって、UDPベースであればコネクションを張る分の時間を短縮できます。あと一つが、どうしても分からなかったです。こういう時は、問題文を読み直してヒントを得るしかないですね。
問題文を読み直していくとCoAPはデータ容量が少ないと書いてあります。つまり、コネクションを張る必要がないことと、そもそもデータ容量が小さい、この2点が解答となりそうです。
模範解答は、
・通信の開始時に、コネクションを張る必要が無い。
・CoAPはヘッダ長が短いなど、データの格納効率が良い。
でした。
HTTPとCoAPの変換機能は図5中の[空欄か]に実装することにした。
設問3⑴ですが、HTTPパケットを、K社データセンタから顧客へ出ていく前にCoAPプロトコルに変換され、顧客の元にCoAPプロトコルが届いたらHTTPプロトコルに変換する、という流れにより、TATを短縮しよう、という話になります。
問題文にて、FWの設定変更をさせたくない旨が書いてあるので、データを受信する側の通信アダプタ側でHTTPとCoAPの交換を実装するのでしょう。※ただこれだと、HTTPからCoAPへ切り替える機器が無くなってしまうが…
模範解答は’通信アダプタ’でした。
新業務サーバのデフォルトゲートウェイには、[空欄き]を…
設問4⑴ですが、デフォルトゲートウェイとは、自分が所属するサブネット/セグメント以外のIPアドレスへアクセスする際に、まずどこにアクセスするかを示すアドレスです。
参考:XXX※更新中
この場合、新業務サーバは、閉域網を越えて通信アダプタや設備にアクセスしようとするわけですが、その際には、図5の通り必ず中継装置を経由しなければなりません。
模範解答は’中継装置’となります。
下線部c 図8中の2つの内部L2SWに図2中の2組のL2SWを接続する。
設問4⑵ですが、図5と図8を見比べると、新業務サーバはLBと中間装置の間に、中間装置は新業務サーバとFWの間に配置される必要があります。
そうなると、内部L2SWは図8のL2SW20~と、L2SW10~双方と接続できなければならない。
下線部d 中継装置のT ourの設定方針
設問4⑷ですが、TCPの無通信タイムアウトとは、一度TCPコネクションを確立した接続において、ネットワーク帯域の無駄遣いを減らすべく、一定の期間通信が発生しなければコネクションを破棄して帯域を開放することを指します。
つまり、どんなに時間を短縮しても絶対にかかってしまう時間(本問でいうと、トランザクションの通信時間である3秒)より無通信タイムアウト時間を短く設定してしまうと、全てのTCPコネクションは、データを収集する前にコネクションを破棄し、欲しいデータを取得できないことになってしまいます。
そのため、設計方針は、トランザクション時間である3秒よりは長くすることは間違いないでしょう。
一方、最大何秒待てばいいかというと、収集周期より長い時間を待つ必要は無いでしょう。
なぜ、最初は収集周期を1時間にしていて、徐々に時間を縮めているかというと、1回の収集でどの程度の時間がかかるか、最初は分からないからでしょう。
と、滅茶滅茶色々考えていたが、
模範解答は’正確な通信に支障が出ない程度に短縮する。’でした。
下線部e新業務サーバからのリクエストにおけるクローズ接続オプションの使い方
設問4⑸ですが、TCPコネクションの保持時間について問われています。
一度コネクションを確立したら、次回以降はこの作業を省略できると嬉しいのですが、これを実現するとネットワーク帯域をずっと占有することにもなります。
数行前の問題文にも記載のある、HTTP1.1においては、keep-alive設定を利用すると、コネクションの再設定が不要となり、これをフルに活用するのか?とも考えましたが、
模範解答は’後続がないリクエストにクローズを付与して、コネクションを断ち切る’でした。
下線部f 設備のリソースを指定する際のURLに関する設定方針…
設問4⑹ですが、例Ⅲは、図6の左下に記載があるように、設備から更新情報が取れなかった場合を指しています。
模範解答は’通信アダプタにFQDNを付与し、同一コネクションを使って複数の設備から稼働情報を取得する。’でした。
設問1⑶について…
送信元IPアドレスが変わるのは、プロキシやサーバ等の、IPアドレスを持つ機器が間に挟まった時になります。
模範解答は’①’でした。
設問2⑶について…
※更新中
図6から、Tcであることは自明…?
模範解答は’Tc’でした。
設問2⑷について…
※更新中
図6中の例ⅡのGETリクエストの中継において、TbとTb’では異なる場合が多いが、それはなぜか?キャッシュに着目して…という設問です。
この問題は、特に考慮すべき知識・スキルは無い。こういう時は、問題文のキーワードに関する記載をもう一度探して、解答のインプットを得るしかありません。
6ページ冒頭の’④’の通信では、通信アダプタは単独でHTTPヘッダを負荷したGETリクエストを、設備1へ1分間隔へ送信し…’
模範解答は’中継装置より通信アダプタのキャッシュの更新頻度が高く、新しいから’でした。
設問2⑸について…
※更新中
図6中の例Ⅲの通信シーケンスになるのはどのような場合か?通信アダプタと設備間の通信に着目して…という設問になります。
よくよく問題文を注意深く読んでいくと、図6例Ⅲの左端に、’設備から更新情報を取得できなかった場合’との記載がありますね。
模範解答は
・設備とTCPコネクションが確立できない場合。
・設備がNot Modifiedを応答した場合
でした。
設問2⑹について…
※更新中
図6中の例Ⅰの周期を長くした場合(例えば1分間隔から2分間隔へ変更)、HTTPクライアントが受け取る応答への影響を問われています。
この問題は、特に考慮すべき知識・スキルはありません。こういう時は、問題文のキーワードに関する記載をもう一度探して、解答のインプットを得るか、故障した時の一般的な低所方法から回答を導くしかありません。
模範解答は’電源断など設備との通信ができない場合の稼働情報が古くなる。’でした。
設問3⑵について…
図7のCoAPメッセージ以外にIEEE802.15.4フレームのデータ部に含まれるデータを問われています。
IEEE802.15.4の知識がないと回答は厳しいですね。
模範解答は’IPヘッダとUDPヘッダ’でした。
設問4⑶について…
※更新中
空欄ア:表1の項番1,6から、毎秒[空欄ア]トランザクションが発生する
108,000÷3,600=30(台)
- 項番3~5の平均(2.4 + 0.2×T out)ですが、
2.4(秒 )= 1トランザクションの通信時間*稼働情報収集の成功率=3(秒)*0.8=2.4(秒) - 0.2*T out=稼働収集の失敗率*失敗した時の所要時間(TCPの無通信タイムアウト時間)
上記は新業務サーバ1台分の話です。
設問では、2台分の平均所要時間を問われているので、
空欄イ:3*0.8*2=4.8
空欄ウ:0.2*2=0.4
これは収集周期が1時間の場合の話です。
上記の空欄の直下に’収集周期が5分になると、12倍になる’とあるが、これは1時間に1回収取していた作業が、1時間に12回(5分に一回)収取するようになる、ということです。
模範解答は、
空欄ア:30
空欄イ:72
空欄ウ:6
でした。
ネットワークの勉強をして良かったなーと思うこと
ITコンサルタントとしての現場において、プロジェクト内でトラブルシューティングやシステムインフラ設計において最も頼られる存在になり、安定した案件・プロジェクトアサインが実現できるようになりました。
参考:コンサルファームでアベイラブルになったら
文系SEであっても、こういった知識があると一目置かれた存在になれますし、キャリアアップの一助になります。
実際、僕はプログラマ➡SE(ネットワークエンジニア)➡ITコンサルタントとキャリアップしてきましたが、ITコンサルタントとして活動している今も本記事の様な技術的な部分を大事にしているため、’他のコンサルタントとは差別化された人材になれているな’と感じています。
本記事は技術的な内容でしたが、キャリアに関する情報をお探しの方はこちらも是非、ご覧ください。
参考:【文系 SE】ネットワークエンジニアのすすめ
それでは、Tchau◎
こじろう