法政大学情報科学部...
Post on 30-Jun-2015
465 Views
Preview:
TRANSCRIPT
コンピュータネットワーク
第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種類のトポロジー
ライン
スター
フルメッシュ
リング
メッシュ
ツリー
バス
フィンガーテーブル
WEB公開版
Private Network
Public Network
Last One Mile
3種類のネットワーク WEB公開版
復習(第5回)OSI参照モデル:IPアドレス とMACアドレス
ネットワーク層IPアドレス(論理アドレス)で
通信する。
データリンク層MACアドレス(物理アドレス)で
通信する。
スイッチ、ルータはIPとMACの対応付けをする!
WEB公開版
3つのパケット
ARPパケットs
IPパケット
TCPパケット
ポート番号を管理
IPアドレス(論理ア ドレス)を管理
MACアドレス(物理 アドレス)を管理
WEB公開版
通信の種類は3つ1対1
1対多
多対多
TCPは1対1UDPは1対多
が定石!
WEB公開版
OSI参照モデル別概要
(トランスポートまで)
多対多
1対多
1対1
ARPパケットそれぞれのマシン
が不特定多数に送信できる!
IPパケット多数のマシンがルー
タと通信するが、
ルータはブロード
キャストしない。
TCPパケット
終端点が接続さ
れた後で使う。
WEB公開版
ルータ IPアドレスを処理する
あて先:192.168.0* ルータ:
192.168.0.1あて先:192.168.1* ルータ: 192.168.1.1あて先:192.168.2* ルータ:
192.168.2.1
あて先:192.168.0* ルータ:
192.168.0.1あて先:192.168.2* ルータ:
192.168.2.1あて先:192.168.1* ルータ:
192.168.1.1
WEB公開版
ルータ IPアドレスを処理する
ルーティングテーブルあて先:192.168.0* ルータ:
192.168.0.1あて先:192.168.1* ルータ: 192.168.1.1あて先:192.168.2* ルータ:
192.168.2.1
スイッチのアドレステーブルあて先:192.168.1.2 MAC AA:AA:AA:AAあて先:192.168.1.3 MAC BB:BB:BB:BB
IP:192.168.1.2MAC:AA:AA:AA:AA
WEB公開版
ルータの動作:隣へ転送・中継する。
リピータ、スイッチ:パケットを中継・転送する。パケットの内容は変えない。ルータ:パケットの一部を書き換える。
常に隣のMACアドレスに
書き換える。
WEB公開版
①
②③
④
⑤
③へ行くべし
ここを通るには③のMACアドレスが必要!
パブリックネットワークを行く
ルータは隣のルータのIPアドレスと
MACアドレスは
知っている!
WEB公開版
ルーティングのイメージ①
ARPパケットが
送信元のLANを
流れる
IPパケットが
パブリックネットワークを流れて経路を
探す
WEB公開版
ルーティングのイメージ②
ラストワンマイルのパケットが
終端まで届
く!
WEB公開版
ルーティングのイメージ③
終端接続後は
TCPパケット
が流れる!
WEB公開版
WAN間のルーティング
リンクステート
ディスタンスベクター
WEB公開版
AS
– AS:ASはWANの集合
AS間はもの凄い量のトラフィックが流れる!
WANの間は、ASの間はルータがIP(論理アドレス)を
管理する!
WEB公開版
復習(第7回):LANとWANの特徴 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モデル
トポロジー:メッシュ型
WEB公開版
新しいトポロジー:7種類のトポロジー
オーバーレイネットワークではこの2つをよく使う。
メッシュ
リング
ラインバス
スター
フルメッシュ
ツリーWEB公開版
トポロジー Kademlia2^Nでノードが
枝分かれしていく木構造を
2分木(binary tree)という。
2分木に応じて符号(ビット列)を割り当てる。
ノード間の距離はXORで計算する。
001 xor 100 = 101 = 5
WEB公開版
オーバーレイネットワークでの距離
2つのコンピュータの物理的距離は遠いがツリートポロジーでの論理的距離は近い!
WEB公開版
分散ハッシュテーブル
IPアドレスをハッシュ値に変換
各テーブルのハッシュ値は
ダブっていても可。
WEB公開版
分散ハッシュテーブルの検索
010101
100101
001000
110101
①
②
③
④
分散ハッシュ
テーブル上の
距離が近いものを辿る
000WEB公開版
分散ハッシュテーブルの管理
①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 downloadTracker provides torrent file.
③ join Node A queries node B.
④ downloadNode A can downloads pieces of file on swarm network
Seeder has a complete file.Leecher has pieces of file.
WEB公開版
仮想ネットワークでの ルーティング
Software Defined NetworkOpenFlow
WEB公開版
復習(第5回):パケット(ネットワーク)の種類
コントロール(制御)• あて先まで届ける• 同期を取る• セッションを管理する• 衝突を避ける
データ(情報)• テーブルを引く• メッセージを送る• メッセージを転送する
プロトコル
従来この2つは
同じ機器の中に
入っていた!
従来技術ではネットワークは設定するものでプログラムするものではない!
WEB公開版
Software Defined Network ネットワークをプログラムできるようにする。
スイッチやルータにコントロール部:転送ルールデータ部:転送表が一緒に入っている。
スイッチやルータのコ
ントロール部を分離し
てここに設定する。
スイッチやルータには転送表のみが残って
いる。
コントローラから転送表や対応する処
理などをプログラムできる!
WEB公開版
OpenFlow:
コントロールとデータの分離
OpenFlowコントローラ
OpenFlowスイッチ
NO フローエントリー
ヘッダフィールド アクション
1 L1ポート番号=1
送信先ポート番号=80 スイッチの2番L1ポートからパケットを転送
2 L1ポート番号=1
プロトコル種別:WEB パケットを破棄
WEB公開版
OpenFlowのパケット制御方式1
①
②
③
④
パケットを送信
スイッチは経路表に対応
情報があるか調べる
経路表に
エントリが
ある!
経路表を見てパケットを転送!
WEB公開版
OpenFlowのパケット制御方式2
①
②
③
④パケットを送信
スイッチは経路表に対応
情報があるか調べる
経路表に
エントリが
ない!
コントローラが対応する
ルールを表に書き込む!
(;´Д`)
パケットを転送!
⑤
WEB公開版
OpenFlowのパケット制御方式3
①
②
③
④
パケットを送信
スイッチは経路表に対応
情報があるか調べる
経路表に
エントリが
ない!
④スイッチがパケッ
トをコントローラに送る!
(;´Д`)
パケットを転送!
⑤
⑤コントローラはパケットを
書き換える!
⑥
WEB公開版
top related