CDN(Content Delivery Network)이란?

2026. 1. 4. 22:36·Computer Science/네트워크

CDN이란?

CDN(Content Delivery Network)은 웹 콘텐츠를 전 세계 서버에 분산하여 저장하는 네트워크로,

클라이언트의 요청이 들어올 때 가까운 서버로부터 데이터를 빠르게 전송할 수 있는 기술을 의미한다.

 

출처는 사진에

 

CDN에서 제공하는 웹 콘텐츠의 종류

  • 정적 콘텐츠
    • 서버에 저장되어 있으며, 사이트를 방문하는 모든 사용자에게 동일하게 전달되는 콘텐츠
    • html, css, javascript, 이미지 등
  • 동적 콘텐츠
    • 사용자의 방문 시간, 위치, 행동 등에 따라 변경되는 콘텐츠
    • 사용자의 장바구니, 로그인 결과 등

 

CDN의 목적

 

CDN이 필요한 주 목적은 콘텐츠 전송 지연을 최소화하고, 네트워크 비용을 절감하기 위해서이다.

 

클라이언트와 서버의 거리가 물리적으로 멀리 떨어져 있다고 가정해보자 !

서버가 클라이언트로 보내는 응답 데이터의 양이 많다면, 네트워크를 거쳐 전송하는 데 많은 시간이 소요될 것이다.

따라서 여러 서버에 동일한 리소스를 배치해 두면, 사용자로부터 물리적으로 가까운 서버에서

콘텐츠를 빠르게 제공할 수 있어 지연을 줄일 수 있다.

 

또한 기존 서버에서 보내는 데이터의 양이 줄어들기 때문에 대역폭 비용을 줄일 수 있다.

※ 대역폭 비용: 서버에서 데이터를 전송한 만큼 지불하는 비용

 

이외에도, 트래픽 급증 처리와 failover(서버 장애 시 다른 서버로 라우팅)에 대한 이점이 존재한다!

 


 

CDN의 구성 요소

CDN의 구성요소는 크게 오리진 서버, 엣지 서버, DNS 서버 3가지로 구성되어 있다.

 

오리진 서버

오리진 서버는 콘텐츠의 원본이 존재하는 서버로, 콘텐츠의 관리(업데이트)를 담당한다.

 

엣지 서버

엣지 서버는 전 세계 곳곳에 존재하는 분산 서버로, 오리진 서버의 콘텐츠를 캐싱하고

인근 사용자에게 해당 콘텐츠를 전송하는 역할을 담당한다.

 

DNS 서버

DNS 서버는 클라이언트의 도메인 요청을 받을 때, 오리진 서버가 아닌 엣지 서버로 갈 수 있도록 IP 주소를 응답한다.

 


 

CDN의 작동 원리

CDN의 작동 원리는 다음과 같다!

  1. 클라이언트가 서버로 요청을 보낸다.
  2. DNS 서버는 클라이언트와 가장 가까운 엣지 서버의 IP 주소를 반환한다.
  3. 클라이언트는 반환한 엣지 서버의 IP 주소로 HTTP 요청을 보낸다.
  4. 엣지 서버는 요청된 콘텐츠가 캐시에 있는지 확인한다.
  5. 요청된 콘텐츠가 캐시에 있다면(Cache Hit), 캐시된 데이터를 클라이언트에게 반환한다.
    캐시에 없다면(Cache Miss), 엣지 서버가 오리진 서버로부터 콘텐츠를 받아 캐싱한 후 데이터를 클라이언트에게 반환한다.

 

캐싱 방식

  • 동적 캐싱
    • 요청마다 내용이 달라질 수 있는 콘텐츠를, 조건에 따라 짧은 시간 동안 엣지 서버에 캐싱하는 방식
  • 정적 캐싱
    • 동일한 요청에 대해 오리진 서버를 거치지 않고 엣지 서버에서 반복적으로 제공하는 방식
    • 정적 캐싱은 변경되지 않는 정적 콘텐츠를 엣지 서버에 미리 저장해둠

 


 

CDN 활용 예시

  • 실시간 스트리밍(Netflix, Hulu 등)
  • 온라인 게임(디바이스에 관계없이 플레이 가능)
    • 오리진 서버 - 사용자 데이터(게임 기록 등), CDN 서버 - 스테이지 파일, 애니메이션 리소스, BGM 등

 

👏

 

참고 링크

https://www.cloudflare.com/ko-kr/learning/cdn/caching-static-and-dynamic-content/

https://docs.tosspayments.com/resources/glossary/cdn

http://aws.amazon.com/ko/what-is/cdn/

'Computer Science > 네트워크' 카테고리의 다른 글

[Network] SSH(Secure SHell, 시큐어 셸)  (0) 2025.12.07
[Network] CORS(Cross-Origin Resource Sharing, 교차 출처 리소스 공유)  (0) 2025.08.10
[Network] REST / REST API / RESTful 이란?  (1) 2025.07.18
[Network] HTTPS(HyperText Transfer Protocol Secure)  (0) 2025.06.15
[Network] OSI 7계층, TCP/IP 4계층  (1) 2025.06.09
'Computer Science/네트워크' 카테고리의 다른 글
  • [Network] SSH(Secure SHell, 시큐어 셸)
  • [Network] CORS(Cross-Origin Resource Sharing, 교차 출처 리소스 공유)
  • [Network] REST / REST API / RESTful 이란?
  • [Network] HTTPS(HyperText Transfer Protocol Secure)
jjangsudiary
jjangsudiary
jjangsudiary 님의 블로그 입니다.
  • jjangsudiary
    jjangsudiary 님의 블로그
    jjangsudiary
  • 전체
    오늘
    어제
    • 분류 전체보기 (81) N
      • 이모저모 (0)
        • 회고 (0)
      • Development (17) N
        • 개발 공부 (14) N
        • 프로젝트 (2)
      • Android (10)
        • Compose (1)
      • AI (15)
      • Computer Science (25)
        • 네트워크 (8)
        • 데이터베이스 (10)
        • 운영체제 (6)
        • 자료구조 (0)
        • 컴퓨터구조 (1)
      • Java (9)
        • 디자인패턴 (2)
      • Spring (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    Ai
    인공지능
    baekjoon
    TensorFlow
    코딩 테스트
    java
    프로그래머스
    운영체제
    자바
    머신러닝
    db
    android
    안드로이드
    CS
    Python
    백준
    파이썬
    os
    딥러닝
    database
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
jjangsudiary
CDN(Content Delivery Network)이란?
상단으로

티스토리툴바