정보통신기사 필기

5계층 — 세션 계층 (Session Layer)

역할: 응용 프로그램 간 논리적 연결(세션)의 시작·유지·동기화·종료 관리
PDU: 데이터 (Data) | 장비: 전용 장비 없음 (소프트웨어 처리)
프로토콜역할
NetBIOS윈도우 네트워크에서 세션 관리
RPCRemote Procedure Call. 원격 함수 호출
SSH (세션 관리 부분)원격 세션 유지
TLS 핸드셰이크암호화 세션 수립 과정

세션 vs 연결 차이

TCP 연결(4계층): 물리적 통신 경로
세션(5계층): 논리적 대화 단위
하나의 세션 = 여러 TCP 연결 가능

동기화 포인트

긴 데이터 전송 중 중간 저장점
오류 시 처음부터가 아닌
동기화 포인트부터 재전송

⚙️ 처리 방법 — 이 계층이 하는 일
기능내용
세션 설정 · 유지 · 종료대화 상대를 정하고 논리적 연결을 열고 닫는다. 인증·권한 확인도 이 단계
대화 제어
Dialog Control
누가 언제 말할지 정한다 — 전이중 / 반이중 결정, 반이중이면 토큰을 넘겨 가며 교대
동기점 삽입
Synchronization
긴 전송 중간중간 체크포인트를 찍는다 → 오류 시 처음이 아니라 동기점부터 재전송
세션 복구연결이 끊겨도 세션 상태를 기억했다가 이어서 재개
활동 관리하나의 세션 안에서 여러 작업(활동)을 구분해 관리
📍 동기점(Synchronization Point) — 세션 계층의 핵심
1GB 파일을 전송하는 중 900MB 지점에서 오류 발생 동기점이 없으면 ━━━━━━━━━━━━━━━━━━━━✖ → 처음부터 다시 (900MB 낭비) 동기점이 있으면 ━━━◆━━━◆━━━◆━━━━✖ → 마지막 동기점부터 재전송 100 400 800MB (100MB만 다시)
구분내용
주 동기점 (Major)큰 단위 구분. 확인 응답이 필요하고, 이 지점 이전은 확정된다
부 동기점 (Minor)주 동기점 사이의 작은 구분. 응답이 필요 없어 가볍다
💡 이 개념이 시험에 그대로 나온다 — "긴 데이터 전송 중 중간 저장점을 두어, 오류 시 처음부터가 아닌 동기화 포인트부터 재전송" → 5계층(세션).
📡 프로토콜 · 소프트웨어
프로토콜 / SW역할
NetBIOS윈도우 네트워크의 이름 등록·세션 관리 (파일·프린터 공유)
RPC
Remote Procedure Call
원격 서버의 함수를 내 것처럼 호출. 호출~응답이 하나의 세션
NFS원격 파일 시스템 마운트 (RPC 기반)
SQL 세션DB 접속부터 종료까지. 트랜잭션·커서 상태를 유지
PPTP / L2TPVPN 터널 세션 수립·유지
SIPVoIP 통화 세션의 설정·변경·종료 (실제 음성은 RTP)
SSH · TLS 핸드셰이크암호화 세션 수립 과정 (세션 키 협상)
💼 실제 응용 — 어디서 체감하나
사례세션 계층이 하는 일
웹 로그인 유지로그인 후 여러 페이지를 오가도 같은 사용자로 인식 (세션 ID · 쿠키)
화상회의참가자 입·퇴장, 발언권(대화 제어), 회의 종료 관리
대용량 파일 전송 재개끊긴 지점부터 이어받기 (동기점)
원격 데스크톱 · DB 접속연결 상태와 작업 문맥을 유지
🔧 장비 · 📐 계측

장비

전용 장비 없음 — 소프트웨어(OS·미들웨어)가 처리한다.

굳이 꼽으면 세션 정보를 보고 분산하는 L7 스위치 / 로드밸런서의 세션 고정(Sticky Session) 기능 정도.

계측 · 관리 항목

• 동시 세션 수 (Concurrent Sessions)
• 세션 유지 시간 · 타임아웃
• Keep-alive 주기
• 세션 재수립 횟수 (불안정 지표)

⚠ 4계층 연결과 5계층 세션은 다르다
• TCP 연결(4계층) = 두 지점 사이의 물리적·논리적 통신 경로
• 세션(5계층) = 사용자 관점의 대화 단위
하나의 세션이 여러 TCP 연결을 쓸 수 있고(웹 페이지 하나에 연결 여러 개), 연결이 끊겨도 세션은 살아 있을 수 있다.
🔗 이 계층과 이어지는 단원
📝 5계층 시험 포인트
• 역할 = 세션의 설정 · 유지 · 동기화 · 종료
• 동기점(체크포인트) 문제는 거의 항상 5계층이 정답
• 대화 제어(전이중/반이중, 토큰)도 5계층
• 프로토콜 = NetBIOS · RPC · NFS · SIP
• 전용 장비 없음 (소프트웨어 처리)