Network Essential Curriculum: 계층 모델부터 성능·운영까지
소개
컴퓨터 네트워크는 백엔드·데이터·인프라·보안 어디를 가든 발밑에 깔린 공용 기반입니다. API가 느릴 때, 배포한 서비스에 접속이 안 될 때, HTTPS 인증서가 깨질 때, 방화벽 뒤의 서버가 응답하지 않을 때 — 결국 답은 네트워크 계층 어딘가에 있습니다. 그런데 네트워크를 “케이블과 라우터의 물리적인 무엇”으로만 여기면 이 문제들이 늘 마법처럼 느껴집니다. 계층 모델이라는 렌즈로 볼 때 비로소 “지금 어느 계층의 문제인가”를 물을 수 있고, 그 질문이 곧 해결의 절반입니다.
이 Network-Essential 시리즈는 그 렌즈를 손에 쥐여 주는 것을 목표로 합니다. 네트워크를 7개의 계층이 아니라 7단계의 학습 여정으로 재구성해, 계층 모델(OSI/TCP-IP)에서 출발해 아래에서 위로 — 링크 계층(같은 네트워크 안에서의 전달), 네트워크 계층(IP·라우팅으로 네트워크를 넘어가기), 전송 계층(TCP·UDP로 신뢰와 속도를 고르기) — 을 쌓아 올린 뒤, 응용 계층(HTTP·DNS로 실제 서비스를 굴리기), 보안(TLS로 그 위에 신뢰를 얹기), 그리고 성능·운영·트러블슈팅(현장에서 따져 묻고 고치기)으로 마무리합니다.
이 시리즈는 프로토콜 명세를 암기하는 책이 아니라, “주소 창에 URL을 치고 엔터를 누르면 무슨 일이 벌어지는가”라는 하나의 질문을 7단계에 걸쳐 완성해 가는 여정입니다. 각 단계를 정복할 때마다 상세 딥다이브 포스트를 작성하고 체크박스를 채우는 도장깨기 방식으로 진행합니다.
학습 흐름
7단계는 아래 순서대로 진행하는 것을 권장합니다. 네트워크는 아래에서 위로 쌓이는 구조이므로 학습도 그 결을 따릅니다. 먼저 계층 모델로 전체 지도를 그리고, 링크 계층에서 같은 네트워크 안의 전달(프레임·MAC·ARP)을 익힌 뒤, 네트워크 계층(IP·서브네팅·라우팅)으로 네트워크의 경계를 넘어가는 법을 배웁니다. 그 위에 전송 계층(TCP·UDP)으로 신뢰성과 속도의 선택을 얹고, 응용 계층(HTTP·DNS)에서 실제 서비스가 어떻게 굴러가는지를 봅니다. 마지막으로 보안(TLS·방화벽)으로 신뢰를 더하고, 성능·운영·트러블슈팅으로 현장의 안목을 갖춥니다.
flowchart TD
Start([학습 시작]) --> S1
subgraph BASE["기반 · 큰 그림과 같은 네트워크 안의 전달"]
S1["1단계<br/>계층 모델<br/>OSI 7계층·TCP/IP 4계층·캡슐화"]
S2["2단계<br/>링크 계층<br/>Ethernet·MAC·스위칭·ARP"]
end
subgraph CORE["코어 · 네트워크를 넘고 신뢰·속도를 고르기"]
S3["3단계<br/>네트워크 계층(IP·라우팅)<br/>주소·서브네팅·라우팅·NAT·ICMP"]
S4["4단계<br/>전송 계층(TCP·UDP)<br/>3-way·흐름/혼잡 제어·포트·소켓"]
end
subgraph REAL["실전 · 서비스·신뢰·현장으로 넓히기"]
S5["5단계<br/>응용 계층<br/>HTTP/HTTPS·DNS·DHCP·요청의 여정"]
S6["6단계<br/>네트워크 보안<br/>TLS·방화벽·VPN·위협 모델"]
S7["7단계<br/>성능·운영·트러블슈팅<br/>지연·대역폭·패킷 분석·CDN·관측"]
end
S1 --> S2 --> S3 --> S4 --> S5 --> S6 --> S7
S7 --> Done([시리즈 완주])
학습 진행 현황
완료한 항목에는 상세 포스트 링크가 연결됩니다. 학습이 진행될 때마다 체크박스와 진행률을 갱신합니다.
- 현재 완료한 항목: 7개
- 전체 항목: 7개
- 진행률: 100%
1단계: 계층 모델 — OSI 7계층 · TCP/IP 4계층 · 캡슐화
네트워크의 모든 것이 여기서 출발합니다. 복잡한 통신을 계층(layer)으로 나눠, 각 계층이 바로 아래 계층의 서비스만 쓰고 위 계층에는 인터페이스만 노출하는 계층화 원리를 익힙니다. 개념적 참조 모델인 OSI 7계층과 실제 인터넷을 굴리는 TCP/IP 4계층의 대응 관계, 데이터가 아래로 내려가며 계층마다 헤더가 붙는 캡슐화(encapsulation)와 반대편에서 벗겨지는 역캡슐화를 그림으로 잡습니다. 이 지도를 손에 쥐면 이후 모든 단계가 “지금 어느 계층 이야기인가”로 정리되고, 트러블슈팅도 “어느 계층에서 끊겼는가”를 묻는 일이 됩니다.
- 왜 계층화인가: 관심사 분리, 계층 간 캡슐화·독립적 진화가 주는 힘 [상세]
- OSI vs TCP/IP: 7계층 참조 모델과 4계층 실무 모델의 대응, PDU(프레임·패킷·세그먼트) [상세]
- 캡슐화와 데이터 흐름: Data → Segment → Packet → Frame → bits, 송신·수신의 대칭 [상세]
2단계: 링크 계층 — Ethernet · MAC · 스위칭 · ARP
같은 네트워크(로컬 세그먼트) 안에서 프레임이 어떻게 전달되는지를 다루는 단계입니다. 하드웨어 주소인 MAC 주소, 프레임 구조와 Ethernet의 동작, 프레임을 목적지 포트로만 보내는 스위치의 학습·포워딩, 충돌·브로드캐스트 도메인의 개념을 익힙니다. 특히 IP 주소를 MAC 주소로 변환하는 ARP는 “3계층 주소와 2계층 주소가 어떻게 이어지는가”라는 결정적 다리이며, ARP 스푸핑 같은 보안 이슈의 출발점이기도 합니다. VLAN으로 하나의 물리 스위치를 논리적으로 쪼개는 개념까지 잡으면 데이터센터·사내망의 그림이 보이기 시작합니다.
- MAC 주소와 프레임: L2 주소 체계, Ethernet 프레임 구조, 브로드캐스트/유니캐스트 [상세]
- 스위칭: MAC 학습·포워딩 테이블, 충돌 도메인 vs 브로드캐스트 도메인, VLAN [상세]
- ARP: IP↔MAC 해석, ARP 캐시, 게이트웨이로 나가기 전의 마지막 홉 [상세]
3단계: 네트워크 계층 (IP · 라우팅) — 주소 · 서브네팅 · 라우팅 · NAT · ICMP
네트워크의 경계를 넘어 목적지까지 패킷을 보내는 단계입니다. 전 세계 어디로든 도달하게 하는 IP 주소(IPv4/IPv6), 주소 공간을 나누는 서브네팅과 CIDR, 홉과 홉을 거쳐 최적 경로를 찾는 라우팅(라우팅 테이블·기본 게이트웨이·정적/동적 라우팅), 사설망과 공인망을 잇는 NAT, 그리고 진단·오류 보고의 ICMP(ping·traceroute의 정체)를 익힙니다. “왜 내 컴퓨터의 IP는 192.168로 시작하는가”, “traceroute는 어떻게 경로를 보여주는가” 같은 일상의 질문이 여기서 풀립니다.
- IP 주소와 서브네팅: IPv4/IPv6, CIDR·서브넷 마스크, 사설/공인 주소 [상세]
- 라우팅: 라우팅 테이블·기본 게이트웨이, 정적 vs 동적 라우팅, 최장 프리픽스 매칭 [상세]
- NAT와 ICMP: 주소 변환, ping·traceroute의 원리, MTU와 단편화 [상세]
4단계: 전송 계층 (TCP · UDP) — 3-way 핸드셰이크 · 흐름/혼잡 제어 · 포트 · 소켓
호스트가 아니라 프로세스와 프로세스를 잇는 계층입니다. 포트와 소켓으로 하나의 IP 위 여러 애플리케이션을 구분하는 법, 연결 지향·신뢰성의 TCP(3-way 핸드셰이크로 연결을 세우고, 순서 보장·재전송으로 신뢰를 확보하며, 흐름 제어와 혼잡 제어로 속도를 조율)와 비연결·경량의 UDP(신뢰성을 포기하고 지연을 택함)를 나란히 익힙니다. “왜 영상 스트리밍은 UDP이고 웹은 TCP인가”, “혼잡 제어가 왜 인터넷을 무너지지 않게 하는가”를 이해하면 전송 계층이 성능의 핵심 무대임을 알게 됩니다.
- 포트와 소켓: 프로세스 다중화, 잘 알려진 포트, 소켓 = (IP, 포트) 쌍 [상세]
- TCP: 3-way/4-way, 순서·재전송으로 만드는 신뢰성, 흐름 제어(윈도)·혼잡 제어 [상세]
- UDP: 비연결·경량, 언제 UDP인가, QUIC이 UDP 위에 올라선 이유 [상세]
5단계: 응용 계층 — HTTP/HTTPS · DNS · DHCP · 웹 요청의 여정
우리가 매일 마주하는 서비스가 실제로 굴러가는 계층입니다. 웹의 언어인 HTTP(메서드·상태 코드·헤더, HTTP/1.1 → HTTP/2 → HTTP/3의 진화), 이름을 주소로 바꾸는 DNS(재귀·반복 질의, 레코드, 캐시), 접속 시 IP를 자동 배정하는 DHCP를 익힙니다. 이 단계의 백미는 “브라우저에 URL을 치고 엔터를 누르면 무슨 일이 벌어지는가” — DNS 조회 → TCP 연결 → TLS 핸드셰이크 → HTTP 요청/응답 → 렌더링으로 이어지는 여정을, 앞선 1~4단계 지식을 총동원해 한 줄로 꿰는 것입니다.
- HTTP/HTTPS: 메서드·상태 코드·헤더, 캐시·쿠키, HTTP/1.1·2·3의 차이 [상세]
- DNS: 이름 해석의 계층 구조, 재귀 vs 반복 질의, 레코드·TTL·캐시 [상세]
- 웹 요청의 여정: URL 입력 → DNS → TCP → TLS → HTTP → 렌더까지 한 흐름으로 [상세]
6단계: 네트워크 보안 — TLS/SSL · 방화벽 · VPN · 위협 모델
평문으로 흐르던 통신 위에 신뢰를 얹는 단계입니다. 도청·변조·위장을 막는 TLS(핸드셰이크로 세션 키를 세우고, 인증서·PKI로 상대를 검증하며, 대칭·비대칭 암호를 조합하는 원리), 트래픽을 정책으로 걸러내는 방화벽(패킷 필터·상태 기반·L7), 신뢰할 수 없는 망 위에 안전한 터널을 세우는 VPN을 익힙니다. 여기에 위협 모델의 사고법 — 무엇을, 누구로부터, 어떻게 지키는가 — 을 더하면, 앞 단계에서 배운 프로토콜들의 취약점(ARP 스푸핑·DNS 하이재킹·중간자 공격)이 왜 위험하고 어떻게 방어되는지가 하나로 연결됩니다.
- TLS/SSL: 핸드셰이크·세션 키, 인증서·CA·PKI, 대칭+비대칭의 결합 [상세]
- 방화벽과 VPN: 패킷 필터·상태 기반·L7 방화벽, VPN 터널링, 사설망 접근 [상세]
- 위협 모델: 중간자·스푸핑·하이재킹, CIA(기밀성·무결성·가용성)로 사고하기 [상세]
7단계: 성능·운영·트러블슈팅 — 지연·대역폭 · 패킷 분석 · CDN · 관측
배운 것을 현장에서 따져 묻고 고치는 마지막 단계입니다. 성능을 좌우하는 두 축인 지연(latency)과 대역폭(bandwidth)을 구분하고, RTT·처리량·버퍼블로트가 체감 속도를 어떻게 가르는지를 익힙니다. 패킷 분석(tcpdump·Wireshark로 계층별로 흐름을 뜯어보기), 콘텐츠를 사용자 가까이 두는 CDN과 캐싱, 그리고 네트워크를 관측(observability)하는 지표·도구까지 다룹니다. “어느 계층에서 느려졌는가”, “패킷이 어디서 사라졌는가”를 스스로 진단하는 안목을 갖추면 이 시리즈가 완성됩니다.
- 지연 vs 대역폭: RTT·처리량·버퍼블로트, 체감 성능을 가르는 것 [상세]
- 패킷 분석: tcpdump·Wireshark로 계층별 흐름 읽기, 재전송·핸드셰이크 관찰 [상세]
- CDN·캐싱·관측: 엣지 캐시로 지연 줄이기, 네트워크 지표와 트러블슈팅 도구 [상세]
핵심 포인트
- 계층으로 사고하라: 네트워크의 모든 문제는 “지금 어느 계층인가”로 시작합니다. 계층 모델은 암기 대상이 아니라 문제를 분해하는 사고 도구입니다.
- 아래에서 위로 쌓인다: 링크(같은 망) → 네트워크(망을 넘어) → 전송(프로세스를 잇고) → 응용(서비스를 굴린다). 아래층의 이해 없이 위층부터 손대면 개념이 겉돕니다.
- 신뢰성과 속도는 트레이드오프다: TCP와 UDP의 선택, 흐름·혼잡 제어, CDN·캐싱 — 네트워크 설계는 대부분 “무엇을 포기하고 무엇을 얻는가”의 문제입니다.
- 보안은 나중이 아니라 계층마다다: TLS는 응용 위에 얹히지만, 위협은 ARP·DNS·라우팅 등 모든 계층에 있습니다. 각 계층의 프로토콜을 알아야 그 취약점과 방어가 보입니다.
- URL 한 줄이 전부를 꿰뚫는다: DNS → TCP → TLS → HTTP로 이어지는 웹 요청의 여정은 1~6단계 전부를 하나로 잇는 최고의 통합 예제입니다.
추천 학습 순서
위 단계 번호 순서대로 진행하는 것을 권합니다.
- 기반(1~2단계) — 계층 모델로 전체 지도를 그리고, 링크 계층으로 같은 네트워크 안의 전달을 익힙니다. 이 토대 없이 IP·TCP부터 손대면 “어느 계층 이야기인지”가 흐려집니다.
- 코어(3~4단계) — 네트워크 계층(IP·라우팅)으로 망을 넘어가는 법을, 전송 계층(TCP·UDP)으로 신뢰와 속도의 선택을 다스립니다. 인터넷을 굴리는 심장부입니다.
- 실전(5~7단계) — 응용 계층(HTTP·DNS)으로 서비스를, 보안(TLS)으로 신뢰를, 성능·운영으로 현장의 안목을 얹어 활용 범위를 넓힙니다.
각 단계는 앞 단계의 토대 위에 쌓이므로, 순서대로 정복하며 체크박스를 채워 나가길 권합니다.
결론
네트워크는 “계층으로 나누어, 각 계층이 제 몫만 하고 아래층의 서비스만 쓴다”는 단순한 발상 위에, 전 세계를 하나로 잇는 정교한 시스템을 얹은 기술입니다. 프로토콜과 도구는 계속 진화하지만(HTTP/3·QUIC·IPv6·eBPF 관측), 계층으로 나누고, 주소로 찾고, 홉을 넘고, 핸드셰이크로 잇는다는 뼈대와 “각 계층은 아래를 신뢰하고 위에 서비스를 제공한다”는 원리는 오래 갑니다. 이 7단계를 순서대로 정복하면, 웹 요청 하나의 여정을 처음부터 끝까지 설명하고, 장애가 났을 때 어느 계층을 의심할지 아는 실무 안목을 갖추게 됩니다.
이 Network-Essential 시리즈는 7단계를 모두 정복해 100% 완주했습니다. 아래 인덱스가 시리즈 전체 딥다이브로의 길잡이입니다.
다음 학습 (Next Learning)
- 1단계: 계층 모델 (OSI 7계층 · TCP/IP 4계층 · 캡슐화) — 이 여정의 첫 관문
- 2단계: 링크 계층 (Ethernet · MAC · 스위칭 · ARP) — 같은 LAN 안의 전달
- 3단계: 네트워크 계층 (IP · 서브네팅 · 라우팅 · NAT · ICMP) — 네트워크 사이의 전달
- 4단계: 전송 계층 (TCP · UDP · 포트 · 소켓) — 프로세스와 프로세스를 잇는 계층
- 5단계: 응용 계층 (HTTP/HTTPS · DNS · DHCP · 웹 요청의 여정) — 서비스가 실제로 굴러가는 계층
- 6단계: 네트워크 보안 (TLS · 방화벽 · VPN · 위협 모델) — 평문 위에 신뢰를 얹다
- 7단계: 성능·운영·트러블슈팅 (지연·대역폭 · 패킷 분석 · CDN · 관측) — 현장의 안목
- PostgreSQL Architecture Deep Dive — 네트워크 위에서 동작하는 DB의 연결·프로토콜 관점 참고
- Kafka Essential Curriculum — 네트워크 위에 세운 분산 로그, 전달 보장과 함께 읽기