スライド

Download Report

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