CDN 기술이란 무엇인가요?
DN의 정식 명칭은 콘텐츠 전달 네트워크(Content Delivery Network)로, 콘텐츠 유통망이다. 그 목적은 기존 인터넷에 새로운 네트워크 아키텍처 계층을 추가하여 사용자에게 가장 가까운 네트워크의 "가장자리"에 웹 사이트 콘텐츠를 게시함으로써 사용자가 근처에서 필요한 콘텐츠를 얻고 인터넷 네트워크의 정체를 해결할 수 있도록 하는 것입니다. 웹사이트에 접속하는 사용자의 응답 속도를 향상시킵니다. 기술적으로는 작은 네트워크 대역폭, 많은 사용자 방문, 고르지 못한 매장 분포 등의 이유로 사용자가 웹 사이트를 방문할 때 응답 속도가 느려지는 문제를 포괄적으로 해결합니다.
사실 콘텐츠 배포 네트워크(CDN)는 넓은 의미에서 전통적인 IP 네트워크에서 광대역 리치 미디어를 게시하는 데 특별히 최적화된 새로운 유형의 네트워크 구축 방식입니다. CDN 중에서 CDN은 품질과 질서를 기반으로 하는 네트워크 서비스 모델을 나타냅니다. 간단히 말해서, CDN(콘텐츠 배포 네트워크)은 분산 스토리지, 로드 밸런싱, 네트워크 요청 리디렉션, 콘텐츠 관리의 4가지 요소를 포함하여 전략적으로 배포된 전체 시스템이며 콘텐츠 관리 및 글로벌 네트워크 트래픽 관리(Traffic Management)입니다. CDN의 핵심. CDN은 사용자 근접성과 서버 로드를 판단하여 콘텐츠가 사용자 요청에 매우 효율적인 방식으로 제공되도록 보장합니다. 일반적으로 콘텐츠 서비스는 프록시 캐시(대리)라고도 하는 캐시 서버를 기반으로 하며, 이는 네트워크 가장자리에 위치하며 사용자로부터 "단일 홉"만 떨어져 있습니다. 동시에 프록시 캐시는 콘텐츠 공급자의 원본 서버(일반적으로 CDN 서비스 공급자의 데이터 센터에 위치)의 투명한 미러입니다. 이러한 아키텍처를 통해 CDN 서비스 제공업체는 요청 응답 시간의 지연을 용납할 수 없는 고객인 콘텐츠 제공업체를 대신하여 최종 사용자에게 최상의 경험을 제공할 수 있습니다. 통계에 따르면 CDN 기술을 사용하면 전체 웹사이트 페이지 콘텐츠 방문의 70~5%를 처리할 수 있어 서버에 대한 부담을 줄이고 웹사이트의 성능과 확장성을 향상시킬 수 있습니다.
현재의 콘텐츠 퍼블리싱 모델과 비교하여 CDN은 콘텐츠 퍼블리싱에서 네트워크의 중요성을 강조합니다. CDN은 활성 콘텐츠 관리 및 글로벌 로드 밸런싱을 도입함으로써 기존 콘텐츠 게시 모델과 근본적으로 다릅니다. 전통적인 콘텐츠 게시 모델에서 콘텐츠 게시는 ICP 애플리케이션 서버에 의해 완료되며 네트워크는 투명한 데이터 전송 채널로만 나타납니다. 이러한 투명성은 네트워크의 품질 보증이 데이터 수준에서만 유지된다는 사실에 반영됩니다. 데이터 패킷 수준이 아닌, 다양한 콘텐츠 개체에 따라 서비스 품질을 차별화합니다. 또한 IP 네트워크의 "최선의 노력" 특성으로 인해 품질 보증은 사용자와 애플리케이션 서버 사이에 실제로 필요한 것보다 훨씬 더 큰 충분한 엔드투엔드 대역폭 처리량을 제공하는 데 달려 있습니다. 이러한 콘텐츠 게시 모델에서는 많은 양의 귀중한 백본 대역폭이 점유될 뿐만 아니라 ICP 애플리케이션 서버의 로드도 매우 무거워지고 예측할 수 없게 됩니다. 일부 핫 이벤트 및 서지 트래픽이 발생하면 로컬 핫스팟 효과가 발생하여 애플리케이션 서버에 과부하가 걸리고 서비스가 중단됩니다. 이 중앙 애플리케이션 서버 기반 콘텐츠 게시 모델의 또 다른 결함은 개인화된 서비스가 부족하고 광대역 서비스 가치 사슬이 왜곡된다는 점입니다.
전체 광대역 서비스 가치사슬을 살펴보면, 콘텐츠 제공자와 사용자는 전체 가치사슬의 양쪽 끝에 위치하며, 네트워크 서비스 제공자는 이들을 중간에서 연결하는 역할을 맡는다. 인터넷 산업이 성숙하고 비즈니스 모델이 변화함에 따라 이 가치 사슬의 역할은 점점 더 세분화되고 있습니다. 예를 들어 콘텐츠/애플리케이션 운영자, 호스팅 서비스 제공업체, 백본 네트워크 서비스 제공업체, 액세스 서비스 제공업체 등이 있습니다. 이 가치 사슬의 모든 역할은 고객에게 좋은 서비스를 제공하기 위해 서로 협력하고 각자의 임무를 수행하여 윈윈(win-win) 상황을 조성해야 합니다. 콘텐츠와 네트워크 결합 모델의 관점에서 볼 때, 콘텐츠 출시는 ICP 콘텐츠(애플리케이션) 서버와 IDC의 두 단계를 거쳤습니다. IDC에 대한 열풍으로 인해 관리형 서비스 제공업체의 역할도 부각되었습니다. 그러나 IDC는 효과적인 콘텐츠 게시 문제를 해결할 수 없습니다.
네트워크 중앙에 위치한 콘텐츠는 백본 대역폭 점유를 해결하고 IP 네트워크에서 트래픽 순서를 설정할 수 없습니다. 따라서 콘텐츠를 네트워크 가장자리로 푸시하고 사용자에게 인근 가장자리 서비스를 제공하여 전체 네트워크에서 서비스 품질과 액세스 순서를 보장하는 것은 당연한 선택입니다. 그리고 이것이 콘텐츠 배포 네트워크(CDN) 서비스 모델입니다. CDN의 구축은 콘텐츠 사업자가 안고 있는 콘텐츠의 '집중화와 분산화' 딜레마를 해결하는 것으로, 좋은 인터넷 가치사슬을 구축하는 데 있어 반드시 필요한 가치이자 최적의 웹사이트 가속화 서비스이기도 합니다.
CDN의 응용
현재 CDN 서비스는 주로 증권, 금융보험, ISP, ICP, 온라인 거래, 포털, 대기업, 온라인 교육 및 기타 분야에서 사용됩니다. . 또한, 산업 사설망 및 인터넷에서도 활용이 가능하며, 근거리 통신망의 네트워크 최적화에도 활용될 수 있습니다. 이러한 웹사이트는 CDN을 사용함으로써 각종 고가의 서버에 투자하거나 하위 사이트를 구축할 필요가 없습니다. 특히 대역폭 자원을 많이 소모하는 스트리밍 미디어 정보, 원격 교육 코스웨어 및 기타 미디어 정보의 광범위한 적용이 CDN 네트워크에 적합합니다. 콘텐츠를 네트워크의 가장자리에 복사하는 데 사용됩니다. 콘텐츠 요청 지점과 전달 지점 사이의 거리를 최소화하여 웹 사이트 성능 향상을 촉진하는 것은 매우 중요합니다. CDN 네트워크 구축에는 주로 기업에 서비스를 제공하기 위해 기업이 구축한 CDN 네트워크가 포함됩니다. IDC의 CDN 네트워크는 주로 네트워크 운영을 위해 구축된 CDN 네트워크로, 구축된 CDN을 전문으로 하는 CDN 네트워크 서비스 제공업체입니다. 사용자는 CDN 조직과 협력하여 정보 전송을 담당하고, 정보의 정상적인 전송을 보장하며, 웹 사이트는 콘텐츠 유지 관리만 필요하며 더 이상 트래픽 문제를 고려할 필요가 없습니다.
CDN은 네트워크의 속도, 보안, 안정성 및 확장성을 보장할 수 있습니다.
IDC가 CDN 네트워크를 구축할 때 IDC 운영자는 일반적으로 전국에 여러 개의 IDC 센터를 분산시켜야 합니다. 서비스 대상은 IDC 센터에 호스팅되는 고객이며, 기존 네트워크 리소스를 사용하고 투자가 적습니다. 구축하기 쉽습니다. 예를 들어, IDC는 전국에 10개의 컴퓨터실을 보유하고 있으며, IDC의 CDN 네트워크에 가입하여 한 노드에 웹 서버를 호스팅한다면 근처에 고객이 액세스할 수 있는 미러 서버가 10개 있는 것과 같습니다. 광대역 수도권 네트워크에서는 도메인 내 네트워크 속도가 매우 빠르며 아웃바운드 대역폭은 일반적으로 병목 현상이 발생합니다. 수도권 네트워크의 고속 경험을 반영하기 위해 해결책은 인터넷 콘텐츠를 로컬로 캐시하고 수도권 네트워크의 각 POP 지점에 캐시를 배포하면 효율적이고 질서 있는 네트워크가 형성되며, 사용자는 단 한 번의 홉으로 대부분의 콘텐츠에 액세스할 수 있습니다. 이는 또한 모든 웹 사이트에 대한 CDN을 가속화하는 응용 프로그램입니다.
CDN의 기술적 원리
CDN의 구현 원리를 설명함에 있어서 CDN을 이해하기 위해 먼저 기존의 캐시되지 않은 서비스의 액세스 프로세스를 살펴보겠습니다. 캐싱 접속 방식과 캐싱되지 않은 접속 방식의 차이점:
위 그림에서 알 수 있듯이 CDN 캐싱을 사용하지 않는 웹 사이트에 사용자가 접속하는 과정은 다음과 같습니다.
사용자는 브라우저에 액세스할 도메인 이름을 제공합니다.
브라우저는 도메인 이름 확인 기능 라이브러리를 호출하여 도메인 이름에 해당하는 IP 주소를 얻습니다. p>브라우저는 획득한 IP 주소를 사용하고 도메인 이름의 서비스 호스트는 데이터 액세스 요청을 발행합니다.
브라우저는 도메인 이름 호스트가 반환한 데이터를 기반으로 웹 페이지의 내용을 표시합니다.
위의 4가지 단계를 통해 브라우저는 사용자가 접속하려는 도메인 이름을 사용자로부터 받는 것부터 도메인 이름 서비스 호스트로부터 데이터를 얻는 것까지의 전 과정을 완료합니다.
CDN 네트워크는 사용자와 서버 사이에 캐시 계층을 추가하여 원본 서버의 데이터를 얻기 위해 사용자의 요청을 캐시로 안내하는 방법은 주로 DNS에 액세스하는 과정을 살펴보겠습니다. CDN으로 캐시된 웹사이트:
위 그림을 통해 CDN 캐시를 사용한 후 웹사이트의 액세스 프로세스가 다음과 같이 됨을 알 수 있습니다.
사용자가 액세스할 도메인 이름을 제공합니다.
브라우저는 도메인 이름을 확인하기 위해 도메인 이름 확인 라이브러리를 호출합니다. CDN이 도메인 이름 확인 프로세스를 조정했기 때문에 확인 기능 라이브러리는 일반적으로 도메인 이름에 해당하는 CNAME 레코드를 얻습니다. 실제 IP 주소를 얻으려면 브라우저가 도메인 이름을 다시 해석해야 하며, 이 과정에서 획득한 CNAME 도메인 이름을 구문 분석하여 해당 도메인 이름을 구문 분석하는 등 글로벌 로드 밸런싱 DNS 해석을 사용합니다. 사용자가 가까운 곳에 접속할 수 있도록 지리적 위치정보를 기반으로 한 IP 주소입니다.
이 분석에서는 CDN 캐시 서버의 IP 주소를 얻습니다. 실제 IP 주소를 얻은 후 브라우저는 캐시 서버에 액세스 요청을 보냅니다.
캐시 서버는 이에 응답합니다. 브라우저에서 제공하는 요구 사항에 대해 캐시 내부 전용 DNS 확인을 통해 도메인 이름의 실제 IP 주소를 얻은 후 캐시 서버가 실제 IP 주소에 액세스 요청을 제출합니다. >캐시 서버는 실제 IP 주소로부터 콘텐츠를 획득한 후 향후 사용을 위해 로컬에 저장하고, 획득한 데이터는 클라이언트에 반환하여 데이터 서비스 프로세스를 완료합니다. /p>
클라이언트는 캐시 서버에서 반환된 데이터를 표시하고 전체 데이터 요청 프로세스를 완료합니다. 위의 분석을 통해 일반 사용자에게 투명하게 공개하기 위해(즉, 캐시를 추가한 후 사용자 클라이언트는 어떠한 설정도 할 필요가 없으며 가속 웹사이트의 원래 도메인 이름에 직접 액세스할 수 있음), 그러나 지정된 웹 사이트에 투명해야 합니다. ICP에 대한 영향을 줄이면서 가속 서비스를 제공하려면 전체 액세스 프로세스 중 도메인 이름 확인 부분만 수정하면 투명한 가속 서비스를 얻을 수 있습니다. CDN 네트워크 구현.
ICP는 CDN 운영자에게 도메인 이름 해석 권한만 넘겨주기만 하면 되며 운영 중에 다른 측면을 수정할 필요가 없습니다. ICP는 해결 기록을 수정합니다. 일반적으로 cname을 사용하여 CDN 네트워크 캐시를 가리키는 자체 도메인 이름입니다.
CDN 운영자로서 먼저 ICP 도메인 이름에 대한 공개 확인을 제공해야 합니다. 정렬 목록을 구현하려면 일반적으로 ICP 도메인 이름 해석 결과를 CNAME 레코드로 지정해야 합니다.
p>Sorlist가 필요한 경우 CDN 운영자는 DNS를 사용하여 CNAME이 가리키는 도메인 이름 확인 프로세스에 대한 특수 처리를 수행할 수 있으므로 DNS 서버가 클라이언트 요청을 받으면 동일한 도메인의 다른 IP 주소를 반환할 수 있습니다. 클라이언트의 IP 주소에 따른 이름;
cname에서 얻은 IP 주소는 호스트 이름 정보를 전달하므로 요청이 캐시에 도달한 후 캐시는 원본 서버의 IP 주소를 알아야 하므로 내부 DNS 서버 사용자가 방문한 도메인 이름을 해석하기 위해 CDN 운영자 내에서 유지됩니다.
내부 DNS 서버를 유지 관리할 때 어떤 도메인 이름을 제어할 수 있는지 제어하는 인증 서버도 유지해야 합니다. 캐시되고 개방형 프록시의 발생을 피하기 위해 캐시할 수 없는 항목입니다.
CDN 네트워크 아키텍처
CDN 네트워크 아키텍처는 주로 두 부분으로 구성되며 센터와 에지의 두 부분으로 나뉩니다. 센터는 CDN 네트워크 관리 센터를 의미합니다. 글로벌 로드를 담당하는 DNS 리디렉션 해결 센터. 밸런싱을 위해 장비 시스템은 관리 센터 전산실에 설치됩니다. 엣지는 주로 캐시로 구성된 CDN 배포 캐리어인 오프사이트 노드를 의미합니다. 그리고 로드 밸런서.
사용자가 CDN 서비스에 가입한 웹사이트를 방문하면 도메인 이름 확인 요청은 결국 글로벌 로드 밸런싱 DNS로 전달되어 처리됩니다.
글로벌 로드 밸런싱 DNS는 미리 정의된 일련의 정책을 통해 사용자에게 당시 사용자에게 가장 가까운 노드 주소를 제공함으로써 사용자가 빠른 서비스를 받을 수 있도록 합니다. 동시에 전 세계에 분산된 모든 CDNC 노드와의 통신을 유지하고 각 노드의 통신 상태를 수집하며, 사용자 요청이 사용할 수 없는 CDN 노드에 분산되지 않도록 실제로 DNS를 통해 글로벌 로드 밸런싱을 수행합니다.
일반 인터넷 사용자에게 각 CDN 노드는 그 주변에 배치된 WEB과 같습니다. 글로벌 로드 밸런싱 DNS의 제어를 통해 사용자의 요청은 가장 가까운 노드로 투명하게 전달되며, 노드의 CDN 서버는 웹 사이트의 원래 서버와 마찬가지로 사용자의 요청에 응답합니다. 사용자에게 더 가까이 있기 때문에 응답 시간은 필연적으로 더 빠릅니다.
각 CDN 노드는 로드 밸런싱 장치와 캐시 서버의 두 부분으로 구성됩니다.
로드 밸런싱 장치는 각 노드의 각 캐시에 대한 로드 밸런싱을 담당하여 노드의 작업 효율성과 동시에 로드 밸런싱 장치는 노드 및 주변 환경에 대한 정보를 수집하고 글로벌 로드 DNS와의 통신을 유지하며 전체 시스템의 로드 밸런싱을 달성하는 역할도 담당합니다.
캐시 서버(Cache)는 고객의 웹사이트에 대량의 정보를 저장하는 역할을 담당하며, 사용자와 가까운 웹사이트 서버처럼 로컬 사용자 접속 요청에 응답한다.
CDN의 관리 시스템은 전체 시스템의 정상적인 작동을 보장합니다. 시스템의 다양한 하위 시스템과 장비를 실시간으로 모니터링하고 다양한 오류에 대해 해당 경보를 생성할 수 있을 뿐만 아니라 시스템의 전체 트래픽과 각 노드의 트래픽을 실시간으로 모니터링하여 시스템 데이터베이스에 저장할 수 있습니다. 네트워크 관리자가 쉽게 추가 분석을 수행할 수 있도록 합니다. 완전한 네트워크 관리 시스템을 통해 사용자는 시스템 구성을 수정할 수 있습니다.
이론적으로 가장 간단한 CDN 네트워크에는 글로벌 로드 밸런싱을 담당하는 DNS와 실행할 각 노드에 대한 캐시가 있습니다. DNS는 사용자의 소스 IP 주소를 기반으로 다양한 IP를 확인하여 근처에 액세스할 수 있도록 지원합니다. 고가용성 등을 보장하기 위해서는 각 노드의 트래픽 및 상태를 모니터링하는 것이 필요합니다. 노드의 단일 캐시가 충분한 용량을 전달할 수 없는 경우 여러 캐시가 동시에 작동하는 경우 캐시 그룹이 함께 작동하도록 로드 밸런서가 필요합니다.