CDN (Content Delivery Network) 란

2022. 4. 18. 10:08CS/스터디

CDN - 콘텐츠 전송 네트워크

 

CDN 이란 물리적으로 떨어져 있는 사용자에게 콘텐츠를 더 빠르게 제공하기 위해 고안된 기술이다.

예를 들어서 우리나라에 있는 사람이 미국에 있는 서버로부터 이미지 파일 등을 다운로드하려고 하면 시간이 오래 걸리는데 느린 응답 속도와 다운로드 시간을 극복하기 위해 서버를 분산시켜 캐싱해두고, 빠르게 다운로드할 수 있게 한다. (* 캐싱은 좀 더 빠른 메모리 영역으로 데이터를 가져와서 접근하는 방식)

 

그래서 이 CDN 은 콘텐츠에 대한 요청이 발생하면 사용자와 가장 가까운 위치에 존재하는 서버로 매핑시켜, 요청된 파일의 캐싱된(사전 저장된) 버전으로 요청을 처리한다. 서버가 파일을 찾는 데 실패한 경우 CDN 플랫폼의 다른 서버에서 콘텐츠를 찾은 다음 엔드 유저에게 응답을 전송한다. (* 엔드 유저란 궁극적으로 제품을 사용하는 사용자가 되는 사람) 

 

결론적으로 CDN은 효율적으로 사용자에게 콘텐츠를 전송하는 것이다. 여러개의 노드로 구성되어 있는 네트워크를 가지고 있고, 해당 노드들 중에는 캐시 서버가 존재한다.

 

origin 서버에 직접 붙어서 원하는 콘텐츠를 가져갈 수도 있지만, 모든 사용자가 Origin Server에 접근 한다면 네트워크의 병목 현상이 일어난다. 이때 여러 개의Cache Server를 이용하여 네트워크 트래픽을 분산시킵니다.

 

또한, 캐시 서버들과 오리진 서버들은 Rsync와 같은 프로토콜을 이용해 콘텐츠 동기화를 한다. 그래서 각각의 모든 서버들이 동일한 콘텐츠를 가지고 있다. (* Rsync 은 원격으로 파일과 디렉토리 를 복사하고 동기화하기 위해 사용하는 툴)

 

사용자가 콘텐츠를 가져가는 방법

 

사용자는 자신과 가까운 캐시 서버에 접근하여 원하는 콘텐츠를 요구합니다. 캐시서버에 사용자가 원하는 콘텐츠가 있다면 해당 콘텐츠를 가져옵니다.

 

 

사용자가 원하는 콘텐츠가 없는 경우, 사용자가 캐시 서버에게 요청을 합니다. 요청을 했지만 캐시서버에는 사용자가 원하는 콘텐츠는 없습니다. 그러면 캐시 서버는 오리진 서버에게 해당 콘텐츠를 요청합니다. 오리진 서버는 해당 콘텐츠를 캐시서버에게 주고 캐시서버는 사용자에게 응답합니다.

 

+ ) 미디어 회사나 전자상거래 회사같이 사용자에게 콘텐츠를 제공하는 쪽은 CDN 회사에게 사용료를 지불한다.

그리고 CDN 회사들은 이동통신사업자와 같은 네트워크 회사들에게 네트워크 트래픽에 대한 비용을 지불한다.

 

[참고자료]

https://hongku.tistory.com/320

 

CDN, 콘텐츠 전송 네트워크에 대하여(Content Delivery Network)

최근들어 음악, 실시간 스트리밍(Youtube, 트위치 등등), 대용량의 파일 다운도르와 같이 멀티 미디어 콘텐츠의 사용이 급증하고 있습니다. 더 나아가 4차산업혁명(Digital Transformation)과 함께 VR, AR

hongku.tistory.com

 

728x90