Transcript スライド 1
第8章アプリケーションプロトコル 第8章アプリケーションプロトコル 編集 4403097 安松良太 1 第8章アプリケーションプロトコル 目次 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 アプリケーションプロトコルの概要 DNS (Domain Name System) WWW (World Wide Web) 電子メール 遠隔ログイン (TELNET) ファイル転送 (FTP) NFS (Network File System) ネットワーク管理 LDAP (Lightweight Directory Access Protocol) 2 第8章アプリケーションプロトコル 8.1アプリケーションプロトコルの概要 4403046 佐藤 要太郎 3 第8章アプリケーションプロトコル 8.1.1 アプリケーションプロトコル OSI参照モデルの第5層、第6層、第7層に 相当するTCP/IP上位層プロトコル アプリケーション特有の通信処理を行う アプリケーション層 プレゼンテーション層 アプリケーション層 セッション層 トランスポート層 トランスポート層 ネットワーク層 インターネット層 データリンク層 データリンク層 物理層 (ハードウェア) OSI参照モデル TCP/IP階層モデル HTTP、SMTP TELNET、FTP SNMP、MIME HTML、MIB RPC 4 第8章アプリケーションプロトコル 8.1.2 アプリケーションプロトコルとは ネットワークアプリケーション →Webブラウザ、電子メールソフト アプリケーションプロトコル →HTTP、SMTP、POP 5 第8章アプリケーションプロトコル 8.1.3 アプリケーションプロトコルと プロトコルの階層化 トランスポート層(OSI参照モデル第4層)以 下をそのまま利用できる ⇒アプリケーション開発者はアプリケーション プロトコルの決定とプログラムの開発だけ に専念することができる 6 第8章アプリケーションプロトコル 8.2 DNS (Domain Name System) 4403046 佐藤 要太郎 7 第8章アプリケーションプロトコル 8.2.1 IPアドレスを覚えるのは大変 IPアドレス・・・ネットワークに接続されたコ ンピュータを識別するための数列 ⇒人間にはとても覚えにくい 各IPアドレスに対してホスト名をつける 通信の際にはホスト名を入力し、IPアドレ スに変換 8 第8章アプリケーションプロトコル 8.2.2 DNS登場の背景 ARPANETではhostsと呼ばれるデータベース ファイルを利用 SRI-NIC(ネットワークインフォメーションセンター)での一括管 理 コンピュータは定期的にセンターからデータベー スをダウンロードして利用する ネットワークの拡大に対応できなくなった 9 第8章アプリケーションプロトコル 8.2.2 DNS登場の背景 DNSでは、ホストを管理している組織が、デー タの設定や変更を行うことができる ユーザーがホスト名を入力すると、IPアドレス が登録されているデータベースサーバーを検 索する ホスト名の追加変更削除の際、そのホスト名 を管理するデータベースサーバーのみで処 理すればよい 10 第8章アプリケーションプロトコル 8.2.3 ドメイン名の構造 ドメイン名の構造 tus.kagu.ac.jp -tus 東京理科大学 -kagu 神楽坂キャンパス -ac 大学 -jp 日本 11 第8章アプリケーションプロトコル 8.2.4 DNSは階層構造 (root) org com jp co ac uk ne tus noda kagu kuki 12 第8章アプリケーションプロトコル 8.2.5 ネームサーバー ネームサーバ・・・ドメイン名を管理している ホストやソフトウェアのこと ルートネームサーバは全世界に13個存在 DNSによるIPアドレスの検索は、ルート ネームサーバーから順番意行われる 13 第8章アプリケーションプロトコル 8.2.4 DNSによる問い合わせ ルートネームサーバ jpのDNS Server yahoo.comの DNS Server www tus.ac.jpの DNS Server リゾルバ 14 第8章アプリケーションプロトコル 8.2.5 DNSはインターネット上に広がる 分散データーベース ホスト名からIPアドレスを検索するだけではない メールアドレスと、そのメールを受信するメールサーバー のホスト名の対応情報など 15 第8章アプリケーションプロトコル 8.3 WWW (World Wide Web) Kazuma kamata 16 第8章アプリケーションプロトコル 8.3.1 インターネットブームの火付け役 wwwはインターネット上の情報を、ハイ パーテキスト形式で参照できる情報提供シ ステム 提供される情報は文字情報だけでなく、静 止画、動画、音声、プログラムなど、さまざ ま 17 第8章アプリケーションプロトコル 8.3.2 wwwの基本概念 情報へのアクセス手段と位置の定義 →URL 情報の表現フォーマットの定義 →HTML 情報転送などの操作の定義 →HTTP 18 第8章アプリケーションプロトコル 8.3.3 URL (Uniform Resource Locator) インターネット上の資源の場所の表記法と して利用される。 書式 スキーム//ホスト名/絶対パス スキーム//ホスト名:ポート番号/絶対パス 19 第8章アプリケーションプロトコル 8.3.4 HTML (Hyper Text Markup Language) Webページを記述するための言語 ブラウザの画面に表示する文字や、文字 の大きさ、位置、色などを指定できる 画像データや動画を画面に貼り付ける設 定や、音や音楽を鳴らす設定ができる。 20 第8章アプリケーションプロトコル 8.3.5 HTTP (Hyper Text Transfer Protocol) 要求コマンドに“GET”などのASCII文字列が 利用される。 それに対する応答は数字を3文字のASCII文 字列で表したものが利用されている。 21 第8章アプリケーションプロトコル 8.4 電子メール 4403076 浜田 ちひろ 22 第8章アプリケーションプロトコル 8.4.1電子メール ネットワーク上の郵便 文章や画像などコンピュータで扱える様々な情報 を送信可能 国内、海外問わずどこへでも送信可能 メーリングリスト [同報通信] 1つの電子メールを参加者全員に配送 →事務連絡、情報交換、etc… 23 第8章アプリケーションプロトコル 8.4.1 電子メールの仕組み SMTP[Simple Mail Transfer Protocol] 電子メールサービスを提供するためのプロトコル トランスポートプロトコルとしてTCPを利用 3つの要素から構成 電子メールアドレス データ形式 転送プロトコル 24 第8章アプリケーションプロトコル 8.4.2 電子メールアドレス 電子メールを使用する時に用いるアドレス 郵便でいえば住所と氏名に相当(名前@住 所) 住所の部分はドメイン名と同じ構造 電子メールの配送先の管理はDNSで行われ る →MX [Mail Exchange]レコード 25 第8章アプリケーションプロトコル 8.4.3 MIME [Multipurpose Internet Mail Extensions] Internetで幅広く使えるようにメールのデータ形式 を拡張したもので、WWWやNetNewsでも利用され る テキスト形式→静止画・動画・音声・プログラムファイル etc.. データの書式を規定 →OSI参照モデルではプレゼンテーション層 26 第8章アプリケーションプロトコル 8.4.3 MIME [Multipurpose Internet Mail Extensions] ヘッダ+本文の2つの部分から構成 空行から後ろが本文 ヘッダの”Content-Type”で本文のデータタイプを 示す 1つのMIMEデータを複数のMIMEデータの集合と して定義できる →マルチパート 27 第8章アプリケーションプロトコル MIMEの代表的なContent-Type Content-Type 内容 Text/Plain 通常のテキスト Message/Rfc822 MIMEと本文 Multipart/Mixed マルチパート Application/Postscript Postscript Application/Octet-stream バイナリファイル Image/Gif GIF Image/Jpeg JPEG Audio/Basic AU形式の音声ファイル Video/Mpeg MPEG Message/External-Body 外部にメッセージがある 28 第8章アプリケーションプロトコル 8.4.4 SMTP(Simple Mail Transfer Protocol) 電子メールを配送するアプリケーションプロトコル TCPポート番号は25番 1つのTCPコネクションを確立 →制御、データ転送 クライアントはテキストコマンドで要求を出し、サー バーは3桁の数字で応答 各コマンド、応答の最後に改行(CR,LF)が付加され る 29 第8章アプリケーションプロトコル 8.4.5 POP(Post Office Protocol) 電子メールを受信するためのプロトコル クライアント側で電子メールを管理する 1つのTCPコネクションを確立して制御転送を行う クライアントはASCII文字列で要求を出す サーバーは正常なら”+OK”、エラーなら”-ERR”で応答 クライアントが好きな時間にメールを受信できる 30 第8章アプリケーションプロトコル 8.4.6 IMAP(Internet Message Access Protocol) POPと同様、電子メールなどを受信するため のプロトコル IMAPはサーバー側で管理を行う⇔POPは メールの管理をクライアント側で行う サーバー上のメールの全てをダウンロードし なくても読むことが可能 メールの未読・既読情報や、仕分けなどの管 理もサーバーで行ってくれる 31 第8章アプリケーションプロトコル 8.5 遠隔ログイン (TELNET) 4403058 高田真希 32 第8章アプリケーションプロトコル 8.5.1 遠隔ログイン(TELNET) 遠隔ログインとは? TELNETの仕組み TELNETクライアント 33 第8章アプリケーションプロトコル 8.5.2 遠隔ログインとは? TSSのメインフレームと端末の関係を コンピュータネットワークに応用 ルーターや高機能スイッチ等の ネットワーク機器にログインして その設定を行うときにも利用 34 第8章アプリケーションプロトコル 8.5.3 TELNETの仕組み 1 TCPコネクションのひとつを利用 コマンドが文字列として送信 →相手のコンピューターで実行 基本サービス ネットワーク仮想端末の機能 オプションのやり取りをする機能 35 第8章アプリケーションプロトコル 8.5.3 TELNETの仕組み1 OS経由 文字列 キーボード OS経由 モード処理 TELNETクライアント コマンド文字列 TELNETD 出力受け取り OS経由 画面出力 シェル コマンド解釈、実行 OS 36 第8章アプリケーションプロトコル 8.5.4 TELNETクライアント 通常は23番のポート番号 25番→SMTP 80番→HTTP 110番→POP3 TCP/IPのアプリケーションを 開発するときのデバッグに利用 37 第8章アプリケーションプロトコル 8.5.5 TELNETの仕組み 2 ユーザーが入力した文字以外にオプション をやり取りする機能 2つのモード 行モード 透過モード 38 第8章アプリケーションプロトコル 8.5.5 TELNETの仕組み 2 行モード 1行分のデータ サーバー クライアント 改行キーが入力されるごとに一行分のデータをまとめて送る 透過モード S クライアント L サーバー クライアントAで入力された1文字ごとにサーバーBに送信 39 第8章アプリケーションプロトコル 8.6 ファイル転送 (FTP) 4403048 椎葉 洋 40 第8章アプリケーションプロトコル 8.6.1 FTPとは FTP: 異なったコンピュータ間でファイル転送を行うプロトコ ル TELNET同様、FTPでもログインをしてから操作を行う anonymous ftp: インターネット上で誰でもアクセスが出来るFTPサーバ ログインするためには user名 password 「anonymous」または「ftp」等が一般的 「メールアドレス」が最近では一般的 41 第8章アプリケーションプロトコル 8.6.2 FTPでのファイル転送のイメージ User ○○○○ OK! Password ****** です! ログアウト ホストA ログイン ホストB 42 第8章アプリケーションプロトコル 8.6.3 FTPの仕組みと概要 ① 制御用TCPコネクション 制御用TCPコネクション ログイン時のユーザ名やパスワード認証 転送するファイル名や転送する方法 ポートと番号は21番を使用する コマンドのやりとりはHTTPやSMTPのコマンドと同様 だが、SMTPとは違いFTPでは制御用のコネクションで データ転送は行わない。 43 第8章アプリケーションプロトコル 8.6.4 FTPの仕組みと概要 ② データ転送用TCPコネクション データ転送用TCPコネクション 制御用(ポート番号21)のTCPコネクションでGET、PUT、 LISTなどのコマンドが実行されると、そのたびにデー タ転送用TCPコネクションが確立される。 制御用コネクションではユーザからの指示か設定によ る一定時間の経過によりコネクションは切断されるが、 転送中には切断されない。 データ転送用TCPコネクションではポート番号20が使 われるが、PORTコマンドにより指定が可能で、セキュ リティ向上のためにポート番号を乱数的に割り当てる 実装も存在する。 44 第8章アプリケーションプロトコル 8.6.5 FTPの仕組みと概要の図 FTPサーバ FTPクライアント FTP 制御用 データ 転送用 データ 転送用 TCP 制御用 TCP IP データ転送用TCPコネクション IP 制御用TCPコネクション 45 第8章アプリケーションプロトコル 8.6.6 FTPの主なコマンド 46 第8章アプリケーションプロトコル 8.6.7 FTPの主な応答メッセージ 47 第8章アプリケーションプロトコル 8.7 NFS(Network File System) 4403098 山口 哲平 48 第8章アプリケーションプロトコル 8.7.1 NFS ネットワークに接続されたコンピュータ間で ファイルを共有するためのプロトコル 現在ではUNIXワークステーションでサポー ト 共同作業を行っている際に複数の使用者 が同じファイルシステムを共有できる 49 第8章アプリケーションプロトコル 8.7.2 NFSの図 50 第8章アプリケーションプロトコル 8.7.3 階層モデル アプリケーション層 NFS プレゼンテーション層 XDR セッション層 RPC トランスポート層 UDP or TCP ネットワーク層 IP 51 第8章アプリケーションプロトコル 8.7.4 NFSの特徴 TCPとUDPどちらでも動作する UDPでも信頼性のある通信可能 ウェルノウンポート番号は割り当てられて いない→ポートマップ アプリケーションレベルで信頼性を提供 高速データ転送 52 第8章アプリケーションプロトコル 8.7.5 NFS(Network File System) ネットワークに接続されたコンピュータ間で、 ハードディスクなどに格納されているファイル を共有するためのプロトコル 共同作業を行っている際に、複数の使用者 が同じオペレーションで同じファイルシステム を共有できる 4401011 伊藤 正人 53 第8章アプリケーションプロトコル 8.8 ネットワーク管理 4403005 石原 真樹 54 第8章アプリケーションプロトコル 8.8.1 SNMP (Simple Network Management Protocol) TCP/IPではネットワーク管理にSNMPが利 用される 管理する側:マネージャ 管理される側:エージェント この二つの間の通信のやり取りを決めたも のがSNMP 55 第8章アプリケーションプロトコル 8.8.1 SNMP 56 第8章アプリケーションプロトコル 8.8.2 MIB (Management Information Base) SNMPでやり取りされる情報のこと ツリー型の構造を持ったデータベースで、 それぞれの項目には数字がつけられてい る 57 第8章アプリケーションプロトコル 8.8.3 MIBツリーの例 58 第8章アプリケーションプロトコル 8.8.4 RMON (Remote Monitoring MIB) MIB→ネットワーク機器のインタフェースを監視す るパラメータ群から構成 RMON→接続されるネットワークの回線を監視す るパラメータ群から構成 RMONによりネットワークの監視可能な部分が広 がり、ネットワークを効果的に監視できるようにな る 59 第8章アプリケーションプロトコル 8.8.5 SNMPを利用したアプリケー ションの例 SNMPを利用しているフリーウェアをひとつ紹介し ます。 MRTGと呼ばれ、ルータのトラフィック量の情報を 定期的に収集してグラフしてくれるツール。 入手先は↓ http://eestaff.ethz.ch/~oetiker/webtools/mrtg/ mrtg.html 60 第8章アプリケーションプロトコル 8.8.2 MIB (Management Information Base) 4401015 岩渕隆亮 SNMPでやり取りされる情報のこと ツリー型の構造を持ったデータベースで、 それぞれの項目には数字がつけられてい る 61 第8章アプリケーションプロトコル 8.9 LDAP (Lightweight Directory Access Protocol) 4403005 石原 真樹 62 第8章アプリケーションプロトコル 8.9.1 LDAPとは? Lightweight Directory Access Protocolの略 注:LDAPは「エルダップ」と発音する ディレクトリサービスにアクセスするための プロトコル X.500の機能の一部をTCP/IPに対応させ たもの 63 第8章アプリケーションプロトコル 8.9.2 ディレクトリサービス ネットワーク上に存在している様々な資源 に関するデータベース的な情報提供を行う サービス ネットワーク上の資源の管理サービス 64 第8章アプリケーションプロトコル 8.9.3 X.500 (ディレクトリサービスの標 準化) X.500とは? 1988年、ISOがディレクトリサービスの標準と して規定したディレクトリサービスプロトコル X.500の一部をTCP/IPに対応させたものが LDAPである 65 第8章アプリケーションプロトコル 8.9.4 LDAPの具体的な機能 ディレクトリサーバー上での操作 ディレクトリ情報の作成、変更、削除、検索など 例)電子メールアドレスの検索 レプリケーション機能 サーバー間でのディレクトリ情報の交換 セキュリティー機能 66 第8章アプリケーションプロトコル 8.9.5 まとめ ディレクトリサービスを利用するためのプロトコル 主な機能 ディレクトリ情報の操作 レプリケーション機能 セキュリティ機能 LDAPにより、ネットワーク上の各種サービスを容 易かつ安全に利用でき、効率的に情報システム の管理ができる 67