IT 기초/Security

CDN(Content Delivery Network)

데이터 세상 2021. 12. 27. 18:03

CDN

  • Content Delivery Network
  • 콘텐츠를 효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템
  • 인터넷 서비스 제공자에 직접 연결되어 데이터를 전송하므로, 콘텐츠 병목을 피할 수 있는 장점
  • 목적은 높은 사용성과 효율로 사용자에게 컨텐츠를 전달
  • Content: 웹 요소 (텍스트, 그래픽, 스크립트), 다운로드 가능한 요소 (미디어 파일, 소프트웨어, 문서), 애플리케이션 (전자상거래, 포털), 실시간 미디어, 주문형 스트리밍, 그리고 소셜 네트워크 

 

보안

https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html

  • AWS CloudFront
  • 보안 구성 및 콘텐츠에 대한 액세스 제한
  • 서명된 URL과 서명된 쿠키를 사용하여 프라이빗 콘텐츠 제공

 

CDN 캐싱 방식

https://cdn.hosting.kr/cdn%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80%EC%9A%94/

Static Caching

  • 사용자의 요청이 없어도 Origin Server에 있는 Content를 운영자가 미리 Cache Server에 복사함
  • 따라서 사용자가 Cache Server에 접속하여 Content를 요청하면 무조건 그 Content는 Cache Server에 있음! (100% Cache Hit)
  • 대부분의 국내 CDN에서 이 방식을 사용함 (예. Pooq 동영상 스트리밍/다운로드, NCSOFT 게임파일 다운로드 등)

Dynamic Caching

  • 최초 Cache Server에는 Content가 없음
  • 사용자가 Content를 요청하면 해당 Content가 있는지 확인하고, 없으면(Cache Miss) Origin Server로 부터 다운로드 받아(Cache Fill) 사용자에게 전달해 줌
  • 이후 동일 Content를 요청 받으면 저장(캐싱)된 Content를 사용자에게 전달(Cache Hit)
  • 각 Content는 일정 시간(TTL)이 지나면 Cache Server에서 삭제될 수 있고, 혹은 Origin Server를 통해 Content Freshness 확인 후에 계속 가지고 있을 수 있음
  • Akamai, Amazon과 같은 Global CDN 업체, 그리고 Cisco나 ALU의 통신사업자향 CDN 장비 솔루션에서 이 방식을 지원

 

CDN 이점

성능

  • 온라인 콘텐츠가 빠르게 전송되는 것을 의미

가용성

  • 가용성이란 사용자 트래픽 급증, 간헐적인 급등, 잠재적인 서버 중단과 같은 극심한 상황에서도 엔드유저에게 콘텐츠를 제공할 수 있는 역량을 의미

보안

  • DDoS 공격과 웹 기반 악용(SQL 인젝션(SQLi), 크로스 사이트 스크립팅(XSS), 로컬 또는 리모트 파일 인클루전(RFI) 공격 등)이 점점 늘어가는 추세
  • DDoS 공격으로 주의를 돌린 후 더욱 심각한 손실을 유발하는 다른 악용 공격을 가하는 사례 또한 늘어가고 있음
  • 두 가지 유형의 공격 모두, 정상 트래픽에서 악성 트래픽을 구별하기가 쉽지 않은 경우가 대부분이며 시간이 지나면서 전략이 급속도로 진화하기 때문에 방어 전략을 최신 상태로 유지하기 위해서는 상당히 많은 전용 보안 리소스가 필요

인텔리전스

  • 전 세계의 엔드유저 연결, 디바이스 유형, 브라우징 경험에 대해 막대한 데이터를 생성. 이러한 데이터를 고객에게 제시함으로써 고객의 사용자 기반에 대한 유용하고 중요한 인사이트와 인텔리전트를 제공

 

CDN의 전송방식

https://aws.amazon.com/ko/caching/cdn/

서버 클러스터의 위치가 정해지면 CDN은 컨텐츠의 복사본을 이들 클러스터에 저장한다.

CDN은 클러스터마다 모든 비디오의 복사본을 전부 유지하지 않는다.

그 이유는 어떤 비디오는 인기가 거의 없거나 일부 특정 국가에서만 인기가 있을 수 있기 때문이다.

그래서 저장공간이 가득 차면 자주 사용되지 않는 비디오 데이터는 삭제된다.

 

Enter Deep

  • Akamai에 의해 만들어진 것
  • 서버 클러스터(여러 대의 독립된 컴퓨터를 묶어서 하나의 시스템처럼 동작하게 하는 것)를 세계 곳곳의 접속 네트워크에 구축하는 것이다.
  • Akamai는 약 1700개의 지점에 서버를 구축함으로써 이 방식을 구현했다. 
  • 장점:  사용자가 경험하는 처리 속도가 향상된다.
  • 단점: 고도로 분산된 설계로 인해 관리 비용이 커진다.

Bring Home

  • Limelight나 다른 CDN 회사들에 의해 취해진 것으로 보다 적은 수의 지점에 상대적으로 큰 규모의 서버 클러스터를 구축하고 이들을 고속의 회선으로 연결하는 개념이다.
  • 장점: Enter Deep보다 클러스터 유지 및 관리 비용이 적다.
  • 단점: 사용자가 느끼는 속도는 상대적으로 나빠진다.
반응형

'IT 기초 > Security' 카테고리의 다른 글

[Security] DDoS-SYN Flooding  (0) 2021.12.27
[Security] SSL  (0) 2021.12.27
[Security] UTM(Unified Threat Management)  (0) 2021.12.27
[Security] SQL Injection  (0) 2021.12.27
[Security] DDoS Attack  (0) 2021.12.27