Download presentation
Presentation is loading. Please wait.
1
Ibaraki Univ. Dept of Electrical & Electronic Eng.
情報ネットワーク Ibaraki Univ. Dept of Electrical & Electronic Eng. Keiichi MIYAJIMA
2
今後の予定 期末試験までの予定 1月12日(火) TCP/IPアプリケーション 2月2日(火) まとめ(レポート無)
1月12日(火) TCP/IPアプリケーション 1月19日(火) IPを助けるプロトコルと技術1(レポート有) 1月26日(火) IPを助けるプロトコルと技術2(レポート有) 2月2日(火) まとめ(レポート無) 2月9日(火) 期末試験(予定)
3
TCP/IPアプリケーション
4
アプリケーション アプリケーションプログラムの構造 OS OS クライアント サーバ ハードウェアによる通信路 アプリケーションプログラム
入力処理 アプリケー ション層 モジュール アプリケー ション層 モジュール プレゼンテー ション層 モジュール 出力処理 プレゼンテー ション層 モジュール データベース データベース セッション層 モジュール セッション層 モジュール OS OS ソケットモジュール ソケットモジュール ポート番号 データベース トランスポート層 モジュール トランスポート層 モジュール ポート番号 データベース インターネット層 モジュール インターネット層 モジュール ルーティング テーブル ルーティング テーブル ハードウェアによる通信路
5
ストリーム型とデータグラム型 ストリーム型 データグラム型 アプリケーションプログラムの通信方式は大きく二つに分けられる
(教科書p.252図7.3参照) テキスト文字列でデータを送受信 改行コードを区切りマークとして使用 Web、電子メール、ファイル転送(FTP)など トランスポートプロトコルはTCP データグラム型 (教科書p.254図7.4参照) バイナリで命令やデータを送受信 パケットの大きさを固定して送受信 UDPを使ったアプリケーションで使用
6
World Wide Webのしくみ Webの4つの要素 URL(Uniform Resources Locator)
HTML(Hyper Text Markup Language) HTTP(Hyper Text Transfer Protocol) MIME(Multipurpose Internet Mail Extensions)
7
World Wide Webのしくみ URL(Uniform Resources Locator) 直訳すると「場所の情報を表す書式」
アクセスプロトコル (スキーム) ホストのアドレス (ドメイン名) ポート番号 (省略すると、デフォルトのポート番号が利用される) ファイルなどのリソースの絶対パス (ファイルの格納場所とファイル名など)
8
World Wide Webのしくみ HTML(Hyper Text Markup Language)
直訳すると「ハイパーテキストを記述するための言語」 HTMLの細かいことについては、各種ホームページや本がたくさんあるので、自分で調べておくこと
9
World Wide Webのしくみ HTTP(Hyper Text Transfer Protocol)
直訳すると「ハイパーテキストを転送するプロトコル」 Webのデータを転送するときに利用されるアプリケーションプロトコル サーバからファイルをダウンロードするときに送受信される要求や応答の書式、手順
10
World Wide Webのしくみ MIME(Multipurpose Internet Mail Extensions)
直訳すると「様々な目的のためのインターネットメールの拡張」 元々はメールに画像や音声データを添付するためのデータフォーマット 現在では、Webなど電子メール以外の様々なアプリケーションで利用されている
11
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
12
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム
命令実行 リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 キーボード・マウスからの入力 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
13
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
14
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
15
Webシステムの内部処理 Webクライアント Webサーバ データ取得要求 Webのデータ Webサーバプログラム
命令実行 リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
16
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
17
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
18
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
19
Webシステムの内部処理 Webクライアント Webサーバ データ転送 Webのデータ Webサーバプログラム Webクライアントプログラム
命令実行 リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 データ転送 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
20
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム 命令実行
リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
21
Webシステムの内部処理 Webクライアント Webサーバ Webのデータ Webサーバプログラム Webクライアントプログラム
命令実行 リクエスト送信 データ受信処理 要求解釈 応答処理 要求処理 外部プログ ラム実行 ファイルの 読み書き 入力イベント の解釈 受信データの解釈、 表示レイアウト処理 ディスプレイへの出力 CGI (Common Gateway Interface) Webのデータ 外部 プログラム
22
HTTPによるWeb通信 クライアント側の処理の例 HTTPの要求依頼(リクエスト)
HTTPでは、短い文字列によってどのような処理をしたらよいかを指示:メソッド クライアント側の処理の例 例) 「 1.DNSに問い合わせて「 2.そのIPアドレスのポート番号80番にTCPのコネクションを確立する 3.「GET /index.html HTTP/1.1」のようなメッセージを送信する HTTPの要求依頼(リクエスト) 4.ダウンロードされたファイルを解析し、次の処理に移る
23
HTTPによるWeb通信 クライアントからサーバへ送られるメッセージ
クライアントからサーバへの要求メッセージはMIMEヘッダにより最小でも以下の3行 GET /indexj.html HTTP/ 「改行」 host: 「改行」 「改行」
24
HTTPによるWeb通信 サーバの応答処理 HTTPの応答(レスポンス) ステータスコード
HTTPリクエストを受信したサーバは、次の手順で応答処理を行う 1.HTTPリクエストを解釈して処理をする 2.「HTTP/ OK」のようなメッセージを送信する ステータスコード HTTPの応答(レスポンス) 代表的なステータスコード 401 認証エラー 403 アクセス権限エラー 404 リクエストされたリソースがサーバにない
25
CGIとJavaScript CGI (Common Gateway Interface) Java Script、Javaなど
Webはファイルを転送するだけでなく、プログラムと組み合わせて使われる サーバ側で動作させるプログラム CGI (Common Gateway Interface) PerlやPHP、C言語など サーバやネットワークに大きな負荷 どんな言語でも使える。セキュリティ高 クライアント側で動作させるプログラム Java Script、Javaなど サーバやネットワークの負荷は小 セキュリティ低
26
電子メールのしくみ SMTP,POP,IMAP アドレス メールアドレス データ構造 MIME 転送プロトコル ホストA ホストB
27
電子メールのしくみ メールアドレス keiichi.miyajima.fmath@vc.ibaraki.ac.jp メールサーバのアドレス
ユーザ名 メールサーバのアドレス ホストA ホストB メールサーバA メールサーバB
28
電子メールのしくみ MIME(データ構造) パケットにヘッダがあったようにメールにもヘッダがある 受取人(宛先) To: 差出人 From:
題名 Subject: 日付 Date: エラーメールの戻り先 Return-Path: Mime-Version: MIMEのバージョン Content-Type: メッセージのデータフォーマット Content-Transfer-Encoding: メッセージコードのビットサイズ Message-ID: メッセージのID メールのメッセージを送受信したホスト Received:
29
電子メールのしくみ MIME(データ構造) パケットにヘッダがあったようにメールにもヘッダがある 受取人(宛先) To: 差出人 From:
題名 Subject: 日付 Date: エラーメールの戻り先 Return-Path: Mime-Version: MIMEのバージョン Content-Type: メッセージのデータフォーマット Content-Transfer-Encoding: メッセージコードのビットサイズ Message-ID: メッセージのID メールのメッセージを送受信したホスト Received:
30
電子メールのしくみ SMTP(Simple Mail Transfer Protocol)
転送プロトコル SMTP(Simple Mail Transfer Protocol) メールを送信するときに利用 動作の詳細は教科書p.257~258の図6.11参照 POP(Post Office Protocol) メールを受信するときに利用 動作の詳細は教科書p.260~261の図6.12参照 IMAPは現在ではあまり使われなくなった
31
電子メールのしくみ SMTP(Simple Mail Transfer Protocol) 転送プロトコル メールを送信するときに利用される
SYN ホストB ACK SYN メールサーバ ACK
32
マルチメディア通信 マルチメディア通信のしくみの概要 OS OS ホストA ホストB マルチメディアアプリケーション
カメラ モニタ コーデック (符号化・圧縮) コーデック (復号・展開) マイク スピーカ タイムスタンプ OS OS TCP or UDP、IP、Ethernetそれぞれのヘッダを付加 TCP or UDP、IP、Ethernetそれぞれのヘッダを検査
33
マルチメディア通信 シグナリング(通信相手の呼び出し) IP電話などで、特定の相手を呼び出す通信に使用 ホストB SIPプロキシサーバ
ホストA サーバ経由で呼び出し
34
マルチメディア通信 シグナリング(通信相手の呼び出し) IP電話などで、特定の相手を呼び出す通信に使用 SIPプロキシサーバ ホストA
ホストB サーバ経由でリクエスト受付
35
マルチメディア通信 シグナリング(通信相手の呼び出し) ACK IP電話などで、特定の相手を呼び出す通信に使用 SIPプロキシサーバ
ホストB サーバを経由しない確認応答
36
マルチメディア通信 シグナリング(通信相手の呼び出し) IP電話などで、特定の相手を呼び出す通信に使用 SIPプロキシサーバ ホストA
ホストB 通信開始
37
マルチメディア通信 リアルタイム通信 蓄積型通信 音声・映像データの転送 IP電話 UDP向け 音楽・映像配信サービス TCP向け
ネットワークで音声や映像を送るときは、主に次の2つの方法が使われる リアルタイム通信 IP電話 UDP向け 蓄積型通信 音楽・映像配信サービス TCP向け
38
本日のまとめ TCP/IPアプリケーション ネットワークとアプリケーション World Wide Webのしくみ 電子メールのしくみ
ネットワークとアプリケーション アプリケーションプログラムの構造、ストリーム型とデータグラム型 World Wide Webのしくみ Webシステムの内部処理、HTTPによるWeb通信、CGIとJavaScript 電子メールのしくみ SMTP、POP マルチメディア通信 シグナリング、データの転送
39
本日の課題 以下の4つの事柄について、違いが明確に解るように説明しなさい。 (1) HTML (2) HTTP (3) Java
(基本 改) (1) HTML (2) HTTP (3) Java (4) URL 2. 電子メールで使われるSMTPとPOPについて説明しなさい (基本 改) 3. SIPについて説明しなさい (ネ 類)
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.