CDN이란?

CDN(Content Delivery Network)는 파일,이미지,영상 등을 먼 지역까지 고속으로 전송할 수 있는 개념이라고 이해하면 될 거 같다.

기존 서비스들이 국내나 특정 국가 뿐 아니라 전 세계를 대상으로 하면서 이 기술이 필요하게 되었는데, 비교적 원리는 간단하다.

“물리적 제약을 최소화(=서비스와 엔드유저 간 거리를 줄이는 것)”

image “네트워크 엣지 즉 CDN Server로 콘텐츠를 캐싱하며 지역별 분산화를 통해 전세게로 빠르게 전달한다.”

CDN 사용의 장점

1. 웹 사이트 로드 시간 개선 

   캐싱을 통해 각 지역별 CDN 서버로부터 데이터를 받기 때문에, 물리적 거리가 줄어들어 당연히 로드 시간은 개선될 것이다.

2. 트래픽 분산

   각 지역 서버로 트래픽이 나눠지기 때문에 웹 사이트는 더 많은 트래픽을 견딜 수 있다.

3. 호스트 서버의 전송비용 절감 

  캐싱을 최적화 한다면, 호스트 서버가 보낼 데이터양은 CDN 서버가 없을 때보다 확실히 줄어들 것이다.

4. 보안 최적화

“분산 서비스 거부(DDoS) 공격은 대량의 가짜 트래픽을 웹 사이트로 전송하여 애플리케이션이 작동 중지되도록 만들려고 시도합니다. CDN은 여러 중간 서버 간에 로드를 분산하여 오리진 서버에 미치는 영향을 줄임으로써 이러한 트래픽 급증을 처리할 수 있습니다.”

   이 부분은 잘 이해가 안되서 AWS내 CDN 문서를 긁어왔다. 아마 가짜 트래픽을 분산시켜 특정 서버에 집중시켜 다운되게 하는 DDoS를 예방할 수 있다는 차원에서 쓴 걸로 보인다.

CDN 사용 예시

넷플릭스 , NC소프트나 카카오게임즈 등이 주로 이용하고 있다고 한다. 

References

https://www.cloudflare.com/ko-kr/learning/cdn/what-is-a-cdn/

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