Transmission Control Protocol (TCP)
TCPはコネクション指向のプロトコルで、エンドエンドのパケット配送を提供します。
TCPは接続指向のプロトコルで、エンドツーエンドのパケット配信を行います。
- 
Transmission Control Protocol (TCP)は、OSIモデルのトランスポート層に相当します
 - 
TCPは信頼性の高いコネクション指向のプロトコルです。
 - 
TCPは以下を提供します:
 - 
ストリームデータ転送
 - 
信頼性
 - 
効率的なフロー制御
 - 
全二重動作。
 - 
多重化
 - 
TCPは、コネクション指向のエンドツーエンドのパケット配信を行います。
 - 
TCPは、ソースが受け取ることを期待している次のバイトをデスティネーションに示す転送確認番号でバイトをシーケンスすることで、信頼性を確保します。
 
TCPサービス
TCPは、アプリケーション層のプロセスに以下のサービスを提供します。
- 
ストリーム配信サービス
 - 
送受信バッファ
 - 
バイトとセグメント
 - 
全二重サービス
 - 
接続指向サービス
 - 
信頼性のある サービス
 
ストリームデリバリサービス
TCPプロトコルは、送信側プロセスがデータをバイトのストリームとして送信し、受信側プロセスがデータをバイトのストリームとして取得することができるため、ストリーム指向です。
送受信バッファ
送信側と受信側が同じ速度でデータを生成・取得できるとは限らないため、TCPは送信側と受信側に保存用のバッファを必要とします。
バイトとセグメント
トランスポート層のTCP(Transmission Control Protocol)は、バイトをパケットにまとめます。 このパケットをセグメントと呼びます。
全二重サービス
二重モードでのデータ送信は、両方向に同時にデータが流れることを意味します。
接続指向型サービス
TCPは次のような方法で接続指向型サービスを提供しています。
プロセス-1のTCPとプロセス-2のTCPは、両方向でデータを交換します。
データ交換の完了後、双方のバッファが空になると、2つのTCPはバッファを破棄します。
信頼性の高いサービス
信頼性を高めるために、TCPは確認応答メカニズムを使用しています。
インターネットプロトコル(IP)
インターネットプロトコルは、コネクションレスで信頼性の低いプロトコルです。
信頼性を高めるためには、トランスポート層でTCPのような信頼性の高いプロトコルとペアにする必要があります。
インターネットプロトコルは、次の図に示すように、データグラムの形でデータを送信します。
 
覚えておくべきポイント:
- 
データグラムの長さは可変です。
 - 
データグラムはヘッダーとデータの2つの部分に分かれています。
 - 
ヘッダーの長さは20~60バイトです。
 - 
ヘッダーには、パケットのルーティングと配信のための情報が含まれています。
 
User Datagram Protocol (UDP)
IPと同様に、UDPもコネクションレスで信頼性の低いプロトコルです。 データ交換のためにホストとの接続を必要としません。 UDPは信頼性のないプロトコルなので、送信したデータを確実に受信するためのメカニズムはありません。
UDPは、データグラムの形でデータを送信します。
 
留意点
- 
UDPは、通常、一度に少量のデータを送信するアプリケーションで使用されます
 - 
UDPは、使用するプロトコルポートを提供します。
 
File Transfer Protocol (FTP)
FTPは、あるホストから別のホストへファイルをコピーするために使用されます。
- 
FTPは、クライアントとサーバーの両方で、制御プロセスとデータ転送プロセスの2つのプロセスを作成します。
 - 
FTPは、データ転送用と制御情報用の2つの異なる接続を確立します。
 - 
制御接続は制御プロセス間で行われ、データ接続はデータプロセス間で行われます。
 - 
FTPは制御接続にポート21を、データ接続にポート20を使用します。
 
 
Trivial File Transfer Protocol (TFTP)
Trivial File Transfer Protocolもファイルの転送に使用されますが、認証なしでファイルを転送します。 FTPとは異なり、TFTPは制御情報とデータ情報を分離しません。 認証が存在しないため、TFTPはセキュリティ機能に欠けており、TFTPを使用することはお勧めできません。
キーポイント
- 
TFTP はデータ転送に UDP を使用します。
 - 
TFTP メッセージの最初の 2 バイトは、メッセージのタイプを指定します。
 - 
TFTP セッションは、TFTP クライアントがファイルをアップロードまたはダウンロードする要求を送信するときに開始されます。
 - 
リクエストは、エフェメラルUDPポートからTFTPサーバーのUDPポート69に送信されます。
 
FTPとTFTPの違い
| S.N. | Parameter | FTP | TFTP | 
|---|---|---|---|
| 1 | Operation | Transferring Files | |
| 2 | Authentication | Yes | No | 
| 3 | Protocol | TCP | UDP | 
| 4 | Ports | 21 – Control, 20 – データ | ポート3214、69, 4012 | 
| 5 | 制御とデータ | 分離 | |
| 6 | データ転送 | Reliable | Unreliable | 
Telnet
Telnetは、インターネット上のリモートコンピュータにログインするために使用されるプロトコルです。 使いやすいユーザーインターフェイスを持つTelnetクライアントが多数あります。
 
Hyper Text Transfer Protocol (HTTP)
HTTPは通信プロトコルの一つです。 ブラウザとWebサーバ間の通信の仕組みを定義しています。 ブラウザとサーバー間の通信は、リクエストとレスポンスのペアで行われるため、リクエスト&レスポンスプロトコルとも呼ばれます。
HTTPリクエスト
HTTPリクエストは次のような行で構成されています:
- 
リクエスト行
 - 
ヘッダーフィールド
 - 
メッセージボディ
 
キーポイント
- 
最初の行、つまりリクエスト行は、リクエストを指定します。
 - 
2行目は、index.htmが取得されるサーバーのドメイン名を示すヘッダーを指定しています。
- 
ステータスライン
 - 
ヘッダー
 - 
メッセージボディ
 
広告 -