Global CDN 서비스 소개

네이버 클라우드 Global CDN 서비스의 개념과 기본 구조를 설명합니다.

네이버 클라우드 플랫폼 Global CDN

Global CDN은 전 세계 거점에 위치한 캐시 서버를 통해 사용자에게 빠르고 안전하게 콘텐츠를 전송하는 서비스입니다. 네이버 클라우드 플랫폼에서 제공하는 Global CDN 상품을 통해 간단한 설정으로 전 세계 수십만 대의 캐시 서버를 활용하여 대용량 파일 전송 속도 품질을 향상시킬 수 있으며, 대규모 트래픽에도 원본 서버 부하를 줄이고 사용자에게 안정적으로 서비스할 수 있습니다.

Global CDN의 주요 기능 소개

  1. Global 콘텐츠 전송

    전 세계 120여 개 국가에 위치한 1,500개 이상의 네트워크에 분산된 21만 대 이상의 캐싱 서버를 활용하여 사용자와 가까운 캐시 서버가 원본 서버보다 빠르게 콘텐츠를 전송할 수 있습니다. 캐시 서버들이 원본 서버로부터 콘텐츠를 캐싱함으로써 원본 서버 부하를 줄이고 대규모의 트래픽을 처리할 수 있습니다.

  2. 다양한 원본 서버 지원

    Global CDN을 통해 콘텐츠를 전송하려면 원본 서버로 접근하여 콘텐츠를 캐시하고 전송해야 합니다. Global CDN은 HTTP/HTTPS 프로토콜을 통해 다양한 원본 서버와의 콘텐츠 연동을 지원합니다. 원본 서버로 고객이 보유 중인 다양한 웹 서버 및 네이버 클라우드 플랫폼의 Object Storage, Server를 설정할 수 있으며, 연결을 위한 포트를 자유롭게 지정할 수 있습니다.

  3. 강력한 콘텐츠 전송 보안

    많은 브라우저에서 웹 서비스를 HTTPS로 할 경우 콘텐츠가 HTTP로 호출되면 보안 경고 문구를 보여주고 있습니다. Global CDN에서는 HTTPS 프로토콜로 콘텐츠 전송이 가능합니다. HTTP도 사용 가능하며 2가지를 혼용하거나 HTTPS만 사용하기 위해 HTTP을 제한할 수도 있습니다. HTTPS 프로토콜을 선택할 경우 원본 서버와도 HTTPS로 통신하여 전체적인 콘텐츠 전송의 경로에서 보안이 강화됩니다. 레퍼러로 등록된 도메인 기준 접근 허용 기능을 제공하며 Secure-Token 기반의 보안 URL로 콘텐츠 접근을 제한할 수 있습니다.

  4. 고속 Purge 기능

    동일한 콘텐츠명으로 원본 콘텐츠 변경 시 전 세계에 분산된 캐시 서버에 이를 즉각적으로 반영하기 위해 고속 Purge를 제공합니다. 전 세계 수십만 대의 캐시 서버에 저장되어 있는 콘텐츠를 수 초 이내 Purge를 수행하여 삭제합니다. 캐시 삭제 후 사용자 요청에 의하여 새로운 콘텐츠를 원본으로부터 가져와 캐싱하여 제공하며 이는 콘텐츠의 신뢰성을 보장할 수 있습니다.

※ Global CDN은 국내 및 중국내 서비스에 대한 품질을 보장하지 않습니다.

  • 국내 서비스는 CDN 서비스를 이용하세요.
  • 중국에서 CDN 서비스를 제공하려면 ICP(Internet Content Provider) license가 필요합니다.

자세한 내용은 고객지원에 문의하세요.

Global CDN 관련 용어 정리

용어 설명
서비스 도메인 서비스에서 콘텐츠 전송 시 사용자에게 노출되는 도메인을 의미. Global CDN 구성 후 이 도메인을 서비스 내에 링크해야 Global CDN을 통해 콘텐츠를 캐싱하여 전송
원본 Global CDN은 사용자 요청에 의하여 콘텐츠를 캐싱/전송하며, 캐싱의 콘텐츠를 가져오기 위한 서버
Caching 사용자 요청에 의해 요구되는 콘텐츠를 빠르게 제공하기 위해 캐시 서버에 저장
Cache Expiry CDN에서 캐싱된 콘텐츠가 원본 서버에서 변경되었는지 여부를 확인하는 주기를 지정
HIT 접속자가 요청한 콘텐츠가 유효한 형태로, CDN 캐시 서버에 있어 접속자의 요청에 대해서 바로 응답할 때 “Cache Hit”이라고 함
MISS 요청한 콘텐츠가 CDN 캐시서버에 없을 경우 원본 서버로부터 콘텐츠를 전송 받은 후 서버에 저장하게 되는 경우를 ‘MISS’라고 함. 이전에 요청된 이력이 없거나 유효 시간이 만료된 경우, 요청되었지만 응답한 적이 없거나 캐시를 하지 않도록 설정했을 경우에만 발생함.
BYPASS 원본 서버 응답 헤더에 Set-Cookie헤더가 있거나, Cache-Control 헤더에 private, no-cache, max-age=0 등의 내용이 있는 경우 CDN서버에서 캐싱하지 않고 접속자에게 전달하는 것을 의미함.
Ignore Query String CDN 서비스가 원본 서버에 요청할 때 ?id=1234와 같이 URL에 포함된 GET 파라미터를 제거한 후에 요청
Referrer Domain 콘텐츠가 지정된 도메인에만 제공되므로 다른 사이트에서 참조되는 것을 방지함. 도메인은 www.domain.com 또는 *.domain.com 형식을 지원하며, 숫자, 영문자, "*", "-", "."만 사용 가능.
Secure Token QueryString 기반의 Secure Token을 활용하여 허용된 접근에만 콘텐츠를 전달

Global CDN 신청

Global CDN 신청

Global CDN 서비스를 신청하려면 CDN 신청 버튼을 클릭합니다.

서비스 설정

서비스 이름, 서비스 프로토콜, 서비스 도메인을 설정합니다. 설정하기 전에 각 항목의 ? 버튼을 클릭하여 도움말을 참고하시기 바랍니다

① 신청하고자 하는 Global CDN 서비스 이름을 입력합니다.

② 서비스 프로토콜을 선택합니다. 서비스 프로토콜로 HTTPS, HTTP/HTTPS 선택 시 추가 안내 사항을 확인합니다. HTTPS 적용 시 원본에서도 HTTPS로 응답해야 합니다.

  • 참고: HTTPS 혹은 HTTP/HTTPS 프로토콜 선택 시 안내 사항

③ 서비스 도메인을 선택합니다.

  • CDN 도메인을 사용할 경우, 기본적으로 [서비스ID].gcdn.ntruss.com 형태로 자동 발급됩니다.
  • 고객 보유 도메인을 사용할 경우, 소유하고 있는 도메인을 직접 입력합니다.
  • 고객 보유 도메인은 최대 50개까지 지원합니다.

④ Access Log 저장 여부를 선택합니다.

  • CDN으로 요청 온 Log를 사용자의 Object Storage에 저장할 수 있습니다. Log를 저장하기 위해서는각 스토리지별로 저장소를 생성해야합니다. Object Storage에서 Bucket을 생성해야 합니다.
  • 1시간 간격으로 요청된 Log 데이터를 압축 포맷(gz)으로 저장합니다. Log를 저장하면 매 시 20분 이후 이전 시각의 Log 확인 가능합니다.
  • 저장되는 Log의 형태는 아래와 같으며, 각 항목은 공백으로 구분합니다. 데이터가 없는 경우에는 "-"으로 표시합니다.
예시:
211.249.40.9 - - [09/Feb/2018:03:50:01 +0000] "GET /nrbjdrlsuogw479257.gcdn.ntruss.com/sample_mv.mp4 HTTP/1.1" 200 20444604 "-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2" "-"
항목 설명
client_ip Client IP
- - 미사용 값 (-)
[date] 요청 일자/시간
"http_method arl_stem HTTP/1.1" http 요청 method와 URI, HTTP 버전
status_code 응답코드 (2xx, 3xx, 4xx 등)
total_bytes 서버에서 Client에 응답한 전체 용량(bytes)
"referrer" 요청시 referer
"user_agent" Client의 user-agent
"cookie" 요청시 cookie 값

⑤ 설명을 입력합니다.

  • CDN 관련 설명을 입력할 수 있습니다. 필수 값이 아니므로 입력하지 않아도 됩니다.

원본 설정

원본 위치, 원본에 전달하는 Host 헤더, cache key Hostname, Gzip 압축 지원 여부를 설정합니다.

① Global CDN 서비스를 이용할 원본의 위치를 지정합니다.

  • 네이버 클라우드 플랫폼의 Object Storage를 이용할 경우, Public 권한이 부여된 Bucket을 미리 생성해야만 이용할 수 있습니다. 원본으로 Object Stroage 활용 시 CDN <-> Object Storage간에 발생하는 네트워크 전송요금은 무과금 처리됩니다.
  • 선택한 프로토콜에 따라 HTTP 포트 번호, HTTPS 포트 번호를 입력할 수 있습니다. 기본 설정 HTTP 포트는 80, HTTPS 포트는 443입니다.
  • HTTPS 적용 시 Global CDN에서 'man-in-the-middle(MITM)' 공격을 예방하기 위해 원본 서버의 인증서 유효 여부를 확인합니다. 아래와 같은 Certification Authority(CA)로부터 발급받은 인증서에 대해 유효성이 확인된 후 통신이 가능하니 참고 부탁드립니다.
Certificate Authority
VeriSign Class 4 Public Primary Certification Authority - G3
AddTrust External CA Root
Class 2 Primary CA
Network Solutions Certificate Authority
Entrust Root Certification Authority
thawte Primary Root CA
DigiCert Assured ID Root CA
QuoVadis Root CA 2 G3
GlobalSign Root CA
America Online Root Certification Authority 2
QuoVadis Root Certification Authority
QuoVadis Root CA 3
SwissSign Silver CA - G2
Certum CA
GlobalSign
SwissSign Gold CA - G2
SecureTrust CA
AffirmTrust Commercial
Go Daddy Root Certificate Authority - G2
Entrust Root Certification Authority - G2
Global Chambersign Root
thawte Primary Root CA - G3
Starfield Services Root Certificate Authority - G2
Baltimore CyberTrust Root
VeriSign Class 3 Public Primary Certification Authority - G5
VeriSign Universal Root Certification Authority
GeoTrust Global CA
AffirmTrust Premium
DigiCert High Assurance EV Root CA
QuoVadis Root CA 2
UTN-USERFirst-Hardware
Entrust.net Certification Authority (2048)
GeoTrust Primary Certification Authority
AffirmTrust Networking
GeoTrust Primary Certification Authority - G3
DST Root CA X3
COMODO Certification Authority
UTN - DATACorp SGC
VeriSign Class 3 Public Primary Certification Authority - G3
TC TrustCenter Class 2 CA II
Cybertrust Global Root
DigiCert Global Root CA
  • 주의: 원본으로 “원본 경로(선택)” 옵션을 이용하는 경우 서비스 경로가 다음과 같이 지정되니 참고 부탁드립니다.

     예시: 원본 경로(선택) 옵션을 활용할 경우 - 원본 서버에 /example/ 경로를 vhost root 경로로 설정한 경우
     * 원본 경로: http://origin.naver.com/example/logo.gif
     * Global CDN 서비스 경로: http://example.gcdn.ntruss.com/logo.gif (입력한 원본 경로는 제외됩니다)
    
  • 직접 입력할 경우, 원본 서버의 IP 주소나 도메인 이름을 입력하며, IP 주소보다는 도메인으로 설정하는 것을 권고합니다.

  • 원본 서버가 HTTP 프로토콜의 Default Port(80) 외에 서비스할 경우에는 포트 번호를 지정합니다. 원본 서버의 보안 정책에 따라 아래 표에 정의한 포트 번호를 사용할 수 있습니다.
72 80-89 443 488 591 777 1080
1088 1111 1443 2080 7001 7070 7612
7777 8000-9001 9090 9901-9908 11080-11110 12900-12949 45002

② 원본 위치에서 실제 서비스로 제공될 원본 파일이 위치한 디렉터리 위치를 추가로 지정합니다.

③ Global CDN에서 원본 서버로 요청 시 전달되는 Host Header 정보를 선택합니다.

  • 원본 서버에 Virtual Host 설정 시 Host 헤더 정보를 참고하여 응답 콘텐츠를 제어할 수 있습니다. Incoming Host Header는 사용자의 요청 시 전달되는 Host 정보를 원본 요청 시에도 사용합니다. 주로 웹 브라우저의 경우에는 서비스 도메인이 Host 헤더가 됩니다(예시: ex.gcdn.ntruss.com/img.jpg 요청 시 ex.gcdn.ntruss.com이 Host 헤더).
  • Origin Hostname으로 원본 서버에 Virtual Host 설정이 되어 이 도메인에 대해서만 허용할 경우 Origin Hostname 설정을 선택합니다.
  • 기본 설정 값은 서비스 도메인의 ‘Incoming Host Header’ 값을 활용합니다.

④ Global CDN의 콘텐츠를 Unique하게 식별할 Cache Key를 선택합니다.

  • 서비스 특성에 따라 적절한 Cackey Key를 선택하면 캐싱 효율이 좋아집니다. 서비스 도메인에 따라 콘텐츠는 개별 Cache Key로 구별됩니다. 서비스 도메인에 따라 전송하는 콘텐츠가 다를 경우, Incoming Host Header 값을 선택합니다.

    예시:
    http://sample.gcdn.ntruss.com/logo.gif의 cache key는 ‘sample.gcdn.ntruss.com’
    http://example.gcdn.ntruss.com/logo.gif의 cache key는 ‘example.gcdn.ntruss.com’으로 logo.gif는 다른 콘텐츠로 캐싱
    
  • 서비스 도메인은 다르지만 하나의 원본 Cache Key로 구별됩니다. 서비스의 원본 서버와 전송하는 콘텐츠가 동일하다면 ‘Origin Hostname’으로 설정하는 것이 좋습니다.

    예시:
    http://sample.gcdn.ntruss.com/logo.gif의 cache key는 ‘origin.gcdn.ntruss.com’
    http://example.gcdn.ntruss.com/logo.gif의 cache key는 ‘origin.gcdn.ntruss.com’으로 logo.gif는 하나의 콘텐츠로 캐싱
    

⑤ 원본의 압축 설정 여부를 선택합니다.

  • 콘텐츠를 압축하면 원본 서버의 트래픽을 줄이고 응답 속도를 개선할 수 있습니다. CDN에서 원본으로 “Accept-Encodgin: gzip” 요청하여 압축된 콘텐츠를 응답받을 수 있습니다. 원본에서 응답 시 Gzip 압축을 지원한다면 ‘사용’을 선택합니다.

⑥ 원본 요청 시 Header를 추가/변경하거나 삭제하여 요청할 수 있습니다.

  • Header의 이름과 값으로 다음의 문자열들은 입력할 수 없습니다 : "(),/:;<=>?@[]{}", 알파벳&숫자 외 문자, 공백(space)
  • Header 값으로 최대 입력할 수 있는 길이는 256byte입니다.
  • 예시) Action: Add, Header Name : NCP-Custom-Header, Header Value : ncp => NCP-Custom-Header: ncp

캐싱 설정

Global CDN의 캐싱 만료 시간과 Cache 관련 옵션을 설정합니다.

① Global CDN의 기본 캐싱 정책을 선택합니다.

  • 기본적으로 캐시 서버에 보관하는 기간은 원본 서버의 ‘Cache-Contorl: max-age=..’나 ‘Expires’ 헤더 값과 동일한 정책을 따르도록 합니다.
  • 원본에서 Cache를 조정하는 헤더를 응답하지 않을 경우 캐시 서버에서 얼마나 보관할지는 ‘Cache Expiry’ 설정값이 적용됩니다.
  • Cache 선택 시 캐시 서버에서는 ‘Cache Expiry’ 설정한 값이 최대 캐싱 기간으로 적용됩니다.
  • No-store/Bypass Cache 설정들은 CDN 서버에서 캐싱을 하지 않는 옵션으로 모든 요청이 원본을 통해 서비스되어 권고하지 않습니다.
  • 'Honor Origin Cache Control', 'Honor Origin Expires' 설정은 원본서버에서 응답하는 'Cache-Control: max-age=xx', 'Expires' 헤더 값에 따라 캐싱 규칙이 적용됩니다.

② Global CDN에서 원본과 통신이 어려울 경우의 동작 방식을 선택합니다.

  • 원본 서버와 통신이 되지 않았을 때 캐시 서버에 저장되어 있는 콘텐츠를 사용자에게 제공할 수 있습니다. 최신의 유효한 콘텐츠가 아닐 수도 있지만 원본 서버의 장애 시에도 서비스가 가능합니다.
  • 원본 서버 장애 시 유효하지 않은 콘텐츠가 전송되는 것이 서비스 영향이 있다면, 항상 원본 서버의 콘텐츠와 비교하여 최신의 유효한 콘텐츠를 제공하도록 선택합니다.

③ Cache expiry 설정을 합니다.

  • CDN 캐시 서버에서 캐싱된 콘텐츠가 원본 서버에서 변경되었는지 여부를 확인하는 주기를 지정합니다. 단, 원본 서버의 응답 헤더에 Cache-Control: max-age가 존재하면 해당 설정이 우선됩니다. 콘텐츠를 자주 업데이트하시는 경우에는 짧게 지정하여 설정합니다. 단, 짧게 지정하면 원본의 부하가 늘어나니 주의해서 사용합니다.

④ 서비스 요청 시 Query String을 사용할 경우에 대한 Cache 정책을 선택합니다.

  • 원본 서버로 요청 시 사용자 요청의 Query String을 포함할지 선택할 수 있습니다. 원본 서버에서 Query String에 따라 다른 콘텐츠를 응답할 경우 ‘사용 안함’으로 선택합니다.
  • 원본 서버에서 Query String에 관계없이 동일한 콘텐츠를 응답할 경우 ‘사용’으로 선택하여 캐싱 효율을 높이고 원본 요청과 부하를 줄일 수 있습니다.

⑤ 원본에서의 Vary 헤더 응답에 대한 Cache 정책을 선택합니다.

  • 만약 원본 서버에서 ‘Vary’ 헤더를 응답하지만 콘텐츠는 동일하다면 캐싱 효율을 위해 제거하는 것이 좋습니다. 원본에서 Vary 헤더를 응답하더라도 동일한 콘텐츠로 인식하기 위해 캐싱에서 제외할 수 있습니다.
  • 콘텐츠가 다양한 버전으로 가지고 있으며 User-Agent, Referer, Cookie 등의 Vary 요청 헤더에 따라 응답 콘텐츠가 달라질 경우 ‘사용’을 선택합니다.

⑥ 대용량 파일을 서비스할 경우 캐싱 효율을 위해 최적화 전송 옵션을 선택합니다.

  • 대용량 파일을 전송할 경우 2MB의 청크로 캐싱하며, 사용자가 다운로드를 완료하지 않고 일정 용량 이상이 남아있다면 더 이상 원본으로 요청하지 않아 원본 부하를 감소합니다. 적용을 위해서는 원본에서 Range 응답 설정이 필요합니다. 옵션 활용 시 콘텐츠명을 변경하지 않고 업데이트할 경우 콘텐츠 정합성을 위해 반드시 Purge 수행이 필요합니다.
  • 확장자는 ‘exe, bz2, dmz, gz, iso, mov, pkg, tar, tgz, wmv, wma, zip, webp, jxr, hhdp, wdp’ 대상이며, 용량은 100MB~16GB 사이 콘텐츠에 대해 적용할 수 있습니다.

Viewer 전송 설정

Global CDN에서 사용자에게 콘텐츠 전송 시의 제어 옵션을 설정합니다.

① Global CDN에서 사용자에게 콘텐츠 전송 시 압축 설정 여부를 선택합니다.

  • 사용자의 User-Agent(브라우저 혹은 Device)가 Gzip/Unzip을 지원할 경우 콘텐츠를 압축하여 사용자에게 전달합니다. 네트웍 품질이 낮은 사용자에게 압축 전송을 하면 응답 속도를 개선할 수 있습니다.

    HTML, JavaScript, 혹은 Text 기반의 10KB 이상 콘텐츠에 적용하는 것이 효과적입니다.

  • 원본 서버에서 콘텐츠 확장자 혹은 요청 헤더에 따라 압축/미압축 응답을 유연하게 적용하기 위해서는 ‘원본의 압축 설정과 동일하게 적용’을 선택합니다.

  • 이미지(jpg, png 등)나 동영상(mp4, flv 등), 혹은 이미 압축이 적용된 콘텐츠는 추가 압축을 적용하지 않는 것이 좋습니다. 이미 압축된 포맷의 콘텐츠만 서비스할 경우 사용안함을 선택합니다.

  • 압축 전송 사용 시, 대상 콘텐츠는 아래의 Mime Type에 적용됩니다.

     Text/html*, text/css*, application/x-javascript*, application/javascript*
    

② 사용자 요청 시 레퍼러에 따라 접근제어를 설정합니다.

  • 지정한 도메인의 레퍼러가 포함되거나 레퍼러가 없는 요청에 대한 접근 제어를 설정할 수 있습니다. 도메인 기반의 설정이므로 특수문자는 “*”, “-“, “_”가 허용되며, 와일드카드(*) 사용 시 하위 도메인에 대해서도 포함하여 접근제어 설정됩니다.
  • 기본적으로 레퍼러가 없는 경우에 대해서도 콘텐츠를 허용합니다. 등록한 레퍼러에 대해서만 허용하려면 '허용 안함'을 선택하세요.

③ Secure Token을 활용하여 허용된 요청에만 콘텐츠를 응답할 경우 선택합니다.

  • Secure Token을 생성하는 코드를 다운로드합니다(다운로드).

  • 다운로드한 파일의 압축을 풀면 java/, python/ 등의 각 언어별 폴더가 존재합니다. 사용하는 언어코드에 따라 선택하여 Secure Token을 생성할 수 있습니다.

  • Token 유효시간의 시작시간(st), 만료시간(exp), ACL(URL 경로조건)을 활용하여 인증 token을 생성하며, 생성된 token을 Query String으로 전달하는 설정 예시입니다.

    • JAVA Akamai_token_v2 Generator를 사용한 인증 Token 생성방법

      1. akamai_token_v2.java 파일을 javac로 compile를 합니다. (JDK가 사전에 설치 되어있어야 합니다.)
        $ javac akamai_token_v2.java
        
      2. Example에서 제공된 조건으로 Token을 생성합니다
        $ java AkamaiToken --token_name token --key abcd1234 --start_time now --window 600 --acl '/somedirectory/*' token=st=1470651175~exp=1470651775~acl=/somedirectory/*~hmac=db7d7a533f8f4f35c80e446707499b1d4d5 aea70b38e634b6cfed76e7818df2b
        
      3. Token을 포함한 최종 Request URL 생성 예제입니다.
        http://download.example.com/somedirectory/somefile.exe?token=st=1470651175~exp=1470651775~acl=/somedirectory/*~hmac= db7d7a533f8f4f35c80e446707499b1d4d5 aea70b38e634b6cfed76e7818df2b
        
    • Python akamai_token_v2 Generator를 사용한 인증 Token 생성방법

      1. Example에서 제공된 조건으로 Token을 생성합니다.
        $ python akamai_token_v2.py --token_name=token --key=abcd1234 --start_time=now --window=600 --acl='/somedirectory/*' token=st=1470651297~exp=1470651897~acl=/somedirectory/*~hmac=6fc0ebc8569f4e969d23c694e2ef8d9d282a 4b1d0fb93e81950981e04921ee13
        
      2. Token을 포함한 최종 Request URL 생성 예제입니다.
        http://download.example.com/somedirectory/somefile.exe?token=st=1470651175~exp=1470651775~acl=/somed irectory/*~hmac=db7d7a533f8f4f35c80e446707499b1d4d5aea70b38e634b6cfed76e7818df2b
        
      3. 특정 URL에 대한 Token 생성방법
        $ python akamai_token_v2.py --token_name=token --key=abcd1234 --start_time=now --window=600 --acl='/somedirectory/somefile.exe*' token=st=1470651297~exp=1470651897~acl=/somedirectory/somefile.exe*~hmac=6fc0ebc8569f4e969d23c694e2ef8d9d282a 4b1d0fb93e81950981e04921ee13
        
      4. Token을 포함한 최종 Request URL 예시
        http://download.example.com/somedirectory/somefile.exe?token=st=1470651175~exp=1470651775~acl=/somedirectory/somefile.exe*~hmac=db7d7a533f8f4f35c80e446707499b1d4d5aea70b38e634b6cfed76e7818df2b
        
  • st(startTime) 값에 관한 유의 사항: 고객의 Token 생성 서버의 시간이 CDN Edge 서버의 시간보다 2~4초 정도 빠를경우, Edge 서버에서 토큰의 시작 시간(st 값)이 “too early”로 인식되어 인증이 실패하는 경우가 발생할 수 있습니다. 이러한 경우를 방지하기 위하여, Token을 생성하는 메서드를 호출할 때 start_time 값을 현재 시간보다 10 초 빠르게 설정하고, end_time 값을 10초만큼 늘리는 것을 권장합니다. 무엇보다도 Token 생성을 하는 웹 서버의 시간을 NTP로 정확하게 동기화하는 것이 중요합니다.

④ 사용자 응답 시 Header를 추가/변경하거나 삭제하여 응딥할 수 있습니다.

  • Header의 이름과 값으로 다음의 문자열들은 입력할 수 없습니다 : "(),/:;<=>?@[]{}", 알파벳&숫자 외 문자, 공백(space)
  • Header 값으로 최대 입력할 수 있는 길이는 256byte입니다.
  • 예시) Action: Add, Header Name : Access-Control-Allow-Origin, Header Value : => 'Access-Control-Allow-Origin: '의 CORS 헤더를 Edge에서 응답하도록 설정 가능합니다

Global CDN 신청

  • [CDN신청]으로 CDN 설정이 시작되며 구성이 완료되면 ‘신청중’에서 ‘운영중’으로 상태가 변경됩니다.
    • CDN신청 후 글로벌 거점에 모두 구성되기까지 약 2시간 이상이 소요됩니다.

Global CDN 사용을 위한 도메인 등록

  • 네이버 클라우드 플랫폼에서 제공하는 도메인으로 사용할 경우에는 해당하지 않습니다.
  • 고객 보유 도메인을 서비스 도메인으로 신청한 경우, Global CDN을 신청하면 CDN 도메인 확인이 가능합니다.
  • 반드시, 운영하는 DNS 시스템 혹은 호스팅 업체에서 네이버 클라우드 플랫폼 도메인을 CNAME 설정해야 서비스에 사용할 수 있습니다.

예시)

  • 고객 도메인: sample.example.com
  • 네이버 클라우드 플랫폼 도메인: example.gcdn.ntruss.com
   sample.navercdn.com    600    IN CNAME    example.gcdn.ntruss.com.

Global CDN 관리하기

설정 변경

CDN 신청 시 설정한 내용을 변경할 수 있습니다.

① 설정을 변경할 CDN 서비스를 선택합니다.

설정변경 버튼을 클릭합니다.

③ 서비스 이름을 제외한 나머지 항목의 설정 변경이 가능합니다. 변경 사항에 대한 입력/선택이 완료되면 적용합니다.

  • 참고사항: 고객 도메인 사용 시 추가/삭제/변경 시 설정 적용을 위한 Global CDN 배포에 1시간 이상이 소요됩니다.

Purge

Purge는 캐시 서버에 저장된 콘텐츠를 삭제하는 기능으로 Global CDN에서 제공하는 고속 Purge를 이용할 수 있습니다.

① Purge 수행할 CDN 서비스를 선택합니다.

Purge 버튼을 클릭합니다.

③ 서비스의 모든 콘텐츠를 대상으로 한번에 Purge를 진행하는 ‘전체파일’과 특정 콘텐츠들만 Purge를 진행하는 ‘파일 직접 입력’ 중에 선택하여 적용합니다. 전체 파일에 대한 Purge는 최대 1시간이 소요될 수 있습니다.

Purge 로그

Purge를 수행한 이력을 확인할 수 있습니다.

① Purge 이력을 확인할 CDN 서비스를 선택합니다.

Purge 로그 버튼을 클릭합니다.

③ 최근 5회 동안 적용된 내역을 확인할 수 있습니다. 그러나 파일명이 잘못 입력된 경우에도 Purge는 성공으로 표시됩니다.

CDN 일시 정지

일시적으로 CDN 콘텐츠 전송을 중지할 수 있습니다.

① 일시 정지할 CDN 서비스를 선택합니다.

일시 정지 버튼을 클릭합니다.

③ 글로벌 거점에 대한 배포로 일시 정지까지 약 1시간 이상이 소요되며 일시정지가 완료되면 리스트에서 상태가 ‘운영중’에서 ‘정지’로 변경됩니다.

  • 참고사항: 고객 도메인 사용 시 도메인이 많을 경우 설정 적용을 위한 Global CDN 배포에 1시간 이상이 소요됩니다.

CDN 재시작/해지

일시적으로 콘텐츠 전송을 중지했던 CDN 서비스를 재시작하거나 해지할 수 있습니다. 상태가 ‘정지‘ 상태일 때만 수행 가능합니다.

① ‘정지’ 상태에서 재시작 또는 해지할 CDN 서비스를 선택합니다.

재시작 또는 CDN 해지 버튼을 클릭합니다.

③ 재시작 또는 CDN해지에는 약 1시간 이상이 소요되며 재시작이 완료되면 리스트에서 상태가 ‘정지’에서 ‘운영중’으로 변경됩니다. 해지가 완료되면 리스트에서 사라집니다.

  • 참고사항: 고객 도메인 사용 시 도메인이 많을 경우 설정 적용을 위한 Global CDN 배포에 1시간 이상이 소요됩니다.

모니터링

모니터링 선택

조회할 대상 서비스 이름과 기간을 선택하여 전송량, 요청수, Cache Hit율, 응답 코드의 통계 그래프를 확인할 수 있습니다. Global 캐시 서버로부터 데이터를 수집/가공의 통계 지연으로 약 12시간의 데이터는 정확하지 않을 수 있습니다. 모니터링 데이터 조회 기간 선택은 최소 1일부터 최대 3개월까지 가능하며, 조회 기간에 따른 데이터 분석 주기는 다음과 같습니다.

  • 한달 이내: 30분 주기
  • 한달 이상: 1시간 주기

모니터링 항목

① 트래픽(Mbps): Global CDN을 통해 전송된 데이터의 네트워크 대역폭

② 전송량(Bytes): Global CDN을 통해 전송된 데이터의 전송량(서비스 이용요금 산정의 기준)

③ 요청수(건): Global CDN으로 인입된 서비스 요청 수

④ 요청수 대비 Cache Hit(%): Global CDN의 요청 수와 원본으로 인입 된 요청수의 비율, Hit율이 높을 수록 캐시 서버 내 캐싱 콘텐츠 재사용이 높고 원본으로의 요청과 원본 부하가 감소됨

⑤ 응답 코드(건): Global CDN에서 사용자에게 응답한 코드(2xx, 3xx, 4xx, 5xx)별 수

통계

전송량과 요청수의 통계 데이터로 Global CDN 사용량을 확인할 수 있습니다.
조회 월의 1일~현재까지의 사용량 데이터를 확인할 수 있습니다.

  • 월 서비스 요금에 대한 데이터 취합 기준 안내
    • (전전월의 마지막 일 – 3일)부터 (전월의 마지막 일 – 4일)까지의 월 전송량 및 요청수 데이터의 합
    • (예시) 5월 서비스 요금 내역= 3월 28일부터 4월 26일까지의 전송량 및 요청수의 합
    • 자세한 내용은 Global CDN 요금 안내를 참고하시기 바랍니다.

통계 항목

① 트래픽(Mbps): Global CDN을 통해 전송된 데이터의 네트워크 대역폭

② 전송량(Bytes): Global CDN을 통해 전송된 데이터의 전송량(서비스 이용 요금 산정의 기준)

③ 요청수(건): Global CDN으로 인입된 서비스 요청 수

연관 정보 바로가기

아래 가이드에서 연관 정보를 확인할 수 있습니다.

""에 대한 건이 검색되었습니다.

    ""에 대한 검색 결과가 없습니다.

    처리중...