OSI 7계층

지금까지 살펴본 네트워크 카드, 스위치·라우터, 패킷은 사실 통신 과정의 서로 다른 "단계"를 담당합니다. OSI 7계층은 이런 통신 과정을 7개의 계층으로 나누어 표준화한 모델입니다. 계층을 나누어 두면 각 계층을 담당하는 장비나 프로그램을 서로 독립적으로 개발하고 교체할 수 있어, 제조사가 달라도 문제없이 함께 동작할 수 있습니다.

계층을 눌러 역할을 확인해 보세요

데이터가 계층을 내려가는 과정 — 캡슐화

응용 계층에서 만들어진 데이터는 아래로 내려가면서 각 계층이 자신만의 헤더(봉투)를 하나씩 덧붙입니다. 이렇게 데이터를 겹겹이 감싸는 과정을 캡슐화(encapsulation)라고 하며, 받는 쪽에서는 반대로 겉봉투부터 하나씩 벗겨내며(역캡슐화) 원래 데이터를 복원합니다.

데이터
응용·표현·세션
세그먼트
+ TCP/UDP 헤더(포트)
패킷
+ IP 헤더(주소)
프레임
+ MAC 헤더/트레일러
비트
0과 1의 신호

2계층 프레임을 열어보면 — 이더넷 프레임 구조

위 캡슐화 과정에서 만들어지는 프레임의 실제 내용을 들여다보면, 이더넷은 아래 그림처럼 정해진 순서의 필드로 구성됩니다. 맨 앞의 목적지·출발지 MAC 주소로 같은 통신망 안에서 상대를 구분하고, 맨 뒤의 FCS로 전송 중 오류가 없었는지 검사합니다.

 이더넷 프레임 구조
필드 크기 설명
프리앰블(Preamble) 7바이트 1과 0을 번갈아 56비트 보내, 수신 쪽이 신호에 맞춰 동기를 잡도록 합니다.
SFD(Start Frame Delimiter) 1바이트 "이제부터 진짜 프레임이 시작된다"는 것을 알리는 시작 표시입니다.
목적지 MAC 주소 6바이트 이 프레임을 받아야 할 기기의 고유 하드웨어 주소입니다.
출발지 MAC 주소 6바이트 이 프레임을 보낸 기기의 고유 하드웨어 주소입니다.
타입/길이(Type/Length) 2바이트 데이터에 담긴 상위 계층 프로토콜(IPv4·ARP·IPv6 등)의 종류를 나타냅니다.
데이터(Payload) + 패딩 46~1500바이트 상위 계층(3~7계층)에서 내려온 실제 내용입니다. 내용이 46바이트보다 작으면 뒤에 0을 채우는 패딩으로 최소 길이를 맞춥니다.
FCS(Frame Check Sequence) 4바이트 32비트 CRC로 전송 중 오류가 생기지 않았는지 검사합니다.

프리앰블·SFD(8바이트)는 프레임 길이 계산에서는 제외하며, 나머지 필드만 더한 순수 프레임 길이는 최소 64바이트(MAC 헤더 14 + 데이터 46 + FCS 4)에서 최대 1518바이트(MAC 헤더 14 + 데이터 1500 + FCS 4)입니다. 목적지·출발지 MAC스위치가 신호를 정확한 상대에게만 전달하는 데 쓰이고, 타입 필드는 그 안에 담긴 데이터가 3계층의 어떤 프로토콜인지 알려 줍니다.

여러 기기가 케이블을 같이 쓰면? CSMA/CD

예전에 여러 컴퓨터가 하나의 케이블을 함께 쓰던 이더넷에서는, 둘 이상이 동시에 신호를 보내면 신호가 서로 뒤섞이는 충돌(collision)이 생겼습니다. 이를 막기 위해 쓰인 방식이 CSMA/CD(반송파 감지 다중 접속/충돌 탐지)이며, 다음 순서로 동작합니다.

  1. 감지(Carrier Sense) — 보내기 전에 케이블이 비어 있는지 먼저 확인합니다.
  2. 전송(Multiple Access) — 케이블이 비어 있으면 누구든 데이터를 보낼 수 있습니다.
  3. 충돌 탐지(Collision Detection) — 두 기기가 동시에 보내 신호가 겹치면 충돌을 감지합니다.
  4. 대기 후 재전송 — 충돌한 기기들은 각자 무작위 시간만큼 기다린 뒤 다시 전송을 시도합니다.

오늘날에는 스위치가 포트마다 신호를 따로 전달해 주기 때문에 케이블을 함께 쓸 일이 거의 없어졌고, 그 결과 CSMA/CD는 현재 유선 이더넷에서는 거의 쓰이지 않는 옛 방식이 되었습니다.

전송 계층의 두 프로토콜 — TCP와 UDP

4계층(전송 계층)에는 대표적으로 두 가지 프로토콜이 있습니다. TCP는 먼저 연결을 맺고(3-way handshake), 데이터가 잘 도착했는지 확인(ACK)하며, 손실된 데이터는 재전송해 순서대로 정확히 전달하는 신뢰성 있는 프로토콜입니다. 반면 UDP는 연결 설정 없이 곧바로 데이터를 보내고, 손실되어도 재전송하지 않는 대신 지연이 적고 빠릅니다. 그래서 파일 전송·이메일처럼 정확성이 중요한 곳에는 TCP를, 실시간 스트리밍·온라인 게임처럼 속도가 중요한 곳에는 UDP를 주로 사용합니다.

TCP·UDP 시뮬레이션 — 직접 실험해 보세요

아래에서 프로토콜과 "패킷 손실" 여부를 고른 뒤 전송을 실행해, TCP와 UDP가 손실에 어떻게 다르게 반응하는지 비교해 보세요.

 
TCP UDP
연결 설정 있음 (3-way handshake) 없음
신뢰성(재전송) 있음 — 손실 시 재전송 없음 — 손실 시 그대로 버림
순서 보장 보장됨 보장되지 않음
속도·오버헤드 상대적으로 느림, 오버헤드 큼 빠름, 오버헤드 작음
대표 사용 예 웹(HTTP), 이메일, 파일 전송 실시간 스트리밍, 온라인 게임, DNS

핵심 정리

  • OSI 7계층은 통신 과정을 물리·데이터링크·네트워크·전송·세션·표현·응용, 7개 계층으로 나눈 표준 모델입니다.
  • 데이터는 위에서 아래로 내려가며 각 계층의 헤더를 덧붙이는 캡슐화 과정을 거쳐 비트로 전송됩니다.
  • 이더넷 프레임은 목적지·출발지 MAC, 타입, 데이터, FCS 순으로 구성되며, 과거에는 CSMA/CD로 케이블 충돌을 조정했지만 스위치 보급 이후 거의 쓰이지 않습니다.
  • 전송 계층(4계층)의 TCP는 연결·재전송으로 신뢰성을, UDP는 연결 설정 없이 속도를 우선합니다.
현재 페이지

네트워크

OSI 7계층