정의
세션 계층(Session layer)은 OSI(Open Systems Interconnection) 7계층 모델의 제5계층에 해당한다. 이 계층은 통신 세션을 설정·관리·종료하는 기능을 수행한다. 구체적으로는 두 통신 엔드포인트 간에 논리적인 연결을 설정하고, 세션의 동기화·체크포인팅·재개 등을 담당한다.
주요 기능
| 구분 | 설명 |
|---|---|
| 세션 설정 | 통신을 시작하기 전에 양측이 사용할 전송 매개변수(예: 인증 방법, 암호화 옵션 등)를 교환하여 세션을 확립한다. |
| 동기화 | 데이터 흐름을 일정한 단위로 나누어 마커(예: 토큰, 시퀀스 번호)를 삽입함으로써 송·수신 측이 데이터 스트림의 위치를 파악하도록 지원한다. |
| 체크포인팅 | 긴 데이터 전송 시 중간 지점을 저장(체크포인트)하여 오류 발생 시 해당 지점부터 재전송할 수 있게 한다. |
| 세션 종료 | 통신이 종료되면 세션을 정상적으로 해제하고 자원을 회수한다. |
관련 프로토콜
세션 계층에 해당하는 전용 프로토콜은 많이 사용되지 않으며, 실제 구현에서는 전송 계층(TCP)이나 응용 계층 프로토콜이 세션 관리 기능을 포함하는 경우가 많다. 대표적인 예는 다음과 같다.
- RPC (Remote Procedure Call) – 세션 초기화와 관리 기능을 제공한다.
- SQL*Net – 데이터베이스 클라이언트와 서버 간 세션 제어를 수행한다.
- SIP (Session Initiation Protocol) – 음성·영상 통화 등에 필요한 세션 설정·변경·해제를 담당한다.
- NetBIOS – 초기 네트워크 환경에서 세션 계층 역할을 수행하였다.
OSI 모델 내 위치
- 물리 계층 (Physical)
- 데이터 링크 계층 (Data Link)
- 네트워크 계층 (Network)
- 전송 계층 (Transport)
- 세션 계층 (Session) ← 대상
- 표현 계층 (Presentation)
- 응용 계층 (Application)
어원 및 용어 사용
‘세션(session)’은 라틴어 sessio(앉다)에서 유래한 ‘앉아 있는 기간’이라는 의미를 갖는다. 컴퓨터 과학에서는 ‘일정 기간 동안 유지되는 통신 연결’이라는 뜻으로 사용된다. ‘계층(layer)’은 OSI 모델에서 각 기능을 단계적으로 구분한 수준을 의미한다. 따라서 ‘세션 계층’은 “통신 세션을 관리하는 OSI 모델의 5번째 단계”라는 의미로 해석된다.
현대 네트워크에서의 실제 적용
현대 인터넷 프로토콜 스택에서는 세션 계층의 많은 역할이 전송 계층(TCP) 및 응용 계층 프로토콜(HTTP, TLS 등)에 통합되어 있다. 따라서 순수한 세션 계층 프로토콜은 제한적인 특수 환경에서만 독립적으로 사용된다. 그러나 OSI 모델 교육 및 시스템 설계 시 계층 구분을 명확히 하기 위해 여전히 개념적으로 중요한 위치를 차지한다.