WEB公開版


         コンピュータネットワーク
            第10回授業
          4種類のルーティング


       WEB公開版のため、
    内容は大きく抜粋・修正してあります。
WEB公開版
              法政大学情報科学部
          2012年度コンピュータネットワーク
         2012年4月10日~2012年7月19日
 第1回 イントロダクション
 第2回 デジタル伝送技術
 第3回 誤り訂正と通信の信頼性
 第4回 イーサネットとデータリンクの仮想化
 第5回 LANの拡張と無線技術
 第6回 遠距離通信とインターネットへの接続
 第7回 後半授業の準備
 第8回 通信の種類とフロー制御の基本
 第9回 大規模ネットワークの構築と運用
 第10回 4種類のルーティング
 第11回 制御パケットとセッション層のネットワーク
 第12回 データグラムとストリームの処理
 第13回 インターネットのインフラストラクチャ
 第14回 ネットワークのモニタリングとチューニング
WEB公開版
               8種類のトポロジー
       フィンガーテーブル

 リング                         ライン




                            バス


                     スター


メッシュ                       フルメッシュ




         ツリー
3種類のネットワーク               WEB公開版




                         Last
                         One
                         Mile


                         Public
                        Network
      Private Network
復習(第5回)OSI参照モデル:IPアドレス
      とMACアドレス
                  ネットワーク層
              IPアドレス(論理アドレス)で
                   通信する。




                      スイッチ、ルータ
                      はIPとMACの
                      対応付けをする!



                  データリンク層
              MACアドレス(物理アドレス)で
                   通信する。



                       WEB公開版
WEB公開版
         3つのパケット

                      TCPパケット

                   ポート番号を管理


                       IPパケット

                   IPアドレス(論理ア
                     ドレス)を管理

                      ARPパケットs
                   MACアドレス(物理
                    アドレス)を管理
WEB公開版
      1対1   通信の種類は3つ
                        1対多




多対多


                       TCPは1対1
                       UDPは1対多
                        が定石!
WEB公開版
  OSI参照モデル別概要 (トランスポートまで)
                        1対1

                        TCPパケット
                       終端点が接続さ
                       れた後で使う。


                        1対多

                        IPパケット
                     多数のマシンがルー
                      タと通信するが、
                      ルータはブロード
                      キャストしない。


                        多対多

                       ARPパケット
                      それぞれのマシン
                      が不特定多数に
                       送信できる!
WEB公開版            あて先:192.168.0* ルータ: 192.168.0.1
       ルータ        あて先:192.168.1* ルータ: 192.168.1.1
                  あて先:192.168.2* ルータ: 192.168.2.1
  IPアドレスを処理する




                あて先:192.168.0* ルータ: 192.168.0.1
                あて先:192.168.2* ルータ: 192.168.2.1
                あて先:192.168.1* ルータ: 192.168.1.1
WEB公開版
       ルータ           ルーティングテーブル
                     あて先:192.168.0* ルータ: 192.168.0.1
  IPアドレスを処理する        あて先:192.168.1* ルータ: 192.168.1.1
                     あて先:192.168.2* ルータ: 192.168.2.1




  IP:192.168.1.2    スイッチのアドレステーブル
  MAC:AA:AA:AA:AA   あて先:192.168.1.2 MAC AA:AA:AA:AA
                    あて先:192.168.1.3 MAC BB:BB:BB:BB
ルータの動作:隣へ転送・中継する。




           常に隣の
         MACアドレスに
          書き換える。




リピータ、スイッチ:パケットを中継・転送する。
パケットの内容は変えない。
ルータ:パケットの一部を書き換える。
                          WEB公開版
パブリックネットワークを行く               WEB公開版


                            ルータは
                          隣のルータの
                          IPアドレスと
                         MACアドレスは
                          知っている!
       ②
 ③へ
              ③
行くべし
                         ⑤
       ①
             ④



            ここを通るには③の
           MACアドレスが必要!
WEB公開版
ルーティングのイメージ①




                     IPパケットが
                      パブリック
          ARPパケットが   ネットワークを
          送信元のLANを   流れて経路を
             流れる        探す
WEB公開版
ルーティングのイメージ②




               ラストワン
                マイルの
               パケットが
               終端まで届
                 く!
WEB公開版
ルーティングのイメージ③




               終端接続後は
               TCPパケット
                が流れる!
WEB公開版




WAN間のルーティング

   リンクステート
 ディスタンスベクター
WEB公開版
AS – AS:ASはWANの集合
      AS間はもの凄い量のトラフィックが
            流れる!




                   WANの間は、ASの間は
                  ルータがIP(論理アドレス)を
                      管理する!
復習(第7回):LANとWANの特徴 WEB公開版
           1対1と多体多
WAN              WAN
                          LAN内は
                           多対多
                           の通信
                          をする!




                          WANと
                         WANの間は
                         1対1の通信
                          をする!
ディスタンスベクター型               WEB公開版
RIP (Routing Information Protocol)
                      今のルーティングテーブル
                        では192.168.1.2と
                         通信できない!




                        10.10.0.2が自分のルー
                          ティングテーブルを
                         1010.0.1に送信する
ディスタンスベクター型          WEB公開版
   RIP その2




         192.168.0.2と10.10.0.1は
         赤の行を見て192.168.1.2
           と通信が可能になる!
WEB公開版
  コンバージェンスとスケーラビリティ
 • コンバージェンス:とあるルータのルーティングテーブルの変
   更がネットワーク全体に知れ渡る速度
 OSPF:高 RIP:低い

 • スケーラビリティ:ルータ数を増やしていった場合のルーティ
   ングテーブル更新時のネットワーク対応速度
 OSPF:低 RIP:高 BGP:高
                     ディスタンスベクタ型   リンクステート型

更新完了までの速度            遅い           速い
ルーティングテーブルの処理時間      小さい          大きい
コンバージェンスに必要なトラフィック   大きい          小さい
アップデートのタイミング         定期的          変更時
交換する情報               ルーティングテーブル   リンクの状態
WEB公開版
          クラウド内部では?




 隣に訊いて
   行く      リングに幾つかの接続    フィンガーテーブルと
(ディスタンス    を足したトポロジーを      併用すると、
 ベクタ型)        用いる。       サーバの管理コストが
                            減少する!

      WEBのキャッシュサーバなどにも
          使われている!
WEB公開版




オーバーレイネットワーク
   ルーティング
分散ハッシュテーブルの検索
 ファイル配布ネットワーク
WEB公開版

     C/SモデルとP2Pモデル




  C/S(クライアントサーバ)モデル   P2Pモデル
  トポロジー:スター型          トポロジー:メッシュ型
新しいトポロジー:7種類のトポロジー
                                  バス
               ライン




 リング


                            スター



                                   フルメッシュ
  メッシュ




         ツリー         オーバーレイネットワークではこの2つをよく使う。
WEB公開版
WEB公開版

    トポロジー Kademlia
                  2^Nでノードが
                 枝分かれしていく
                    木構造を
                2分木(binary tree)
                     という。




                   ノード間の距離は
                  XORで計算する。

  2分木に応じて符号     001 xor 100 = 101 = 5
(ビット列)を割り当てる。
オーバーレイネットワークでの距離


              2つのコンピュータ
              の物理的距離は
              遠いが
              ツリートポロジー
              での論理的距離は
              近い!




              WEB公開版
WEB公開版

分散ハッシュテーブル




  各テーブルの
              IPアドレスを
  ハッシュ値は
             ハッシュ値に変換
 ダブっていても可。
分散ハッシュテーブルの検索
                                  001
                                  000
分散ハッシュ
テーブル上の
距離が近い
 ものを辿る

         ①
 010
 101
                            ③

 100
 101
              ②
                        ④
 110
 101              000
                                WEB公開版
WEB公開版
分散ハッシュテーブルの管理
                   ①Bに訊くと
                 C,D,Eが返って
                    来る。




                  ネズミ算的に
       ②Eに訊くと     高速なテーブ
     I,F,Hが返って    ルの拡大が
         来る。       可能!
WEB公開版
Basic architecture of tracker network

                               ① Ask
                               Node A (newcomer) ask the
                               tracker for searching the file.

                               ② torrent download
                               Tracker provides torrent file.

                               ③ join
                               Node A queries node B.

                               ④ download
                               Node A can downloads pieces
                               of file on swarm network

                               Seeder has a complete file.
                               Leecher has pieces of file.
WEB公開版




仮想ネットワークでの
  ルーティング
Software Defined Network
       OpenFlow
WEB公開版

 復習(第5回):パケット(ネットワーク)の種類

コントロール(制御)          プロトコル
• あて先まで届ける
• 同期を取る              従来この2つは
                     同じ機器の中に
• セッションを管理する          入っていた!
• 衝突を避ける

データ(情報)
• テーブルを引く
• メッセージを送る
• メッセージを転送する
                    従来技術では
                ネットワークは設定するもので
                プログラムするものではない!
WEB公開版
      Software Defined Network
  ネットワークをプログラムできるようにする。
                            スイッチやルータのコ
                            ントロール部を分離し
                             てここに設定する。




スイッチやルータに                   スイッチやルータには
コントロール部:転送ルール               転送表のみが残って
データ部:転送表                        いる。
                 コントローラから
が一緒に入っている。      転送表や対応する処
                   理などを
                プログラムできる!
OpenFlow: コントロールとデータの分離 WEB公開版

                                   OpenFlowコントローラ



                                   OpenFlowスイッチ




NO       フローエントリー
         ヘッダフィールド                    アクション
     1   L1ポート番号=1   送信先ポート番号=80     スイッチの2番L1ポートからパケットを転送
     2   L1ポート番号=1   プロトコル種別:WEB     パケットを破棄
WEB公開版

OpenFlowのパケット制御方式1


                           経路表を見て
  パケットを送信                 パケットを転送!



        ①         ④
                              経路表に
                              エントリが
                               ある!
                      ③

スイッチは経路表に対応
 情報があるか調べる
              ②
WEB公開版

OpenFlowのパケット制御方式2
                                   コントローラが
                                     対応する
                                   ルールを表に
                                    書き込む!
  パケットを送信         ④
                                   パケットを
                                    転送!
        ①             ⑤
                                      経路表に
                                      エントリが
                                       ない!
                      ③

スイッチは経路表に対応               (;´Д`)
 情報があるか調べる
              ②
WEB公開版
OpenFlowのパケット制御方式3
                                         ⑤コントローラは
                                           パケットを
                                          書き換える!

                                        ④スイッチがパケッ
                   ⑤                    トをコントローラに
   パケットを送信                                 送る!

                                         パケットを
               ④                          転送!
         ①             ⑥
                                           経路表に
                                           エントリが
                                            ない!
                           ③

 スイッチは経路表に対応                   (;´Д`)
  情報があるか調べる
                   ②

法政大学情報科学部 2012年度コンピュータネットワーク-第10回授業-Web公開用

  • 1.
    WEB公開版 コンピュータネットワーク 第10回授業 4種類のルーティング WEB公開版のため、 内容は大きく抜粋・修正してあります。
  • 2.
    WEB公開版 法政大学情報科学部 2012年度コンピュータネットワーク 2012年4月10日~2012年7月19日 第1回 イントロダクション 第2回 デジタル伝送技術 第3回 誤り訂正と通信の信頼性 第4回 イーサネットとデータリンクの仮想化 第5回 LANの拡張と無線技術 第6回 遠距離通信とインターネットへの接続 第7回 後半授業の準備 第8回 通信の種類とフロー制御の基本 第9回 大規模ネットワークの構築と運用 第10回 4種類のルーティング 第11回 制御パケットとセッション層のネットワーク 第12回 データグラムとストリームの処理 第13回 インターネットのインフラストラクチャ 第14回 ネットワークのモニタリングとチューニング
  • 3.
    WEB公開版 8種類のトポロジー フィンガーテーブル リング ライン バス スター メッシュ フルメッシュ ツリー
  • 4.
    3種類のネットワーク WEB公開版 Last One Mile Public Network Private Network
  • 5.
    復習(第5回)OSI参照モデル:IPアドレス とMACアドレス ネットワーク層 IPアドレス(論理アドレス)で 通信する。 スイッチ、ルータ はIPとMACの 対応付けをする! データリンク層 MACアドレス(物理アドレス)で 通信する。 WEB公開版
  • 6.
    WEB公開版 3つのパケット TCPパケット ポート番号を管理 IPパケット IPアドレス(論理ア ドレス)を管理 ARPパケットs MACアドレス(物理 アドレス)を管理
  • 7.
    WEB公開版 1対1 通信の種類は3つ 1対多 多対多 TCPは1対1 UDPは1対多 が定石!
  • 8.
    WEB公開版 OSI参照モデル別概要(トランスポートまで) 1対1 TCPパケット 終端点が接続さ れた後で使う。 1対多 IPパケット 多数のマシンがルー タと通信するが、 ルータはブロード キャストしない。 多対多 ARPパケット それぞれのマシン が不特定多数に 送信できる!
  • 9.
    WEB公開版 あて先:192.168.0* ルータ: 192.168.0.1 ルータ あて先:192.168.1* ルータ: 192.168.1.1 あて先:192.168.2* ルータ: 192.168.2.1 IPアドレスを処理する あて先:192.168.0* ルータ: 192.168.0.1 あて先:192.168.2* ルータ: 192.168.2.1 あて先:192.168.1* ルータ: 192.168.1.1
  • 10.
    WEB公開版 ルータ ルーティングテーブル あて先:192.168.0* ルータ: 192.168.0.1 IPアドレスを処理する あて先:192.168.1* ルータ: 192.168.1.1 あて先:192.168.2* ルータ: 192.168.2.1 IP:192.168.1.2 スイッチのアドレステーブル MAC:AA:AA:AA:AA あて先:192.168.1.2 MAC AA:AA:AA:AA あて先:192.168.1.3 MAC BB:BB:BB:BB
  • 11.
    ルータの動作:隣へ転送・中継する。 常に隣の MACアドレスに 書き換える。 リピータ、スイッチ:パケットを中継・転送する。 パケットの内容は変えない。 ルータ:パケットの一部を書き換える。 WEB公開版
  • 12.
    パブリックネットワークを行く WEB公開版 ルータは 隣のルータの IPアドレスと MACアドレスは 知っている! ② ③へ ③ 行くべし ⑤ ① ④ ここを通るには③の MACアドレスが必要!
  • 13.
    WEB公開版 ルーティングのイメージ① IPパケットが パブリック ARPパケットが ネットワークを 送信元のLANを 流れて経路を 流れる 探す
  • 14.
    WEB公開版 ルーティングのイメージ② ラストワン マイルの パケットが 終端まで届 く!
  • 15.
    WEB公開版 ルーティングのイメージ③ 終端接続後は TCPパケット が流れる!
  • 16.
    WEB公開版 WAN間のルーティング リンクステート ディスタンスベクター
  • 17.
    WEB公開版 AS – AS:ASはWANの集合 AS間はもの凄い量のトラフィックが 流れる! WANの間は、ASの間は ルータがIP(論理アドレス)を 管理する!
  • 18.
    復習(第7回):LANとWANの特徴 WEB公開版 1対1と多体多 WAN WAN LAN内は 多対多 の通信 をする! WANと WANの間は 1対1の通信 をする!
  • 19.
    ディスタンスベクター型 WEB公開版 RIP (Routing Information Protocol) 今のルーティングテーブル では192.168.1.2と 通信できない! 10.10.0.2が自分のルー ティングテーブルを 1010.0.1に送信する
  • 20.
    ディスタンスベクター型 WEB公開版 RIP その2 192.168.0.2と10.10.0.1は 赤の行を見て192.168.1.2 と通信が可能になる!
  • 21.
    WEB公開版 コンバージェンスとスケーラビリティ • コンバージェンス:とあるルータのルーティングテーブルの変 更がネットワーク全体に知れ渡る速度 OSPF:高 RIP:低い • スケーラビリティ:ルータ数を増やしていった場合のルーティ ングテーブル更新時のネットワーク対応速度 OSPF:低 RIP:高 BGP:高 ディスタンスベクタ型 リンクステート型 更新完了までの速度 遅い 速い ルーティングテーブルの処理時間 小さい 大きい コンバージェンスに必要なトラフィック 大きい 小さい アップデートのタイミング 定期的 変更時 交換する情報 ルーティングテーブル リンクの状態
  • 22.
    WEB公開版 クラウド内部では? 隣に訊いて 行く リングに幾つかの接続 フィンガーテーブルと (ディスタンス を足したトポロジーを 併用すると、 ベクタ型) 用いる。 サーバの管理コストが 減少する! WEBのキャッシュサーバなどにも 使われている!
  • 23.
    WEB公開版 オーバーレイネットワーク ルーティング 分散ハッシュテーブルの検索 ファイル配布ネットワーク
  • 24.
    WEB公開版 C/SモデルとP2Pモデル C/S(クライアントサーバ)モデル P2Pモデル トポロジー:スター型 トポロジー:メッシュ型
  • 25.
    新しいトポロジー:7種類のトポロジー バス ライン リング スター フルメッシュ メッシュ ツリー オーバーレイネットワークではこの2つをよく使う。 WEB公開版
  • 26.
    WEB公開版 トポロジー Kademlia 2^Nでノードが 枝分かれしていく 木構造を 2分木(binary tree) という。 ノード間の距離は XORで計算する。 2分木に応じて符号 001 xor 100 = 101 = 5 (ビット列)を割り当てる。
  • 27.
    オーバーレイネットワークでの距離 2つのコンピュータ の物理的距離は 遠いが ツリートポロジー での論理的距離は 近い! WEB公開版
  • 28.
    WEB公開版 分散ハッシュテーブル 各テーブルの IPアドレスを ハッシュ値は ハッシュ値に変換 ダブっていても可。
  • 29.
    分散ハッシュテーブルの検索 001 000 分散ハッシュ テーブル上の 距離が近い ものを辿る ① 010 101 ③ 100 101 ② ④ 110 101 000 WEB公開版
  • 30.
    WEB公開版 分散ハッシュテーブルの管理 ①Bに訊くと C,D,Eが返って 来る。 ネズミ算的に ②Eに訊くと 高速なテーブ I,F,Hが返って ルの拡大が 来る。 可能!
  • 31.
    WEB公開版 Basic architecture oftracker network ① Ask Node A (newcomer) ask the tracker for searching the file. ② torrent download Tracker provides torrent file. ③ join Node A queries node B. ④ download Node A can downloads pieces of file on swarm network Seeder has a complete file. Leecher has pieces of file.
  • 32.
  • 33.
    WEB公開版 復習(第5回):パケット(ネットワーク)の種類 コントロール(制御) プロトコル • あて先まで届ける • 同期を取る 従来この2つは 同じ機器の中に • セッションを管理する 入っていた! • 衝突を避ける データ(情報) • テーブルを引く • メッセージを送る • メッセージを転送する 従来技術では ネットワークは設定するもので プログラムするものではない!
  • 34.
    WEB公開版 Software Defined Network ネットワークをプログラムできるようにする。 スイッチやルータのコ ントロール部を分離し てここに設定する。 スイッチやルータに スイッチやルータには コントロール部:転送ルール 転送表のみが残って データ部:転送表 いる。 コントローラから が一緒に入っている。 転送表や対応する処 理などを プログラムできる!
  • 35.
    OpenFlow: コントロールとデータの分離 WEB公開版 OpenFlowコントローラ OpenFlowスイッチ NO フローエントリー ヘッダフィールド アクション 1 L1ポート番号=1 送信先ポート番号=80 スイッチの2番L1ポートからパケットを転送 2 L1ポート番号=1 プロトコル種別:WEB パケットを破棄
  • 36.
    WEB公開版 OpenFlowのパケット制御方式1 経路表を見て パケットを送信 パケットを転送! ① ④ 経路表に エントリが ある! ③ スイッチは経路表に対応 情報があるか調べる ②
  • 37.
    WEB公開版 OpenFlowのパケット制御方式2 コントローラが 対応する ルールを表に 書き込む! パケットを送信 ④ パケットを 転送! ① ⑤ 経路表に エントリが ない! ③ スイッチは経路表に対応 (;´Д`) 情報があるか調べる ②
  • 38.
    WEB公開版 OpenFlowのパケット制御方式3 ⑤コントローラは パケットを 書き換える! ④スイッチがパケッ ⑤ トをコントローラに パケットを送信 送る! パケットを ④ 転送! ① ⑥ 経路表に エントリが ない! ③ スイッチは経路表に対応 (;´Д`) 情報があるか調べる ②