지금까지 살펴본 네트워크 카드, 스위치·라우터, 패킷은 사실 통신 과정의 서로 다른 "단계"를 담당합니다. OSI 7계층은 이런 통신 과정을 7개의 계층으로 나누어 표준화한 모델입니다. 계층을 나누어 두면 각 계층을 담당하는 장비나 프로그램을 서로 독립적으로 개발하고 교체할 수 있어, 제조사가 달라도 문제없이 함께 동작할 수 있습니다.
응용 계층에서 만들어진 데이터는 아래로 내려가면서 각 계층이 자신만의 헤더(봉투)를 하나씩 덧붙입니다. 이렇게 데이터를 겹겹이 감싸는 과정을 캡슐화(encapsulation)라고 하며, 받는 쪽에서는 반대로 겉봉투부터 하나씩 벗겨내며(역캡슐화) 원래 데이터를 복원합니다.
위 캡슐화 과정에서 만들어지는 프레임의 실제 내용을 들여다보면, 이더넷은 아래 그림처럼 정해진 순서의 필드로 구성됩니다. 맨 앞의 목적지·출발지 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계층의 어떤 프로토콜인지 알려 줍니다.
예전에 여러 컴퓨터가 하나의 케이블을 함께 쓰던 이더넷에서는, 둘 이상이 동시에 신호를 보내면 신호가 서로 뒤섞이는 충돌(collision)이 생겼습니다. 이를 막기 위해 쓰인 방식이 CSMA/CD(반송파 감지 다중 접속/충돌 탐지)이며, 다음 순서로 동작합니다.
오늘날에는 스위치가 포트마다 신호를 따로 전달해 주기 때문에 케이블을 함께 쓸 일이 거의 없어졌고, 그 결과 CSMA/CD는 현재 유선 이더넷에서는 거의 쓰이지 않는 옛 방식이 되었습니다.
4계층(전송 계층)에는 대표적으로 두 가지 프로토콜이 있습니다. TCP는 먼저 연결을 맺고(3-way handshake), 데이터가 잘 도착했는지 확인(ACK)하며, 손실된 데이터는 재전송해 순서대로 정확히 전달하는 신뢰성 있는 프로토콜입니다. 반면 UDP는 연결 설정 없이 곧바로 데이터를 보내고, 손실되어도 재전송하지 않는 대신 지연이 적고 빠릅니다. 그래서 파일 전송·이메일처럼 정확성이 중요한 곳에는 TCP를, 실시간 스트리밍·온라인 게임처럼 속도가 중요한 곳에는 UDP를 주로 사용합니다.
아래에서 프로토콜과 "패킷 손실" 여부를 고른 뒤 전송을 실행해, TCP와 UDP가 손실에 어떻게 다르게 반응하는지 비교해 보세요.
| TCP | UDP | |
|---|---|---|
| 연결 설정 | 있음 (3-way handshake) | 없음 |
| 신뢰성(재전송) | 있음 — 손실 시 재전송 | 없음 — 손실 시 그대로 버림 |
| 순서 보장 | 보장됨 | 보장되지 않음 |
| 속도·오버헤드 | 상대적으로 느림, 오버헤드 큼 | 빠름, 오버헤드 작음 |
| 대표 사용 예 | 웹(HTTP), 이메일, 파일 전송 | 실시간 스트리밍, 온라인 게임, DNS |
🧑🏫 선생님·학부모님을 위한 설명 도움말
원리 자세히 보기
계층 모델의 역사와 배경
| 시기 | 사건 | 의미 |
|---|---|---|
| 1970년대 초 | 제조사마다 다른 통신 방식 | 회사마다 자기 컴퓨터끼리만 통하는 통신 규약을 써서, 다른 회사 컴퓨터와는 연결하기 어려웠습니다. |
| 1974년 | TCP 설계 논문(서프·칸) | 서로 다른 통신망을 잇는 TCP/IP의 바탕이 마련되었습니다(인터넷과 패킷 참고). |
| 1977년 | 국제표준화기구(ISO), OSI 표준 작업 시작 | "어느 회사 제품이든 서로 통하게(개방형 시스템 상호 연결)" 만들기 위한 국제 표준을 만들기 시작했습니다. |
| 1983년 | ARPANET의 TCP/IP 전환 | TCP/IP가 실제로 운영되는 통신망의 표준이 되었습니다. |
| 1984년 | OSI 참조 모델 발표(ISO 7498) | 통신을 7계층으로 나누는 지금의 모델이 국제 표준으로 정해졌습니다. 국제전기통신연합(ITU)도 같은 내용을 X.200 권고로 냈습니다. |
| 1989년 | 인터넷 호스트 요구사항(RFC 1122) | TCP/IP를 링크·인터넷·전송·응용의 4계층으로 정리했습니다. |
| 1980년대 말~1990년대 | '프로토콜 전쟁' | 여러 나라 정부와 통신회사가 OSI 방식의 프로토콜을 밀었지만, 이미 널리 쓰이던 TCP/IP가 인터넷과 함께 퍼지며 사실상의 표준이 되었습니다. OSI 프로토콜은 거의 쓰이지 않게 되었지만 7계층 '모델'은 교육과 설계의 공통 언어로 남았습니다. |
비유로 설명하기
자주 하는 오해
함께 해 볼 질문·활동
📚 참고 자료 및 출처
본 교육자료는 Anthropic(Claude) 및 OpenAI(ChatGPT)를 활용하여 제작하였으며, 제작자가 내용을 검토·편집하였습니다. 주요 참고자료와 출처는 각 페이지의 「참고 자료 및 출처」에 명시하였습니다. 출처가 별도로 표기되지 않은 페이지와 참고자료에 포함되지 않은 내용은 제작자가 직접 작성하거나 정리한 것입니다. 내용에 오류가 있거나 수정이 필요한 사항을 발견하시면 kvnsite@kasi.re.kr로 알려 주시기 바랍니다.
네트워크