SlideShare a Scribd company logo
ルーティング 
チュートリアル 
チュートリアル 
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

More Related Content

What's hot

エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
wakamonog
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門
Masayuki Kobayashi
 
インターネットの舞台裏
インターネットの舞台裏インターネットの舞台裏
インターネットの舞台裏
Taiji Tsuchiya
 
100 G超通信時代の安定した高品質な伝送インフラ構築づくり
100 G超通信時代の安定した高品質な伝送インフラ構築づくり100 G超通信時代の安定した高品質な伝送インフラ構築づくり
100 G超通信時代の安定した高品質な伝送インフラ構築づくり
Tomohiro Sakamoto(Onodera)
 
ISPの向こう側、どうなってますか
ISPの向こう側、どうなってますかISPの向こう側、どうなってますか
ISPの向こう側、どうなってますか
Akira Nakagawa
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred Networks
Preferred Networks
 
本当は楽しいインターネット
本当は楽しいインターネット本当は楽しいインターネット
本当は楽しいインターネット
Yuya Rin
 
ネットワークエンジニアはどこでウデマエをみがくのか?
ネットワークエンジニアはどこでウデマエをみがくのか?ネットワークエンジニアはどこでウデマエをみがくのか?
ネットワークエンジニアはどこでウデマエをみがくのか?
Yuya Rin
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザイン
Masayuki Kobayashi
 
ISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるものISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるもの
Taiji Tsuchiya
 
IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来Yoshiki Ishida
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
Jun Kato
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
akira6592
 
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
Hirotaka Sato
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
Yahoo!デベロッパーネットワーク
 
wakamonog6 インターネットの裏側の仕組み
wakamonog6 インターネットの裏側の仕組みwakamonog6 インターネットの裏側の仕組み
wakamonog6 インターネットの裏側の仕組み
Taiji Tsuchiya
 
あなたのところに専用線が届くまで
あなたのところに専用線が届くまであなたのところに専用線が届くまで
あなたのところに専用線が届くまで
Tomohiro Sakamoto(Onodera)
 
SRv6 study
SRv6 studySRv6 study
SRv6 study
Hiro Mura
 

What's hot (20)

エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門
 
インターネットの舞台裏
インターネットの舞台裏インターネットの舞台裏
インターネットの舞台裏
 
100 G超通信時代の安定した高品質な伝送インフラ構築づくり
100 G超通信時代の安定した高品質な伝送インフラ構築づくり100 G超通信時代の安定した高品質な伝送インフラ構築づくり
100 G超通信時代の安定した高品質な伝送インフラ構築づくり
 
ISPの向こう側、どうなってますか
ISPの向こう側、どうなってますかISPの向こう側、どうなってますか
ISPの向こう側、どうなってますか
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred Networks
 
本当は楽しいインターネット
本当は楽しいインターネット本当は楽しいインターネット
本当は楽しいインターネット
 
ネットワークエンジニアはどこでウデマエをみがくのか?
ネットワークエンジニアはどこでウデマエをみがくのか?ネットワークエンジニアはどこでウデマエをみがくのか?
ネットワークエンジニアはどこでウデマエをみがくのか?
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザイン
 
ISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるものISPネットワーク運用で覗いてるもの
ISPネットワーク運用で覗いてるもの
 
IX事業者とインターネットの未来
IX事業者とインターネットの未来IX事業者とインターネットの未来
IX事業者とインターネットの未来
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション④
 
wakamonog6 インターネットの裏側の仕組み
wakamonog6 インターネットの裏側の仕組みwakamonog6 インターネットの裏側の仕組み
wakamonog6 インターネットの裏側の仕組み
 
あなたのところに専用線が届くまで
あなたのところに専用線が届くまであなたのところに専用線が届くまで
あなたのところに専用線が届くまで
 
これがCassandra
これがCassandraこれがCassandra
これがCassandra
 
SRv6 study
SRv6 studySRv6 study
SRv6 study
 

Viewers also liked

構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
構成情報データベースをGitで管理したいネットワーク運用者の憂鬱
Yuya Rin
 
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)ScriptTypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
AdvancedTechNight
 
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみたCEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
CEDEC 2015でIPv6 Onlyネットワークをこっそり提供してみた
Yuya Rin
 
Physical Layer - Metal vs Fiber
Physical Layer - Metal vs FiberPhysical Layer - Metal vs Fiber
Physical Layer - Metal vs Fiber
Yuya Rin
 
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
Yuya Rin
 
ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会ネットワーク運用自動化お悩み相談会
ネットワーク運用自動化お悩み相談会
Yuya Rin
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
Yuya Rin
 
ネットワーク運用自動化のためのサービス・運用設計
ネットワーク運用自動化のためのサービス・運用設計ネットワーク運用自動化のためのサービス・運用設計
ネットワーク運用自動化のためのサービス・運用設計
Yuya Rin
 
CEDEC-Net 2015 テクニカルレビュー
CEDEC-Net 2015 テクニカルレビューCEDEC-Net 2015 テクニカルレビュー
CEDEC-Net 2015 テクニカルレビュー
Yuya Rin
 
090910hbstudy#3-BGP
090910hbstudy#3-BGP090910hbstudy#3-BGP
090910hbstudy#3-BGPHiro Fukami
 
BGP Overview
BGP OverviewBGP Overview
BGP Overview
Matt Bynum
 
Plan clases ingles orinson valenciano
Plan clases ingles orinson valencianoPlan clases ingles orinson valenciano
Plan clases ingles orinson valencianoorinsonvalenciano11c
 
Balonmán touro
Balonmán touroBalonmán touro
Balonmán touro
davidares1
 
Zoekwoordenselectie
ZoekwoordenselectieZoekwoordenselectie
Zoekwoordenselectie
Frank Krepel
 
Terry Sims - 11-30-15
Terry Sims - 11-30-15Terry Sims - 11-30-15
Terry Sims - 11-30-15Terry Sims
 
Vi lever for å levere
Vi lever for å levereVi lever for å levere
Vi lever for å levere
Martin Koksrud Bekkelund
 
Js高级技巧
Js高级技巧Js高级技巧
Js高级技巧
fool2fish
 
CloudSurance - We backup web application data
CloudSurance - We backup web application dataCloudSurance - We backup web application data
CloudSurance - We backup web application data
Sam Bowen
 

Viewers also liked (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
 

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

CpawCTF 勉強会 Network
CpawCTF 勉強会 NetworkCpawCTF 勉強会 Network
CpawCTF 勉強会 Network
Takaaki Hoyo
 
ゲームの通信をつくる仕事はどうなるのだろう?
ゲームの通信をつくる仕事はどうなるのだろう?ゲームの通信をつくる仕事はどうなるのだろう?
ゲームの通信をつくる仕事はどうなるのだろう?
Kengo Nakajima
 
20060520.tcp
20060520.tcp20060520.tcp
20060520.tcp
Ken SASAKI
 
第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎
hakoika-itwg
 
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 × パフォーマンス技術Yoichiro Takehora
 
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみようHokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Hokkaido.cap#2 一般的なプロトコルのパケットを覗いてみよう
Panda Yamaki
 
ネットワーク ゲームにおける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のそば
Yoshihiro Nakajima
 
Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224
Tomoya Hibi
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)
Tomoya Hibi
 
PPTPの仕組みと接続時の注意点
PPTPの仕組みと接続時の注意点PPTPの仕組みと接続時の注意点
PPTPの仕組みと接続時の注意点
Rintaro Sekino
 
法政大学情報科学部 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
 
Hokkaido.cap#1 Wiresharkの使い方(基礎編)
Hokkaido.cap#1 Wiresharkの使い方(基礎編)Hokkaido.cap#1 Wiresharkの使い方(基礎編)
Hokkaido.cap#1 Wiresharkの使い方(基礎編)
Panda Yamaki
 
Introduction to NetOpsCoding#3
Introduction to NetOpsCoding#3Introduction to NetOpsCoding#3
Introduction to NetOpsCoding#3
Taiji Tsuchiya
 
UDPプロトコルについて
UDPプロトコルについてUDPプロトコルについて
UDPプロトコルについて
Daiki Hayakawa
 

Similar to ルーティングチュートリアルチュートリアル 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
 
UDPプロトコルについて
UDPプロトコルについてUDPプロトコルについて
UDPプロトコルについて
 

ルーティングチュートリアルチュートリアル 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