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