computer_science/network

[컴퓨터네트워크] 04. OSI 참조 모델

렁치 2026. 7. 29. 18:00

네트워크 통신은 매우 복잡하다. 그래서 그 기능을 7개의 층으로 나눠 각각 책임을 맡긴 것이 OSI 7계층 모델이다. 복잡한 통신을 "역할 단위로 쪼개" 이해하고 설계하기 위한 국제 표준이며, 네트워크 공부의 뼈대다.


1. OSI 7계층

OSI(Open System Interconnection) 모델
통신 기능을 7개 계층으로 나눠 각 계층마다 역할과 프로토콜을 규정한 국제 표준이다. 특정 프로토콜이 아니라, 네트워크를 설계하고 이해하기 위한 틀(모델)이다.

 

계층 이름 역할 데이터 단위
7 응용(Application) 사용자 인터페이스, 네트워크 서비스 데이터
6 표현(Presentation) 암호화·압축·코드 변환 데이터
5 세션(Session) 연결 설정·유지·종료 데이터
4 전송(Transport) 종단 간 신뢰성, 오류·흐름 제어 세그먼트
3 네트워크(Network) 논리 주소(IP), 라우팅 패킷
2 데이터 링크(Data Link) 물리 주소(MAC), 오류·흐름 제어 프레임
1 물리(Physical) 비트를 전기 신호로 전송 비트

 

계층으로 나눈 가장 큰 이점은 관심사 분리였다. 각 층은 자기 일만 하고, 위아래 층과 정해진 방식으로만 주고받는다. 그래서 한 층의 기술이 바뀌어도(예: 유선→무선) 다른 층은 영향받지 않는다. 운영체제·데이터베이스에서 본 "계층으로 변경을 격리"하는 설계가 네트워크에선 7계층으로 나타나는 게 보였다.


2. 캡슐화

캡슐화(Encapsulation)
데이터가 상위 계층에서 하위 계층으로 내려갈 때마다 각 계층이 자기 정보(헤더)를 덧붙인다(데이터 링크 계층은 끝에 트레일러도 붙임). 받는 쪽은 반대로 하위에서 상위로 올라가며 그 헤더를 하나씩 떼어낸다(역캡슐화).

 

택배에 비유하면, 각 계층이 자기 단계의 송장을 겹겹이 붙여 보내고, 받는 쪽이 그 송장을 차례로 벗겨 알맹이를 꺼내는 것과 같다. 그래서 같은 데이터라도 계층마다 부르는 이름이 다르다(세그먼트 → 패킷 → 프레임 → 비트). 앞 단원에서 데이터 단위 이름이 달랐던 이유가 이 캡슐화에 있었다.

 

실무에서는 OSI 7계층을 단순화한 TCP/IP 4계층(네트워크 접속 / 인터넷 / 전송 / 응용)을 더 많이 쓴다. OSI는 개념 이해용, TCP/IP는 실제 인터넷의 모델이다.


3. 물리 계층과 데이터 링크 계층

물리 계층 (1계층)

비트(0과 1)를 실제 전기 신호로 바꿔 전송하는 가장 낮은 층이다. 케이블·신호의 전기적·기계적 특성을 정의하며, 리피터·허브가 여기서 동작한다.

데이터 링크 계층 (2계층)

같은 네트워크 안의 인접 노드 사이에서 신뢰성 있는 전송을 책임진다. MAC 주소를 써서 프레임을 주고받으며, 세 가지 제어를 한다.

  • 회선 제어: 누가 언제 보낼지 조율
  • 오류 제어: 패리티·CRC로 검출, 해밍 코드로 정정
  • 흐름 제어: 송수신 속도 차이 조절(정지-대기 등)

 

ARP: IP 주소를 MAC 주소로 바꾼다
같은 네트워크 안에서 실제 전달은 MAC 주소로 이뤄지는데, 우리는 보통 IP 주소만 안다. ARP는 "이 IP를 가진 기기의 MAC을 알려줘"를 브로드캐스트로 묻고(ARP 요청), 해당 기기가 자기 MAC을 회신한다(ARP 응답). 결과는 ARP 테이블에 캐싱된다(arp -a로 확인). IP와 MAC을 잇는 다리 역할이다.

arp -a를 직접 쳐서 ARP 테이블에 IP-MAC 짝이 캐싱돼 있는 걸 보니, IP와 MAC을 잇는 다리라는 설명이 손에 잡혔다.

2계층 장비인 스위치는 프레임의 송신지 MAC을 보고 "어느 기기가 어느 포트에 있는지"를 학습해 MAC 주소 테이블에 저장한다. 그 덕에 목적지 포트로만 정확히 전달할 수 있다.


오늘 느낀 점

  • 복잡한 통신을 7개 역할로 쪼갠다는 발상이, 운영체제·DB에서 본 "계층으로 변경을 격리"하는 설계와 같은 철학이라는 게 보였다. 분야가 달라도 복잡도를 다루는 법은 닮아 있었다.
  • 캡슐화가 데이터 단위 이름(세그먼트→패킷→프레임→비트)이 계층마다 다른 이유였다. 택배 송장 비유로 한 번에 정리됐다.
  • ARP를 arp -a로 직접 확인하니, IP와 MAC이라는 두 주소 체계가 어떻게 연결되는지가 추상에서 실제로 바뀌었다.

한 걸음 더

  • OSI는 7계층이지만 실제 인터넷은 그 모델대로 만들어지지 않았다. TCP/IP가 먼저 널리 퍼진 뒤 OSI가 정리된 면이 있어, OSI의 세션·표현 계층은 현실에선 응용 계층에 뭉뚱그려진다. 그래서 "OSI는 이론, TCP/IP는 현실"이라 부르며, 둘을 대응시켜 이해하면 좋다.
  • 계층 모델의 위력은 "한 층만 바꿔 끼울 수 있다"는 데 있다. 유선을 무선으로 바꿔도(1·2계층), 그 위에서 도는 IP·TCP·HTTP(3·4·7계층)는 그대로다. 우리가 카페에서 와이파이로 똑같이 웹을 쓸 수 있는 게 이 분리 덕분이다.
  • 각 계층 장비를 구분하는 기준은 "어느 주소를 보고 판단하느냐"다. 1계층(허브)은 주소를 안 보고 신호만 전달, 2계층(스위치)은 MAC을 보고, 3계층(라우터)은 IP를 보고 판단한다. 장비가 동작하는 계층을 알면 그 장비가 무엇을 할 수 있고 없는지가 자연히 정리된다.