インターネットの基礎

Download Report

Transcript インターネットの基礎

情報ネットワーク特論
- インターネットの基礎 岡村耕二
http://okaweb.ec.kyushu-u.ac.jp/lectures/in-ng/
通信(伝達)における階層モデルとプロトコル
• 階層モデル
– 上下、上~より具体的、下~より抽象的
– カプセル化
• プロトコル
– 同じ階層間の約束
情報ネットワーク
2
サービスとプロトコル
CD
聴く、見る、読む
DVD
包んで、自分でわかる目印をつける
自分で運ぶ
包んで、相手の住所を書く
運んでもらう
情報ネットワーク
3
階層とプロトコル (OSI 参照モデル)
アプリケーション層
プロトコル
アプリケーション層
プレゼンテーション層
プロトコル
プレゼンテーション層
セッション層
プロトコル
セッション層
トランスポート層
プロトコル
トランスポート層
ネットワーク層
プロトコル
ネットワーク層
データリンク層
プロトコル
データリンク層
物理層
プロトコル
情報ネットワーク
物理層
4
7層の概略(IT辞典 http://e-words.jp)
•
アプリケーション層
– データ通信を利用した様々なサービスを人間や他のプログラムに提供する。
•
プレゼンテーション層
– 第5層から受け取ったデータをユーザが分かりやすい形式に変換したり、第7層から送
られてくるデータを通信に適した形式に変換したりする。
•
セッション層
– 通信プログラム同士がデータの送受信を行なうための仮想的な経路(コネクション)の
確立や解放を行なう。
•
トランスポート層
– 相手まで確実に効率よくデータを届けるためのデータ圧縮や誤り訂正、再送制御など
を行なう。
•
ネットワーク層
– 相手までデータを届けるための通信経路の選択や、通信経路内のアドレス(住所)の管
理を行なう。
•
データリンク層
– 通信相手との物理的な通信路を確保し、通信路を流れるデータのエラー検出などを行
なう。
•
物理層
– データを通信回線に送出するための電気的な変換や機械的な作業を受け持つ。ピン
の形状やケーブルの特性なども第1層で定められる。
情報ネットワーク
5
物理層
• 隣接しているシステムは通常、ツイストペアケーブル、同軸
ケーブル、光ファイバなどで結合されてる。上位層から渡さ
れてきたデータは最数的にこれらの伝送メディアを通る信号
に変換される。物理層は、隣接しているシステム間で、これら
の伝送メディアを利用して、デジタルで表現されたデータ(0
と1からのビット列)の伝送機能を提供する。物理層のプロト
コルでは、ビット列をどのような電気的信号に変換するかと
いう規則や、ピンやケーブルの特性・形状などが規定されて
いる。
• 代表的なプロトコルとして、モデムの規格を規定した ITU-T
のVシリーズ(56Kモデムの標準規格 V.90 など)、モデムなど
のデータ回線終端装置(DCE: Data Circuit-terminate
Equipment)とパソコンなどのデータ端末装置 (DTE: Data
Terminal Equipment) の規格である RS-232C などがある。
情報ネットワーク
6
データリンク層
• 通信相手のシステムが隣接している場合には、一般に公衆
パケット交換網や専用線などで直接的に一対一でつながっ
ている場合と、LAN の場合のように他の多くのシステムと
伝送メディアを共有している場合がある。データリンク層は、
どちらの場合においても、隣接しているシステム間で上位層
から見て透過的な伝送路を提供する。
• 確実な伝送のために、ビット列をフレームに分解し、先頭部
分にデータを元通りに復元するための情報を付加する。この
ヘッダ情報を利用して、伝送路上で誤りが発生したときに、そ
れを検出して再送によって誤りを回復したり、データの順序
の制御やフロー(データの転送)の制御を行う。
• 代表的なプロトコルとしては、公衆パケット交換網や専用線
などの広域網によるコンピュータ通信を想定した HDLC
(High-Level Data Link Control Procedure) や LANに用い
られる LAN LLC/ MAC (Logical Link Control. Media
Access Control)がある。
情報ネットワーク
7
ネットワーク層
• 通信相手のシステムが隣接していない場合は、中
継開放型システムを利用して通信を行う必要がある。
ネットワーク層では、一つあるいはそれ以上の数の
ネットワークを介して、実際にデータを交換する終端
システム間の通信路の提供を行う。基本的には、相
手を指定するアドレッシングと伝達経路を決める
ルーティングの二つの機能を持つ。また、誤り検出・
順序制御・フロー制御の機能も持つ。
• 代表的なプロトコルに IP (Internet Protocol)や
ITU-T (International Telecommunication UnionTelecommunication standardization sector)の
X.25パケットレベルがある。
情報ネットワーク
8
トランスポート層
• セッション層より上位では,個々の応用プロセスが処理を実
現するのに必要な情報が、メッセージ単位まで分割される。
トランスポート層以下は、このメッセージを通信相手の応用プ
ロセスまで、詳細な伝達手段を意識せずに、確実に送り届け
る機能を果たしている。
• トランスポート層では、両端のコンピュータシステム内で機能
してるアプリケーションプロセス間で、データ送信の保証をす
ることができる。データ通信の保証のために、通信エラーの
検出や回復の機能を持つ。また、上位層が要求するスルー
プットや伝送遅延などのサービス品質(QoS: Quality of
Service) を保証する。
• 代表的なプロトコルに、インターネットにおける誤りのないコ
ネクション型サービス TCP (Transmission Control
Protocol) や、動画像などを伝送するための効率の良いコネ
クションレス型サービス UDP (User Datagram Protocol) な
どがある。
情報ネットワーク
9
セッション層
• 通信を利用する応用プロセス間では、送信側が受
信側に簡単なデータを転送して、それで処理が終了
するという場合はほとんどない。応用プロセス間で
は相互に頻繁に、場合によっては同時にデータを交
換する必要が生じてくるので、送信順序や同期の制
御を行う機能が必要である。セッション層では、この
ような応用プロセス間の対話の制御を行う。
• 会話型の応用では、受信処理と送信処理が入れ替
わって行われるが、接続しているアプリケーションプ
ロセスのどちらかがそれぞれ実行する順番であるか
を明らかにしたり、交互に半二重で行うか、全二重
で行うのか、どちらあコネクションを開放するのかな
どを制御する。
情報ネットワーク
10
セッション層(続き)
• また、ファイル転送のように、一方向に大量
のデータを転送する場合に、転送エラーに備
えて、転送データの途中に同期店を挿入し、
誤りが起きた場合にその同期点から転送を
やり直す機能を提供する。
情報ネットワーク
11
プレゼンテーション層
• アプリケーション層で交換される情報は、ファイルの操作や
仮想的な端末の機能などのいわゆる意味を扱うものである。
特定の意味を担うメッセージが通信相手に伝送されるために
は、共通の形式を決めておく必要がある。プレゼンテーション
層の役割は、この形式を定め、意味を表現しているアプリ
ケーションやユーザが可読なデータ形式から、伝送に適した
データ形式への変換(および逆変換)を行うことである。(抽
象構文、転送構文)
• 抽象構文は意味内容を示すセマンティックスに関連するもの
であり、プレゼンテーション層で伝達する転送構文は、意味
には関与せずに、形式だけを扱うシンタックスに関連するも
のである。
情報ネットワーク
12
エンコードの例
• サンプリング間隔
– 44.100 KHz
• ヒント: シャノンの定理
• 量子化
– 16bit * 2 (stereo)
• 44100*16*2*60*60= 5,080,320,000 bit
•
= 635,040,000 Byte
情報ネットワーク
13
典型的な構成(長距離)
アプリケーション
プレゼンテーション
セッション
トランスポート
ネットワーク
データリンク・物理
データリンク・物理
情報ネットワーク
14
物理層
• ビット列
– 64Kbps, 1Gbps
• 電圧などの電気的条件
– リンクがあがる
情報ネットワーク
15
物理層 (RJ45)
情報ネットワーク
16
物理層
• ケーブルそのものではない
– 物理層 → ビット列
• 001000111100010001001110
– 標準化された物理層の規格にあったケーブル
• デジタルであることが前提
– メタルケーブルは必ずしも物理層ではない
– アナログケーブルは通信とは関係ない
情報ネットワーク
17
物理層で大事なことは
• 帯域/速度
– 100Mbps、1Gbps
• 遅延時間
– 伝搬時間
• 光や電子の伝搬速度、間にある機器に起因する。
– 東京 (1000Km) 10msec
– 西海岸 (10,000Km) 100msec
– 欧州 200msec
– 送信時間
• 100MByte のデータは 100Mbps の速度のネットワークで
は 8 秒で送信できる (?!)。
• 形状(差さること)、材質
情報ネットワーク
18
高速通信とは?
• 新幹線 vs 在来線 ?
• すいている電車と満員電車 ?
情報ネットワーク
19
高速通信とは?
• 新幹線 (300Km/h) vs 在来線 (60Km/h)?
• すいている電車(10人/Box)と満員電車(100
人/Box) ?
• 高速通信 1Gbit/sec
– 伝送メディアの速度は同一で単位時間あたりの
伝送量が多い。
– 高速通信は障害が発生すると消失するデータ量
が多い。
情報ネットワーク
20
0、1信号の伝搬方法
• 変調
• メタルケーブル
– 電圧の値を変化させる
• 無線LAN
– 電波の値を変化させる
• 光ファイバケーブル
– 点灯と消灯(光の値を変化させる)
• 狼煙(のろし)と同じ
情報ネットワーク
21
物理層でよく考えたら当たり前のこと
• 接続されていなければ通信することはできない。
• 物理的に同じケーブルに接続されていれば、だ
れでも受信できる
– 光通信でもスプリッターがあれば
• 通信で誰とでも任意に通信できる機能は重要
– 通信したい人を見つけるとき
– 同じデータを同時に送りたいとき
• 物理層の通信上の個性(他と識別ができる)は
速度だけ
– 識別は物理ケーブルのみ
• 回線交換
情報ネットワーク
22
物理層と速度
• 速度は、デバイスで決まる。
– ケーブルの両端のデバイスの速度は必ず等しい
• 決められた仕様の選択肢の中から
– 参考
• アナログモデムを用いたデジタルデータ通信における
通信速度のネゴシエーションの必要性
• 世の中は速度の違うネットワークでいっぱい
– どこで、どのように速度を変えることができるか
情報ネットワーク
23
情報ネットワーク
24
Encoding
作成: 中村 遼 (大学院 情報科学府)
Encoding
・ NRZ
・ Manchester
0 → Hi ⇒Low
1 → Low⇒Hi
(Non-Return to Zero)
0 → Low Level
1 → Hi Level
※ 10BASE5、2、-T
※ 1000BASE-X
・ NRZI
(Non-Return to Zero Inversion)
0 → No Change Level
1 → Change Level
・MLT-3
0 → No Change Level
1 → Change Level
(Middle⇒Hi⇒Middle⇒Low⇒)
※ 100BASE-TX、CDDI
※ FDDI, 100BASE-FX
作成: 中村 遼 (大学院 情報科学府)
Encoding
作成: 中村 遼 (大学院 情報科学府)
Protocol for Ethernet
Transmission speed
Maximum length
Cable
Encoding
10BASE-5
10Mbps
500m
Coaxial cable
Manchester
10BASE-2
10Mbps
185m
Coaxial cable
Manchester
10BASE-T
10Mbps
100m
Twisted pair
cable
Manchester
100BASE-TX
100Mbps
100m
Twisted pair
cable
4B/5B + MLT-3
1000BASE-T
1Gbps
100m
Twisted pair
cable
4DPAM5(8BIQ4)
Optical fiber
4B/5B + NRZI
Optical fiber
8B/10B + NRZ
Optical fiber
8B/10B + NRZ
Optical fiber
8B/10B + NRZ
Multi mode:412m(half duplex)
100BASE-FX
100Mbps
2km(full duplex)
Single mode:20km(full duplex)
1000BASE-SX
1Gbps
1000BASE-LX
1Gbps
Multi mode:550m
Multi mode:550m
Single mode:5km
1000BASE-ZX
1Gbps
作成: 中村 遼 (大学院 情報科学府)
100km
10base5
http://en.wikipedia.org/wiki/File:VampireTap.jpg
http://images.yourdictionary.com/imag
es/computer/10BASE5.GIF
100BaseTX
情報ネットワーク
29
Cable
作成: 中村 遼 (大学院 情報科学府)
Coaxial cable
1. Inner conductor
2. Insulator surrounding the Inner conductor
3. Metallic shield and outer conductor
4. Outer insulating jacket
Characteristic
・ Few leaks of the electromagnetic wave to the outside.
・ Able to bend.
・ Able to transmit of a wide frequency range.
・ Structure is complicated, and price is high.
作成: 中村 遼 (大学院 情報科学府)
10BASE5 (Thick cable, yellow cable)
Transceiver
2.5m~
Thick Coax
10mm
Transceiver Cable
~50m
N Connector
N Terminator
AUI connector
NIC
Terminator : prevent the reflection of the signal
NIC : Network Interface Card
作成: 中村 遼 (大学院 情報科学府)
10BASE2 (Thin cable)
Thin Coax
5mm
NIC
BNC T Connector
作成: 中村 遼 (大学院 情報科学府)
Twisted pair cable
UTP (Unshielded twisted pair)
TX+
TX-
STP (Shielded twisted pair)
Characteristic
RX+
RX-
TX : Transmit pair
RX : Receive pair
・ Cheap and Easy to treat.
・ Wire freely.
・ Affected by the powerful electricity
and electromagnetic wave.
作成: 中村 遼 (大学院 情報科学府)
http://wiki.wowkorea.jp/?word=%E3%83%95%E3%82%A1%E3
%82%A4%E3%83%AB%3ATwisted%2Dpair%2Dcable%2Epng
情報ネットワーク
35
Category
Maximum Frequency
Transmission speed
example
Cat1
―
20kbps
telephone wire
Cat2
1MHz
4Mbps
ISDN
Cat3
16MHz
10Mbps
10BASE-T
Cat4
20MHz
16Mbps
Token Ring, ATM
Cat5
100MHz
100Mbps
100BASE-TX, ATM(OC-3),
CDDI
Cat5-e
100MHz
1Gbps
1000BASE-T
Cat6
250MHz
1.2Gbps
1000BASE-TX
Cat6-e
500MHz
10Gbps
10GBASE-T
Cat6-a
(STP only)
500MHz
10Gbps
10GBASE-T
Cat7(STP only)
600MHz
10Gbps
10GBASE-T
作成: 中村 遼 (大学院 情報科学府)
e : enhanced
a : augmented
データリンク層
•
•
ビットパターンをフレーム
8ビット=1バイト
– 001000111100010001001110
– 00100011 11000100 01001110
– 23 C4 4E
•
•
送り元・あて先という概念
イーサネット
– MAC アドレス(48bit)
• 00:50:56:8A:00:00
• ベンダ固有 24bit
– 最初の 24bit を見ればメーカの察しがつく
•
•
•
同一物理ネットワーク間のみ
スイッチングハブ
L2 スイッチ
情報ネットワーク
37
UNIXの ifconfig コマンド
$ ifconfig vmnet1
vmnet1 Link encap:Ethernet HWaddr 00:50:56:8A:00:00
inet addr:192.168.34.1 Bcast:192.168.34.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:223989 errors:0 dropped:0 overruns:0 frame:0
TX packets:247923 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
MACアドレスは、LANアダプタ固有である。
情報ネットワーク
38
MAC アドレスからベンダを調べる
• http://coffer.com/mac_find/
情報ネットワーク
39
データリンク層通信
• MAC アドレス: イーサネットカード固有
• イーサネットカードは自分の MAC アドレス
のフレームのみを受信する
– ハードによる処理
– OS によらない
情報ネットワーク
40
イーサネット
• CSMA/CD と CSMA/CA
– 物理層:送信されたデータは基本的にすべて受信
できてしまうので、必要なものだけをMAC アドレ
スで識別する。
– 送信側にも規則がいるのでは?
• ARP
– 送信パケットには、宛先の MAC アドレスの情報
をあらかじめ知っておく必要があります。しかし、
それはどうやって、知るのでしょうか?
情報ネットワーク
41
CSMA/CD (Carrier Sence Multiple
Access with Collision Detection)

搬送波感知多重アクセス/衝突検出方式の略で、複数
のノードが衝突を起こさずに通信するための方法




通信が行われているか確認する
通信中なら、通信が終わるまで待ち、データ送信を開始する
衝突が起こった場合、ジャミング信号を送信し、乱数時間待って
から再転送
 衝突の際、ケーブルに通常の範囲外の電圧が流れるため、
検出可能
 待ち時間 = 乱数 × 送信失敗回数
 ジャミング信号は、衝突が起こったことを知らせる信号
16回送信失敗したら終了
資料作成者:原田義明
42
CSMA/CA (Carrier Sence Multiple
Access with Collision Avoidance)

搬送波感知多重アクセス/衝突回避方式の略で、無
線LANに用いられているアクセス制御方式




通信が行われていなければ、DIFS(Distributed
coordination function Initial interFrame Space) +ラン
ダム時間待ち、送信を開始する
一方、端末はSIFS(Short coordination function Initial
interFrame Space)時間を待ってASK信号を返し,データ
の送信が完了したことを確認する。
送信データを受け取ったときにack(応答メッセージ)を送信
することで、データの送信エラー(衝突)を検出する
ackメッセージを受け取らなかった場合、再送する
資料作成者:原田義明
43
データリンク層通信
• 通信容量:フレームの流量
– CSMA/CD
• スイッチによって関係ない部分にフレームが出ないようにで
きる。
• 関係ない部分→ MAC アドレスで判断
情報ネットワーク
44
スイッチ

ブリッジ




MACアドレスを記憶し、通信を制御(CAMテーブル)
フレーム読み取りの分だけ遅延が発生する
ブロードキャストを止めることはできない
スイッチ

ストア&フォワード形式




スイッチ内のメモリにデータをストアし、データの衝突を防ぐ
フレーム読み取りの分だけ遅延が発生する
ブロードキャストを止めることはできない
全二重回線(送信・受信の回線を分ける)が可能
資料作成者:原田義明
45
データリンク層通信
• ブロードキャストフレーム
– 無条件に受信する。
• 受信したあと
– OS によって吟味され不要なら破棄される
• 他のコンピュータのCPUを浪費させる
情報ネットワーク
46
データリンク層通信
• MACアドレスの登録
– 登録されたMACアドレスだけ通過する設定によ
り許可されていないホストの通信を防ぐことがで
きる。
情報ネットワーク
47
VLAN


スイッチの技術発展により、大きなネットワーク
の構築が可能になった
ブロードキャストドメインの巨大化
ブロードキャストドメインを仮想的に分割したい
VLAN (Virtial LAN)
資料作成者:原田義明
48
VLAN

仮想的にネットワークを構築する技術

レイヤ2スイッチでブロードキャストドメインを分割
VLAN1
VLAN2
資料作成者:原田義明
49
ダイナミックVLANとトランクリンク

Cisco独自のものと、IEEE標準のものがある
 ISL(Inter-Switch Link)


Cisco独自のカプセル化プロトコル
IEEE802.1Q

ISL
IEEE標準のタギングプロトコル
ISLヘッダ
(26バイト)
イーサネットフレーム
(26~1518バイト)
FCS
(4バイト)
IEEE802.1Q 送信先(元)MACアドレス タグ タイプ データ FCS
資料作成者:原田義明
50
ネットワークはいくつあるか?
コンピュータ
コンピュータ
情報ネットワーク
コンピュータ
51
ネットワークはいくつあるか?
コンピュータ
コンピュータ
コンピュータ
中継装置
情報ネットワーク
52
インターネットはネットワークとルータだけで、できている
コンピュータ
コンピュータ
コンピュータ
コンピュータ
ルータ
コンピュータ
コンピュータ
ルータ
ルータ
ちなみに、ネットワークは
いくつあるか?
コンピュータ
コンピュータ
コンピュータ
情報ネットワーク
53
ネットワーク層で識別すべきもの
• ネットワーク
• ネットワーク中のコンピュータ
情報ネットワーク
54
ネットワーク層の2次元的識別子
A-1
コンピュータ
A-2
コンピュータ
1
B-1
コンピュータ
2
1
A
ネットワーク識別子(A,B)
+ホスト識別子(1,2)
= 32bit
8bit . 8bit . 8bit . 8bit
B
A-3 3
2 B-2
中継装置
ルータ
情報ネットワーク
55
IP address
• ネットワーク識別子+ホスト識別子= 32bit
• ネットワーク識別子の長さ
– ネットワーク長
• ネットワーク識別子・有効、ホスト識別子・0
– ネットワークアドレス
• ネットワーク識別子分・1、ホスト識別子・0
– ネットワークマスク
• ネットワーク識別子・有効、ホスト識別子・1
– ブロードキャストアドレス
情報ネットワーク
56
サブネットワーク: Subnetwork
133.5.0.0/16
ルーター
133.5.0.0/24
133.5.100.0/24
133.5.101.0/25
情報ネットワーク
57
IPアドレス
• 133.5.1.1 は、C言語では何型か?
• IPv4 アドレスの数
– 32bit= 約40億
– 地球上の人口 約70億
•
•
•
•
•
中国 約13.5億
インド 約12.1億
アメリカ 約3.2億
インドネシア 約2.3億
日本(10番目) 約1.3億
–
–
–
–
東京 約1300万
福岡県 約500万
福岡市 約147万
九州全体 約1300万
情報ネットワーク
58
ネットワーク層
•
•
•
•
インターネットの重要な階層
IPv4、IPv6
通信の単位: パケット
スイッチング・ルータ、L3スイッチ
情報ネットワーク
59
ルータとスイッチングルータ
• ルータ
– ネットワーク層でパケット交換
• スイッチングルータ
– 2.5層でフレーム交換
– L3スイッチ
• 機能(経路制御など)は変わらない。
情報ネットワーク
60
ネットワーク層
• 経路制御
– 同一物理ネットワークを越えた通信
– ルータ
• IP アドレス
– IPv4: 32bit
• 133.5.1.1
– IPv6:128bit
• 3ffe:501:2c24:a00:202:e3ff:fe00:10c5
• 2001:248:180:300:202:e3ff:fe00:14ea
• IP アドレス
• ネットワークアドレス+ホストアドレス
情報ネットワーク
61
IPアドレス
• 九州大学内のサブネットマスクは基本的に、
24ビット
– ネットマスク 255.255.255.0
• 133.5.X.0
– ネットワーク識別子
• 133.5.X.255
– ブロードキャスト識別子
• 133.5.X.1 ~ 254
– ホスト識別子
情報ネットワーク
62
IPアドレス
• 32ビット
• 133.5.1.2
– 133*256^3+5*256^2+1*256+2
– 2231697666
$ ping 2231697666
PING 2231697666 (133.5.1.2): 56 data bytes
64 bytes from 133.5.1.2: icmp_seq=0 ttl=249 time=106.0 ms
http://2231697666
情報ネットワーク
63
クラス A,B,C
クラスA
01000000101010000000101000100001
クラスB
10000000101010000000101000100001
クラスC
11000000101010000000101000100001
情報ネットワーク
64
クラス A
クラスA
01000000101010000000101000100001
•ネットワークアドレス
•1.0.0.0 – 127.0.0.0
•ホストアドレス
•1.0.0.1 – 1.255.255.254
情報ネットワーク
65
クラス B
クラスB
10000000101010000000101000100001
•ネットワークアドレス
•128.0.0.0 – 191.255.0.0
•ホストアドレス
•128.0.0.1 – 128.0.255.254
情報ネットワーク
66
クラス C
クラスC
11000000101010000000101000100001
•ネットワークアドレス
•192.0.0.0 – 223.255.255.0
•ホストアドレス
•192.0.0.1 – 192.0.0.254
情報ネットワーク
67
クラスレス
(Classless Inter-Domain Routing:CIDR)
クラスC
11000000101010000000101000100001
クラスレス
11000000101010000000101000100001
192.168.10.33/22
情報ネットワーク
68
クラス D(マルチキャスト)
クラスD
11100000101010000000101000100001
•ネットワークアドレス
•224.0.0.0 – 239.255.255.255
情報ネットワーク
69
まとめ
•
•
•
•
32bit
ネットワーク長
ネットワークアドレス (host部が全部0)
ネットワーク マスク (ネットワーク部が全部 1,
host部が全部0)
• ブロードキャストアドレス (host部が全部1)
• Host アドレス
情報ネットワーク
70
ネットワーク層の通信(1)
www.kyushu-u.ac.jp
192.168.10.2
コンピュータ
www.kyushu-u.ac.jp
192.168.10.1
DNS
コンピュータ
IP
Address
MAC
192.168.10.0/24
情報ネットワーク
71
ネットワーク層の通信(2)
www.kyushu-u.ac.jp
192.168.20.1
コンピュータ
www.kyushu-u.ac.jp
DNS
192.168.10.1
ルータ
コンピュータ
IP
Address
192.168.20.2
192.168.10.2
MAC
192.168.20.0/24
192.168.10.0/24
情報ネットワーク
72
ネットワーク層通信
• IPアドレスからMACアドレスを知る
– ARP
• IPアドレスをデータリンクブロードキャスト
• 当該のIPアドレスを持ったホストがMACアド
レスを通知
• MAC アドレスはキャッシュされる。
情報ネットワーク
73
L3 ルーティングと L2 のMAC
ルータ
133.5.100.254
MAC #1
MAC #2
133.5.100.0/24
133.5.101.254
133.5.101.0/24
MAC #4
MAC #3
端末
端末
133.5.100.10
133.5.101.20
IP (L3) パケット:
133.5.100.10 -> 133.5.100.254 -> 133.5.101.254 -> 133.5.101.20
#3 -> #1
#2 -> #4
情報ネットワーク
74
経路制御と経路表
ルータ A の経路表 その1
ルータ A の経路表 その2
ネットワークアドレス (Prefix)
Next Hop
ネットワークアドレス (Prefix)
Next Hop
192.168.3.0/24
192.168.2.2
192.168.3.0/24
192.168.2.2
192.168.13.0/24
192.168.12.1
192.168.13.0/24
192.168.2.2
192.168.1.0/24
192.168.11.0/24
192.168.1.1
192.168.11.1
ルータ A
192.168.2.0/24
192.168.2.1
192.168.12.1
192.168.2.2
192.168.12.2
192.168.12.0/24
ルータ B
192.168.3.0/24
192.168.3.1
192.168.13.1
情報ネットワーク
192.168.13.0/24
75
キャッシュされたARPの情報
$ arp -a
ryu1.nc.kyushu-u.ac.jp (133.5.10.30) at 00:02:B3:23:7A:22 [ether] on eth0
ryu2.nc.kyushu-u.ac.jp (133.5.10.31) at 00:C0:9F:04:0F:4B [ether] on eth0
? (133.5.10.254) at 00:04:80:23:72:00 [ether] on eth0
情報ネットワーク
76
ネットワーク層通信
• ホスト名からIPアドレスの変換
– DNS
• DNS サーバのIPアドレスは既知
情報ネットワーク
77
ネットワーク層通信
• 同一セグメント内であればルータは不要
• セグメントを越えて通信する場合はルータが
必要
• 通常は、ホストが存在するネットワーク以外を
固定のルータに指名する。
$ netstat -nr
Kernel IP routing table
Destination Gateway
Genmask
Flags MSS Window irtt Iface
133.5.10.0
0.0.0.0
255.255.255.0 U
40 0
0 eth0
127.0.0.0
0.0.0.0
255.0.0.0
U
40 0
0 lo
0.0.0.0
133.5.10.254 0.0.0.0
UG
40 0
0 eth0
情報ネットワーク
78
IPv4 パケット
0
15
Version
IP
Header
Length
TOS
TTL
IP Packet Length
Flag
Identifier
Protocol
31
Fragment Off-set
Header Check Sum
Source Address
Destination Address
Option
TCP/UDP Data
情報ネットワーク
79
IPv4 パケット
• Version は、IPのバージョンを表し、現在は4 次期は6。
• IP Header Length はIPのヘッダ長を32bit単位で表す。
• TOS (Type of Service) サービスタイプは、IPデータグラムのサービスの
品質を表すもので、優先度の指定や、少ない遅延経路、高信頼性、高ス
ループットの経路の要求等を表す。
• Packet LengthはIPパケット全体の長さを表す。
• ID, Flag, Fragment offset…これらはIPパケットをフラグメント化、つまり
はより小さな単位に分割する際に利用される。 IPよりも更に下位に有る
層、つまり物理的なネットワーク層で、送信可能なパケットの最小単位が
より小さい場合がある。例えばethernetでは、最大1514bytesしか送れな
い。従って、それより大きなIPパケットを送る場合には、それを分割して送
る必要がある。
– IDは分割する前のIPパケットを認識するために用いる。
– フラグは分割して良いか否かや分割したIPパケットのうちの最後か否かを表
す。
– オフセットは分割前のパケットの中でのデータの位置を表す。
情報ネットワーク
80
IPv4 パケット
• TTL (Time To Live)は、ネットワーク上で通過可能なルータ
の数であり、一種のホップカウントとして利用される。ルータ
を通過する毎に一つずつ減らし、この値が0のパケットは配
送せずに廃棄される。
• Protocol は上位のプロトコルの種類を表す。例えば、1なら
ICMP、6ならTCP、 17ならUDP。
• Checksum は、何らかの理由でヘッダ情報がおかしくなった
場合にそれを検出する。
• Source address と Destination address は受信元アドレス
と送信先アドレスを表す。
• Optionは、タイムスタンプや経路情報等の記録に利用される。
情報ネットワーク
81
管理プロトコル
データ通信
Internet
ICMP
相手のIPアドレスに届かない。
相手のトランスポートアドレス(IPアドレス+ポート番号)に届かない。
情報ネットワーク
82
管理プロトコル
•
ICMP
– Internet Control Management Protocol
– 送信したデータが届かなかった時、また何か障害があったときに利用されるプロトコル
•
•
Echo Reply、Echo Request
Destination Unreachable 宛先到達不可(宛先の相手が存在しなかった、もしく
は障害中)
–
–
–
–
–
–
–
–
•
•
•
Network Unreachable 、Host Unreachable
Protocol Unreachable 、Port Unreachable
Fragmentation Needed and Don‘t Fragment was Set Source Route Failed
Destination Network Unknown、Destination Host Unknown
Communication with Destination Network is Administratively Prohibited
Communication with Destination Host is Administratively Prohibited
Destination Network Unreachable for Type of Service
その他
Redirect ルート変更
Time Exceeded for a Datagram 時間超過
その他
情報ネットワーク
83
経路制御
#0
どっち?
・宛先アドレス
#1
・次ルータ
のテーブルを持ち、
宛先のパケットをどのインタフェースに
送信すればよいか決定する。
情報ネットワーク
84
静的制御と動的制御
• スタティックルーティング
–
–
–
–
ネットワーク管理者が手作業でルートを設定する
安定している
トラフィックや伝送障害の影響を受けない
ルーティングプロトコルのためのトラフィックが発生しない
• ダイナミックルーティング
–
–
–
–
自動的に経路を設定する
ネットワークの変化に自動的に対応
自動的に最適な経路を選択
障害時にバックアップ経路に自動切換え
情報ネットワーク
85
ルーティング(経路制御)プロトコルの必要性
• ネットワークの変化に対応しなければならな
い
• 設定が多くて面倒
• 自動的に最適経路を選択できる
– あまりにも複雑なネットワークトポロジー
• 自動的にバックアップ経路を選択できる
– 障害に強いネットワーク
情報ネットワーク
86
経路制御プロトコル
• AS (Autonomous System)
– 自律的に運用されるネットワーク
– 16ビット
• IGP (Interior Gateway Protocol)
– AS 内での経路制御
– 小規模なネットワークが対象。
– RIP,OSPF
• EGP (Exterior Gateway Protocol)
– AS 間での経路制御
– 大規模なネットワークが対象。
– BGP
情報ネットワーク
87
経路制御の基本
• 経路制御:自らの情報を外部にアナウンスす
ることにより自分の位置を他人に知らせる。
133.5.10.0/24
情報ネットワーク
88
AS,IGP,EGP
• 新しいネットワークの追加、構成の変更を自動的に反映した
い。
• 変更があれば、その情報を他のルータに知らせる必要があ
る。
• ネットワークが細かければ、経路制御のパケットがたくさん流
れてしまう。
• ASは「小規模」なので、そのようなたくさんの経路制御のパ
ケットが流れるのを許す。
– IGP
• AS間ではこのような細かいパケットがたくさん流れないよう
にする。
– EGP
情報ネットワーク
89
AS と EGP
• AS (Autonomous System)
– ポリシーの単位
• EGP (Exterior Gateway Protocol)
– AS 間でのポリシーに従った経路制御
• どこを通りたいか、通りたくないか。
• 通せないトラフィックは通さない。
情報ネットワーク
90
ポリシーに従った経路制御
韓国研究ネッ
トワーク
東京大学
APAN
(学術・研究開
発)
(研究開発)
QGPO
P
SINET
(学術)
(研究開発)
九州大学
(学術・研究開
発)
情報ネットワーク
OCN
(商用)
91
経路制御プロトコル
• IGP
– RIP (Routing Information Protocol)
• 距離ベクトル
– OSPF (Open Short Path Fast)
• リンクステート
• EGP
– BGP (Boarder Gateway Protocol)
• PATH ベクトル
情報ネットワーク
92
2種類の経路制御プロトコル
• 距離ベクトル: RIP
• リンクステート方式:
OSPF
経由するネットワー
クを選択
+1
1
1
+1
1
+1
1000
経由するルータの数
1
情報ネットワーク
93
2種類の経路制御プロトコル
• 距離ベクトル: RIP
ネットワークによって経路が異なる。
+1
+1
+1
+1
情報ネットワーク
94
相手の識別子・アドレスがわからない
と通信は行えない
PC-A
PC-A、B、C は、同一セグメント上にある
ので、ルータを介さずに直接通信が可能
であるが、例えば、AからCに通信を行う
場合、Aは、Bと区別するために、Cを指定
して通信を行う必要がある。
一方で、どういつセグメント上の通信は、
データリンク層の通信機能によって行わ
れるが、PC-Aは、PC-Cの MAC アドレス
がわからなければ通信を行うことはできな
い。
情報ネットワーク
PC-B
PC-C
ルータ
PC-D
95
相手の識別子・アドレスがわからない
と通信は行えない
PC-A
PC-B
PC-C
PC-A と D は、異なるセグメントにあるの
で、直接通信はできない。しかし、いずれ
にしても、A は、D のネットワーク上の識
別子を知っておく必要がある。
ルータ
PC-D
情報ネットワーク
96
相手の識別子・アドレスがわからない
と通信は行えない
192.168.0.1 192.168.0.2
IP address が既知である場合:
これだけで、通信が可能なようにも思える。
しかし、PC-Aが PC-Cと通信する場合、
PC-Cの MAC address をなんらかの方法
で知らないと通信は行えない。
PC-A
PC-B
192.168.0.3
PC-C
ルータ
データリンク・フレーム
192.168.0.3に送ってください。
PC-D
MAC address
を指定する必要
がある。
IP パケット
192.168.1.1
情報ネットワーク
97
相手の識別子・アドレスがわからない
と通信は行えない
Mypc.jp
IP address が既知ではない場合:
IPパケットで指定するIPアドレスは何を指
定すればいいのだろうか?
PC-A
www.xx.jp
www.yy.jp
PC-B
PC-C
ルータ
データリンク・フレーム
?.?.?.? に送ってください。
PC-D
MAC address
を指定する必要
がある。
IP パケット
www.zz.jp
情報ネットワーク
98
ARP: IP address から MAC address を得る
192.168.0.1 192.168.0.2
ARP: Address Resolution Protocol
•PC-A: 同一セグメントに対してブロード
キャストで通信したいIPアドレスの問い合
わせを行う。
•192.168.0.3 という IP address の
人?
•PC-C: ユニキャストで、MAC address を
PC-Aに返す。PC-Aの MAC address は、
先の問い合わせパケットに含まれている。
•PC-A:PC-Cの MAC address をデータリ
ンクフレームのあて先に指定して通信を
開始する。
PC-A
PC-B
192.168.0.3
PC-C
ルータ
PC-D
192.168.1.1
情報ネットワーク
99
DNS: Domain Name System
www.cc.kyushu-u.ac.jp
www.csce.kyushu-u.ac.jp
www.u-tokyo.ac.jp
www.snu.ac.kr
www.nus.edu.sg
www.yahoo.co.jp
www.google.com
こ
の
サ
ー
バ
の
I
P
ア
ド
レ
ス
だ
け
は
既
知
で
あ
る
。
Mypc.jp
※数が非常に多い
ので規模適応性を
考慮する必要があ
る。
Kyushu-u.ac.jp
Kyushu-u.ac.jp
U-tokyo.ac.jp U-tokyo.ac.jp
Yahoo.co.jp
Yahoo.co.jp
Snu.ac.kr
Snu.ac.kr
Nus.edu.sg
Nus.edu.sg
Google.com
Google.com
情報ネットワーク
PC-A
www.xx.jp
www.yy.jp
PC-B
PC-C
ルータ
PC-D
www.zz.jp
100
トランスポート層
• プロセスとプロセスの通信
• TCP (Transmission Control Protocol )
– 信頼性があるが、速度が不定
• メール、WEBアクセス
• UDP (User Datagram Protocol)
– 信頼性がないが、 速度は一定
• マルチメディア通信
情報ネットワーク
101
トランスポート層
• IPアドレスだけでは識別子が足りない
– ホスト内でもっと細かく識別できる必要がある
• プロセス
• ウインドウ
– IP Address + Port = トランスポートアドレス
• ポート番号
– 16bit
• 特定のサービスを固定的に割り当てる
– 25: 電子メール
– 80: WWW
情報ネットワーク
102
ネットワーク層とトランスポート層
アプリケーション
プレゼンテーション
セッション
トランスポート
ネットワーク
データリンク・物理
データリンク・物理
情報ネットワーク
103
決められたポート番号
http://www.iana.org/assignments/port-numbers
The range for assigned ports managed by the IANA is 0-1023.
Port Assignments:
Keyword
Decimal Description
References
------------- -------------------0/tcp Reserved
0/udp Reserved
#
Jon Postel <[email protected]>
tcpmux
1/tcp TCP Port Service Multiplexer
tcpmux
1/udp TCP Port Service Multiplexer
#
Mark Lottor <[email protected]>
compressnet
2/tcp Management Utility
compressnet
2/udp Management Utility
compressnet
3/tcp Compression Process
compressnet
3/udp Compression Process
#
Bernie Volz <[email protected]>
情報ネットワーク
104
信頼性のある TCP 通信の実現と工夫
•
•
•
•
送信
Slow Start
Sliding Window
遅延時間に弱い
なかなかスピードが
出ない。
受信
送信
受信
スループット
時間
情報ネットワーク
105
通信アプリケーション
• 電子メール
– 0)SMTP(25)/POP(110)/IMAP(143)
• WWW
– HTTP(80)/FTP(20,21)
• DNS
– DNS(53)
• VoD
– RTSP
• テレビ会議
– RTP
情報ネットワーク
106
参考文献
• コンピュータネットワーク、 オーム社、
2001年、ISBN4-274-13222-6
• インターネット総論、共立出版社株式会社、
2002年、ISBN4-320-12039-6
情報ネットワーク
107