スライド 1

分散システム特論
岡村耕二
インターネットの歴史と運用
• 1969年 ARPANET (Advanced Research
Projects Agency Network)
– 国防総省がスポンサー
• 1980年 NSFNET (National Science
Foundation Network)
– 全米科学財団
• 1990年 商用インターネットの急成長
– WWW,電子メールの普及
分散システム特論
2
インターネットに関連する組織
• 1984年 インターネットアーキテクチャ委員会
(IAB)
– RFC 発行開始
• 1992年 インターネット学会(ISOC;
Internet Society)
– IAB はISOC の一部となる
分散システム特論
3
インターネットの運用
インターネットガバナンス
• 1988年 IANA (Internet Assigned Numbers
Authority)
– IPアドレス、ドメイン名、TCP/IPなどで使用するパラメー
タ(ポート番号など)の割り当て管理を行う。
• 1993年 ネットワーク情報センター(NIC)
– InterNIC (北米)
– RIPE NCC (欧州)
– APNIC (アジア太平洋)
• JPNIC
• 1998年 IANA → ICANN (The International
Corporation for Assigned Nmaes and Number)
分散システム特論
4
ICANN
• ICANN
– IPアドレス、ドメイン名、プロトコルパラメータなどのイン
ターネット資源の割当の調整を世界規模かつ民主的に行
う。
• ドメイン名支持組織
– 営利、非営利企業、レジストラ、通信事業者、など
• アドレス支持組織
– ARIN(旧 InterNIC),RIPE NCC, APNIC
• プロトコル支持組織
– IETF, W3C, ITU, ETSI
分散システム特論
5
ICANN
• IEPG (Internet Engineering Planning
Group)
– ISPに対する技術援助、運用ポリシの調整
• CERT (Computer Emergency Response
Team)
– コンピュータネットワークへの不正侵入などの方
法を解析し対策を研究する。
分散システム特論
6
インターネット技術の開発と標準化
• ISOC (インターネット学会)
– IAB (アーキテクチャ委員会)
• IRTF 次世代技術委員会
– 標準化は行わないが、先進技術の研究を担当
– 必要であればIETFに標準化を提案
• IETF 技術標準化委員会
– RFC による技術標準化に責任を持つ
– 年3回のミーティング、電子メールによる議論
– IESG(運営管理委員会)
» 複数のワーキンググループによって遂行
» http://www.ietf.org
• ISTF 社会政策委員会
分散システム特論
7
RFCのできるまで
• アイディアが浮かぶ
– 個人、WGで提案 Internet Draft
• IETF で6ヶ月保存
• IESG が標準化すべきと判断
– Proposed Standard
• RFC 番号
• 実装、テスト
• 6ヵ月後 IESG審議
– Draft Standard
• 4ヶ月の運用試験
• STD 番号の付与
• RFC
– Informational
– Experimental
– Historical
分散システム特論
8
日本におけるインターネットの歴史
• 1984年 JUNET (インターネットではない)
• 1988年 WIDE プロジェクト
– 1990年 九州大学 WIDE プロジェクトに接続
• 大阪大学と 64Kbps
• 1993年
– 日本インターネット協会 (IAJ)
– 日本での商用ネットワークの始まり
分散システム特論
9
講義のすすめ方
• RFC 選ぶ。
• その RFC に基づいて実装されているソフトウェアを
見つける。
• そのソフトウェアと照らし合わせながら RFC の仕様
を発表形式で紹介する。
• RFC の仕様と照らし合わせて実装されているソフト
ウェアの
• 重要と思われるコード部分を説明する。
• ソフトウェアの実行結果を示す。
• A4 x 4 程度のレポートを提出する。
• 韓国と遠隔講義の予定
分散システム特論
10
韓国との遠隔講義
• 韓国大学院生などの遠隔参加
• 先方から質問、発表
• 90分のうちいくらかは韓国人との交流に利
用可
分散システム特論
11
参考
• http://okaweb.ec.kyushu-u.ac.jp/lectures/ds/
– いままでの講義の発表・レポート
• http://gembu.ec.kyushu-u.ac.jp/cgi-bin/Internet/namazu.cgi
– インターネット文書の検索
分散システム特論
12
スケジュール
•
•
•
•
•
•
•
•
•
•
•
•
10/06
10/20
10/27
11/10
11/17
12/01
12/08
12/15
01/12
01/19
01/26
02/02
ガイダンス
発表内容確定・韓国人と顔合わせ
第1回目発表開始
休講かも
休講
分散システム特論
13
おまけ
• ネットワーキングの基礎
分散システム特論
14
階層とプロトコル (OSI 参照モデル)
アプリケーション層
プロトコル
アプリケーション層
プレゼンテーション層
プロトコル
プレゼンテーション層
セッション層
プロトコル
セッション層
トランスポート層
プロトコル
トランスポート層
ネットワーク層
プロトコル
ネットワーク層
データリンク層
プロトコル
データリンク層
物理層
プロトコル
分散システム特論
物理層
15
物理層
• ビット列
– 64Kbps, 1Gbps
• 電圧などの電気的条件
– リンクがあがる
分散システム特論
16
物理層
• ケーブルそのものではない
– 物理層 → ビット列
• 001000111100010001001110
– 標準化された物理層の規格にあったケーブル
• デジタルであることが前提
– メタルケーブルは必ずしも物理層ではない
– アナログケーブルは通信とは関係ない
分散システム特論
17
データリンク層
•
•
ビットパターンをフレーム
8ビット=1バイト
– 001000111100010001001110
– 00100011 11000100 01001110
– 23 D8 8E
•
•
送り元・あて先という概念
イーサネット
– MAC アドレス(48bit)
• 00:50:56:8A:00:00
• ベンダ固有 24bit
– 最初の 24bit を見ればメーカの察しがつく
•
•
•
同一物理ネットワーク間のみ
スイッチングハブ
L2 スイッチ
分散システム特論
18
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アダプタ固有である。
分散システム特論
19
MAC アドレスからベンダを調べる
• http://coffer.com/mac_find/
分散システム特論
20
データリンク層通信
• MAC アドレス: イーサネットカード固有
• イーサネットカードは自分の MAC アドレス
のフレームのみを受信する
– ハードによる処理
– OS によらない
分散システム特論
21
データリンク層通信
• 通信容量:フレームの流量
– CSMA/CD
• スイッチによって関係ない部分にフレームが出ないようにで
きる。
• 関係ない部分→ MAC アドレスで判断
分散システム特論
22
ネットワーク層
•
•
•
•
インターネットの重要な階層
IPv4、IPv6
通信の単位: パケット
スイッチング・ルータ、L3スイッチ
分散システム特論
23
ルータとスイッチングルータ
• ルータ
– ネットワーク層でパケット交換
• スイッチングルータ
– 2.5層でフレーム交換
– L3スイッチ
• 機能(経路制御など)は変わらない。
分散システム特論
24
ネットワーク層
• 経路制御
– 同一物理ネットワークを越えた通信
– ルータ
• 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 アドレス
• ネットワークアドレス+ホストアドレス
分散システム特論
25
IPアドレス
• 九州大学内のサブネットマスクは基本的に、
24ビット
– ネットマスク 255.255.255.0
• 133.5.X.0
– ネットワーク識別子
• 133.5.X.255
– ブロードキャスト識別子
• 133.5.X.1 ~ 254
– ホスト識別子
分散システム特論
26
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
分散システム特論
27
トランスポート層
• プロセスとプロセスの通信
• TCP
– 信頼性があるが、速度が不定
• メール、WEBアクセス
• UDP
– 信頼性がないが、 速度は一定
• マルチメディア通信
分散システム特論
28
トランスポート層
• IPアドレスだけでは識別子が足りない
– ホスト内でもっと細かく識別できる必要がある
• プロセス
• ウインドウ
– IP Address + Port = トランスポートアドレス
• ポート番号
– 16bit
• 特定のサービスを固定的に割り当てる
– 25: 電子メール
– 80: WWW
分散システム特論
29
決められたポート番号
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]>
分散システム特論
30
通信アプリケーション
• 電子メール
– SMTP/POP/IMAP
• WWW
– HTTP/FTP
• DNS
– DNS
• VoD
– RTSP
• テレビ会議
– RTP
分散システム特論
31
通信アプリケーション
• 一定の手順(プロトコル)に従って動作してい
る
• インターネットの通信プロトコルは RFC とし
て公開されている
• どのように実現されているかプログラムによっ
て固有
– 設定方法がプログラムによってまちまち
• 通信プロトコルの重要な部分を押さえておけ
ば設定すべき箇所は予想がつく
分散システム特論
32
メールソフト
• メール配送サーバ
– SMTP
• メール受信サーバ
– POP/IMAP
• メールフォルダの設定などは通信機能とは別
の次元の話
分散システム特論
33
通信アプリケーション
• プロトコルは公開されている
• 物理層からすべて公開されている
– ビット列
– フレーム列
– パケット列
– パケットに含まれるデータ内容
– ポート番号から既知のサービスは察しがつく
• ビット列がわかれば、通信内容は全て解析可
能
分散システム特論
34
通信の仕組み
• コンピュータにとって MAC アドレス が重要
• 人間にとって ホスト名・IPアドレス が重要
• ホスト名 → IP アドレス
– DNS
– www.kyushu-u.ac.jp → 133.5.1.2
• IP アドレス → MAC アドレス
– ARP (Address Resolution Protocol)
分散システム特論
35