ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
セッション層 (第5層) とは
OSI 参照モデルの第 5 層であるセッション層 (Session Layer) は、アプリケーション同士のセッション (Session) = 一連の対話を確立・維持・切断するための層です。下層のトランスポート層 (L4) が「データを確実に届ける」役割なのに対し、セッション層は「複数のやりとりを 1 つの会話として束ねる」役割を担います。
OSI 7 階層の位置
| 層 | 名称 | 役割の例 |
|---|---|---|
| L7 | アプリケーション層 | HTTP, SMTP, FTP |
| L6 | プレゼンテーション層 | 文字コード変換、暗号化、圧縮 |
| L5 | セッション層 | 対話の確立・維持・切断、同期、復旧 |
| L4 | トランスポート層 | TCP, UDP(ポート、信頼性) |
| L3 | ネットワーク層 | IP(経路選択) |
| L2 | データリンク層 | イーサネット(MAC、フレーム) |
| L1 | 物理層 | ケーブル、電気信号 |
セッション層の主な役割
1. セッションの確立・維持・終了
クライアントとサーバーの間で「これから対話を始めます/終わります」を明示的に管理します。HTTP のように 1 リクエスト 1 レスポンスで完結するプロトコルではあまり目立ちませんが、DB 接続のように長時間 1 つのコネクションでやりとりする場面では重要です。
2. 同期ポイント・チェックポイント
大容量データの転送中に通信が途切れた場合、最初からやり直さずに途中から再開するための仕組み。一定区間ごとにチェックポイントを打ち、回線復旧後はそこから続行します。
3. トークン管理(通信方向の制御)
「いまどちらが送る番か」を制御します。半二重通信(同時に話せない)の調整、データ・終了・同期トークンの受け渡しなど。電話の通話に近いイメージ。
4. ダイアログ制御 (全二重 / 半二重 / 単方向)
アプリケーションが要求する通信方式を選択。チャットなら全二重、ストリーミング配信なら単方向、トランザクションなら半二重、といった指定。
代表プロトコル
| プロトコル | 用途 |
|---|---|
| NetBIOS | Windows ネットワークの名前解決・セッション管理 |
| RPC (Remote Procedure Call) | リモートの関数呼び出し |
| SQL*Net (Oracle Net) | Oracle DB クライアント-サーバー間の接続管理 |
| PPTP / L2TP の制御チャネル | VPN セッションの確立・維持 |
| SOCKS | プロキシ経由のセッション中継 |
| NFS の一部 (RPC 上) | 分散ファイルシステムのセッション管理 |
TCP/IP モデルでの扱い
実際にインターネットで使われている TCP/IP 4 階層モデルでは、セッション層・プレゼンテーション層・アプリケーション層が「アプリケーション層」に統合されています。OSI のセッション層単独に対応するプロトコルは、TCP/IP の世界では純粋には存在しません。
| OSI モデル | TCP/IP モデル |
|---|---|
| L7 アプリケーション | アプリケーション層 |
| L6 プレゼンテーション | |
| L5 セッション | |
| L4 トランスポート | トランスポート層 |
| L3 ネットワーク | インターネット層 |
| L2 / L1 | ネットワークインタフェース層 |
現代的な"セッション"の例
近年のプロトコルにも、OSI セッション層と同じ概念が見られます。
- TLS セッション: ハンドシェイクで鍵交換し、以降のレコードを 1 つの暗号化された対話として束ねる
- HTTP Cookie / Session ID: ステートレスな HTTP の上に擬似的なセッションを実装
- WebSocket: 1 つの長時間接続で双方向メッセージをやり取り
- HTTP/2 ストリーム: 1 本の TCP コネクション上に複数の論理セッションを多重化
- gRPC の双方向ストリーミング: RPC の現代版で、長期セッションでの相互通信
よくある質問
Q: TCP の 3 ウェイハンドシェイクはセッション層?
A: いいえ、これは L4 トランスポート層 (TCP) の話です。「コネクションの確立」と「セッションの確立」は OSI モデル上は別の層に属します。
Q: HTTP の Cookie で実現するセッションは L5?
A: 厳密には HTTP (L7) の上でアプリが独自実装している擬似セッションです。OSI 的には L5 相当の概念をアプリ層でやっていると見るのが近い解釈。
Q: なぜ OSI モデルを覚えるの? 実務では TCP/IP しか使わないのに
A: 障害切り分けやプロトコル設計を語る共通言語として、世界中のエンジニアが OSI 7 階層を基準にしているからです。実際の TCP/IP プロトコルがどの層に相当するかを語るのに便利。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- Laravel 記事一覧55件|環境構築・ルーティング・DB・エラー対処 2026-09-07 07:45:13
- Javaの定数 2026-09-07 07:45:13
- Spring Framework 記事一覧31件|DI・設定・例外の対処 2026-09-07 07:45:13
- Oracle DROP USERでユーザー削除|CASCADE・接続中ユーザーの対処 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
- SQLとは|DDL・DMLとリレーショナルデータベース操作の基本 2026-09-07 07:45:13
- NetBeansでTomcatを起動する手順|サーバ登録・ポート・トラブル対処 2026-09-07 07:45:13
- hostnameコマンドの使い方|Windows・Linux・macOSでホスト名確認 2026-09-07 07:45:13
- HTML video要素の使い方|source・自動再生・muted・playsinline 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- HTML a要素の使い方|href・target・rel noopenerのセキュリティ 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?