1 / 14

復路の経路情報も表示する trace R route

復路の経路情報も表示する trace R route. ayumi INSAT. Introduction (1). 既存の traceroute インターネットでは経路の対称性が保証されていない 往路の経路情報しか取得できない 復路の経路情報を取得するのが困難である 自分で対向ホストから traceroute する オペレーターに対向ホストからの経路情報を送信してもらう. 往路:衛星回線. 復路:地上回線. 片方向回線を含むネットワーク. 復路上の  ・障害の検知  ・問題の切り分け  が困難である。. Introduction(2).

liang
Download Presentation

復路の経路情報も表示する trace R route

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 復路の経路情報も表示するtraceRroute ayumi INSAT

  2. Introduction (1) • 既存のtraceroute • インターネットでは経路の対称性が保証されていない • 往路の経路情報しか取得できない • 復路の経路情報を取得するのが困難である • 自分で対向ホストからtracerouteする • オペレーターに対向ホストからの経路情報を送信してもらう

  3. 往路:衛星回線 復路:地上回線 片方向回線を含むネットワーク 復路上の  ・障害の検知  ・問題の切り分け  が困難である。

  4. Introduction(2) • ネットワークの経路情報をより正確に把握し、より効率的なオペレーションを実現したい。 • 経路の非対称性に対応した双方向の経路情報を取得できるシステムが必要

  5. 目的 • 復路の経路情報も表示するプログラムを設計・実装する • プログラミングの知識と経験を積む • AI3テストベットネットワーク上で実際の運用に役立てたい • インターネットの仕組みを理解するきっかけ • tracerouteのアーキテクチャを理解する

  6. 問題点 • 既存のtraceroute –g • 往路と復路の経路情報を示す手法 • 本来の宛て先ホストを経由ルータとして指定し、自分自身を宛て先ホストとして指定できる。 • ソースルーティングによって実現している • セキュリティ上の理由でネットワークのポリシーとして、ソースルーティングが許可されていない場合が多い。 • ソースルーティングに依存した従来の方法では、双方向の経路情報を取得できない

  7. 解決方法 • traceRroute • ソースルーティングに依存しない • 経路の非対称性に対応した双方向の経路情報を取得する

  8. traceRrouteの設計 • クライアント・サーバモデル • traceRrouteサーバがサーバからクライアントへの復路の経路情報を返すことで、クライアント上の往路だけでなく復路の経路情報も標準出力に表示できる • traceRrouteクライアント • サーバへの往路の経路情報を保持する • サーバに復路の経路情報を要求し、取得する • traceRrouteサーバ • クライアントへの経路情報を要求に応じて取得し、クライアントに返す

  9. クライアント・サーバモデル Result of ② ------------ ------------------ --------------- -------- -------------------- Result of ① ------------ ------------------ --------------- -------------------- -------------------- ②traceroute ①traceroute socket socket A+B = 最終結果 Result of A+B ------------ ------------------ --------------- -------------------- -------------------- ------------ ------------------ --------------- -------- -------------------- ・Aに①の実行結果を保存する。 ・Bに②の実行結果を保存する。 ・Serverからの②の実行結果を足す。 ・Clientに②の実行結果を送る。

  10. traceRrouteプログラムの流れ Client側 Server側 • -------------------------------------------------- Server実行 (listenしている) • Client実行 • Serverにtracerouteする • 3の実行結果をAにwriteする • Serverに復路の経路情報を要求する • -------------------------------------------------- 5の要求をacceptする • -------------------------------------------------- Clientにtracerouteする • -------------------------------------------------- 7の実行結果をBにwriteする • -------------------------------------------------- Bの内容をClientに送信(write)する • Serverからの実行結果Bをreadする • 10でreadしたものをAに足す(writeする) • 標準出力に表示する

  11. デモ(traceRroute) • クライアント • sfc-cpu.ai3.net • サーバ • sakuragaoka.usost.net

  12. 評価と今後の課題 • 実装が不十分な部分は今後も実装を継続する予定である • 経路情報を取得するために既存のtracerouteを用いた →独自の実装を行う • 上述した実装をAI3テストベットネットワーク上で実際の運用に役立てていく

  13. 自分への評価 • C言語をほぼゼロの状態から始めた • 構造体、関数、配列、ポインタ • read/write, open/close • socket()システムコール • system() • httpクライアント • echoサーバ,echoクライアント • traceRroute • sizeof(buf)とstrlen(buf)の違い

  14. 質疑応答

More Related