1. TCP/IP

現在のインターネットは TCP/IP と呼ばれるプロトコルに従って通信が行われている.

1.1 TCP/IP (Transmission Control Protocol / Internet Protocol)

TCP/IP とはインターネットで通信を行うための複数のプロトコルの集まり.

_images/TCP-IPsuite1.gif

1.2 プロトコルの階層化

階層には上下関係がある. 階層の上位はサービスを利用する側, 下位層はサービスを提供する側である. 利用者は郵便局を利用し, 郵便局は輸送手段を利用する.

_images/PostOfficeSuite1.gif

1.3 TCP/IP における階層化

TCP/IP の通信ではプロトコルを4つの階層に分類する:

1. アプリケーション層 (HTTP, LDAP)
2. トランスポート層 (TCP, UDP)
3. ネットワーク層 (IP)
4. ネットワークインタフェース層

1.4 IP (Internet Protocol)

データは [パケット, Packet]

IPv4 と IPv6 のバーションがある.

IP アドレスはインターネット上でホストを識別するための番号である. IPv4 における IP アドレスは, 32 ビットの長さを持っており, 8 ビットずつに区切って 10 進数で表記する.

_images/IPAdrress1.gif

IP アドレス = ネットワークアドレス部 + ホストアドレス部

_images/IPAdrress.gif

IP アドレスの分類:

1. クラス A: 0.0.0.0 ~ 127.255.255.255
2. クラス B: 128.0.0.0 ~ 191.255.255.255
3. クラス C: 192.0.0.0 ~ 223.255.255.255
4. クラス D: 224.0.0.0 ~ 239.255.255.255
5. クラス E: 240.0.0.0 ~ 255.255.255.255

1.5 TCP (Trasmission Control Protocol)

TCP はトランスポート層のプロトコルであり, 下位層の IP を利用する.

IP は基本的に [信頼性の無い] プロトコル. TCP は [コネクション型] である.

TCP の重要な役割の一つは通信の信頼性を確保する.

_images/TCPack1.gif

もしもある時間が経過しても受信確認応答が送られてこなければ, 送信側はパケットが届かなかったと判断し, 再度パケットを送る.

注意:

1. [送信パケットが届かなかったか] (送信側 -> 受信側)
2. [送信パケットが届いたが受信確認パケットが届かなかったか] (送信側 <- 受信側)
送信ホストは 1, 2 の場合を区別することができない.
_images/TCPack2.gif

ポート番号は, 上位のアプリケーションプロトコルを識別するために, また一台のホストで同時に複数の通信を行うために用意されている:

ポート番号は 16 ビットの長さを持っており, 範囲は: 0 ~ 65535
Well-known ポート番号: 1 ~ 1023
_images/wellknown1.gif

1.6 UDP (User Datagram Protocol)

UDP は TCP と同じ IP を利用し, トランスポート層のプロトコル. TCP のような信頼性は確保されていない.

UDP は [コネクションレス型] 通信と呼ばれる.