Edge Networking · CDN

Amazon CloudFront

사용자 가까운 edge location에서 콘텐츠를 전달하고 origin을 보호합니다

AWS Networking Services · First Call2026-10-17

Agenda

아젠다

  1. 서비스 개요
  2. 고객 과제
  3. 주요 이점
  4. 동작 방식
  5. 주요 기능
  6. 비교와 선택 기준
  7. 사용 사례와 아키텍처
  8. 고객 사례
  9. 비용
  10. 최근 업데이트
  11. 시작하기
  12. 다음 단계

Customer challenges

고객이 겪는 과제

먼 지역 사용자의 느린 응답

origin이 한 Region에만 있으면 멀리 있는 사용자의 요청은 여러 공용 네트워크를 거쳐 origin까지 가야 합니다. 이미지, 스크립트, 영상처럼 반복 요청되는 콘텐츠도 매번 origin에서 받아 페이지 로딩과 재생 시작이 늦어집니다.

트래픽 피크 때 origin 부하와 비용

신규 출시, 라이브 이벤트, 패치 배포 때 요청이 origin으로 몰립니다. 피크에 맞춰 서버와 대역폭을 미리 늘려 두어야 하고, 평소에는 그 용량이 남습니다.

인터넷에 직접 노출된 origin

사용자가 origin에 직접 접속하면 DDoS나 웹 공격도 origin에 바로 도달합니다. 공격을 origin 앞에서 거르려면 지역마다 보안 장비와 규칙을 따로 운영해야 합니다.

Overview

Amazon CloudFront

CloudFront는 사용자 요청을 지연 시간이 가장 낮은 edge location으로 보내고, 캐시에 없으면 origin에서 가져옵니다. edge와 AWS Region 사이는 AWS backbone 네트워크로 연결됩니다. 캐시 정책, 접근 제어, WAF, 엣지 함수를 distribution 단위로 설정합니다.

750+
POP(edge location), 50개 이상 국가 100개 이상 도시
15
Regional Edge Cache
1,140+
통신사 네트워크 안의 embedded POP
1 TB
매월 무료 인터넷 데이터 전송 (pay-as-you-go 상시 무료 사용량)

Benefits

왜 CloudFront를 쓰나요

Performance

지연 시간 감소

요청은 지연 시간이 가장 낮은 edge location으로 라우팅되고, 캐시에 있으면 바로 응답합니다. 캐시에 없더라도 AWS backbone을 거쳐 origin에 연결되어 거치는 네트워크 수가 줄어듭니다.

Offload

origin 부하와 비용 감소

캐시 적중이 늘수록 origin으로 가는 요청이 줄어듭니다. S3, ELB, API Gateway 같은 AWS origin에서 CloudFront로 가져오는 데이터 전송은 무료입니다.

Security

edge에서 먼저 막는 보안

AWS WAF, AWS Shield, TLS, signed URL/cookie, geo restriction을 edge에서 적용합니다. OAC와 VPC origin으로 origin을 CloudFront 뒤에 숨길 수 있습니다.

How it works

동작 방식

  1. 1

    요청 흐름 — edge location → Regional Edge Cache → origin

    DNS가 요청을 가장 적합한 POP로 보내고, 캐시에 없으면 POP는 보통 가까운 Regional Edge Cache를 확인한 뒤 origin에 요청합니다. PUT, POST, PATCH, OPTIONS, DELETE 같은 프록시 메서드와 동적 요청은 Regional Edge Cache를 거치지 않고 origin으로 바로 갑니다.

  2. 2

    cache key와 정책

    cache policy는 cache key에 넣을 헤더, 쿠키, query string과 TTL을 정합니다. origin request policy는 cache key에는 넣지 않고 origin에만 전달할 값을 정하므로, 두 정책을 분리해 cache hit ratio를 유지합니다.

  3. 3

    cache behavior

    cache behavior는 경로 패턴별로 어떤 origin과 정책을 쓸지 정합니다. 기본 TTL은 24시간이고 최솟값은 0초입니다.

  4. 4

    edge 보안

    AWS WAF web ACL을 distribution에 연결해 요청이 origin에 닿기 전에 차단합니다. S3는 OAC로, ALB·NLB·EC2는 VPC origin으로 CloudFront를 거쳐서만 접근하도록 제한합니다.

Key features · 1/3

주요 기능

Cache policy · Origin request policy

cache key 구성과 TTL, 압축 객체 캐싱을 cache policy로 관리합니다. origin에만 필요한 헤더, 쿠키, query string은 origin request policy로 따로 전달합니다. 두 정책 모두 AWS managed policy를 제공합니다.

Origin Access Control (OAC)

S3 origin에 서명된 요청을 보내 bucket을 CloudFront로만 열어 둡니다. 모든 Region의 bucket, SSE-KMS, PUT·DELETE 요청을 지원하며 기존 OAI 대신 OAC 사용을 권장합니다.

CloudFront Functions · Lambda@Edge

CloudFront Functions는 cache key 정규화, 헤더 조작, URL rewrite, JWT 검증 같은 가벼운 작업을 viewer 단계에서 처리합니다. 네트워크 호출, 외부 라이브러리, request body 접근이 필요하면 Lambda@Edge를 씁니다.

Origin Shield

Regional Edge Cache 앞에 캐시 계층을 하나 더 두어 같은 객체 요청을 모아 origin에 보냅니다. origin과 지연 시간이 가장 낮은 Region을 골라 origin별로 켜며, 별도 요금이 붙습니다.

Key features · 2/3

주요 기능

Continuous deployment

staging distribution과 continuous deployment policy로 실제 트래픽 일부를 새 설정에 보내 검증합니다. 문제가 없으면 primary distribution으로 promote합니다.

AWS WAF 통합

콘솔의 one-click protection은 web ACL을 만들고 OWASP Top 10 등 일반 위협 방어 규칙을 distribution에 연결합니다. 직접 만든 web ACL을 연결할 수도 있습니다.

Mutual TLS (viewer · origin) 2025-11

viewer mTLS는 edge에서 클라이언트 X.509 인증서를 trust store로 검증하며 Required, Optional, Passthrough 모드를 지원합니다. 2026년 2월부터 origin mTLS로 origin이 자기 distribution의 요청만 받도록 할 수 있습니다.

Cache tag invalidation

origin이 응답 헤더로 붙인 태그를 기준으로 경로와 상관없이 관련 객체를 한 번에 무효화합니다. distribution에 CacheTagConfig를 설정해야 하며 객체당 태그는 최대 50개입니다.

Key features · 3/3

주요 기능

Lambda Web Functions origin 2026-10

AWS Lambda Web Functions를 CloudFront origin으로 설정해 웹 애플리케이션을 edge 네트워크로 전달합니다. OAC를 적용하면 Lambda Web Function은 CloudFront를 통해서만 접근할 수 있고, 기존 인증 흐름도 그대로 동작합니다. 추가 비용은 없습니다.

Compare

CloudFront Functions vs Lambda@Edge

항목CloudFront FunctionsLambda@Edge
언어JavaScript (ECMAScript 5.1 호환)Node.js, Python
이벤트viewer request, viewer responseviewer request/response, origin request/response
규모초당 수백만 요청까지Region당 초당 10,000 요청까지
실행 시간1ms 미만최대 30초
최대 메모리2 MB128 MB (viewer), 10,240 MB (origin)
코드 크기10 KB50 MB
네트워크 · 파일 시스템 · request body지원하지 않음지원
KeyValueStore지원 (JavaScript runtime 2.0)지원하지 않음
위치·디바이스 데이터지원origin 이벤트에서만 지원

Use cases

사용 사례

정적 웹사이트 가속

이미지, CSS, JavaScript 같은 정적 콘텐츠를 S3에 두고 CloudFront로 전 세계에 전달합니다. OAC로 bucket 직접 접근을 막습니다.

동적 콘텐츠와 API 가속

캐시하지 않는 동적 요청과 API 호출도 edge에서 TLS를 종료하고 AWS 글로벌 네트워크로 origin까지 전달합니다. gRPC와 WebSocket을 지원합니다.

VOD · 라이브 영상 스트리밍

MPEG DASH, Apple HLS, CMAF 등으로 패키징한 영상을 HTTP origin에서 받아 전달합니다. AWS Elemental MediaConvert, MediaPackage 같은 AWS Media Services와 함께 씁니다.

소프트웨어 · 게임 패치 · OTA 업데이트 배포

대용량 설치 파일, 게임 패치, IoT 기기의 OTA 업데이트를 edge 캐시에서 내려보내 배포 시점의 origin 부하를 줄입니다.

Reference architecture

정적 사이트 — S3 + OAC

사용자 요청이 CloudFront를 거쳐 S3 bucket으로 가는 정적 웹사이트 흐름
AWS 문서의 보안 정적 웹사이트 예시입니다. 그림에는 표기되지 않았지만 문서의 구성은 OAC로 S3 접근을 제한합니다.
출처: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/getting-started-secure-static-website-cloudformation-template.html

S3 bucket을 비공개로 두고 OAC로 CloudFront만 bucket에 접근하게 합니다. 콘솔에서 recommended origin settings를 고르면 OAC와 bucket policy가 자동으로 설정되고, 생성 단계에서 AWS WAF 보호를 켤 수 있습니다. S3 website endpoint는 OAC를 쓸 수 없으므로 REST endpoint를 origin으로 씁니다.

Reference architecture

동적 애플리케이션 — ALB in private subnet + VPC origin + WAF

CloudFront가 VPC origin으로 두 리전의 private subnet ALB와 EC2에 연결하는 구성
같은 VPC origin 구성(CloudFront → VPC origin → private subnet의 ALB)을 두 리전에 적용한 AWS 블로그 예시입니다. WAF는 그림에 없습니다.
출처: https://aws.amazon.com/blogs/networking-and-content-delivery/building-multi-region-active-active-architectures-with-cloudfront-vpc-origins-and-advanced-routing/

ALB를 private subnet에 두고 VPC origin으로 연결해 CloudFront를 유일한 진입점으로 만듭니다. origin security group은 CloudFront managed prefix list나 CloudFront-VPCOrigins-Service-SG에서 오는 트래픽만 허용합니다. distribution에 WAF web ACL을 연결해 edge에서 요청을 거릅니다.

Customer stories

고객 사례

PBS

미디어 · 방송

PBS Interactive는 스트리밍 영상 대부분을 CloudFront로 전달하며, iPhone·iPad 앱용 모바일 영상도 CloudFront로 제공합니다.

JioSaavn

음악 스트리밍

인도 음악 스트리밍 서비스 JioSaavn은 CloudFront로 전 세계 고객에게 음악과 영상을 매일 15 PB 전달합니다.

Supercell

모바일 게임

Supercell은 CloudFront, ElastiCache, API Gateway, Lambda로 동적 웹 콘텐츠를 전 세계에 전달하고, edge location을 활용해 지연 시간을 줄입니다.

Pricing · 1/2

비용 항목

distribution별로 pay-as-you-go 또는 flat-rate pricing plan을 선택합니다. pay-as-you-go는 데이터 전송량과 요청 수 중심으로 과금하고, flat-rate plan은 CDN·WAF·DDoS 방어·Route 53 DNS 등을 묶어 월 고정 요금으로 과금하며 초과 요금이 없습니다.

인터넷 데이터 전송 (DTO)
edge에서 viewer로 나가는 데이터를 지역별 구간 요금으로 과금합니다. AWS origin에서 CloudFront로 가져오는 전송은 무료입니다.
origin 방향 데이터 전송
POST, PUT 등 CloudFront에서 origin으로 보내는 데이터를 지역별로 과금합니다.
HTTP/HTTPS 요청
요청 수를 지역별로 과금합니다.
부가 기능
invalidation(매월 첫 1,000개 경로·태그 이후), real-time log, CloudFront Functions, KeyValueStore, Lambda@Edge, Origin Shield, field-level encryption, dedicated IP SSL, Anycast static IP, distribution tenant는 기능별로 따로 과금합니다.

단가는 리전마다 다릅니다. https://aws.amazon.com/cloudfront/pricing/

Pricing · 2/2

비용 항목

상시 무료 사용량
매월 인터넷 데이터 전송 1 TB, HTTP/HTTPS 요청 1,000만 건, CloudFront Functions 호출 200만 건, KeyValueStore 읽기 200만 건, distribution tenant 10개가 무료입니다.
Flat-rate pricing plan
Free, Pro, Business, Premium 플랜이 있고 플랜마다 요청 수·데이터 전송 사용량 기준과 S3 스토리지 크레딧이 정해져 있습니다. 사용량 기준은 hard limit이 아니며 초과 요금은 없습니다. WAF가 차단한 요청과 DDoS 공격 트래픽은 사용량에 포함되지 않습니다.
CloudFront Security Savings Bundle
1년 기간 월 사용 금액을 약정하면 최대 30%를 절감하며, 약정 금액의 10%까지 AWS WAF 사용이 포함됩니다.

단가는 리전마다 다릅니다. https://aws.amazon.com/cloudfront/pricing/

What's new

최근 업데이트

Getting started

시작하기

  1. 1

    origin과 접근 경로 정하기

    S3는 OAC, ALB·NLB·EC2는 VPC origin을 우선 검토해 origin을 직접 노출하지 않습니다. VPC origin은 gRPC와 Lambda@Edge origin 트리거를 지원하지 않으니 요구 사항과 맞는지 확인합니다.

  2. 2

    cache behavior와 정책 나누기

    정적 경로와 API 경로를 behavior로 나누고 각각 cache policy와 origin request policy를 붙입니다. cache key에는 꼭 필요한 값만 넣어 cache hit ratio를 높입니다.

  3. 3

    edge 보안 적용

    AWS WAF web ACL, HTTPS 강제, geo restriction, signed URL/cookie 필요 여부를 정합니다. 클라이언트 인증이 필요하면 viewer mTLS를 검토합니다.

  4. 4

    edge 로직과 origin 보호 계층 선택

    헤더·URL 처리 같은 가벼운 작업은 CloudFront Functions, 외부 호출이 필요하면 Lambda@Edge를 씁니다. 여러 지역 사용자가 같은 origin을 많이 호출하면 Origin Shield를 검토합니다.

  5. 5

    배포·운영과 요금 모델 정하기

    설정 변경은 continuous deployment로 일부 트래픽에서 먼저 검증합니다. 사용량 패턴에 따라 pay-as-you-go와 flat-rate plan 중 하나를 고르며, flat-rate plan은 continuous deployment와 real-time log를 지원하지 않습니다.

Next steps

다음 단계

Getting started 튜토리얼 따라 하기

S3 bucket과 OAC를 쓰는 standard distribution을 콘솔에서 만들어 보고 동작을 확인합니다.

flat-rate plan 검토

CDN, WAF, DDoS 방어, Route 53 DNS를 묶은 Free, Pro, Business, Premium 플랜과 사용량 기준을 확인하고, 미지원 기능이 요구 사항에 있는지 봅니다.

Pricing Calculator로 pay-as-you-go 비용 추정

지역별 데이터 전송량과 요청 수를 넣어 월 비용을 추정하고 flat-rate plan과 비교합니다.

대표 서비스 하나로 PoC 진행

트래픽이 많은 도메인 하나에 distribution을 붙여 cache hit ratio, 응답 시간, origin 요청 수 변화를 측정합니다. 측정 결과로 cache behavior와 정책을 조정합니다.

Resources

참고 자료

Q&A