신규 블로그를 만들었습니다!

2020년 이후부터는 아래 블로그에서 활동합니다.

댓글로 질문 주셔도 확인하기 어려울 수 있습니다.

>> https://bluemiv.tistory.com/

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


문제는 네트워크의 트래픽이 증가한다는 점입니다. 이런 현상은 클라이언트와 서버 환경에서 여러가지 문제를 발생시킵니다.


Content Delivery Network

콘텐츠 전송 네트워크이지만, 흔히 CDN이라 편하게 부릅니다. CDN은 콘텐츠를 효율적으로 전송한다는 특징이 있습니다. 여러개의 노드를 가진 네트워크를 이용해서 각각의 노드에 데이터를 저장하여 사용자들에게 서비스를 제공합니다. 사용자는 ISP(인터넷 서비스 제공자)에 직접 연결되어 데이터를 받으므로, 콘텐츠의 병목현상... 즉, 한곳으로의 쏠림 현상을 피할 수 있습니다.


CDN의 캐싱 서비스

결론적으로 CDN은 효율적으로 사용자에게 콘텐츠를 전송(Delivery)해준다는 것입니다. 여러개의 노드(네트워크 장비)로 구성되어 있는 네트워크를 가지고 있고, 해당 노드들 중에는 Cache Server(캐시 서버)가 존재합니다.



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


또한, 캐시 서버들과 오리진 서버들은 Rsync와 같은 프로토콜을 이용해 콘텐츠 동기화를 합니다. 그래서 각각의 서버들은 동일한 콘텐츠를 가지고 있습니다.


사용자는 콘텐츠를 어떻게 가져가나?

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



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




CDN 업체

보통 미디어 회사나 전자상 거래 업체와 같이 사용자에게 콘텐츠를 제공하는 쪽은 CDN 회사에게 사용료를 지불합니다. 그리고 CDN 회사는 ISP 및 이동통신사업자와 같이 네트워크 사업자들에게 네트워크 트래픽에 대한 비용을 지불합니다.

이런 CDN 업체 중에는 아카마이(Akamai), CDNetworks, SK CDN, KT Ucloud CDN 등등 여러개의 CDN 회사가 존재합니다.




더 나아가서

초기에는 CDN이 소유하고 동작하는 서버에 대해 콘텐츠를 제공했지만, 최신 트랜드는 P2P(peer-to-peer)기술을 이용하는 하이브리드 모델을 사용하는 것입니다. 이 모델은 서버뿐만 아니라 주변에 있는 컴퓨터에게서 콘텐츠를 제공받는 것을 말합니다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기