H27 技術士(情報工学)情報ネットワーク II-1-4:tracerouteの仕組み


(1)IPの生存期間の動作
IPヘッダには中継可能なルータ数を表す生存時間(IPv4ではTTL、IPv6ではHop Limit)の情報があり、送信元はここに一定の値(16や32など)をセットしてデータを送信する。
送信元から送信先の途中でデータを中継するルータは、中継時にこの生存時間の値を1減算して転送する。減算した生存時間の結果が0の場合、ルータはデータが送信先に到達できなかったと判断してデータを破棄し、送信元にその旨をICMPを使って通知する。
(2)tracerouteの仕組み
tracerouteはIPのこの機能を用いて送信元から送信先までの中継するルータのIPアドレスを調べる機能で、送信元は生存時間が1のデータ、生存時間が2のデータと生存時間を1ずつ増加させながらping(ICMP echo request)を送信先からの応答があるまで送信する。
生存時間が1のデータのときは最初にデータを中継したルータが到達できなかった旨の通知を返し、生存時間が2のデータのときは2番目にデータを中継したルータが到達できなかった旨の通知を返す。
ルータからのこの通知もICMPでIPを使用しているので、この通知のIPヘッダにはルータのIPアドレス情報があり、これをまとめることで送信元から送信先までの経路(ルータのIPアドレス)を調べることができる。


[Intermission]
組織内部とインターネットを接続する箇所で使用するルータをエッジルータと呼びます。
携帯電話キャリアや大規模ISP業者では、業者の保有するネットワークと外のネットワークを繋ぐ(大規模、超高速)エッジルータでは、スループット向上のため生存時間の減算とIPヘッダのチェックサム値の再計算を行わないものがあります。



戻る 一覧へ