한양과학기술고등학교

에듀테크 프로젝트 대시보드

CDN (콘텐츠 전송 네트워크)

CDN — 콘텐츠 전송 네트워크

유튜브 영상, 게임 패치, 웹사이트 이미지가 지구 반대편에서도 빠른 이유 · 엣지 서버 · 지연 시간 · 캐시 적중

한 줄 요약. CDN은 원본 서버(Origin)의 콘텐츠 복사본을 전 세계 곳곳(엣지 서버)에 미리 뿌려두고, 사용자에게 가장 가까운 엣지가 대신 응답하게 하는 분산 캐시 네트워크다. 거리가 짧아지니 지연 시간이 줄고, 원본 서버의 부하도 크게 낮아진다.

1. 왜 거리가 문제일까?

인터넷의 데이터도 빛(전기 신호)의 속도를 넘지 못한다. 광섬유 안에서 신호는 대략 초속 20만 km로 이동하는데, 이건 "빠르다"기보다 1000 km마다 편도 약 5 ms가 무조건 더 붙는다는 뜻이다. 게다가 중간 라우터를 거칠 때마다 처리 지연이 쌓인다.

서울 사용자가 미국 버지니아의 서버에 접속하면 왕복(RTT)만 180~200 ms가 걸린다. 웹페이지 하나를 열 때 이미지·CSS·JS를 수십 번 주고받으므로, 이 왕복 지연이 그대로 몇 배로 곱해져 체감 속도를 망친다. 서버를 사용자 근처로 옮기는 것이 가장 확실한 해결책이고, 그걸 대신 해주는 것이 CDN이다.

2. 인터랙티브: 전 세계 요청 시뮬레이터

지도의 주황색 점(엣지 서버)을 눌러 사용자 위치를 바꿔보자. "요청 보내기"를 누르면 패킷이 이동하는 경로와 캐시 HIT/MISS, 그리고 실제 걸린 시간이 표시된다. CDN을 꺼보면 매번 원본까지 갔다 오는 차이를 볼 수 있다.

이번 요청
—
캐시 적중률
0%
HIT / MISS
0 / 0
원본 서버가 처리한 요청
0
평균 응답 시간
0 ms

요청 로그

// 요청을 보내면 여기에 기록됩니다.

같은 요청, CDN 있을 때 vs 없을 때

3. 어떻게 "가장 가까운 엣지"를 찾을까

사용자를 근처 엣지로 보내는 방법(GSLB, Global Server Load Balancing)은 크게 두 가지다.

방식동작특징
DNS 기반 cdn.example.com을 조회하면, CDN의 DNS 서버가 요청자 위치에 따라 다른 엣지 IP를 응답 구현이 간단하지만, DNS 캐시·리졸버 위치 때문에 정확도가 떨어질 수 있음
Anycast 같은 IP 주소를 전 세계 여러 엣지가 동시에 광고(BGP). 라우팅이 알아서 가장 가까운 곳으로 보냄 장애 시 자동 우회, 매우 빠른 전환. Cloudflare·Google이 주로 사용
이 아이디어는 이미 배운 일관된 해싱(서버 추가/제거 시 재배치 최소화)과 로드 밸런싱(요청 분산), DNS 이름 해석과 직접 연결된다. CDN은 이 조각들을 지리적으로 확장한 것이다.

4. 캐시 HIT / MISS 와 TTL

엣지 서버는 콘텐츠를 영원히 갖고 있지 않는다. 각 응답에는 유효 기간(Cache-Control: max-age = TTL)이 붙는다.

정적 파일(이미지, JS, 폰트, 동영상 조각)은 잘 안 바뀌므로 TTL을 길게 줘서 적중률을 높인다. 자주 바뀌는 HTML은 TTL을 짧게 주거나, 바뀔 때 파일 이름에 해시를 넣어(app.9f3c1a.js) 새 URL로 만든다.

# 엣지가 사용자에게 돌려준 응답 헤더 예시
HTTP/2 200
content-type: image/webp
cache-control: public, max-age=31536000, immutable   # 1년, 안 바뀜
age: 84213                 # 엣지가 이 복사본을 가진 지 84213초
x-cache: HIT                  # 원본까지 안 갔다! (MISS면 원본 왕복 발생)
x-served-by: edge-icn-seoul-3   # 서울 엣지가 응답

5. CDN이 주는 것 (지연 시간 말고도)

속도 & 부하 분산

사용자 근처 응답으로 지연 시간 감소. 원본 서버는 "MISS일 때만" 일하므로 트래픽 폭주(플래시 크라우드)에도 버틴다.

보안 (DDoS 완충)

수백 개 엣지가 공격 트래픽을 나눠 흡수한다. 원본 IP를 숨기고, 엣지에서 악성 요청을 걸러낸다.

대역폭 비용 절감

원본에서 나가는 트래픽(비싼 egress)이 캐시 적중률만큼 줄어든다. 적중률 95%면 원본 대역폭은 1/20.

엣지 컴퓨팅

요즘 CDN은 엣지에서 작은 코드(이미지 리사이즈, A/B 테스트, 인증)까지 실행한다. 로직도 사용자 곁으로.

6. 정리