アプリケーション層 - 専修大学ネットワーク情報学部ローカルコミュニティ

パケットの流れ
BPM
1.HTTPメッセージの生成
①リクエスト:クライアント→サーバ。何を(URI、文書や画像)どうしてほし
いのか(メソッド、GETやPOST)。ファイルの呼出しは一度に一つだけ。
②レスポンス:サーバ→クライアント。実行結果とその状態。
③IPアドレスの調査:ドメイン名(人が対象、255バイト)からIPアドレス
(機械が対象、32ビット)への変換。
ブラウザ
HTTPメッセージ
OS
TCP
TCP
HTTP断片
TCP
HTTP断片
MAC
TCP
HTTP断片
2.パケットの生成
①ソケットを生成する。送信元IP&ポート番号、受信先IP&ポート番号、
通信状態(どこまでデータを送ったか、データ送信後の経過時間は)。
②コネクションの作成。接続、データ送受信、切断の3フェーズ。
③パケットの生成。MTU(Maximum Transmission Unit)に基づいて
データのためこみと分割。
④TCPヘッダの作成。送/受信ポート番号、パケットの通し番号。
⑤IPヘッダの作成。送/受信IPアドレス、生存期間。
⑥MACヘッダの作成。送/受信MACアドレス。受信MACアドレスは相
手サーバまたはルータ。IPアドレスとMACアドレスの変換はARP
(Address Resolution Protocol)。
IP
IP
LANアダプタ
ハブ
3.LAN内での伝送
①ハブは、送信元機器からパケットを受信したら、接続された全ての機器
にパケットを送信。
②受信先機器は、パケットの受信先MACアドレスが自分に該当すれば
受信し、そうでない場合は捨てる。
ルータ
MAC
0
<TCPヘッダ>
送信元ポート番号
32bit 0
受信先ポート番号
<IPヘッダ>
IP
32bit
TCP
0
HTTP断片
<MACヘッダ>
32bit
受信先MACアドレス
Ver.
シーケンス番号(送→受)
ID情報
確認番号(受→送)
生存期間プロトコル番号
フラグ フラグメントオフセット
送信元IPアドレス
受信先MACアドレス 送信元MACアドレス
送信元MACアドレス
イーサタイプ
4.インターネットでの伝送
①ルータは、パケットの受信先IPアドレスまたはそれを含むネットワーク
のIPアドレスを経路表から探し、指定されたポートにパケットを送信する。
②ネットワーク方式の違いによりパケットのMTUがイーサネットのそれよ
り小さい場合は、パケットを分割する(フラグメンテーション)。
③OSのTCP/IPと同様に、受信先機器(目的の計算機か中継ルータ)の
MACアドレスをセットする。
受信先IPアドレス
チェックサム
データ
データ
データ
All Rights Reserved Copyright © 2004, Kobayashi
0
BPM
プロトコル
プロトコル(protocol)とは:コンピュータ同士がネットワークを
介してデータ通信を行う際の通信規約。これを定めることによ
り、メーカやOSが異なる計算機間でも問題なく通信できる。
<電話をかける時の階層的なプロトコル>
日本語、口語、挨拶なし、単刀直入、・・・
2層 会話プロトコル
2層 会話プロトコル
1層 電話プロトコル
1層 電話プロトコル
ダイヤル、回線接続、呼出し、通話、回線切断、・・・
All Rights Reserved Copyright © 2004, Kobayashi
1
BPM
OSI参照モデル
OSI参照モデル(Open System Interconnection reference
model)とは:国際標準化機構(ISO)が中心となって定めた国
際標準プロトコル。俗に、OSIの7階層モデルといわれている。
分類
層
第7層
上
位
層
下
位
層
層名称
内容
例
アプリケーション層
Web、メール、FTP等の通信手順。
第5層
HTTP
SMTP
プレゼンテーション層 文字コードや画像データの表現形式。
POP3
セッション層
アプリケーション間の論理経路の確立。 FTP
第4層
トランスポート層
データの整序、誤り訂正、再送要求。
TCP
第3層
ネットワーク層
通信経路の選択、アドレス管理。
IP
第2層
データリンク層
物理的な通信路の設定、エラー検出。 Ethernet
第1層
物理層
ケーブル、プラグの規格、電気変換。
第6層
All Rights Reserved Copyright © 2004, Kobayashi
2
BPM
TCP/IPの参照モデル
TCP/IPはOSIの7階層モデルをベースとしているが、さらに単
純化し4階層のモデルとなっている。
分類
上
位
層
下
位
層
層
TCP/IPの4階層モデル
内容
例
第4層
アプリケーション層
アプリケーションの通信
サービス
HTTP
SMTP
POP3
FTP
第3層
トランスポート層
パケット分割/統合、送信
元から受信先への転送
TCP
UDP
第2層
インターネット層
ルーティング、アドレッシン
グ
IP
第1層
ネットワーク
インタフェース層
ハードウェア間のデータ転
送
Ethernet
PPP
PPPoE
All Rights Reserved Copyright © 2004, Kobayashi
3
アプリケーション層
BPM
URLの意味
URL(Uniform Resource Locator)とは:
ブラウザがデータにアクセスする方法を示す。
http://www.senshu-u.ac.jp/Welcome-sj.html
アクセス方法
Webサーバーの名前
ファイル名
All Rights Reserved Copyright © 2004, Kobayashi
4
アプリケーション層
BPM
HTTPとは
HTTP(Hyper Text Transfer Protocol)とは:ブラウザがWebサー
バーとメッセージをやりとりするときの手順を定めたもの。
GET(データをもらう), POST(データを渡す)
Webページのファイル名
リクエスト
クライアント
メソッド
データ
URI
サーバー
レスポンス
(ブラウザ)
ステータス
データ
(Webサーバー)
Webページのデータ
リクエストの実行状態
All Rights Reserved Copyright © 2004, Kobayashi
5
アプリケーション層
HTTPメッセージの例
BPM
リクエスト
GET /sample.htm HTTP/1.1
Accept: */*
Accept-Language: ja
…
レスポンス
HTTP/1.1 200 OK
Date: Thu, 5 Jun 2003 14:40:15 GMT
…
<html>
<head>
<title>専修大学 </title>
…
All Rights Reserved Copyright © 2004, Kobayashi
6
アプリケーション層
BPM
DNS
DNS(Domain Name System)の機能:
人間が理解できるドメイン名称(文字)を、計算機や通信装
置が扱うIPアドレス(数字)に翻訳する。
ドメイン名称の登録:
ドメイン名称の探索:
ルート
com
ibm.com
lab.ibm.com
jp
ac
senshu-u
www.senshu-u
All Rights Reserved Copyright © 2004, Kobayashi
7
トランスポート層
BPM
TCP
TCP(Transfer Control Protocol)の機能:
①送信側プログラムと受信側プログラムの間のデータの通り
道を確立する(コネクション)。
②送信側ではデータをパケットに分割し、受信側ではパケット
を整列してデータを組立てる。
クライアント
プログラム
クライアント
プログラム
これからデー
タを送信しま
す
サーバ
プログラム
サーバ
プログラム
了解。受信準
備できました。
TCP/IP
ソフト
TCP/IP
ソフト
インターネット
All Rights Reserved Copyright © 2004, Kobayashi
8
トランスポート層
BPM
TCPの3つのフェーズ
接続
これからデータを送信します
了解。受信準備できました。
了解
送受信
シーケンス番号:1 データサイズ:1460
ACK番号:1461
シーケンス番号:1461 データサイズ:1460
ACK番号:2921
クライアント
:
サーバ
切断
これで終わりです
了解
こちらも終わりです
了解
All Rights Reserved Copyright © 2004, Kobayashi
9
トランスポート層
BPM
TCPヘッダー
4バイト
発信元ポート番号
ト
T
C
2P
0ヘ
ッ
バダ
イー
受信先ポート番号
シーケンス番号(送→受)
確認番号(受→送)
チェックサム
ト
1
4
8
0
バ
イ
データ
•サーバ側ポート番号・・・メール:25、Web:80、...。
•クライアント側ポート番号・・・未使用のものを無作為に割当てる。
All Rights Reserved Copyright © 2004, Kobayashi
10
トランスポート層
BPM
UDP
UDP(User Datagram Protocol)の機能:
①TCPのようなコネクションを確立しない(コネクションレス)。
②従って、TCPに比べて信頼性は低いが、効率が高い。
③DNSサーバへのIPアドレスの問合せや、音声、映像情報の
ストリーミングに用いる。
UDP
ヘッダー
UDP
ヘッダー
4バイト
送信元ポート番号
データ長
受信先ポート番号
チェックサム
データ
All Rights Reserved Copyright © 2004, Kobayashi
11
課題8(2004年11月29日提出)
BPM
[問題]
アプリケーション層のプロトコルには、HTTPの他にど
のようなものがあるか。4つ以上リストアップせよ。そし
て、そのうちの2つについて、メッセージの形式とメッ
セージのやり取りの手順を説明せよ。
提出:11月29日(月) 18:00 小林に手渡し。
所定の表紙をつけ、印刷したものを提出。
All Rights Reserved Copyright © 2004, Kobayashi
12