네트워크를 처음 공부하다 보면 계층이라는 개념이 나온다.
계층 구조는 인터넷이 작동하는 핵심 원리로, 이 글에서는 네트워크의 기본 개념부터 TCP/IP 5계층 모델에 대해 다룬다.
왜 계층 구조가 필요할까?
블랙박스 개념
블랙박스는 기능은 알지만 작동 원리는 감춰진 시스템을 의미한다.
예를 들어 `console.log()`를 사용할 때 내부에서 어떻게 화면에 출력되는지 우리는 전혀 알 필요가 없는 것처럼 말이다.
특징
- 입력이 없는 함수도 블랙박스이다 (입력이 없다는 것 자체가 입력)
- 출력이 없는 함수도 블랙박스이다 (출력이 없다는 것 자체가 출력)
- 블랙박스 안에는 또 다른 블랙박스들이 들어있을 수 있다.
우리가 일상에서 사용하는 운영체제도 하나의 거대한 블랙박스로 볼 수있다.
운영체제라는 블랙박스 안에 마우스 드라이버, 파일 시스템 같은 작은 블랙박스들이 들어있는 것이다.
이 개념이 중요한 이유는 복잡한 문제를 작은 단위로 쪼개서 해결할 수 있기 때문이다.
이를 분할 정복(Divide and Conquer)이라고 하는데 네트워크 계층 구조도 같은 원리로 설계되어 있다.
프로토콜
컴퓨터들이 서로 대화하려면 공통 언어가 필요하다. 이것이 바로 프로토콜(Protocol), 즉 통신 규칙이다.
TCP/IP는 현대 인터넷의 표준 프로토콜로, Winodws, macOS, Linux처럼 운영체제가 달라도, 삼성 노트북과 맥북처럼 하드웨어가 달라도 TCP/IP만 지원하면 서로 통신할 수 있다.
마치 서로 다른 나라 사람들이 영어로 소통하는 것과 비슷하다.
TCP/IP 5계층
TCP/UP는 데이터 전송 과정을 5개의 계층으로 나눈다. 각 계층은 특정 역할만 담당하고, 다른 계층의 동작 원리는 몰라도 된다.

1계층: 물리 계층
가장 아래 계층으로, 데이터를 전기 신호로 바꿔서 전선으로 보내는 일을 한다.
- 데이터 → 전기 신호 변환
- 전기 신호 → 데이터 복원
- 랜카드와 UTP 케이블이 이 계층에서 동작한다.
여기서는 효율성을 전혀 고려하지 않는데, 이는 상위 계층의 몫이기 때문이다.
2계층: 데이터 링크 계층
물리 계층으로 여러 컴퓨터가 연결되어 있다면, 누구에게 보낼지 구분해야 한다. 이때 사용하는 것이 MAC 주소이다.
MAC 주소는 네트워크 카드에 부여된 고유한 주소로, 같은 아파트 단지 내에서 동/호수로 집을 찾는 것과 비슷하다.
3계층: 네트워크 계층
여기서부터는 범위가 넓어진다. 서울에 있는 컴퓨터가 부산에 있는 서버와 통신해야 한다면 어떻게 해야 할까?
바로 IP 주소를 사용해 경로를 찾는다.
- 출발지부터 목적지까지 최적의 경로 결정 (라우팅)
- 서로 다른 네트워크를 연결
- 복잡하게 얽힌 인터넷 망에서 길 찾기
4계층: 트랜스포트 계층
네트워크 계층이 "어디로 보낼지"를 결정했다면, 트랜스포트 계층은 제대로 도착했는지를 확인한다.
핵심 기능
- 포트 번호: 컴퓨터 안의 어떤 프로그램으로 보낼지 지정 (웹 브라우저는 80번 포트, 이메일은 25번 포트 등)
- 신뢰성 보장: 데이터가 순서대로 도착했는지, 손실되지 않았는지 확인
- 오류 처리: 문제가 생기면 재전송 요청
중요한 점은 이 계층은 하위 계층(1, 2, 3 계층)이 실제 데이터 전송을 알아서 해주기 때문에 연결 관리에만 집중할 수 있다는 것이다.
5계층: 애플리케이션 계층
사용자(개발자)가 직접 다루는 영역으로, 우리가 익히 아는 프로토콜들이 여기에 해당한다.
- HTTP/HTTPS: 웹 페이지를 주고받을 때
- FTP: 파일을 전송할 때
- SSH: 원격 서버에 접속할 때
- SMTP: 이메일을 보낼 때
이 계층에서, 하위 4개 계층이 복잡한 통신 과정을 다 처리해주기 때문에 개발자는 내 앱이 뭘 할 것인지만 고민하면 된다.
웹 개발을 할 때 전기 신호나 라우팅을 신경 쓰지 않아도 되는 이유가 바로 이 덕분이다.
OSI 7계층
국제 표준화 기구(ISO)에서 만든 OSI 7계층 모델도 있다.

TCP/IP의 5계층과 비교하면, 상위 3개 계층(애플리케이션, 프리젠테이션, 세션)이 TCP/IP의 애플리케이션 계층 하나로 합쳐진 구조이다.
왜 두 모델이 공존하는 것일까?
OSI 7계층이 국제 표준으로 만들어졌을 때, 이미 TCP/IP가 인터넷에서 널리 쓰이고 있었다. 기존 시스템을 모두 바꿀 수 없었기 때문에 실제 인터넷은 여전히 TCP/IP로 동작한다.
하지만 OSI 7계층은 네트워크를 이론적으로 이해하고 설명하는 데는 여전히 유용한 참조 모델로 활용되고 있다.
정리하며
네트워크 계층 구조는 복잡해 보이지만, 결국 분할 정복의 원리이다. 각 계층이 자기 역할만 확실히 하면, 상위 계층은 하위 계층을 블랙박스처럼 사용할 수 있다.
개발자로서 HTTP 요청을 보낼 때, 그 아래에서 TCP가 연결을 관리하고, IP가 경로를 찾고, 이더넷이 같은 네트워크 내에서 전달하고, 물리 계층이 전기 신호로 변환하는 과정을 일일이 신경쓰지 않아도 된다.
