Mais conteúdo relacionado
Semelhante a 法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用 (20)
法政大学情報科学部 2012年度コンピュータネットワーク-第8回授業-Web公開用
- 1. WEB公開版
コンピュータネットワーク
第8回授業
通信の種類とフロー制御の基本
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公開版
通信の種類は3つ 1対多
1対1
多対多
- 5. WEB公開版
AS – AS:ASはWANの集合
AS間はもの凄い量のトラフィックが
流れる!EGP (exterior gateway protocol)で通信する。BGPなど
IGP
(interior gateway protocol)で通
信する。RIP.OSPFなど
- 6. WEB公開版
LANとWAN:1対1と多体多
WAN WAN
LAN内は
多対多
の通信
をする!
WANと
WANの間は
1対1の通信
をする!
- 7. WEB公開版
ステートレスとステートフル
サーバは記憶
(状態遷移)を持たない
サーバの状態遷移に応じて
通信内容を変える。
HTTP(WEB)は基本的にステートレスである。
- 8. WEB公開版
OSI参照モデル別概要 (トランスポートまで)
1対1
1対多
多対多
- 10. WEB公開版
OSI参照モデルとパケットヘッダ
この下(物理層)には続きがある。
- 11. WEB公開版
物理層の通信はどうなっているか?
さらに3つの
ヘッダを前後
に追加する。
このヘッ
このパケット
ダを
を非同期に送
トレーラ
り出す。
という。
リピータハブに接続してい
るコンピュータが非同期に
受信する!
- 12. WEB公開版
物理層の通信はどうなっているか?
1対多の通信に戻る
さらに3つの
ヘッダを前後
に追加する。
このパケット
を非同期に送
り出す。
ここは
1対多の通信
になる。
- 13. WEB公開版
トラフィックフロー制御の基本
TCP (Transport Control Protocol)
輻輳制御
(キューイング、スロースタート)
- 16. WEB公開版
シーケンス番号の付け方(送信側)
TCP/IPではデータを
分割して送信できる!
データは、MSS
(Maximum Segment Size)に分割する。
この場合はMSS=1000
- 17. WEB公開版
TCPでは、受信側の状況を
送信側が把握できる。
受信側は自分の
バッファサイズ(使
えるメモリサイズ)
を伝える。
パケット多いよ!
送信側は受信側の
送信量を減 ウィンドウサイズが小
らす! さくなると、
応じて送信するパ
ケットの数を減らす。
- 18. WEB公開版
TCPのフロー制御
受信側は
自分のウィンドウ
サイズ(開いている
メモリサイズ)を
伝える。
あ、受信側の
ウィンドウが
0だ!
少し
待つ(゚~゚)ヾ
ウィンドウ
サイズは
どうなりましたか?
- 19. WEB公開版
スライディングウィンドウ
送信側のウィンドウサイズ – パケットの数
パケット パケット パケット パケット パケット パケット
1 2 3 4 5 6
再送用に2から5まで保存
パケット パケット パケット パケット パケット パケット
1 2 3 4 5 6
破棄
再送用に2から6まで保存
パケット パケット パケット パケット パケット パケット
1 2 3 4 5 6
- 20. WEB公開版
メモリ構造:キューとスタック
キュー:先入れ先だし スタック:後入れ先だし
FIFO (First In First Out) FIFO (Last In First Out)
- 21. WEB公開版
バースト(スパイク)と
キューイング(バッファリング)
CDMAでの
スパイク
入出力や
集計値が急に
大きな(異常な)
値になることを
スパイクやバーストという。
入出力の流れを一度留めることで
スパイクを取る!
- 22. クライアント(エンドノード)側の
輻輳検出
エンドノードは
ネットワーク
の状況が分
からない。 ネットワーク
が混んでいる
かどうか?
クライアント
側の検出方法1
RTT(Round Trip
Time)を使う。
クライアント側の
検出方法2
サーバからの再送要求
が多くないか数える。
WEB公開版
- 23. WEB公開版
スロースタートと輻輳制御
cwnd = cwnd^2
最初の輻輳発生
cwnd: congestion window の閾値を検出!
limit
ssthres
cwnd +=
1/cwnd;
スロースタート 輻輳制御
モード モード
- 24. WEB公開版
輻輳の検出
RTT *4
# ping www.gogole.com
PING www-cctld.l.google.com (74.125.235.151) 56(84) bytes of data.
64 bytes from nrt19s11-in-f23.1e100.net (74.125.235.151): icmp_seq=1 ttl=49 time=27.1 ms
64 bytes from nrt19s11-in-f23.1e100.net (74.125.235.151): icmp_seq=2 ttl=49 time=25.4 ms
クライアント 鯖
Round Trip Time
RTTが通常の4倍に
なったら輻輳と判断!
- 25. WEB公開版
スロースタートと輻輳制御
輻輳を検出す
ると送信サイズ
cwnd: congestion window を少なくする!
ssthres
スロースタート 輻輳制御
モード モード