Skip to content

OSI 7 계층



OSI 7계층은 네트워크 기능을 역할별로 나눠 설명하기 위한 참조 모델이다.

  • 장점: 어느 단계에서 문제가 생겼는지 구분하기 쉽다.
  • 주의: 실제 인터넷은 보통 TCP/IP 모델로 설명하며, OSI의 세션/표현 계층 기능이 응용 계층으로 합쳐지는 경우가 많다.

7계층은 왜 나눌까?

통신 과정을 단계별로 분리하면 각 계층의 책임이 명확해지고, 장애 분석과 구현 분리가 쉬워진다.


1) 물리(Physical)

케이블, 리피터, 허브, PHY

비트를 전기/광/무선 신호로 바꿔 실제 매체 위로 전달하는 계층이다.

즉, 0과 1을 어떻게 보낼 것인가를 다룬다.


이더넷, 브리지, 스위치, MAC

같은 링크 안에서 프레임 단위로 데이터를 전달한다.

  • 프레이밍
  • MAC 주소 사용
  • 링크 수준 오류 검출(FCS 등)
  • 매체 접근 제어

재전송이나 흐름 제어는 일부 데이터 링크 프로토콜이 제공할 수 있지만, 이 계층 전체의 공통 책임이라고 단정할 수는 없다.


3) 네트워크(Network)

IP, 라우터

서로 다른 네트워크 사이에서 패킷을 목적지까지 전달한다.

  • 논리 주소(IP 주소)
  • 라우팅
  • 패킷 전달
  • 필요 시 단편화와 재조립 관련 처리

4) 전송(Transport)

TCP, UDP

애플리케이션 간 end-to-end 통신을 제공한다.

  • 포트 번호 기반 다중화
  • 신뢰성/순서 보장 여부
  • 흐름 제어
  • 혼잡 제어

대표 프로토콜:

  • TCP: 연결 지향, 신뢰성 보장, 바이트 스트림
  • UDP: 비연결형, best-effort, 메시지 단위 데이터그램

5) 세션(Session)

두 애플리케이션 사이의 대화 흐름을 관리하는 계층이다.

  • 세션 생성/유지/종료
  • 대화 제어
  • 체크포인트와 복구

Socket API는 운영체제 프로그래밍 인터페이스이지, OSI 세션 계층 그 자체는 아니다.


6) 표현(Presentation)

문자 인코딩, 직렬화, 압축, 암호화

서로 다른 시스템이 데이터를 같은 의미로 해석할 수 있게 표현 형식을 맞춘다.

  • 인코딩/디코딩
  • 직렬화/역직렬화
  • 압축
  • 암호화

예시로는 UTF-8, JPEG, MPEG, ASN.1 같은 표현 형식이 자주 언급된다. 교육 맥락에 따라 TLS를 이 계층 성격으로 설명하기도 하지만, 실제 인터넷 스택에서는 단일 계층에 딱 맞게 떨어지지 않는다.


7) 응용(Application)

HTTP, DNS, SMTP, FTP

사용자 프로그램이 직접 사용하는 네트워크 서비스를 제공한다.

  • 메일
  • 이름 해석
  • 파일 전송

실무에서는 세션/표현 계층 기능까지 응용 계층이 함께 맡는 경우가 많다.