セッション層(セッションそう、英: Session layer)とは、OSI参照モデルにおける七階層の内の第五層である。そこではプレゼンテーション層からのサービス要求に応じ、またトランスポート層に対してサービス要求を行う。
セッション層はエンド・ユーザのアプリケーション・プロセス間でセッションの開始、終了、管理の機構、すなわち半永続的な対話を提供する。通信セッションはアプリケーション間で起こる要求(リクエスト)と応答(レスポンス)で構成される。セッション層は一般的に遠隔手続き呼出し (RPC) を使用するアプリケーション環境で使用される。
セッション層プロトコルの一例として、X.225やISO 8327としても知られるOSIプロトコル群セッション層プロトコルがある。接続が途切れた場合、このプロトコルは接続の回復を試みることができる。もし接続が長時間使われない場合は、セッション層プロトコルは接続の終了と再開ができる。セッション層は全二重または半二重通信のいずれかに備え、交換されるメッセージの流れに同期点を提供する[1]。
セッション層のその他の実装例には、Zone Information Protocol(ZIP) - プロセスを結び付ける名前を調整するAppleTalkプロトコルや、Session Control Protocol(SCP) - DECnet Phase IVのセッション層プロトコルがある。
要するに、セッション層は協調するアプリケーション間で通信(セッション)を確立し、管理し、終了するものである。また通信フロー情報を付加する。
インターネットでのセッション層の対応
セッション層は4層または5層のTCP/IPモデルでは個別のプロトコル層や手続きとしては存在しないが、その機能性はTCP/IPモデルのトランスポート層やまたいくつかのTCP/IPモデルのアプリケーション層プロトコルによって部分的に提供される。しかしながら、その機能の大半は普通はインターネット・アプリケーションでは使われない。
OSI参照モデルは、TCPプロトコルの特性であり、フォーウェイ・SYNハンドシェイクにより提供されるセッションの正常な終了処理をセッション層の責任とした。
加えて、インターネット・プロトコル・スイートで普段は使われない、セッションのチェックポイントと復旧についても同様にセッション層の責任としているが、これは、アプリケーション層プロトコルにおける、異なる送信元から発信された情報の流れを適切に結合するという特性によって代替されており、これは特に同期やデータの整合性における問題への対応に見られる。
そのわかりやすい例としてWeb会議アプリケーションが挙げられ、流れる音響と映像の整合性の担保、リップシンク問題の解決、発言権制御(画面上に表示される人、および誰の言葉が中継されるかは、話者またはその他の基準によって選択された物にすることの確保)などに見られる。他にも、生放送のテレビ番組において、映像の抜けや、切り替え時の遅延などの問題が生じた際に、音響と映像の流れが正確かつシームレスに結合されることが求められる場合などにも同様の対応が求められる。
セッション層サービスの一覧
例
- ADSP, AppleTalk Data Stream Protocol
- ASP, AppleTalk Session Protocol
- H.245, Call Control Protocol for Multimedia Communication
- ISO-SP, OSI Session Layer Protocol (X.225, ISO 8327)
- iSNS, Internet Storage Name Service
- L2F, Layer 2 Forwarding Protocol
- L2TP, Layer 2 Tunneling Protocol
- NetBIOS, Network Basic Input Output System
- PAP, Printer Access Protocol
- PPTP, Point-to-Point Tunneling Protocol
- RPC, Remote Procedure Call Protocol
- RTCP, Real-time Transport Control Protocol
- SMPP, Short Message Peer-to-Peer(英語版)
- SIP, Session Initiation Protocol
- ZIP, Zone Information Protocol
- SDP, Sockets Direct Protocol(英語版)
出典
関連項目