[네트워크] CDN이란?

2023. 1. 20. 21:35

 CDN(Content Delivery Network | Content Distribution Network)

나무위키에서 각 단어의 정의는 아래와 같다.

지리적 제약 없이 전 세계 사용자에게 빠르게 콘텐츠를 전송하는 기술을 의미한다.
프록시 서버에서 출발한 웹 캐시의 클라우드 화다.
  • 프록시 서버
    • 클라이언트와 서버 사이에서 데이터를 전달해 주는 서버
  • 캐시
    • 데이터나 값을 미리 복사해 놓는 임시 장소
  • 웹 캐시
    • 클라이언트가 웹에 접속할 때 정적 컨텐츠 (CSS, JS 등)을 특정 위치에 저장하여 동일한 요청이 들어올 때 저장한 파일을 사용해 빠른 응답 제공 가능, 네트워크 트래픽 감소
  • 클라우드
    • 원격지에 있는 컴퓨터와 근처에 있는 단말기 사이에 있는 수많은 통신장비 및 네트워크를 다 그리지 않고 구름 모양을 그려 설명
    • 컴퓨터 통신망이 복잡한 네트워크 및 서버 구성 등을 알 필요 없이 구름과 같이 내부가 보이지 않고, 어디에서나 구름 속의 컴퓨터 자원으로 자기가 원하는 작업을 할 수 있음
    • 동일한 것을, 인터넷이 연결된 어디에서나 보장

 

즉, CDN은 사용자가 본인으로부터 멀리 떨어져 있는 서버에서 컨텐츠를 다운로드 받으면 오랜 시간이 걸리므로, 사용자와 가까운 곳에 위치한 Cache Server에 컨텐츠를 저장하고, 요청시 서버가 아닌 Cache Server가 응답을 주는 기술이다.

 

 

예를 들어, 주요 javascript, css 파일을 서버에 놓지 않고, 특정 주소를 통해 웹페이지 오픈시 자동으로 다운로드되도록 하는 방법으로 활용할 수 있다.

 

 

bootstrap이 그 예이다.

부트스트랩에 접속하면 위와 같이 CSS 파일을 다운로드 받을 때 명시할 주소를 포함한 코드를 볼 수 있다.