All Articles

CDN이란

CDN 이란

CDN(Contents Delivery Network)로 지리적 물리적으로 떨어져 있는 사용자에게 컨텐츠를 더 빠르게 제공할 수 있는 기술을 말합니다.

느린 응답속도, 다운로딩 타임을 극복하기 위한 기술입니다.

예를 들면, 내 홈페이지가 한국에 있고, 카페24의 서버에 호스팅되어 있다고 하자. 그 호스팅된 서버에 내 홈페이지 이미지가 있고 미국에 거주하는 이용자가 그 홈페이지에 접속했을 때, 서버는 미국 이용자의 요청을 받아서 이미지를 한국에 있는 서버에서 호출하고 보여주게 됩니다.

미국과 한국 사이는 물리적 거리가 멀기 때문에 어느 정도의 시간 지연이 발생하는데, 이를 보완하기 위해 CDN 서비스는 서버 자체를 여러 곳에 두고 이용자가 요청했을 때 제일 근접한 서버에서 처리함으로써 지연되는 시간을 줄여 줍니다.

요약을 해보면, 사용자가 원격지에 있는 서버(Origin Server)로 부터 Content(비디오, 음악, 이미지, 문서 등)을 다운로드 받을 때 가까이 있는 서버에서 받는 것보다 시간이 오래 걸립니다. 그러므로 사용자와 가까운 곳에 위치한 Cache Server에 해당 Content를 저장(캐싱)하고 Content 요청 시에 Cache Server가 응답을 주는 기술입니다.


CDN 장점

  • 웹사이트 로딩 속도 개선

  • 인터넷 회선 비용 절감

  • 컨텐츠 제공의 안정성

  • 웹사이트 보안 개선


CDN을 사용하지 않는 경우,

콘텐츠를 담고 있는 서버(Origin Server)들은 모든 사용자의 요청에 일일이 응답해야 합니다.

이는 막대한 트래픽을 유발하고, 트래픽이 과도하게 증가하거나 부하가 끊임없이 들어오는 경우 장애가 발생할 확률도 큽니다.

그렇기 때문에 CDN을 사용함으로써 서버의 트래픽 부하 및 비용을 줄이고 사용자에게 빠른 서비스를 제공합니다. 장애 확률도 낮춰 줄 수 있습니다.


CDN의 작동원리

  1. 최초 요청은 서버로부터 컨텐츠를 가져와 고객에게 전송하며, 동시에 CDN 캐싱장비에 저장한다.

  2. 두번째 이후 모든 요청은 CDN 업체에서 지정하는 해당 컨텐츠 만료 시점까지 CDN 캐싱장비에 저장된 컨텐츠를 전송한다.

  3. 자주 사용하는 페이지에 한해서 CDN 장비에서 캐싱이 되며, 해당 컨텐츠 호출이 없을 경우 주기적으로 삭제된다.

  4. 서버가 파일을 찾는 데 실패하는 경우 CDN 플랫폼의 다른 서버에서 콘텐츠를 찾아 엔드유저에게 응답을 전송한다.

  5. 콘텐츠를 사용할 수 없거나 콘텐츠가 오래된 경우, CDN은 서버에 대한 요청을 프록시로 작동하여 향후 요청에 대해 응답할 수 있도록 새로운 콘텐츠를 저장한다.



참고