CS 지식

[CS 지식] OSI 7계층이란?

seongmin08 2026. 9. 15. 18:51

OSI 7계층이란?

국제표준화기구(ISO)에서 개발한 모델로 네크워크 통신이 일어나는 과정을 7개의 단계로 표준화하여 정의한 네크워크 참조 모델

계층별로 역할이 상호 독립적으로 나뉘어 있어 문제 발생 시 해당 계층만 파악하여 유지보수하기 용이하다.

(예: 응용, 표현, 세션, 전송, 네트워크, 데이터 링크, 물리 계층)

OSI 7계층 이해를 도울 생성형 이미지

사용시기?

1. 상위 계층을 다룰 때

- 사용자 친화적 애플리케이션 및 인터페이스 개발

웹 브라우저, 이메일 프로그램 등 사용자와 직접 상호작용하는 스프트웨어를 개발 할 때 사용한다.

- 데이터 인코딩 및 보안 적용

암호화(SSL/TLS), 데이터 압축, 파일 형식(JSON, XML 등)의 변환 및 세션 관리 요구사항이 있을 때 다룬다.

 

2. 하위 계층을 다룰 때

- 안정적인 시스템 네크워크 구축 및 데이터 전송

데이터를 패킷 단위로 분할하여 최적의 경로로 전송하거나(IP) 패킷 전송의 신뢰성(TCP/UDP)을 보장해야 할 때 고려한다.

- 하드웨어 및 네크워크 장비 제어

스위치, 라우터, 랜선, NIC 등 물리적 연결 및 MAC 주소 기반의 프레임 전송 제어가 필요한 상황에서 다룬다.

OSI 7계층의 작동 방식 (캡슐화 & 역캡슐화)

데이터가 송신 장치에서 출발하여 수신 장치로 전달되는 과정은 포장(캡슐화)과 포장 해제(역캡슐화) 방식으로 동작한다.

[송신측]                                   [수신측]
 7. 응용 계층     ----- 데이터 ----->      7. 응용 계층       (데이터 읽기)
 6. 표현 계층   + 표현 헤더 (Header)       6. 표현 계층       (암호 해제/복호화)
 5. 세션 계층   + 세션 헤더                5. 세션 계층       (세션 연결 확인)
 4. 전송 계층   + 포트 번호 (TCP/UDP)      4. 전송 계층       (오류 검사 & 재조립)
 3. 네트워크 계층 + IP 주소 (IP)           3. 네트워크 계층   (목적지 IP 확인)
 2. 데이터링크 계층 + MAC 주소 + 트레일러   2. 데이터링크 계층 (MAC 주소 확인)
 1. 물리 계층   === 비트/전기신호전송 ===>  1. 물리 계층       (비트 수신)

1. 캡슐화 (송신측)

- 상위 계층(7계층)에서 하위 계층(1계층)으로 데이터가 내려간다.

- 각 계층을 거칠 때마다 해당 계층의 제어 정보(주소, 오류 검사 코드 등)가 헤더(Header) 형태로 데이터 앞에 덧붙여진다.

- 마지막 1계층에서 완성된 데이터 덩어리가 전기 신호, 광 신호, 전파 등으로 변환되어 전송 매체를 타고 수신 측으로 보내진다.

2. 역캡슐화 (수신 측)

- 수신 장치는 하위 계층에서 데이터를 신호로 받아 상위 계층으로 올린다.

- 각 계층을 통과할 때마다 송신 측에서 붙였던 해당 계층의 헤더를 하나씩 확인하고 떼어내며(포장 해제) 최종 원본 데이터를 복원한다.

 

실제 적용 사례: 웹 브라우저에서

[https://www.google.com] 접속 시

우리가 웹 브라우저에 주소를 입력하고 페이지를 불러오는 과정 전체에 7계층이 순차적으로 개입한다.

계층 실제 작동 예시 비유
7. 응용 계층 브라우저가 Google 서버에 페이지를 요청하는 HTTPS(HTTP) GET 요청 메시지를 생성 편지 내용 작성
6. 표현 계층 작성된 요청을 인코딩(UTF-8)하고 안전한 전송을 위해 TLS/SSL 암호화 처리한다. 수신자가 읽을 형태로 번역 및 암호화
5. 세션 계층 클라이언트와 서버 간의 통신 연결 상태를 설정하고 유지 관리한다. 통신을 주고받기 위한 대화 연결
4. 전송 계층 (Transport) 데이터를 작게 나누고(세그먼트화) TCP 프로토콜을 적용하여 목적지 포트 번호(HTTPS: 443)를 헤더에 덧붙인다. 등기 우편 봉투에 포트 번호(부서명) 표기
3. 네트워크 계층 (Network) DNS로 알아낸 Google 서버의 IP 주소와 내 IP 주소를 헤더에 붙여 패킷 형태로 만든다. 라우터가 최적의 전송 경로를 지정한다. 택배 상자에 국가/도시 주소(IP) 기재 및 경로 안내
2. 데이터링크 계층 데이터에 MAC 주소(내 랜카드 주소와 공유기/다음 스위치 주소)를 붙여 프레임으로 포장하고 전송 중 에러 체크용 트레일러를 붙인다. 운송장에 집 주소/다음 우체국(MAC 주소) 기재
1. 물리 계층 최종 프레임을 0과 1 비트열에서 전기 신호나 Wi-Fi 무선 신호로 변환하여 랜 케이블 또는 공중으로 송출한다. 트럭이나 비행기에 실어 실제 도로로 전송

 

수신(Google 서버) 및 응답 과정

1. Google 서버가 신호를 받으면 역순(1->7)으로 헤더를 벗겨내며 HTTP 요청을 확인한다.

2. Google 서버가 HTML/이미지 등 웹페이저 응답 데이터를 다시 7->1계층으로 캡슐화하여 내 컴퓨터로 보낸다.

3. 내 컴퓨터 브라우저가 다시 역캡슐화를 거쳐 최종 HTML 데이터를 받은 뒤 사용자 화면에 구글 메인 화면을 출력한다.

 

 

* 이해하기 어려워서 AI에게 부탁한 쉬운 비유 예시...

더보기
더보기

📦 택배에 비유해서 한눈에 이해하기

컴퓨터가 상대방에게 데이터를 보내는 과정은 상품을 포장해서 택배로 보내는 과정과 완전히 똑같습니다.

  • 7계층 (응용): 보낼 물건 정하기
    • 내가 친구에게 보낼 선물(메시지)을 준비합니다. (예: 카카오톡 메시지, 사진)
  • 6계층 (표현): 예쁘게 포장하기
    • 깨지지 않게 뽁뽁이로 감싸고, 비밀 선물이라면 내용물이 안 보이게 포장지(암호화)로 쌉니다.
  • 5계층 (세션): 약속 잡기
    • 친구에게 "지금 집에 있어? 택배 보낼게!" 하고 서로 통화할 상태를 확인합니다.
  • 4계층 (전송): 등기 택배 상자에 담기
    • 큰 선물은 상자 여러 개로 나눠 담고, 상자마다 번호(1번, 2번...)와 받는 사람의 '방 번호(포트 번호)'를 적습니다. 배송 중 분실되면 다시 보내주기로 보장(TCP)합니다.
  • 3계층 (네트워크): 도로 주소 적기
    • 택배 상자 겉면에 '받는 사람의 집 주소(IP 주소)'를 적습니다. 내비게이션(라우터)이 어떤 고속도로를 타야 가장 빠른지 계산합니다.
  • 2계층 (데이터링크): 아파트 동/호수 및 실물 운송장 붙이기
    • 집 근처에 도착했을 때 실제 배달 트럭이 찾아갈 '실제 건물 위치(MAC 주소)'를 적어 마지막 전달을 준비합니다.
  • 1계층 (물리): 도로와 트럭 (실제 이동)
    • 실제 트럭이 도로(랜선, Wi-Fi)를 달려 물리적으로 상자를 날릅니다. (0과 1의 전기 신호)

💡 핵심만 기억하는 꿀팁

  1. 송신자(나): 7계층 → 1계층 방향으로 포장(헤더 붙이기 = 캡슐화)해서 보냅니다.
  2. 수신자(친구): 1계층 → 7계층 방향으로 상자를 뜯으며(헤더 떼기 = 역캡슐화) 내용물을 확인합니다.
  3. 핵심 주소 3가지만 기억하세요!
    • 포트(Port) 번호 (4계층): 내 컴퓨터 안의 어떤 앱(웹브라우저, 게임, 카톡 등)으로 갈 것인가?
    • IP 주소 (3계층): 인터넷 세상에서 어느 컴퓨터로 갈 것인가?
    • MAC 주소 (2계층): 바로 옆에 있는 어떤 네트워크 장비(공유기, 스위치)로 넘겨줄 것인가?

 

잘못된 정보, 피드백, 추가 정보 등등 모두 편하게 댓글로 달아주시면 참고하겠습니다!

 

'CS 지식' 카테고리의 다른 글

[CS 지식] 실시간 통신을 하는 방법들  (0) 2026.09.16
[CS 지식] SSL/TLS 암호화란?  (0) 2026.09.15
[CS 지식] RDBMS와 NoSQL이란?  (1) 2026.09.09
[CS 지식] Kafka란?  (0) 2026.09.07
[CS 지식] Redis란?  (0) 2026.09.04