View
248
Download
1
Embed Size (px)
Citation preview
IP Address
岡村耕二
情報ネットワーク 2
ユニキャスト
情報ネットワーク 3
ブロードキャスト
情報ネットワーク 4
マルチキャスト
情報ネットワーク 5
IPv4 パケット0 15 31
Version IP HeaderLength
TOS IP Packet Length
Identifier Flag Fragment Off-set
Source Address
Destination Address
Option
TTL Protocol Header Check Sum
TCP/UDP Data
情報ネットワーク 6
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 パケットのうちの最後か否
かを表す。– オフセットは分割前のパケットの中でのデータの位置を表す。
情報ネットワーク 7
IPv4 パケット• TTL (Time To Live) は、ネットワーク上で通過可能なルー
タの数であり、一種のホップカウントとして利用される。ルータを通過する毎に一つずつ減らし、この値が 0 のパケットは配送せずに廃棄される。
• Protocol は上位のプロトコルの種類を表す。例えば、 1なら ICMP 、 6 なら TCP 、 17 なら UDP 。
• Checksum は、何らかの理由でヘッダ情報がおかしくなった場合にそれを検出する。
• Source address と Destination address は受信元アドレスと送信先アドレスを表す。
• Option は、タイムスタンプや経路情報等の記録に利用される。
情報ネットワーク 8
IPアドレス• 九州大学内のサブネットマスクは基本的
に、24ビット– ネットマスク 255.255.255.0
• 133.5.X.0– ネットワーク識別子
• 133.5.X.255– ブロードキャスト識別子
• 133.5.X.1 ~ 254– ホスト識別子
情報ネットワーク 9
IPアドレス• 32 ビット• 133.5.1.2
– 133*256^3+5*256^2+1*256+2
– 2231697666$ ping 2231697666PING 2231697666 (133.5.1.2): 56 data bytes64 bytes from 133.5.1.2: icmp_seq=0 ttl=249 time=106.0 ms
http://2231697666
情報ネットワーク 10
クラス A,B,C
01000000101010000000101000100001
10000000101010000000101000100001
11000000101010000000101000100001
クラス A
クラス B
クラス C
情報ネットワーク 11
クラス A
01000000101010000000101000100001
クラス A
•ネットワークアドレス• 1.0.0.0 – 127.0.0.0
•ホストアドレス• 1.0.0.1 – 1.255.255.254
情報ネットワーク 12
クラス B
10000000101010000000101000100001
クラス B
•ネットワークアドレス• 128.0.0.0 – 191.255.0.0
•ホストアドレス• 128.0.0.1 – 128.0.255.254
情報ネットワーク 13
クラス C
11000000101010000000101000100001
クラス C
•ネットワークアドレス• 192.0.0.0 – 223.255.255.0
•ホストアドレス• 192.0.0.1 – 192.0.0.254
情報ネットワーク 14
クラスレス(Classless Inter-Domain Routing:CIDR)
11000000101010000000101000100001
クラス C
11000000101010000000101000100001
クラスレス
192.168.10.33/22
情報ネットワーク 15
クラス D( マルチキャスト )
11100000101010000000101000100001
クラス D
•ネットワークアドレス• 224.0.0.0 – 239.255.255.255
情報ネットワーク 16
IP アドレス192.168.10.33
11000000101010000000101000100001
192.168.10.0
192.168.11.0
192.168.255.0
情報ネットワーク 17
ネットワークとホスト
192.168.10.0
192.168.11.0
192.168.255.0
192.168.10.33 11000000101010000000101000100001
192.168.11.10 11000000101010000000101100001010
192.168.255.1 11000000101010001111111100000001
情報ネットワーク 18
Netmask/Broadcast Address
192.168.10.01
2 3
192.168.10.1 11000000101010000000101000000001
192.168.10.2 11000000101010000000101000000010
192.168.10.3 11000000101010000000101000000011
Broadcast 192.168.10.255 11000000101010000000101011111111
11111111 1111111 1111111100000000
Netmask= 255.255.255.0
情報ネットワーク 19
Netmask/Broadcast Address
192.168.255.1 11000000101010000000101000000001
11111111 1111111 1111111 111111 00255.255.255.252
192.168.255.0
情報ネットワーク 20
まとめ
• 32bit• ネットワーク長 • ネットワークアドレス (host 部が全部 0)• ネットワーク マスク ( ネットワーク部
が全部 1, host 部が全部 0)• ブロードキャストアドレス (host 部が全
部 1)• Host アドレス
情報ネットワーク 21
管理プロトコル
InternetInternetデータ通信
ICMP
相手の IP アドレスに届かない。相手のトランスポートアドレス (IP アドレス+ポート番号)に届かない。
情報ネットワーク 22
管理プロトコル• 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 時間超過• その他
情報ネットワーク 23
経路制御
・宛先アドレス・次ルータのテーブルを持ち、宛先のパケットをどのインタフェースに送信すればよいか決定する。
どっち?
#0
#1
情報ネットワーク 24
#0
#1
#2
#3
192.168.1.0/24
192.168.1.10
192.168.1.1
192.168.1.2
192.168.10.0/30
192.168.10.1
192.168.10.2
192.168.10.4/30
192.168.10.5192.168.10.6
192.168.10.8/30 192.168.10.12/30
192.168.10.9
192.168.10.10192.168.10.13
192.168.10.14
192.168.2.0/24
192.168.2.11
192.168.2.1
PC-A PC-B
PC-ANetwork next-hop0.0.0.0 192.168.1.1192.168.2.0/24 192.168.1.1
#0Network next-hop192.168.2.0/24 192.168.10.6192.168.2.0/24 192.168.10.2
Next-hop: 次ルータそのルータに直接接続されているセグメントのいずれかのIPアドレスになる。
情報ネットワーク 25
#0
#1
#2
#3
192.168.1.0/24
192.168.1.10
192.168.1.1
192.168.1.2
192.168.10.0/30
192.168.10.1
192.168.10.2
192.168.10.4/30
192.168.10.5192.168.10.6
192.168.10.8/30 192.168.10.12/30
192.168.10.9
192.168.10.10192.168.10.13
192.168.10.14
192.168.2.0/24
192.168.2.11
192.168.2.1
PC-A PC-B
PC-ANetwork next-hop0.0.0.0 192.168.1.1192.168.2.0/24 192.168.1.1
#0Network next-hop192.168.2.0/24 192.168.10.6192.168.2.0/24 192.168.10.2
Next-hop: 次ルータそのルータに直接接続されているセグメントのいずれかのIPアドレスになる。
ICMP (Internet Control Management Protocol) Echo ReplyTTL192.168.1.10 から 192.168.2.11 までに経由するルータを調べる。
1. TTL=254 に設定して、 192.168.2.11 に Echo Reply パケットを送る。2. ルータ #0 TTL が 255 になったので、配送をやめ、送信もとにエラーを返す。3. 192.168.1.10 は第1段のルータの IP address がわかる。4. TTL=253…
情報ネットワーク 26
#0
#1
#2
#3
192.168.1.0/24
192.168.1.10
192.168.1.1
192.168.1.2
192.168.10.0/30
192.168.10.1
192.168.10.2
192.168.10.4/30
192.168.10.5192.168.10.6
192.168.10.8/30 192.168.10.12/30
192.168.10.9
192.168.10.10192.168.10.13
192.168.10.14
192.168.2.0/24
192.168.2.11
192.168.2.1
PC-A PC-B
PC-ANetwork next-hop0.0.0.0 192.168.1.1192.168.2.0/24 192.168.1.1
#0Network next-hop192.168.2.0/24 192.168.10.10
#3Network next-hop192.168.2.0/24 192.168.10.14
情報ネットワーク 27
経路表
#R0
#R1
#R2
#R3
133.5.11.0
133.5.10.0 アドレス 次ルータ0.0.0.0 #R0
133.5.7.0
アドレス 次ルータ133.5.11.0 #R0133.5.7.0 #R2
アドレス 次ルータ133.5.10.0 #R0133.5.7.0 #R2
アドレス 次ルータ133.5.11.0 #R1133.5.7.0 #R2
0.0.0.0 特別なあて先
情報ネットワーク 28
マルチキャスト
• すべての必要なホストに送信する• 必要でないどのホストにも送信しない• 他の通信形態
– ユニキャスト• ホストを唯一指定して送信する。
– ブロードキャスト• 必要、不必要関わらず、全てのホストに対して送
信する。
情報ネットワーク 29
マルチキャスト
• 同じデータを必要するいくつかのホストに送信する。– ユニキャスト– ブロードキャスト– マルチキャスト
情報ネットワーク 30
IP マルチキャスト• ネットワーク層でマルチキャストを実現• クラス D アドレス
– 224.0.0.0 ~ 239.255.255.255– グループ識別子
• グループに参加する• グループから離脱する
• 同一データリンクではよく使われる。• ネットワーク層の経路制御は非常に複雑(困
難)• 実験から商用へ• IPv6 でも本質的にはあまり変わらない
情報ネットワーク 31
マルチキャストアドレス
IPv4 パケット0 15 31
Version IP HeaderLength
TOS IP Packet Length
Identifier Flag Fragment Off-set
Source Address
Destination Address
Option
TTL Protocol Header Check Sum
TCP/UDP Data
情報ネットワーク 32
マルチキャストの長所
• パケットの重複を防ぐ• CPU の浪費を防ぐ• 帯域の大きくなりがちなマルチメディア
通信の通信量を減少できる• 時刻同期などにも用いられる
情報ネットワーク 33
マルチキャストの欠点
• 実現が困難• 信頼性の確保が困難• ヘテロな環境に向いていない• 広まっていないのでどこでも使えるとい
うわけではない
情報ネットワーク 34
クラス D( マルチキャスト )
11100000101010000000101000100001
クラス D
•ネットワークアドレス• 224.0.0.0 – 239.255.255.255
情報ネットワーク 35
IP マルチキャストと MAC アドレス
MAC マルチキャスト
0000 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0001 0000 0000 1001 1110 0000 0000 0000 0000 0000 0000
IP マルチキャストで用いられる MAC マルチキャスト
25bit (01-00-5E)
11100000000000000000000000000000
クラス D
23bit
28bit
23bit
情報ネットワーク 36
マルチキャストと NIC
NIC NIC
IP Multicast アドレス→ MAC アドレス 224.10.10.10 → 01-00-5E-0A-0A-0A
あるプログラムが 224.10.10.10に参加
01-00-5E-0A-0A-0A
受信する登録
情報ネットワーク 37
IP マルチキャストアーキテクチャ
インターネット
インターネット
IGMP(Internet Group Management Protocol)
IGMP
IGMP
マルチキャスト経路制御
情報ネットワーク 38
IGMP(Internet Group Management Protocol)
マルチキャストルータは、上流から伝わってきたグループアドレスに参加しているホストが配下のセグメントに存在しているか、 IGMP によって、把握する。マルチキャストに対応している全ての計算機は 224.0.0.1 に必ず参加している。
1. ルータは 224.0.0.1 を用いて、あるグループアドレスにホストが参加しているかどうか問い合わせる。
2. 参加しているホストは、ランダムにタイマーをセットする。3. タイマーが切れたホストは 224.0.0.1 に応答する。4. 他のホストは 224.0.0.1 の応答を聞いて、タイマーのキャンセルをする。
情報ネットワーク 39
複雑なマルチキャスト経路制御
• AS 内( IGP )と AS 間( EGP )で異なる経路制御プロトコルを用いる
• AS 内– DVMRP, PIM
• AS 間– MBGP
• グループ単位に送信木を作る。~ユニキャストの経路制御方式とは一般的に異なる。
情報ネットワーク 40
2 つのモード• Dense Mode
– 各セグメントに必ず 1 台は受信ホストが存在する確率の方が高いと仮定する。
– まず、全てのセグメントに送信する。– 受信ホストが存在しないセグメントへの送信をやめる。– DVMRP (Distance Vector Multicast Routing Protocol )
• Sparse Mode– 各セグメントに受信ホストが存在しない確率の方が高いと仮定
する。– 受信ホストは明示的に参加メッセージを送信者に送る。– 送信者は参加メッセージを受けて受信者の存在するセグメント
への送信を始める。– PIM (Protocol Independent Multicast )
情報ネットワーク 41
高信頼性マルチキャスト
• IP マルチキャストは UDP のみなので信頼性がない
• トランスポート層より上位で信頼性の保証
• アプリケーション層実現のため汎用性がないなどの問題
• ただし実時間性はない
情報ネットワーク 42
なぜマルチキャストは普及していないか
• 世の中にルータ装置が行き渡ってから開発された。– マルチキャストに対応していないルータは多かっ
た。• DVMRP が先行した。
– ネットワークが非常に高価であった時代に Dense Mode のオーバーヘッドは大きすぎた。
• PIM/MBGP は複雑すぎて、サポートしているないルータが多い。
• なくても、致命的に困らない。