SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
ルーティング 
チュートリアル 
チュートリアル 
2014/09/29 
wakamonog meeting 6
/ 29 
構成 
✦ インターネットとTCP/IP:ゆやりん 
✦ インターネットの構造:たいじ 
✦ ルーティングプロトコル:なおくん 
✦ ネットワーク構築例 
‣ コンテンツプロバイダ:かっきぃ 
‣ ISP:まつもと 
2
/ 29 
自己紹介 
✦ 川上 雄也 (@yuyarin) 
‣ インターネットマルチフィード株式会社 
‣ 国内最大のInternet Exchange「JPNAP」の運用 
- Ethernet網の設計・構築・運用からツールやシステムの   
開発からコミュニティ活動まで幅広くやってます 
‣ もともとドワンゴでプログラマとかやってましたが,   
インターネットの楽しさに惚れ込みました 
3
インターネットってなんですか?
Webサイトを見るとき 
TCP/IPのはなし
/ 29 
Webサイトを見るとき 
6
/ 29 
Webサイトを見るとき 
インターネット 
wakamonog.jp 
Webブラウザ 
Webサーバ 
OS 
203.0.113.4 
192.168.0.2 
IPv4アドレス 
7
/ 29 
Webサイトを見るとき 
✦ Webブラウザというアプリケーションがイン 
ターネットの先にあるWebサーバと通信する 
‣ ブラウザはOSの機能(API)を使うことで,実際は 
OSが通信を行なっている 
✦ 通信にはIPアドレスを使う 
‣ そのために”wakamonog.jp”という「名前」か 
ら”203.0.113.4”というアドレスへの変換が必要 
8
/ 29 
名前からアドレスへの変換 
インターネット 
wakamonog.jp 
203.0.113.4 
192.168.0.2 
9
/ 29 
DNS: 名前からIPアドレスへ 
wakamonog.jp 
203.0.113.4 
インターネット 
192.168.0.2 
10 
キャッシュサーバ 
.jp 権威サーバ
/ 29 
Web(HTTP/HTML) 
インターネット 
wakamonog.jp 
203.0.113.4 
192.168.0.2 
11 
HTTPでHTMLをやりとりする
/ 29 
通信するためには? 
✦ 宛先まで到達できること 
12 
IP (Internet Protocol)
/ 29 
IP通信 
インターネット 
wakamonog.jp 
203.0.113.4 
198.51.100.1 
13
203.0.113.4 
/ 29 
ルータがIPパケットを転送 
wakamonog.jp 
ルーティングテーブルに基づいて 
その都度適切なルータに転送される 
=フォワーディング 
インターネット 
14 
198.51.100.1 
適切な経路を決定する=ルーティング
/ 20 
IPルーティング 
経路広告 
wakamonog.jp 
203.0.113.4 
203.0.113.0/24はこっちだよ 
198.51.100.1 
インターネット 
ルーティング 
真ん中の経路が一番近い! 
15
/ 20 
IPルーティング 
wakamonog.jp 
203.0.113.4 
198.51.100.1 
上の経路が一番近い! 
インターネット 
非対称経路 
198.51.100.0/24はこっちだよ 
16
/ 29 
経路交換 
✦ 「ルーティングプロトコル」を使って経路情報を広告する 
‣ 経路情報=(宛先, 次のルータ, 属性) 
✦ 経路情報に基づいて、宛先に届けるための次のルータ 
(Next-Hop)を決定する(ルーティング) 
✦ お互いに経路を広告し合う=経路交換 
✦ 経路が広告されると、トラフィックが吸い込まれる 
17
/ 29 
IPの大事なこと 
✦ IPのパケットは消えてしまうのは当たり前 
‣ ルータの処理能力を超えたものは捨てられる 
‣ 転送中にデータが壊れてたときも捨てられる 
✦ 往路復路で非対称の経路になることが普通 
✦ 宛先に対して評価値が同じ経路が複数ある場合は 
どっちにいくのかわからない(ECMP) 
✦ パケットの到着順序は保証されない 
18
/ 29 
通信するためには? 
✦ 宛先まで到達できること 
19 
IP (Internet Protocol) 
✦ 正しい順番で完全なデータが送られること 
✦ 通信しているプログラムを区別できること 
TCP (Transmission Control Protocol)
/ 29 
TCPがやっていること 
✦ プログラムの区別(ポート番号) 
✦ コネクションの確立 
✦ 再送制御 
‣ 落とされたパケットを再送してもらう 
‣ データの順序を保証する 
✦ フロー制御 
‣ 通信相手や自分の忙しさ具合で流量を調整する 
✦ 輻輳制御 
‣ 通信路の混み具合に応じて流量を調整する(公平性) 
20
/ 29 
3-way handshake 
✦ TCPのコネクションを確立する 
SYN 
SYN+ACK 
ACK 
開始まで1.5往復必要 
21
/ 29 
TCPのデータの転送 
✦ 確実にデータを転送するために 
DATA 
ACK 毎回ACKする 
DATA 
まとめて送るACK 
22
/ 29 
TCPのデータの再送 
✦ ACKが無いともう一回送ってみる 
DATA 1 ACKがない 
DATA 1 
もう一回送るACK 
23
/ 29 
TCPの輻輳制御 
✦ 輻輳=処理可能な容量を超えること 
✦ パケットロスや遅延などから判断する 
✦ OSによってアルゴリズムは違う 
‣ 定義されているのはプロトコルのみで       
アルゴリズムは各実装の自由 
✦ 様々な輻輳制御アルゴリズムが提案されてきた 
‣ 公平性を保ちながら高速性を向上させる 
24
/ 29 
TCPの問題点 
✦ データを送るたびにACKを待たなければい 
けないのでRTTが大きいと通信が遅い 
✦ 動画ストリーミングなどに不向き 
‣ 遅延はあってもいいのでスループットを出したい 
‣ パケロスしても大丈夫なので信頼性は要らない 
25 
UDP (User Datagram Protocol)
/ 29 
IPとTCPの完全分業制 
スケールする! 
✦ IP 
‣ コネクションレス=ステートレス 
‣ パケットが落ちても気にしない 
‣ 信頼性は無いけど宛先まで届ける機能 
✦ TCP 
‣ コネクションフル=ステートフル 
‣ パケットが落ちていたら再送してもらう 
‣ 信頼性のある通信路を構築する機能 
26
/ 29 
TCP/IP4層モデル 
27 
✦ 機能の分離とモジュール化 
Application 
TCP 
IP 
Ethernet 
ありがとう!好き勝手やるよ! 
通信の信頼性を保証するよ! 
パケットを宛先まで届けるよ 
物理的な通信なら任せて!
/ 29 
まとめ 
✦ インターネットの通信はTCP/IPで動いている 
✦ IPは宛先までパケットを届ける役目 
✦ TCPはパケットの完全性を保証する役目 
✦ 役割分担が機能しているおかげで、インター 
ネットは世界規模でも動いている 
28
/ 29 
APRICOT-APAN2015 
✦ アジア・パシフィック地域のネットワーク 
運用者の国際カンファレンス 
‣ 前半チュートリアル 
‣ 後半カンファレンス 
✦ 来年は日本の福岡で開催 
✦ wakamonogやるかもね! 
29

Weitere ähnliche Inhalte

Was ist angesagt?

IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来
Yoshiki Ishida
 

Was ist angesagt? (20)

ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
 
IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来
 
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
 
ルーティングチュートリアル - AS間経路制御
ルーティングチュートリアル - AS間経路制御ルーティングチュートリアル - AS間経路制御
ルーティングチュートリアル - AS間経路制御
 
ISPの向こう側、どうなってますか
ISPの向こう側、どうなってますかISPの向こう側、どうなってますか
ISPの向こう側、どうなってますか
 
インターネットの舞台裏
インターネットの舞台裏インターネットの舞台裏
インターネットの舞台裏
 
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門
 
IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向
 
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月 知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
 
あなたのところに専用線が届くまで
あなたのところに専用線が届くまであなたのところに専用線が届くまで
あなたのところに専用線が届くまで
 
OpenStackをコマンドで攻める! 構築・運用とトラブル解決 - OpenStack最新情報セミナー 2014年6月
OpenStackをコマンドで攻める! 構築・運用とトラブル解決 - OpenStack最新情報セミナー 2014年6月OpenStackをコマンドで攻める! 構築・運用とトラブル解決 - OpenStack最新情報セミナー 2014年6月
OpenStackをコマンドで攻める! 構築・運用とトラブル解決 - OpenStack最新情報セミナー 2014年6月
 
ガチで聞く!ヤフーのOpenStackプライベート・クラウドの実態とは
ガチで聞く!ヤフーのOpenStackプライベート・クラウドの実態とはガチで聞く!ヤフーのOpenStackプライベート・クラウドの実態とは
ガチで聞く!ヤフーのOpenStackプライベート・クラウドの実態とは
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
 
VyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 BridgeVyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 Bridge
 
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
 
ネットワーク構築訓練 入門
ネットワーク構築訓練 入門ネットワーク構築訓練 入門
ネットワーク構築訓練 入門
 
YJTC18 A-1 データセンタネットワークの取り組み
YJTC18 A-1 データセンタネットワークの取り組みYJTC18 A-1 データセンタネットワークの取り組み
YJTC18 A-1 データセンタネットワークの取り組み
 
エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
 

Andere mochten auch

ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会
Yuya Rin
 
090910hbstudy#3-BGP
090910hbstudy#3-BGP090910hbstudy#3-BGP
090910hbstudy#3-BGP
Hiro Fukami
 
Plan clases ingles orinson valenciano
Plan clases ingles orinson valencianoPlan clases ingles orinson valenciano
Plan clases ingles orinson valenciano
orinsonvalenciano11c
 
Terry Sims - 11-30-15
Terry Sims - 11-30-15Terry Sims - 11-30-15
Terry Sims - 11-30-15
Terry Sims
 

Andere mochten auch (20)

構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
 
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)ScriptTypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
 
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみたCEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
 
Physical Layer - Metal vs Fiber
Physical Layer - Metal vs FiberPhysical Layer - Metal vs Fiber
Physical Layer - Metal vs Fiber
 
Tried to Provide IPv6 Only Network Stealthily at CEDEC 2015
Tried to Provide IPv6 Only Network Stealthily at CEDEC 2015Tried to Provide IPv6 Only Network Stealthily at CEDEC 2015
Tried to Provide IPv6 Only Network Stealthily at CEDEC 2015
 
ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
 
ネットワーク運用自動化のためのサービス・運用設計
ネットワーク運用自動化のためのサービス・運用設計ネットワーク運用自動化のためのサービス・運用設計
ネットワーク運用自動化のためのサービス・運用設計
 
CEDEC-Net 2015 テクニカルレビュー
CEDEC-Net 2015 テクニカルレビューCEDEC-Net 2015 テクニカルレビュー
CEDEC-Net 2015 テクニカルレビュー
 
090910hbstudy#3-BGP
090910hbstudy#3-BGP090910hbstudy#3-BGP
090910hbstudy#3-BGP
 
BGP Overview
BGP OverviewBGP Overview
BGP Overview
 
Plan clases ingles orinson valenciano
Plan clases ingles orinson valencianoPlan clases ingles orinson valenciano
Plan clases ingles orinson valenciano
 
Balonmán touro
Balonmán touroBalonmán touro
Balonmán touro
 
Zoekwoordenselectie
ZoekwoordenselectieZoekwoordenselectie
Zoekwoordenselectie
 
Set
SetSet
Set
 
Escritura creativa
Escritura creativaEscritura creativa
Escritura creativa
 
Terry Sims - 11-30-15
Terry Sims - 11-30-15Terry Sims - 11-30-15
Terry Sims - 11-30-15
 
Vi lever for å levere
Vi lever for å levereVi lever for å levere
Vi lever for å levere
 
Js高级技巧
Js高级技巧Js高级技巧
Js高级技巧
 
CloudSurance - We backup web application data
CloudSurance - We backup web application dataCloudSurance - We backup web application data
CloudSurance - We backup web application data
 

Ähnlich wie ルーティングチュートリアルチュートリアル TCP/IP編

HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術
Yoichiro Takehora
 
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
Ruo Ando
 
2016-ShowNetステージ-EVPN相互接続検証レポート
2016-ShowNetステージ-EVPN相互接続検証レポート2016-ShowNetステージ-EVPN相互接続検証レポート
2016-ShowNetステージ-EVPN相互接続検証レポート
Interop Tokyo ShowNet NOC Team
 

Ähnlich wie ルーティングチュートリアルチュートリアル TCP/IP編 (20)

CpawCTF 勉強会 Network
CpawCTF 勉強会 NetworkCpawCTF 勉強会 Network
CpawCTF 勉強会 Network
 
ゲームの通信をつくる仕事はどうなるのだろう?
ゲームの通信をつくる仕事はどうなるのだろう?ゲームの通信をつくる仕事はどうなるのだろう?
ゲームの通信をつくる仕事はどうなるのだろう?
 
20060520.tcp
20060520.tcp20060520.tcp
20060520.tcp
 
第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎
 
Mmo game networking_1
Mmo game networking_1Mmo game networking_1
Mmo game networking_1
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
 
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
 
HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術
 
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみようHokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばLagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
 
Kernel vm-2014-05-25
Kernel vm-2014-05-25Kernel vm-2014-05-25
Kernel vm-2014-05-25
 
Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)
 
PPTPの仕組みと接続時の注意点
PPTPの仕組みと接続時の注意点PPTPの仕組みと接続時の注意点
PPTPの仕組みと接続時の注意点
 
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
法政大学情報科学部 2012年度コンピュータネットワーク-第11回授業-Web公開用
 
2016-ShowNetステージ-EVPN相互接続検証レポート
2016-ShowNetステージ-EVPN相互接続検証レポート2016-ShowNetステージ-EVPN相互接続検証レポート
2016-ShowNetステージ-EVPN相互接続検証レポート
 
Hokkaido.cap#1 Wiresharkの使い方(基礎編)
Hokkaido.cap#1 Wiresharkの使い方(基礎編)Hokkaido.cap#1 Wiresharkの使い方(基礎編)
Hokkaido.cap#1 Wiresharkの使い方(基礎編)
 
Introduction to NetOpsCoding#3
Introduction to NetOpsCoding#3Introduction to NetOpsCoding#3
Introduction to NetOpsCoding#3
 

ルーティングチュートリアルチュートリアル TCP/IP編

  • 2. / 29 構成 ✦ インターネットとTCP/IP:ゆやりん ✦ インターネットの構造:たいじ ✦ ルーティングプロトコル:なおくん ✦ ネットワーク構築例 ‣ コンテンツプロバイダ:かっきぃ ‣ ISP:まつもと 2
  • 3. / 29 自己紹介 ✦ 川上 雄也 (@yuyarin) ‣ インターネットマルチフィード株式会社 ‣ 国内最大のInternet Exchange「JPNAP」の運用 - Ethernet網の設計・構築・運用からツールやシステムの   開発からコミュニティ活動まで幅広くやってます ‣ もともとドワンゴでプログラマとかやってましたが,   インターネットの楽しさに惚れ込みました 3
  • 7. / 29 Webサイトを見るとき インターネット wakamonog.jp Webブラウザ Webサーバ OS 203.0.113.4 192.168.0.2 IPv4アドレス 7
  • 8. / 29 Webサイトを見るとき ✦ Webブラウザというアプリケーションがイン ターネットの先にあるWebサーバと通信する ‣ ブラウザはOSの機能(API)を使うことで,実際は OSが通信を行なっている ✦ 通信にはIPアドレスを使う ‣ そのために”wakamonog.jp”という「名前」か ら”203.0.113.4”というアドレスへの変換が必要 8
  • 9. / 29 名前からアドレスへの変換 インターネット wakamonog.jp 203.0.113.4 192.168.0.2 9
  • 10. / 29 DNS: 名前からIPアドレスへ wakamonog.jp 203.0.113.4 インターネット 192.168.0.2 10 キャッシュサーバ .jp 権威サーバ
  • 11. / 29 Web(HTTP/HTML) インターネット wakamonog.jp 203.0.113.4 192.168.0.2 11 HTTPでHTMLをやりとりする
  • 12. / 29 通信するためには? ✦ 宛先まで到達できること 12 IP (Internet Protocol)
  • 13. / 29 IP通信 インターネット wakamonog.jp 203.0.113.4 198.51.100.1 13
  • 14. 203.0.113.4 / 29 ルータがIPパケットを転送 wakamonog.jp ルーティングテーブルに基づいて その都度適切なルータに転送される =フォワーディング インターネット 14 198.51.100.1 適切な経路を決定する=ルーティング
  • 15. / 20 IPルーティング 経路広告 wakamonog.jp 203.0.113.4 203.0.113.0/24はこっちだよ 198.51.100.1 インターネット ルーティング 真ん中の経路が一番近い! 15
  • 16. / 20 IPルーティング wakamonog.jp 203.0.113.4 198.51.100.1 上の経路が一番近い! インターネット 非対称経路 198.51.100.0/24はこっちだよ 16
  • 17. / 29 経路交換 ✦ 「ルーティングプロトコル」を使って経路情報を広告する ‣ 経路情報=(宛先, 次のルータ, 属性) ✦ 経路情報に基づいて、宛先に届けるための次のルータ (Next-Hop)を決定する(ルーティング) ✦ お互いに経路を広告し合う=経路交換 ✦ 経路が広告されると、トラフィックが吸い込まれる 17
  • 18. / 29 IPの大事なこと ✦ IPのパケットは消えてしまうのは当たり前 ‣ ルータの処理能力を超えたものは捨てられる ‣ 転送中にデータが壊れてたときも捨てられる ✦ 往路復路で非対称の経路になることが普通 ✦ 宛先に対して評価値が同じ経路が複数ある場合は どっちにいくのかわからない(ECMP) ✦ パケットの到着順序は保証されない 18
  • 19. / 29 通信するためには? ✦ 宛先まで到達できること 19 IP (Internet Protocol) ✦ 正しい順番で完全なデータが送られること ✦ 通信しているプログラムを区別できること TCP (Transmission Control Protocol)
  • 20. / 29 TCPがやっていること ✦ プログラムの区別(ポート番号) ✦ コネクションの確立 ✦ 再送制御 ‣ 落とされたパケットを再送してもらう ‣ データの順序を保証する ✦ フロー制御 ‣ 通信相手や自分の忙しさ具合で流量を調整する ✦ 輻輳制御 ‣ 通信路の混み具合に応じて流量を調整する(公平性) 20
  • 21. / 29 3-way handshake ✦ TCPのコネクションを確立する SYN SYN+ACK ACK 開始まで1.5往復必要 21
  • 22. / 29 TCPのデータの転送 ✦ 確実にデータを転送するために DATA ACK 毎回ACKする DATA まとめて送るACK 22
  • 23. / 29 TCPのデータの再送 ✦ ACKが無いともう一回送ってみる DATA 1 ACKがない DATA 1 もう一回送るACK 23
  • 24. / 29 TCPの輻輳制御 ✦ 輻輳=処理可能な容量を超えること ✦ パケットロスや遅延などから判断する ✦ OSによってアルゴリズムは違う ‣ 定義されているのはプロトコルのみで       アルゴリズムは各実装の自由 ✦ 様々な輻輳制御アルゴリズムが提案されてきた ‣ 公平性を保ちながら高速性を向上させる 24
  • 25. / 29 TCPの問題点 ✦ データを送るたびにACKを待たなければい けないのでRTTが大きいと通信が遅い ✦ 動画ストリーミングなどに不向き ‣ 遅延はあってもいいのでスループットを出したい ‣ パケロスしても大丈夫なので信頼性は要らない 25 UDP (User Datagram Protocol)
  • 26. / 29 IPとTCPの完全分業制 スケールする! ✦ IP ‣ コネクションレス=ステートレス ‣ パケットが落ちても気にしない ‣ 信頼性は無いけど宛先まで届ける機能 ✦ TCP ‣ コネクションフル=ステートフル ‣ パケットが落ちていたら再送してもらう ‣ 信頼性のある通信路を構築する機能 26
  • 27. / 29 TCP/IP4層モデル 27 ✦ 機能の分離とモジュール化 Application TCP IP Ethernet ありがとう!好き勝手やるよ! 通信の信頼性を保証するよ! パケットを宛先まで届けるよ 物理的な通信なら任せて!
  • 28. / 29 まとめ ✦ インターネットの通信はTCP/IPで動いている ✦ IPは宛先までパケットを届ける役目 ✦ TCPはパケットの完全性を保証する役目 ✦ 役割分担が機能しているおかげで、インター ネットは世界規模でも動いている 28
  • 29. / 29 APRICOT-APAN2015 ✦ アジア・パシフィック地域のネットワーク 運用者の国際カンファレンス ‣ 前半チュートリアル ‣ 後半カンファレンス ✦ 来年は日本の福岡で開催 ✦ wakamonogやるかもね! 29