CDN

Jiwon·2022년 6월 8일
0

Web

목록 보기
4/11
post-custom-banner

CDN (Content Delivery Network)

폭발적으로 증가한 데이터를 지연 없이 처리하기 위해서
데이터를 분산해서 전달하는 기술이 필수.

지리적으로 먼 거리에 떨어져 있는 사용자에게 지연 없이 콘텐츠를 분산해 전달할 수 있는 CDN 서비스.

지리적 제약 없이 전 세계 사용자에게 빠르고 안전하게
콘텐츠를 전송할 수 있는 콘텐츠 전송 기술 의미

서버와 사용자 사이의 물리적인 거리를 줄여 콘텐츠 로딩에 소요되는 시간을 최소화 한다.
각 지역에 캐시 서버(PoP, Points of Presence)를 분산 배치해,
근접한 사용자의 요청에 원본서버가 아닌 캐시 서버가 콘텐츠 전달.

CDN은 웹 페이지, 이미지, 비디오 등의 콘텐츠를 사용자의 물리적 위치와 가까운 프록시 서버에 캐싱.
( 캐싱 : 저장한다는 뜻, 오랜 시간이 걸리는 작업의 결과를 저장해서 시간과 비용을 절감하는 기법 )

이렇게 하면, 콘텐츠가 로딩될 때까지 기다릴 필요 없이 영화 감상, 소프트웨어 다운로드, 은행 잔고 확인 등 다른 작업 가능

ex)
ATM과 같이 생각하면 편하다.
여러 곳에 ATM을 설치해 놓으면 사용자가 빠르고 효율적으로 현금을 찾을 수 있는데,
은행에서 긴 줄을 서서 기다릴 필요 없이 가까운 곳에 있는 ATM을 바로 사용하면 된다.

미국에 있는 사용자가 한국에 호스팅 된 웹 사이트에 접근하는 경우 
미국에 위치한 PoP서버에서 웹사이트 콘텐츠를 사용자에게 전송하는 방식

CDN이 필요한 경우

CDN은 동영상 스트리밍이나 온라인 게임, 대용량 파일 전송,
해상도가 높아 용량이 큰 이미지를 다루는 포털 사이트 등에서 안정적인 서비스 제공을 위해 활용

특정 국가나 지역만을 타깃으로 하는 웹 서비스를 운영한다면 CDN 서비스를 활용할 필요가 없다.
-> 오히려 불필요한 연결 지점이 늘어나 웹 사이트의 성능 저하를 불러올 수 있기 때문

CDN 작동 방법

CDN의 미션은 "지연 시간 줄이기"

지연 시간
: 웹 페이지 또는 비디오 스트리밍 콘텐츠가 디바이스에 완전히 로딩되기 전에
발생하는 불편한 지연을 의미

지연 시간은 밀리초 단위로 측정된다.

디지털화 할 수 있는 모든 데이터를 콘텐츠 전송 네트워크를 통해 전송할 수 있음

CDN 호스트란?

웹 호스트가 아니다.

콘텐츠 전송 네트워크 서버는
콘텐츠를 전 세계 사용자 및 사용자 ISP와 가까운 곳에 캐싱하기 위해
지리적으로 분산되어 있음.

CDN 활용 사례

넷플릭스
: 전 세계의 사용자들에게 안정적인 서비스를 제공하기 위해 자체 CDN 구축

에어비앤비
: CDN 기술을 활용해 전 세계 고객에게 언제 어디서나 숙박 시설과 각종 액티비티를 예약할 수 있는 서비스 환경 구축

NC소프트, 카카오게임즈
: 온라인 게임 기업이 CDN을 활용,
북미나 유럽과 같이 지리적으로 먼 지역의 사용자에게 안정적이고 빠른 게임 플레이 환경을 제공

CDN 아키텍처

  • Push 방식
    원본 서버가 새로 업로드된 콘텐츠를 전 세계에 위치한 PoP 서버로 전달하는 방식
    최초 구성 및 설정에 비교적 많은 시간이 걸리지만, 적시에 콘텐츠를 제공할 수 있음,
    콘텐츠가 업로드되거나 업데이트되어도 전송 오류가 발생할 확률이 적다는 장점

  • Pull 방식
    PoP 서버가 원본 서버에서 콘텐츠를 가져오는 방식.
    JavaScript나 CSS, HTML파일과 같은 사이즈가 비교적 작은 파일에 주로 활용
    단점 : 웹 페이지를 처음 방문하는 경우 PoP 서버가 Origin 서버에서 데이터를 가져오는 과정이 필요해 때때로 응답 속도가 느려질 수 있다는 점.
    ( Origin 서버 : 원본 데이터를 가지고 있는 서버 , AWS에서는 보통 S3, EC2 instance)

Pull 방식의 경우 Push 방식보다 최초 PoP 서버를 구성하기가 비교적 쉽고,
사용자의 요청이 있는 경우에만 원본 서버로부터 데이터를 가져오기 때문에 서버 자원 절약 가능

  • 분산형 아키텍처(Scattered Architecture)
    비교적 사양이 낮은 서버를 구성, 특정 지역에 PoP 여러 개를 밀집해 운영하는 구성 방식

  • 통합형 아키텍처(Consolidated Architecture)
    고용량 서버로 구성된 소수의 PoP를 주요 데이터센터에 배치해 운영하는 구성 방식


참고 사이트

profile
과연 나는 ?
post-custom-banner

0개의 댓글