Transcript スライド
2004年4月26日(月) 2004年5月10日(月) 情報コミュニケーションIII A 第3回 プロトコル(HTTP、SMTP演習) 前回の課題の調べ方(XPの場合) システムのプロパティを表示する システムのプロパティの 表示方法 1.マイコンピュータを 右クリックしてプロパティを 選択 2.コントロールパネル (クラシック表示)から 「システム」を選択 前回の課題の調べ方(つづき) OSの種類 Microsoft Windows XP Professional Service Pack(SP) 1 CPU Intel Pentium M (Mobile) = centrino 1000MHz=1GHz メモリ量 504MB (実際は 512MB) メモリが実際より少なく表示されるの は? ノートパソコンではメインメモリを画像出力用のメ モリ(ビデオメモリ,VRAM)に使う場合が多い 前の例の場合8MBをVRAMに メモリ量はどういう数値になる? 2のn乗の値がチップの単位となる 2,4,8,16,32,64,128,256,512MB 総メモリ量はこれらの組み合わせ 128,192(=128+64),256,384(=256+128), 512,768(=512+256),... 今回の講義内容 前回までは ⇒ コンピュータ単体のハード / ソフトウェア 今回から ⇒ コンピュータ同士の通信 → インターネット プロトコルについて コンピュータ同士の通信を行うときの約束ごと HTTP,SMTP実習 プロトコルの例として HTTP(WWWの通信に利用) SMTP(電子メールの通信に利用) プロトコル(protocol) コンピュータ同士が通信する際に定める 「約束ごと」 ネットワーク上にはさまざまなコンピュータが存在 メーカ,アーキテクチャ,OSなどが異なる それでも通信できることが重要(みんなが使えるために) 通信時の約束ごとを明確に定義 通信はコンピュータの違いを意識する必要がなくなる プロトコルが同じなら通信可能 プロトコル プロトコル プロトコル Windows UNIX MacOS 日常生活にあるプロトコル 人間同士でも、ほぼ決まったやり取りをする 場合がある コンピュータほど厳密ではない 例 電話での会話 ファーストフード店 マニュアルにのっとった接客 電話のプロトコル(一般編) 電 話 が 鳴 る 電 話 に 出 る の を 待 つ 電 話 断 電 話 を 取 る 「 も し も し 、 ○ ○ で す 」 ×× 電 話 番 号 ダ イ ア ル と 申 し ま す が 会 話 本 題 の 失 礼 し ま す さ よ う な ら 電 話 断 電話のプロトコル(友達編) 電 話 番 号 ダ イ ア ル 電 話 断 「 ま い ど 、 ○ ○ や 」 電 話 を 取 る 「 お う ○ ○ か 。 ×× 電 話 が 鳴 る 電 話 に 出 る の を 待 つ 会 話 本 題 の 「 ほ な 切 る わ 」 「 ほ な な 」 や 」 電話プロトコルはあいまい性が高い!! 電 話 断 コンピュータの場合 人間はある程度ルール外でも会話が成立 知力,応用力,理解力が優れてる コンピュータは融通が利かない 厳密な「約束ごと」が必要 →プロトコル インターネットには国境がない 国,メーカに関係ない統一の規格(RFCなど)がある さまざまなプロトコル やり取りするデータや通信の種類ごとに定められる プロトコルの種類 各メーカー、団体が独自のプロトコルを開発 メーカー、団体名 Apple Computer DEC(Compaq→HP ) IBM Microsoft Novell プロトコル Apple Talk DNA SNA / IPX NetBEUI Netware(IPX/SPX) 互換性がなく不便 標準化が必要 ISO(国際標準化機構)によって標準プロトコルが開発 OSI (Open System Interconnection) インターネットの世界では普及していない TCP/IP プロトコル OSI参照モデル(1) OSI参照モデル通信プロトコル設計時の指標 複雑化 プロトコルの階層化 人の会話を階層化してみると 日本語の プロトコル 言語層 インターフェース 通信装置層 電話機のプロトコル OSI参照モデル(2) アプリケーション層 上 位 層 プレゼンテーション層 セッション層 トランスポート層 下 位 層 アプリケーション(メール、ファイル転送な ど)のプロトコル データ表現形式の整合性をとる役割 コネクション(接続)の確立/切断 データを相手に確実に届ける役割 ネットワーク層 アドレスの管理や経路選択 データリンク層 機器間におけるデータのやりとり 物理層 通信回線やコネクタの物理的条件、 電気的条件についての規定 TCP/IPプロトコル OSI(Open System Interconnection) がインターネットでは 普及していない TCP/IP プロトコルが普及し、事実上インターネット における業界標準のプロトコル TCP/IP プロトコル普及の要因 オープン(世界中の誰もが議論に参加できる) IETF(Internet Engineering Task Force: インターネット技術標準化 委員会)でとりまとめ RFC(Request For Comments) というドキュメントで公告 実際に通信できる技術を求める 仕様より開発を重視 TCP/IPプロトコル階層モデル OSI 参照モデル TCP/IP モデル アプリケーション層 プレゼンテーション層 アプリケーション層 セッション層 トランスポート層 トランスポート層 ネットワーク層 インターネット層 データリンク層 ネットワーク インターフェース層 物理層 アプリケーションプロトコルの例 HTTP (HyperText Transfer Protocol) WWWの通信 SMTP (Simple Mail Transfer Protocol) 電子メールの送信 POP (Post Office Protocol) 電子メールの受信 FTP (File Transfer Protocol) ファイルの送受信 Telnet 遠隔地(リモート)の端末に接続 HTTP (1) WWWのデータ授受のためのプロトコル サーバからのデータの受信 URL(Uniform Resource Locator)でデータの場所を指定 クライアントからのデータ送信 フォーム等で入力されたデータ 基本的に1回のやりとりで通信が終了 クライアントからの要求 それに対するサーバからの返事 必要に応じて新たな通信を行う HTTP(2) クライアント (ユーザ) WWWサーバ このページが見たいんやけど GET / HTTP/1.0 どれどれ まだかいな… ほい.これやろ 接続断 接続断 SMTP(1) メールを送信するためのプロトコル 送信者の指定 ⇒ From: 宛先の指定 ⇒ To: メールのタイトル、本文の送信 1回の通信で複数のやりとりを行う SMTP(2) え え よ MAIL FROM: …… OK 内こ 容の は人 こか んら なあ やの つ人 宛 … HELO kyoto-wu… SMTPサーバ メ ー ル 送 っ て も え え ? わ か っ た . 送 っ と く わ 次 の メ ー ル は こ の 人 か ら … クライアント こ れ で 終 わ り ほ い ほ い POP メールを読む(受信する)ためのプロトコル ユーザ認証 メール一覧の取得 メールの受け取り メールの削除 POP3 POP Version 3 : 一般的に使われる APOP ユーザ認証暗号化 サーバに送信するパスワードを暗号化して送る FTP ファイルを送受信するためのプロトコル ユーザ認証 匿名(anonymous)でのアクセスも可能 ファイルリストの取得 ディレクトリの移動 ファイルの送信 ファイルの受信 など ftpがアプリケーションプログラム(コマンド名)を 指している場合もある Telnet 遠隔地から他のコンピュータにログインして、 遠隔(リモート)操作を行なう仮想端末プロトコル ユーザ認証(ログイン/ログアウト) クライアント(Windows、Mac)からサーバ(UNIX)にログイン する使い方が主流 文字型の端末装置として コマンドプロンプト(Windows),ターミナル(Mac) フリーのクライアントソフト 例:TeraTerm (Windows) 、NCSA Telnet (Mac) ポートを指定することによって他の通信も可能 そのポートに割当たったプログラムと,プロトコルに従った 通信が人間の手でできる ポート(port)番号 複数の通信を同時に行うためには? 通信の窓口を複数持たせる → ポート番号 内線番号のようなもの ⇔IPアドレス:外線番号にあたる ネットワークインタフェースに1つのみ プロトコルごとに専用の受付用ポート番号 代表的なものはあらかじめ決められている well known port 実際の通信は別のポートで行う場合も ポート1つで、1つの通信しかできない 同種の他の通信が行えるように 窓口とポート OS 市役所 行政課 健康課 市民課 窓口 福祉課 プログラム プログラム HTTP SMTP プログラム プログラム POP ポート サービスによってポート(窓口)が違う FTP 代表的なプロトコルとポート番号 プロトコル名 ポート番号 HTTP 80 SMTP 25 POP 110 Telnet 23 FTP 21 telnet とポート番号の関係 OS プログラム プログラム プログラム プログラム プログラム HTTP 80 SMTP 25 POP 110 FTP 21 Telnet 23 人間が直接WWWサーバ (HTTPプログラム)と通信 できる telnet ホスト名 ポート番号 WWWクライアント ユーザ 演習:telnetを使ったプロトコル HTTP,SMTPのプロトコルを体験 telnet プログラムの起動方法 コマンドプロンプトを起動 キーボードからコマンドを入力するもの 「スタート」 → 「プログラム」 → 「アクセサリ」 → 「コマンドプロンプト」 で実行 通信先とポート番号を指定してtelnetを実行 telnet [通信先のホスト名] [ポート番号] 別ウィンドウとしてtelnetが起動する コマンドプロンプトの例 プロンプト この部分にいろいろコマンドを入力する 演習の前に UNIXへのログイン Windowsのtelnetは、修正が効かない UNIXでtelnetを使うと、修正できる!! UNIX使うしかないでしょ。 UNIXへのログイン方法 Windowsのtelnetを使って… telnet db.kyoto-wu.ac.jp FreeBSD/alpha (sanjo.kyoto-wu.ac.jp)(ttyp2) login: あなたのアカウント Password: メール読むときのパスワード % 参考:ローカルエコー 入力した文字がそのまま画面に表示されること Windowsのtelnetは標準ではこの設定がオフ 何を打ったか確認できない メニューからローカルエコーを行うように設定する メニューから「ターミナル」-「設定」を選択 「ローカルエコー」の欄にチェックを入れる これを設定するのは最初の1回のみ HTTP実習 通信先 www.cs.kyoto-wu.ac.jp ポート 80 telnet□www.cs.kyoto-wu.ac.jp□80 □:スペース : まず以下のように入力してみる 打ち間違えたて訂正した場合はうまくいかない もう1度接続しなおし GET□/□HTTP/1.0 ↓ ↓ □:スペース ↓:改行(Enter) サーバからの返答 ステータスライン HTTP/1.1 200 OK 要求が受け付けられたかどうか ヘッダ データに付随する各種情報 キーワード: で始まる 空行 HTMLファイルの内容 http://www.cs.kyoto-wu.ac.jp/ ブラウザで確認してみよう Date: Wed, 8 May 2002 02:…. Server: Apache/1.3.17 (Unix) Last-Modified: Mon, 14…. Etag: “47c…. <HTML> <HEADER> <TITLE>…… 他のファイルを取り出す test.htmlというファイルを取り出す GET□/~ebara/test.html□HTTP/1.0↓ ↓ 存在しないファイルを取り出そうとするとどうなる か? GET□/~ebara/nainai.html□HTTP/1.0↓ ↓ 他のサーバ(学内サーバ)からファイルを取り出す 通信先 web.kyoto-wu.ac.jp ポート 80 telnet web.kyoto-wu.ac.jp 80 電子メールの構造 ヘッダ部とボディ部に分かれる 空行が切れ目 ヘッダ メールの属性的な情報 From: 発信人 To: 宛先 Date: 日付 Subject: 表題 ボディ メールの本文 など メールの例 ヘッダ From: [email protected] To: [email protected] Date: Wed, 8 May 2004 17:14:05 +0900 Subject: long time no see! 空行 body ごぶさたしてます。西田です。 最近、大学に来てないようやけど、元気にしてる? SMTP演習 通信先 mail.kyoto-wu.ac.jp ポート 25 telnet mail.kyoto-wu.ac.jp 25 まずは挨拶から HELO ホスト名 220 uji.kyoto-wu.ac.jp ESMTP Sendmail 8.9.3/3.7W01051020; Wed, 8 May 2002 11:35:37 +0900 (JST) HELO mail.kyoto-wu.ac.jp 250 uji.kyoto-wu.ac.jp Hello s028-**.kyoto-wu.ac.jp [192.168.157.2], pleased to meet you 送信者と送信先の設定 メールの送り主のアドレスを指定 まずこれを指定しなければいけない MAIL FROM: 自分のメールアドレス メールの送り先のアドレスを指定 RCPT TO: 送り先のメールアドレス まずは自分のアドレスを設定 MAIL FROM: [email protected] 250 2.1.0 [email protected]... Sender ok RCPT TO: [email protected] 250 2.1.5 [email protected]... Recipient ok メールの本文を書く DATA 本文を入力せよという指示が返ってくる 本文は自由に 文字化けの問題があるので半角英数文字で 改行等は自由 「.」(ピリオド)だけの行を入力すると終了 DATA 354 Enter mail, end with "." on a line by itself test mail desu! . 250 2.0.0 f4B3I4m01934 Message accepted for delivery 通信の終了 明示的に指示しないと通信は終了しない QUIT コマンド HTTPは結果を返すとすぐに通信断 QUIT 221 uji.kyoto-wu.ac.jp closing connection 自分自身にメールが届いたか確認してみよう! 隣の人にメールを出す MAIL FROM: (差出 人) 自分のアドレスを指定 RCPT TO: (送り先) 隣の人のアドレスを指定 DATA 354 Enter mail, end with "." on a line by itself Subject: Hello! DATA 標題(Subject:) を付けてみ よう 本文の前に指定 本文が始まる前に空行を 空行 Genkidesuka? . 250 2.0.0 f4B3I4m01934 Message accepted for delivery MAIL FROM:について 自分のメールアドレス以外を書いたら? ⇒書いた通りのアドレスで送られてしまう アドレスの偽造?? 必ず自分のアドレスを正しく書く それがルールでありマナー 偽造を見破ったり防止したりする技術がある ヘッダ情報からの追跡 サーバ送信時にユーザを特定 MAIL FROM:の内容に関係なく送信者の情報を ヘッダに書き込む 実際の画面の例 67:[sanjo:ebara] % telnet mail 25 Trying 192.168.110.100... Connected to uji.kyoto-wu.ac.jp. Escape character is '^]'. 220 uji.kyoto-wu.ac.jp ESMTP Sendmail 8.9.3p2/3.7W; Wed, 23 Apr 2003 15:08:27 +0900 (JST) HELO localhost 250 uji.kyoto-wu.ac.jp Hello localhost [127.0.0.1], pleased to meet you mail from: [email protected] 250 [email protected]... Sender ok rcpt to: [email protected] 250 [email protected]... Recipient ok data 354 Enter mail, end with "." on a line by itself Subject: test mail 空行(Enterのみ) this is test mail. OK ? . 250 PAA09678 Message accepted for delivery quit 221 uji.kyoto-wu.ac.jp closing connection Connection closed by foreign host. 68:[sanjo:ebara] % 4/26の課題 2.コンピュータの仕組み(ソフトウェア編)のプリント p.14の図4.に示したファイルシステムの「lpd」という 名前のディレクトリに関して以下を示せ 絶対パス ディレクトリ「lock」からの相対パス ディレクトリ「httpd」からの相対パス 今日の講義に関する感想、コメント 題名: 0426 本文中に必ず氏名と学生番号を書くこと 送信先メールアドレス [email protected] 〆切 5 / 9 4/26課題の解答 2.コンピュータの仕組み(ソフトウェア編)のプリ ントp.7の図4.に示したファイルシステムの 「lpd」という名前のディレクトリに関して以下を 示せ 絶対パス /var/spool/lpd ディレクトリ「lock」からの相対パス .. ディレクトリ「httpd」からの相対パス ../../spool/lpd 5/10の課題 今日行った演習でどんなことを行ったのか自分 なりの言葉で整理 演習内容を再確認するために 今日の講義に関する感想、コメント 題名: 0510 題名が全角の場合自動返信のメッセージが文字化けする可能性 がある(受け取りは問題ない) 本文中に必ず氏名と学生番号を書くこと 送信先メールアドレス [email protected] 〆切 5 / 16