KR101089058B1 - Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof - Google Patents

Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof Download PDF

Info

Publication number
KR101089058B1
KR101089058B1 KR1020090073545A KR20090073545A KR101089058B1 KR 101089058 B1 KR101089058 B1 KR 101089058B1 KR 1020090073545 A KR1020090073545 A KR 1020090073545A KR 20090073545 A KR20090073545 A KR 20090073545A KR 101089058 B1 KR101089058 B1 KR 101089058B1
Authority
KR
South Korea
Prior art keywords
server
client
address
page
dns server
Prior art date
Application number
KR1020090073545A
Other languages
Korean (ko)
Other versions
KR20100020912A (en
Inventor
전재식
김경환
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Publication of KR20100020912A publication Critical patent/KR20100020912A/en
Application granted granted Critical
Publication of KR101089058B1 publication Critical patent/KR101089058B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Abstract

본 발명은 CP 참여형 컨텐츠 전달 시스템 및 방법, 그 CDN DNS 서버에 관한 것으로, 웹서버로부터 페이지를 수신한 클라이언트가 이를 파싱하여 내장형 객체를 발견한 경우 로컬 DNS 서버를 통해 객체를 저장한 서버의 IP 어드레스를 질의하고, 이를 수신한 로컬 DNS 서버가 CDN 사업자의 DNS 서버로 객체를 저장한 서버의 IP 어드레스를 질의하면, CDN DNS 서버에서 해당 객체를 저장한 CDN 사업자의 호스트서버와 웹서버 중 클라이언트와 지역적으로 인접한 서버를 선택하여 해당 객체를 전송하도록 라우팅하는 과정을 포함하며, 이를 통해, 클라이언트는 신속히 객체를 수신할 수 있고 컨텐츠 제공자는 클라이언트의 편의 증진으로 인해 컨텐츠 제공 서비스의 질적 향상을 도모할 수 있다.The present invention relates to a CP participant content delivery system and method, and a CDN DNS server thereof. When a client receiving a page from a web server parses it and discovers an embedded object, an IP address of a server storing the object through a local DNS server When the local DNS server receives the query and queries the IP address of the server storing the object to the CDN provider's DNS server, the CDN DNS server stores the client and the local server among the host server and web server of the CDN provider storing the object. In this case, the server may select an adjacent server and route the corresponding object to be transmitted, whereby the client may receive the object quickly and the content provider may improve the quality of the content providing service due to the convenience of the client. .

CDN, 라우팅, CNAME, replication server CDN, routing, CNAME, replication server

Description

CP 참여형 컨텐츠 전달 시스템 및 방법, 그 CDN DNS 서버{Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof}Contents provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server

본 발명은 광역적으로 전개된 복제서버를 포함하는 CDN(Contents Delivery Network)에 관한 것으로, 특히, 컨텐츠 제공자의 웹서버와 인접한 클라이언트에 대해서는 웹서버가 CDN의 복제서버로서 기능하여 클라이언트에게 직접 컨텐츠를 제공하는 CP 참여형 컨텐츠 전달 시스템 및 방법, 그 CDN DNS(Domain Name System) 서버에 관한 것이다.The present invention relates to a Contents Delivery Network (CDN) including a replication server deployed globally. In particular, for a client adjacent to a web server of a content provider, the web server functions as a replication server of the CDN to directly deliver content to the client. The present invention relates to a CP participatory content delivery system and method for providing the same, and a CDN DNS (Domain Name System) server.

일반적으로 컨텐츠 제공자(CP: Contents Provider)의 웹 서버가 클라이언트에 제공할 컨텐츠(예컨대, 동영상, 음악, 파일 등)의 수는 매우 많다. 웹 서버가 이들의 일부 또는 전부를 다수의 클라이언트들 각각에게 일대일로 제공하기에는 많은 부하가 발생한다. 왜냐하면, 웹 서버는 단일의 ISP(Internet Service Provider)에 연결되어 있는데 반하여 컨텐츠를 요구하는 클라이언트는 다수의 ISP에 존재하기 때문이다.Generally, the number of contents (eg, video, music, files, etc.) to be provided to a client by a content server (CP) web server is very large. There is a heavy load for a web server to provide some or all of these to each of the multiple clients one-to-one. This is because a web server is connected to a single Internet Service Provider (ISP), whereas clients requesting content exist in multiple ISPs.

따라서 ISP들 간의 트래픽은 컨텐츠 제공자와 클라이언트가 늘어남에 따라 기하급수적으로 증가하게 되고, 트래픽 혼잡으로 인한 전송지연 및/또는 전송실패율이 높아진다. 최악의 경우에는 웹 서버의 기능장애(fail-over)가 발생하기도 한다.Therefore, traffic between ISPs increases exponentially as the number of content providers and clients increases, and transmission delay and / or transmission failure rate due to traffic congestion increases. In the worst case, the web server may fail over.

이러한 문제점을 극복하기 위해 도입된 것이 CDN(Content Delivery Network)이다. CDN이란 클라이언트들로부터 멀리 떨어져 있는 컨텐츠 제공자의 웹 서버에 집중되어 있는 컨텐츠, 예를 들어 그림, 배너, 비디오 또는 오디오와 같이 용량이 크거나 클라이언트들의 요구가 빈번한 컨텐츠를 다수의 ISP 상호 접속점(PoP: Point of Presence)에 광역적으로 분산 배치된 호스트 서버에 미리 저장해 놓고, 클라이언트의 요구가 있을 경우 해당 이용자와 가장 근접한 호스트 서버의 경로를 반환함으로써 클라이언트가 그 반환된 경로를 통해 호스트 서버에 접속한 후 컨텐츠를 제공받을 수 있도록 한 서비스이다. 여기서 호스트 서버는 캐시서버, 복제서버 또는 고스트서버로 다양하게 일컬어진다.The CDN (Content Delivery Network) has been introduced to overcome this problem. A CDN is a collection of content that is concentrated on a content provider's web server that is remote from clients, such as pictures, banners, video, or audio. Point-of-presence is stored in the host server which is widely distributed, and the client connects to the host server through the returned path by returning the path of the host server closest to the user when requested by the client. This service allows you to receive content. The host server is variously referred to as a cache server, a replication server, or a ghost server.

상술한 CDN은 시스템 구성 방식에 따라 크게 두 가지로 나뉜다. 하나는 '오버레이(overlay) 방식'이고, 또 하나는 '네트워크 방식'이다. '오버레이 방식'은 특수용도의 서버와 다수의 캐시 서버가 컨텐츠의 분배를 관장한다. 이러한 오버레이 방식은 CDN 제공자가 네트워크 하부 요소에 대해 제어할 필요가 없어 관리가 단순해 진다는 장점을 가진다. 한편, '네트워크 방식'에 있어서, 라우터와 스위치 등의 네트워크 구성요소에는 특정 애플리케이션 유형을 확인하고 미리 정의된 방침에 따라 클라이언트의 요청(request)을 포워딩하기 위한 코드가 구비된다. The above-described CDN is divided into two types according to the system configuration method. One is 'overlay' and the other is 'network'. In the 'overlay method', a special-purpose server and a plurality of cache servers manage the distribution of content. This overlay method has the advantage that the CDN provider does not need to control the network sub-elements, thereby simplifying management. On the other hand, in the network method, network components such as routers and switches are provided with code for identifying a specific application type and forwarding a request from a client according to a predefined policy.

근래 들어, CDN 제공자의 솔루션 대부분은 전술한 오버레이 방식과 네트워크 방식을 혼합한 이른바 혼합 방식을 채택하고 있다. 혼합 방식에 관해서는 F. Thomson Lieghton 등에게 부여(issued)되고 MIT(Massachusetts Institute of Technology)에 양도된 미국 등록특허 US 6,108,703(GLOBAL HOSTING SYSTEM)(이하, '703 특허)에 예시되어 있다.In recent years, most of the CDN provider's solutions have adopted a so-called mixed method in which the above-described overlay method and network method are mixed. A blending scheme is illustrated in US Pat. No. 6,108,703 (GLOBAL HOSTING SYSTEM) (hereinafter '703 patent) issued to F. Thomson Lieghton et al. And assigned to the Massachusetts Institute of Technology (MIT).

상기 '703 특허에 따르면, 컨텐츠 제공자의 웹 서버는 클라이언트의 요구에 응답하여, 특별한 루틴에 의해 변경된 내장형 오브젝트의 URL(이하, '수정 URL'이라 한다)이 포함된 페이지를 제공한다. 클라이언트의 웹 브라우저는 상기 페이지를 디스플레이 하기 위해 내장형 오브젝트를 로딩하게 된다. '703 특허는 제1 레벨 네임서버와 제2 레벨 네임서버로 명명되는 계층구조의 DNS 서버를 통해 상기한 수정 URL을 식별하여 실제 오브젝트를 제공할 수 있는 최적의 호스트 서버의 IP 주소를 클라이언트에 반환한다.According to the '703 patent, the web server of the content provider provides a page including a URL of a built-in object (hereinafter, referred to as a' modified URL ') changed by a special routine in response to a client's request. The client's web browser will load the embedded object to display the page. The '703 patent identifies the above modified URLs through a hierarchical DNS server named first-level name server and second-level name server, and returns the IP address of the optimal host server that can provide the actual object to the client. do.

상술한 '703 특허는 이른바 DNS 기반 리퀘스트 라우팅(DNS-based request routing)을 이용하고 있다. 일반적인 DNS 기반 리퀘스트 라우팅은 DNS 룩업 시간에 의한 네트워크 지연(network latency)이 가중된다는 단점이 있으나, '703 특허는 DNS 서버를 계층구조로 구현함으로써 네트워크 지연을 경감시켰다.The '703 patent mentioned above uses so-called DNS-based request routing. In general, DNS-based request routing has a disadvantage of increasing network latency due to DNS lookup time, but the '703 patent reduces network delay by implementing a DNS server in a hierarchical structure.

그러나, 클라이언트가 컨텐츠 제공자의 웹 서버에 인접해 있는 경우, 다시 말해 양자가 지리적으로 혹은 네트워크 경로상 가까운 경우에도 상기한 DNS 기반의 리퀘스트 라우팅이 행해지는 비효율적인 문제점이 있다. 이에 이러한 문제점을 개선하기 위한 방법이 요구된다.However, when the client is adjacent to the web server of the content provider, that is, the DNS-based request routing is performed even when both are geographically or close to the network path. Therefore, a method for improving this problem is required.

본 발명은 CDN 사업자의 네트워크로 페이지에 내장된 객체를 요구하는 클라이언트에 대해서, 컨텐츠 제공자가 운영하는 웹 서버와 클라이언트가 인접한 경우에는 웹서버가 직접 클라이언트가 요구하는 컨텐츠를 제공하도록 CDN 사업자의 DNS 서버가 라우팅함으로써, 클라이언트에게 보다 향상된 QoS(Quality of Service)를 보장하고 아울러 무용한 네트워크 부하를 줄이는데 주요 목적이 있다.The present invention provides a CDN provider's DNS server to provide a client requesting an object embedded in a page through a network of the CDN provider. Routing is the main purpose of ensuring better quality of service (QoS) to clients and reducing useless network load.

상기와 같은 목적을 달성하기 위한, 본 발명의 CP 참여형 컨텐츠 전달 시스템은, 페이지에 포함된 객체를 수신하여 저장하고 클라이언트의 요청이 있는 경우 상기 객체를 상기 클라이언트로 전송하는 하나 이상의 호스트서버; 상기 페이지와 상기 객체를 저장하고, 상기 객체를 상기 하나 이상의 호스트서버로 전송하여 저장하도록 하며, 상기 클라이언트의 요청이 있는 경우 상기 페이지 또는 상기 객체를 상기 클라이언트로 전송하는 웹서버; 및 상기 클라이언트 측의 로컬 DNS(Domain Name System) 서버로부터 상기 객체를 저장한 서버의 IP(Internet Protocol)에 대해 질의를 수신한 경우 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트와 지역적으로 인접한 서버를 선정하고 상기 선정된 서버의 IP 어드레스를 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 CDN(Contents Delivery Network) DNS 서버를 포함한다.In order to achieve the above object, CP participating content delivery system of the present invention, one or more host server for receiving and storing the object included in the page and sending the object to the client at the request of the client; A web server for storing the page and the object, transmitting the object to the one or more host servers, and storing the page and the object, and transmitting the page or the object to the client at the request of the client; And a server that is locally adjacent to the client among the one or more host servers and the web server when receiving a query about an Internet Protocol (IP) of the server storing the object from a local DNS server on the client side. And a CDN (Contents Delivery Network) DNS server for transmitting the selected IP address of the selected server to the client through the local DNS server.

본 발명의 CP 참여형 컨텐츠 전달 시스템에 있어서, 상기 CDN DNS 서버는, 상기 클라이언트의 IP 어드레스를 참조하여 상기 클라이언트와 지역적으로 인접한 서버를 선정하는 것을 특징으로 한다.In the CP participant content delivery system of the present invention, the CDN DNS server selects a server that is locally adjacent to the client by referring to the IP address of the client.

본 발명의 CP 참여형 컨텐츠 전달 시스템에 있어서, 상기 CDN DNS 서버는, 상기 선정된 서버의 데이터 트래픽이 임계치를 초과하는 경우 상기 클라이언트와 지역적으로 인접한 다른 서버를 선정하는 것을 특징으로 한다.In the CP participant content delivery system of the present invention, the CDN DNS server selects another server that is locally adjacent to the client when the data traffic of the selected server exceeds a threshold.

상기와 같은 목적을 달성하기 위한 본 발명의 CP 참여형 컨텐츠 전달 방법은, 데이터 송수신을 위한 송수신부; 페이지에 포함된 객체를 저장한 하나 이상의 호스트서버 및 상기 페이지와 상기 객체를 제공하는 웹서버의 IP 어드레스를 저장한 데이터베이스; 상기 하나 이상의 호스트서버 및 상기 웹서버 중 하나 이상의 서버와 임의의 클라이언트 간의 지역적 인접성을 판단하는 판단모듈; 및 상기 송수신부를 통해 상기 페이지를 수신한 클라이언트 측의 로컬 DNS 서버로부터, 상기 객체를 저장한 서버의 IP 어드레스 질의를 수신하면, 상기 판단모듈이 판단한 결과를 참조하여 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트로 상기 객체를 전송할 특정 서버를 선정하고, 상기 데이터베이스에 저장된 상기 IP 어드레스를 참조하여 상기 선정된 특정 서버의 IP 어드레스를 상기 송수신부를 거쳐 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 제어부를 포함한다.CP participant content delivery method of the present invention for achieving the above object, the transceiver for data transmission and reception; At least one host server storing an object included in a page, and a database storing an IP address of the page and a web server providing the object; A determination module for determining local proximity between at least one of the at least one host server and the web server and any client; And receiving the IP address query of the server storing the object from the local DNS server of the client, which has received the page through the transceiver, referring to the result determined by the determination module. A control unit for selecting a specific server to which the object is to be transmitted to the client and transmitting the IP address of the selected specific server to the client through the local DNS server through the transceiver unit by referring to the IP address stored in the database. Include.

본 발명의 CDN DNS 서버에 있어서, 상기 판단모듈은, 상기 임의의 클라이언트의 IP 어드레스를 참조하여 지역적 인접성을 판단하는 것을 특징으로 한다.In the CDN DNS server of the present invention, the determination module is characterized by determining the local proximity with reference to the IP address of the arbitrary client.

본 발명의 CDN DNS 서버에 있어서, 상기 제어부는, 상기 선정된 서버의 데이터 트래픽이 임계치를 초과하는 경우 상기 클라이언트와 지역적으로 인접한 다른 서버를 선정하는 것을 특징으로 한다.In the CDN DNS server of the present invention, the control unit selects another server that is locally adjacent to the client when the data traffic of the selected server exceeds a threshold.

상기와 같은 목적을 달성하기 위한 본 발명의 CP 참여형 컨텐츠 전달 방법은, 하나 이상의 호스트서버가 웹서버로부터 페이지에 포함된 객체를 수신하여 저장하는 저장단계; 클라이언트로부터 상기 페이지를 요청받은 상기 웹서버가 상기 페이지를 상기 클라이언트로 전송하는 페이지 전송단계; 및 상기 페이지를 수신한 상기 클라이언트 측의 로컬 DNS 서버로부터, 상기 객체를 저장한 서버의 IP 어드레스 질의를 수신한 CDN DNS 서버가, 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트와 지역적으로 인접한 서버를 선정하고 상기 선정된 서버의 IP 어드레스를 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 어드레스 전송단계를 포함한다.CP participant content delivery method of the present invention for achieving the above object, the storage step of receiving at least one host server the object contained in the page from the web server; A page transmission step of transmitting the page to the client by the web server receiving the page request from the client; And a CDN DNS server that receives an IP address query of a server storing the object from a local DNS server of the client that receives the page, wherein the CDN DNS server is a region adjacent to the client of the one or more host servers and the web server. And transmitting an IP address of the selected server to the client through the local DNS server.

본 발명의 CP 참여형 컨텐츠 전달 방법에 있어서, 상기 어드레스 전송단계는, 상기 CDN DNS 서버가 상기 클라이언트의 IP 어드레스를 참조하여 상기 서버를 선정하는 것을 특징으로 한다.In the CP participant content delivery method of the present invention, in the address transmission step, the CDN DNS server selects the server with reference to the IP address of the client.

본 발명의 CP 참여형 컨텐츠 전달 방법에 있어서, 상기 어드레스 전송단계에서 상기 CDN DNS 서버가 수신한 IP 어드레스 질의는, 상기 클라이언트가 상기 페이지를 수신하고 파싱(parsing)하여 발견한 상기 객체의 저장위치를 나타나는 URL(Uniform Resource Locator)을 이용하여 상기 로컬 DNS 서버로 상기 객체를 저장한 서버의 IP 어드레스를 질의하여 이루어진 것을 특징으로 한다.In the CP participant content delivery method of the present invention, the IP address query received by the CDN DNS server in the address transmission step indicates a storage location of the object found by the client by receiving and parsing the page. Querying the IP address of the server storing the object to the local DNS server using a Uniform Resource Locator (URL).

본 발명의 CP 참여형 컨텐츠 전달 방법에 있어서, 상기 어드레스 전송단계에서 상기 CDN DNS 서버가 수신한 IP 어드레스 질의는, 상기 클라이언트로부터 상기 IP 어드레스 질의를 수신한 상기 로컬 DNS 서버가 컨텐츠 제공자 측의 DNS 서버로 상기 객체를 저장한 서버의 IP 어드레스 질의를 하고 상기 컨텐츠 제공자 측의 DNS 서버로부터 CDN 사업자의 도메인네임 정보를 수신하여 상기 CDN DNS 서버로 질의한 것을 특징으로 한다.In the CP participant content delivery method of the present invention, the IP address query received by the CDN DNS server in the address transfer step is the local DNS server receiving the IP address query from the client to the DNS server of the content provider side. The IP address query of the server storing the object is received, and the domain name information of the CDN provider is received from the DNS server of the content provider, and the query is made to the CDN DNS server.

본 발명의 CP 참여형 컨텐츠 전달 방법에 있어서, 제10항에 있어서, 상기 로컬 DNS서버가 수신한 도메인네임 정보는, CNAME(Canonical NAME) 레코드에 포함하여 수신한 것을 특징으로 한다.In the CP participant content delivery method of the present invention, the domain name information received by the local DNS server is included in a CNAME (Canonical NAME) record and received.

본 발명으로부터 클라이언트로 제공되는 큰 이점은 보다 향상된 QoS이다. 웹 서버의 부담이 다소 커질 수도 있겠으나, 클라이언트는 보다 신속하게 페이지에 포함된 객체를 수신할 수 있게 되고, 이는 컨텐츠 제공자의 서비스 경쟁력 측면에서 보다 큰 이점으로 작용할 것이며, 네트워크 부하를 경감할 수 있다.A big advantage provided to the client from the present invention is improved QoS. Although the burden on the web server may be rather heavy, the client will be able to receive the objects contained in the page more quickly, which will be a greater advantage in terms of service provider's service competitiveness, and reduce the network load. .

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in describing in detail the operating principle of the preferred embodiment of the present invention, if it is determined that the detailed description of the related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. In addition, the same reference numerals are used for parts having similar functions and functions throughout the drawings.

도 1은 본 발명의 일 실시예에 따른 CP 참여형 컨텐츠 전달 시스템의 구성도 이다. 도 1을 참조하면 본 실시예에 따른 컨텐츠 전달 시스템은 클라이언트(110), 로컬 DNS 서버(120), 호스트서버(130), CDN DNS 서버(140), 컨텐츠 제공자 DNS 서버(150), 웹서버(160) 및 네트워크(170)를 포함하여 구성된다.1 is a block diagram of a CP participant content delivery system according to an embodiment of the present invention. Referring to FIG. 1, the content delivery system according to the present embodiment includes a client 110, a local DNS server 120, a host server 130, a CDN DNS server 140, a content provider DNS server 150, a web server ( 160 and network 170.

클라이언트(110)는 네트워크(170)로 연결된 서버로부터 정보를 제공받는 컴퓨터 등의 장비를 의미한다. 예를 들어, 본 발명의 클라이언트(110)는 PC(Personal Computer), 가전기기, 이동통신기기 등 현재 개발되어 상용화되었거나 향후 개발될 모든 장비를 포함한다.The client 110 refers to equipment such as a computer that receives information from a server connected to the network 170. For example, the client 110 of the present invention includes all equipment that is currently developed and commercialized or will be developed in the future, such as a personal computer (PC), a home appliance, and a mobile communication device.

클라이언트(110)는 브라우저와 리졸버(resolver)를 포함한다. 클라이언트(110)의 브라우저에 특정 컨텐츠를 요청(request)하는 URL(Uniform Resource Locater) 등이 입력되면, 브라우저와 연결된 리졸버(resolver)가 미리 등록된 로컬 DNS 서버(120)에 액세스(access)하여 도메인명을 해당 컨텐츠를 제공하는 웹서버(160)의 IP(Internet Protocol) 어드레스(address)로 변환하는 역할을 한다.The client 110 includes a browser and a resolver. When a URL (Uniform Resource Locater) for requesting specific content is input to the browser of the client 110, a resolver connected to the browser accesses a local DNS server 120 that is registered in advance. It converts the name into an Internet Protocol (IP) address of the web server 160 providing the corresponding content.

본 발명에서 클라이언트(110)는 웹서버(160)의 IP 주소를 이용하여 웹서버(160)로부터 페이지를 수신하면, 이를 파싱(parsing)하고 발견한 페이지 내장형 객체(object)의 URL을 이용하여 로컬 DNS 서버(120)로 해당 객체를 제공할 서버의 IP 어드레스를 질의한다. 이후, 로컬 DNS 서버(120)로부터 해당 객체를 전송할 웹서버(160) 또는 호스트서버(130)의 IP 어드레스를 수신하면 이를 이용하여 해당 서버에 접속하고 객체를 수신한다.In the present invention, when the client 110 receives a page from the web server 160 using the IP address of the web server 160, the client 110 parses it and uses a URL of a page embedded object found locally. The DNS server 120 queries the IP address of the server that will provide the object. Then, when receiving the IP address of the web server 160 or the host server 130 to transfer the object from the local DNS server 120 using it to access the server and receive the object.

로컬 DNS(Domain Name System) 서버(120)는 도메인 네임을 IP 주소로 변환시켜 주는 DNS(Domain Name Server)를 의미하며, 기호명(symbolic name)을 기계가 사 용하는 숫자 주소로 변환하여 알려주는 역할을 하는 DNS 서버의 일종이다. 웹서버(160)의 도메인명 정보를 클라이언트(110)의 리졸버로부터 수신한 로컬 DNS 서버(120)는, 컨텐츠 제공자 측의 DNS 서버인 컨텐츠 제공자 DNS 서버(150)로 접속하여 도메인명에 대응되는 웹서버(160)의 IP(Internet Protocol) 어드레스(address)를 수신하고 클라이언트(110)로 전송한다.Local Domain Name System (DNS) server 120 refers to a Domain Name Server (DNS) that translates a domain name into an IP address, and converts a symbolic name into a numeric address used by the machine and informs it of It is a kind of DNS server that plays a role. The local DNS server 120, which receives the domain name information of the web server 160 from the resolver of the client 110, connects to the content provider DNS server 150, which is the DNS server of the content provider side, and corresponds to the web corresponding to the domain name. It receives an Internet Protocol (IP) address of the server 160 and transmits it to the client 110.

또한 로컬 DNS 서버(120)는 클라이언트(110)로부터 페이지에 포함된 객체를 저장한 서버의 IP 어드레스를 요청받으면, 컨텐츠 제공자 DNS 서버(150) 또는 CDN DNS 서버(140)와의 메시지 송수신을 통해 해당 객체를 전송할 웹서버(160) 또는 호스트서버(130)의 IP 어드레스를 클라이언트(110)로 전송한다.In addition, when the local DNS server 120 receives a request for the IP address of the server storing the object included in the page from the client 110, the object through the message transmission and reception with the content provider DNS server 150 or CDN DNS server 140 The IP address of the web server 160 or the host server 130 to be transmitted is transmitted to the client 110.

호스트서버(130)는, 웹서버(160)가 저장 및 관리하는 페이지 내장형 객체의 복사본을 저장하여 클라이언트(110)로부터의 컨텐츠 요청이 있을 경우 신속하게 제공하는 역할을 한다.The host server 130 stores a copy of the page embedded object that the web server 160 stores and manages, and promptly provides a content request from the client 110.

CDN DNS 서버(140)는 CDN 사업자 측의 DNS 서버로서, 로컬 DNS 서버(120)의 요청에 따라 페이지 내장형 객체를 저장한 호스트서버(130)의 IP 어드레스를 제공하는 역할을 한다. 본 발명의 CDN DNS 서버(140)는 일반적인 DNS 서버의 기능에 더하여, 하나 이상의 호스트서버(130)의 데이터 트래픽 정보, 하나 이상의 호스트서버(130)와 클라이언트(110) 간의 지역적 인접성 정보 및 호스트서버(130) 각각이 저장한 객체 정보 중 하나 이상의 정보를 고려하여 클라이언트(110)로 객체를 제공하기에 효율적인 호스트서버(130)를 선정하여 선정된 호스트서버(130)의 IP 어드레스를 로컬 DNS 서버(120)를 통해 클라이언트(110)로 전송할 수 있다.The CDN DNS server 140 serves as a DNS server of the CDN provider and provides an IP address of the host server 130 storing the page embedded object in response to a request of the local DNS server 120. In addition to the functions of a general DNS server, the CDN DNS server 140 of the present invention includes data traffic information of one or more host servers 130, local proximity information between one or more host servers 130 and the client 110, and a host server ( 130) In consideration of one or more pieces of information stored in each object, the host server 130 is selected to provide an object to the client 110, and the IP address of the selected host server 130 is selected from the local DNS server 120. ) May be transmitted to the client 110.

이때, CDN DNS 서버(140)가 고려하는 지역적 인접성 정보, 저장 객체 정보, 호스트서버(130)의 데이터 트래픽 정보는, 호스트서버(130)에 저장되는 객체가 갱신될 때, 일정 주기와 같이 기 설정된 시간에, CDN DNS 서버(140) 또는 호스트서버(130)의 데이터 트래픽과 부하 등을 고려하여 수집된 정보일 수 있다.In this case, the local proximity information, the storage object information, and the data traffic information of the host server 130 considered by the CDN DNS server 140 may be preset in a predetermined period when an object stored in the host server 130 is updated. At this time, the information may be collected in consideration of data traffic and load of the CDN DNS server 140 or the host server 130.

본 발명의, CDN DNS 서버(140)는 클라이언트(110) 측의 로컬 DNS 서버(120)로부터 페이지 내장형 객체를 저장한 서버의 IP 어드레스를 질의받으면, 객체를 저장한 하나 이상의 호스트서버(130) 및 웹서버(160) 중 클라이언트(110)와 지역적으로 인접한 서버를 선정하고, 선정된 서버의 IP 어드레스를 로컬 DNS 서버(120)를 통해 클라이언트(110)로 전송하여, 클라이언트(110)가 선정된 서버에서 객체를 제공받을 수 있도록 한다. 이를 통해, 웹서버(160)가 클라이언트(110)와 인접해 있어, 페이지에 포함된 객체를 웹서버(160)가 제공하는 것이 네트워크 경로상 더 효율적인 경우에는 웹서버(160)가 객체를 제공하고, 그렇지 않은 경우 호스트서버(130) 중 클라이언트(110)와 지역적으로 인접하여 객체를 제공하기에 적합한 서버를 선택하여 클라이언트(110)로 객체를 제공하게 하는 것이 가능해 진다.When the CDN DNS server 140 of the present invention receives the IP address of the server storing the page embedded object from the local DNS server 120 on the client 110 side, the CDN DNS server 140 stores one or more host servers 130 storing the object. A server that is locally adjacent to the client 110 is selected among the web servers 160, and the IP address of the selected server is transmitted to the client 110 through the local DNS server 120, so that the client 110 is selected. Makes the object available from. In this way, the web server 160 is adjacent to the client 110, so that if the web server 160 provides an object included in the page is more efficient in the network path, the web server 160 provides the object. Otherwise, it is possible to select a server suitable for providing an object locally from the host server 130 and to provide the object to the client 110.

이때, 지역적으로 인접한 서버의 선정은 클라이언트(110)의 IP 어드레스를 참조하여 이루어질 수 있을 것이다. 다만, 클라이언트(110)로 객체를 제공하도록 선정된 서버의 데이터 트래픽이 임계치를 초과하는 경우에는 클라이언트(110)와 지역적으로 인접한 다른 서버를 선정하여 IP 어드레스를 로컬 DNS 서버(120)를 통해 클라이언트(110)로 전달할 수 있다.At this time, the selection of a locally adjacent server may be made by referring to the IP address of the client 110. However, if the data traffic of the server selected to provide the object to the client 110 exceeds the threshold, another server that is locally adjacent to the client 110 is selected to obtain an IP address through the local DNS server 120. 110).

이러한 방식으로, 클라이언트(110)는 좀 더 응답이 빠른 네트워크 경로를 통 해 페이지에 내장된 객체를 수신하는 것이 가능하며, CDN 사업자는 호스트서버(130)와 웹서버(160)의 부하 및 네트워크 경로를 고려하여 동적으로 객체 전송의 주체를 결정할 수 있다.In this way, the client 110 may receive the object embedded in the page through a more responsive network path, and the CDN operator may load and network path the host server 130 and the web server 160. Considering this, the subject of the object transfer can be determined dynamically.

웹서버(160)는 컨텐츠 제공자가 제공하는 웹 페이지 및 해당 페이지에 포함된 내장형 객체(embedded object) 등을 제공하는 서버이다. 본 발명에서 컨텐츠 제공자(contents provider)는 웹서버(160)가 호스트서버(130)로 페이지에 포함된 객체를 전송하여 저장하도록 한다. 이는 클라이언트(110)가 특정 페이지에 포함된 객체를 요청하는 경우 호스트서버(130)를 통하여 신속한 응답을 받을 수 있도록 하기 위함이다.The web server 160 is a server that provides a web page provided by a content provider and an embedded object included in the page. In the present invention, the content provider (contents provider) allows the web server 160 to transmit and store the object included in the page to the host server 130. This is for receiving a quick response through the host server 130 when the client 110 requests an object included in a specific page.

컨텐츠 제공자 DNS 서버(150)는 컨텐츠 제공자 측의 DNS 서버의 일종이다. 컨텐츠 제공자 DNS 서버(150)는 로컬 DNS 서버(120)로부터 페이지를 저장한 웹서버(160)의 IP 어드레스를 질의받으면, 해당 IP 어드레스를 반환한다. The content provider DNS server 150 is a kind of DNS server on the content provider side. When the content provider DNS server 150 receives the IP address of the web server 160 storing the page from the local DNS server 120, the content provider DNS server 150 returns the corresponding IP address.

또한, 컨텐츠 제공자 DNS 서버(150)는 로컬 DNS 서버(120)로부터 페이지에 포함된 객체를 저장한 서버의 IP 어드레스를 질의받으면, CDN 사업자의 도메인네임 정보를 로컬 DNS 서버(120)로 전송하여, 로컬 DNS 서버(120)가 CDN DNS 서버(140)로 객체를 저장한 서버의 IP 어드레스를 질의하도록 할 수 있다.In addition, when the content provider DNS server 150 receives the IP address of the server storing the object included in the page from the local DNS server 120, the content provider DNS server 150 transmits the domain name information of the CDN provider to the local DNS server 120, The local DNS server 120 may query the CDN DNS server 140 for the IP address of the server storing the object.

이때, 로컬 DNS 서버(120)로 전송되는 도메인네임 정보는, 예를 들어, CNAME(Canonical NAME) 방식으로 전송될 수 있다. CNAME은 호스트 이름을 나타내는 별명의 DNS 데이터베이스 레코드를 의미하며, 로컬 네임 서버(120)는 해당 레코드에 포함된 CDN 사업자의 도메인네임 정보를 이용하여, CDN DNS 서버(140)로 객체를 저장한 서버의 IP 어드레스를 질의할 수 있다.In this case, the domain name information transmitted to the local DNS server 120 may be transmitted by, for example, a CNAME (Canonical NAME) method. The CNAME refers to a DNS database record of an alias representing a host name, and the local name server 120 uses the domain name information of the CDN provider included in the record to store the object in the CDN DNS server 140. You can query the IP address.

네트워크(170)는 클라이언트(110), 로컬 DNS 서버(120), 호스트서버(130), CDN DNS 서버(140), 컨텐츠 제공자 DNS 서버(150) 및 웹서버(160) 간의 데이터 전송, 정보 교환을 위한 데이터 통신망을 의미한다. 본 발명의 네트워크(170)는 인터넷, 인스라넷, 익스트라넷 또는 기타 널리 공지되었거나 향후 개발될 유선, 무선 또는 이들의 결합망을 포함한다.The network 170 transfers data and exchanges information between the client 110, the local DNS server 120, the host server 130, the CDN DNS server 140, the content provider DNS server 150, and the web server 160. Means a data communication network. The network 170 of the present invention includes the Internet, an Insnet, an extranet, or other wired, wireless, or combinations thereof well known or later developed.

본 발명의 일 실시예에 따른 CDN DNS 서버(140)의 구성 및 동작에 대해서는 도 2를 참조하여 좀 더 상세하게 설명하기로 한다.The configuration and operation of the CDN DNS server 140 according to an embodiment of the present invention will be described in more detail with reference to FIG. 2.

도 2는 본 발명의 일 실시예에 따른 도 1에 도시된 CDN DNS 서버(140)의 구성도이다. 도 1 및 도 2를 참조하면, 본 실시예에 따른 CDN DNS 서버(140)는 송수신부(141), 제어부(143), 데이터베이스(145) 및 판단모듈(147)을 포함한다.2 is a block diagram of the CDN DNS server 140 shown in FIG. 1 according to an embodiment of the present invention. 1 and 2, the CDN DNS server 140 according to the present embodiment includes a transceiver 141, a controller 143, a database 145, and a determination module 147.

송수신부(141)는 네트워크(170)를 통하여 데이터 전송 및 메시지 송수신 등을 하기 위한 인터페이스를 갖는다.The transceiver 141 has an interface for data transmission, message transmission and the like through the network 170.

데이터베이스(145)는 웹서버가 제공하는 페이지 내장형 객체를 저장한 하나 이상의 호스트서버(130) 및 웹서버(160)의 IP 어드레스 정보를 저장한 저장소이다.The database 145 is a storage storing IP address information of one or more host servers 130 and web servers 160 storing page embedded objects provided by a web server.

판단모듈(147)은 하나 이상의 호스트서버(130) 및 웹서버(160)와 클라이언트(110) 간의 지역적 인접성을 판단하는 기능을 한다. 이때, 지역적 인접성에 대한 판단은, 예를 들어, 클라이언트(110)의 IP 어드레스 정보를 이용하여 하나 이상의 호스트서버(130) 및 웹서버(160)와 인접하여 위치하는지 판단하는 방식으로 이루어질 수 있다.The determination module 147 functions to determine local proximity between the one or more host servers 130 and the web server 160 and the client 110. In this case, the determination of local proximity may be performed by determining, for example, whether the location is adjacent to the one or more host servers 130 and the web server 160 by using the IP address information of the client 110.

제어부(143)는 CDN DNS 서버(140)의 전체적인 동작을 제어한다. 본 발명에서 제어부(143)는 송수신부(141)를 통해, 클라이언트(110) 측의 로컬 DNS 서버(120)로부터 페이지에 포함된 객체를 저장한 서버의 IP 어드레스에 대해 질의를 받으면, 판단모듈(147)이 판단한 지역적 인접성 정보를 참조하여, 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 경우 웹서버(160)의 IP 어드레스를 송수신부(141)를 통해 로컬 DNS 서버(120)를 거쳐 클라이언트(110)로 전송한다.The controller 143 controls the overall operation of the CDN DNS server 140. In the present invention, the control unit 143 receives a query for the IP address of the server storing the object included in the page from the local DNS server 120 on the client 110 side, through the transceiver 141, the determination module ( 147, when the client 110 and the web server 160 are locally adjacent to each other, the IP address of the web server 160 is transmitted through the local DNS server 120 through the transceiver 141. Send to client 110.

반면, 판단모듈(147)이 판단한 결과, 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 정도보다, 하나 이상의 호스트서버(130)가 클라이언트(110)와 지역적으로 더 인접하다고 판단되는 경우, 해당 호스트서버(130)의 IP 어드레스를 송수신부(141)를 통해 로컬 DNS 서버(120)를 거쳐 클라이언트(110)로 전송한다.On the other hand, when the determination module 147 determines that the one or more host servers 130 are locally closer to the client 110 than the extent to which the client 110 and the web server 160 are locally adjacent to each other, The IP address of the host server 130 is transmitted to the client 110 via the local DNS server 120 through the transceiver 141.

이러한 방식을 통해, 클라이언트(110)는 지역적으로 인접한 서버에서 페이지에 포함된 객체를 제공받을 수 있다. 만일, 판단모듈(147)이 지역적으로 인접한 서버를 선정하였으나, 해당 서버의 데이터 트래픽이 임계치를 초과하는 등, 해당 객체를 제공하기에 적합하지 않은 경우, 제어부(143)는 클라이언트(110)와 지역적으로 인접한 다른 서버의 IP 어드레스를 송수신부(141)를 통해 로컬 DNS 서버(120)를 거쳐 클라이언트(110)로 전송함으로써, 서버의 부하 분산을 시도할 수 있다.In this manner, the client 110 may be provided with an object included in the page from a server that is locally adjacent. If the determination module 147 selects a server that is locally adjacent, but is not suitable for providing the object, such as the data traffic of the server exceeding a threshold, the controller 143 may be configured to be local to the client 110. By transmitting the IP address of another server adjacent to the server 110 through the local DNS server 120 via the transceiver 141, load balancing of the server can be attempted.

이때, 각 서버의 데이터 트래픽 정보는 일정 주기로 제어부(143)가 송수신부(141)를 통해 수집한 정보이거나, 판단모듈(147)이 송수신부(141) 통해 일정주기로 수집한 데이터 트래픽 정보를 제어부(143)가 참조한 정보일 수 있다.In this case, the data traffic information of each server is information collected by the control unit 143 through the transceiver 141 at regular intervals, or the data traffic information collected by the determination module 147 at regular intervals through the transceiver 141. 143 may be information referred to.

본 발명에 따른 컨텐츠 전달 과정에 대해서는 도 3 및 도 4를 참조하여 좀 더 상세하게 설명하기로 한다.The content delivery process according to the present invention will be described in more detail with reference to FIGS. 3 and 4.

도 3은 본 발명의 일 실시예에 따른 CP 참여형 컨텐츠 전달 방법의 흐름도이다. 도 3을 참조하면, 하나 이상의 호스트서버(130)는 컨텐츠 제공자의 페이지에 포함된 객체를 웹서버(160)로부터 전송받아 저장한다(S400). 단계(S400)에서의 컨텐츠 전송은, 예를 들어, 호스트서버(130)로부터의 요청이 있는 경우, 특정 시간마다, 웹서버(160) 내의 페이지에 포함된 객체가 갱신(update) 되는 경우 등에 이루어지도록 설정될 수 있다.3 is a flowchart of a CP participant content delivery method according to an embodiment of the present invention. Referring to FIG. 3, at least one host server 130 receives and stores an object included in a page of a content provider from the web server 160 (S400). The content transmission in step S400 is performed, for example, when there is a request from the host server 130, when an object included in a page in the web server 160 is updated at a specific time. Can be set to lose.

이후, 클라이언트(110)의 브라우저가 웹서버(160)로 컨텐츠를 요청하기 위한 URL 등을 입력받으면, 클라이언트(110)의 리졸버가 로컬 DNS 서버(120)로 페이지와 해당 페이지에 포함된 객체를 저장한 웹서버(160)의 IP 어드레스를 질의한다(S405).Thereafter, when the browser of the client 110 receives a URL for requesting content from the web server 160, the resolver of the client 110 stores the page and the objects included in the page to the local DNS server 120. The IP address of one web server 160 is queried (S405).

단계(S405)에서 웹서버(160)의 IP 어드레스 질의를 수신한 로컬 DNS 서버(120)는 페이지와 객체를 저장한 웹서버(160)의 IP 어드레스를 컨텐츠 제공자 측의 DNS 서버인 컨텐츠 제공자 DNS 서버(150)로 질의한다(S410).In step S405, the local DNS server 120 that receives the IP address query of the web server 160 receives the IP address of the web server 160 that stores the page and the object. In step 150, the query is made (S410).

단계(S410)에서 질의를 수신한 컨텐츠 제공자 DNS 서버(150)는 웹서버(160)의 IP 어드레스를 로컬 DNS 서버(120)로 전송하고(S415), 웹서버(160)의 IP 어드레스를 수신한 로컬 DNS 서버(120)는 웹서버(160)의 IP 어드레스를 클라이언트(110)로 전송한다(S420).The content provider DNS server 150 receiving the query in step S410 transmits the IP address of the web server 160 to the local DNS server 120 (S415), and receives the IP address of the web server 160. The local DNS server 120 transmits the IP address of the web server 160 to the client 110 (S420).

단계(S420)에서 웹서버(160)의 IP 어드레스를 수신한 클라이언트(110)는 이를 이용하여 웹서버(160)로 컨텐츠를 요청한다(S425).In step S420, the client 110 that receives the IP address of the web server 160 requests the content to the web server 160 by using the same (S425).

단계(S425)에서 컨텐츠 요청을 수신한 웹서버(160)는 페이지를 클라이언트(110)로 전송한다(S430). 이때의, 페이지 내의 객체 저장 위치를 나타내는 URL에는 CDN 사업자가 운용 및 관리하는 호스트서버(130)의 객체 저장 위치에 대응되는 URL 정보가 리라이팅(writing)되어 있다.Receiving the content request in step S425, the web server 160 transmits the page to the client 110 (S430). At this time, URL information corresponding to the object storage location of the host server 130 operated and managed by the CDN service provider is rewritten in the URL indicating the object storage location in the page.

단계(S430)에서 페이지를 수신한 클라이언트(110)는 해당 페이지를 파싱(parsing)한다(S435). 단계(S435)에서 클라이언트(110)가 페이지를 파싱하는 도중 페이지에 포함된 객체의 저장 위치를 나타내는 URL을 발견하면, 이를 이용하여 로컬 DNS 서버(120)로 페이지에 포함된 객체를 저장한 서버의 IP 어드레스를 질의한다(S440).The client 110 receiving the page in step S430 parses the page (S435). If the client 110 detects a URL indicating a storage location of the object included in the page while the client 110 parses the page, the server 110 stores the object included in the page to the local DNS server 120 using the same. The IP address is queried (S440).

단계(S440)에서 IP 어드레스 질의를 수신한 로컬 DNS 서버(120)는 CDN DNS 서버(140)로 해당 객체를 저장한 서버의 IP 어드레스를 질의한다(S445).Upon receiving the IP address query in step S440, the local DNS server 120 queries the CDN DNS server 140 for the IP address of the server storing the object (S445).

단계(S445)에서 IP 어드레스 질의를 수신한 CDN DNS 서버(140)는 하나 이상의 호스트서버(130) 및 웹서버(160)와 클라이언트(110) 간의 지역적 인접성을 판단한다(S450). 단계(S450)에서의 지역적 인접성 판단은, 예를 들어, 클라이언트(110)의 IP 어드레스를 참조하여 이루어질 수 있다.The CDN DNS server 140 receiving the IP address query in step S445 determines the local proximity between the one or more host servers 130 and the web server 160 and the client 110 (S450). The determination of local proximity in step S450 may be made, for example, by referring to the IP address of the client 110.

단계(S450)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 경우, CDN DNS 서버(140)는 로컬 DNS 서버(120)로 웹서버(160)의 IP 어드레스를 전송하고(S455), 로컬 DNS 서버(120)는 단계(S455)에서 수신한 웹서버(160)의 IP 어드레스를 클라이언트(110)로 전송한다(S460).As a result of the determination in step S450, when the client 110 and the web server 160 are locally adjacent, the CDN DNS server 140 transmits the IP address of the web server 160 to the local DNS server 120 (S450). In operation S455, the local DNS server 120 transmits the IP address of the web server 160 received in operation S455 to the client 110 in operation S460.

이후, 클라이언트(110)는 단계(S460)에서 수신한 웹서버(160)의 IP 어드레스 를 이용하여, 웹서버(160)로 객체를 요청하고(S465), 웹서버(160)로부터 해당 객체를 수신하게 된다(S470).Thereafter, the client 110 requests the object to the web server 160 using the IP address of the web server 160 received in step S460 (S465), and receives the object from the web server 160. It is made (S470).

본 발명의 일 실시예에서, 단계(S450)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 경우라도, 웹서버(160)의 데이터 트래픽이 임계치를 초과하는 경우에는 클라이언트(110)와 지역적으로 인접한 다른 웹서버나 호스트서버(130)의 IP 어드레스를 로컬 DNS 서버(120)로 전송하여 웹서버(160)의 부하가 증가하는 것을 방지할 수 있다.In an embodiment of the present invention, even when the client 110 and the web server 160 are locally adjacent as a result of the determination in step S450, when the data traffic of the web server 160 exceeds the threshold, the client ( It is possible to prevent the load of the web server 160 from being increased by transmitting the IP address of another web server or host server 130 adjacent to 110 to the local DNS server 120.

만일, 단계(S450)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 정도보다, 특정 호스트서버(130)가 클라이언트(110)와 지역적으로 더 인접한 경우, CDN DNS 서버(140)는 로컬 DNS 서버(120)로 해당 호스트서버(130)의 IP 어드레스를 전송하고(S475), 로컬 DNS 서버(120)는 단계(S475)에서 수신한 호스트서버(130)의 IP 어드레스를 클라이언트(110)로 전송한다(S480).If it is determined in step S450 that the client 110 and the web server 160 are closer to each other than the local proximity, the specific host server 130 is closer to the client 110, the CDN DNS server 140 ) Transmits the IP address of the host server 130 to the local DNS server 120 (S475), the local DNS server 120 receives the IP address of the host server 130 received in step (S475) 110) (S480).

이후, 클라이언트(110)는 단계(S480)에서 수신한 호스트서버(130)의 IP 어드레스를 이용하여, 호스트서버(130)로 객체를 요청하고(S485), 호스트서버(130)로부터 해당 객체를 수신하게 된다(S490).Thereafter, the client 110 requests the object to the host server 130 using the IP address of the host server 130 received in step S480 (S485), and receives the object from the host server 130. It is made (S490).

본 발명의 일 실시예에서, 단계(S450)에서의 판단결과 클라이언트(110)와 호스트서버(130)가 지역적으로 인접한 경우라도, 해당 호스트서버(130)의 데이터 트래픽이 임계치를 넘는 경우에는 클라이언트(110)와 지역적으로 인접한 웹서버(160)나 다른 호스트서버의 IP 어드레스를 로컬 DNS 서버(120)로 전송하여 부하의 분산을 시도할 수 있다.In an embodiment of the present invention, even when the client 110 and the host server 130 are geographically adjacent as a result of the determination in step S450, when the data traffic of the corresponding host server 130 exceeds a threshold, the client ( The load may be attempted by transmitting the IP address of the web server 160 or another host server adjacent to the local server 110 to the local DNS server 120.

도 4는 본 발명의 다른 일 실시예에 따른, CP 참여형 컨텐츠 전달 방법의 흐름도이다. 도 4를 참조하면, 단계(S400) 내지 단계(S425)는 전술한 도 3의 해당 단계와 그 과정이 동일하므로, 자세한 설명을 생략하기로 한다.4 is a flowchart illustrating a CP participant content delivery method according to another embodiment of the present invention. Referring to FIG. 4, steps S400 to S425 are the same as those of FIG. 3, and thus a detailed description thereof will be omitted.

단계(S425)에서 컨텐츠 요청을 수신한 웹서버(160)는 해당 페이지를 클라이언트(110)로 전송한다(S500). 단계(S500)에서 전송하는 페이지는 도 3을 참조하여 설명한 실시예와 달리, 페이지 내의 객체 저장 위치를 나타내는 URL이 리라이팅되지 않은 원본 그대로의 페이지일 수 있다.Receiving the content request in step S425, the web server 160 transmits the page to the client 110 (S500). Unlike the embodiment described with reference to FIG. 3, the page transmitted in operation S500 may be a page as it is, without a rewriting of a URL indicating an object storage location in the page.

단계(S500)에서 페이지를 수신한 클라이언트(110)는 해당 페이지를 파싱(parsing)한다(S505). 단계(S505)에서 클라이언트(110)가 페이지를 파싱하는 도중 페이지에 포함된 객체의 URL을 발견하면, 이를 이용하여 로컬 DNS 서버(120)로 페이지에 포함된 객체를 저장한 서버의 IP 어드레스를 질의한다(S510).The client 110 receiving the page in step S500 parses the corresponding page (S505). If the client 110 finds the URL of the object included in the page while parsing the page in step S505, it queries the local DNS server 120 for the IP address of the server storing the object included in the page. (S510).

단계(S510)에서 IP 어드레스 질의를 수신한 로컬 DNS 서버(120)는 컨텐츠 제공자 DNS 서버(150)로 해당 객체를 저장한 서버의 IP 어드레스를 질의한다(S515).Upon receiving the IP address query in step S510, the local DNS server 120 queries the content provider DNS server 150 for the IP address of the server that stores the object (S515).

단계(S515)에서 IP 어드레스 질의를 수신한 컨텐츠 제공자 DNS 서버(150)는 CDN 사업자의 도메인네임 정보를 로컬 DNS 서버(120)로 전달한다(S520). 이때, CDN 사업자의 도메인네임 정보는, 예를 들어, CNAME 리소스 레코드에 포함되어 전송될 수 있다.The content provider DNS server 150 receiving the IP address query in step S515 transfers the domain name information of the CDN provider to the local DNS server 120 (S520). In this case, the domain name information of the CDN provider may be included in the CNAME resource record and transmitted.

단계(S520)에서 도메인네임 정보를 수신한 로컬 DNS 서버(120)는 이를 이용하여 CDN DNS 서버(140)로 페이지에 포함된 객체를 저장한 서버의 IP 어드레스를 질의한다(S525).The local DNS server 120 receiving the domain name information in step S520 uses the CDN DNS server 140 to query the IP address of the server that stores the object included in the page (S525).

단계(S525)에서 IP 어드레스 질의를 수신한 CDN DNS 서버(140)는 하나 이상의 호스트서버(130) 및 웹서버(160)와 클라이언트(110) 간의 지역적 인접성을 판단한다(S530). 단계(S530)에서의 지역적 인접성 판단은, 예를 들어, 클라이언트(110)의 IP 어드레스를 참조하여 이루어질 수 있다.The CDN DNS server 140 receiving the IP address query in step S525 determines the local proximity between the one or more host servers 130 and the web server 160 and the client 110 (S530). The determination of local proximity in step S530 may be made, for example, by referring to the IP address of the client 110.

단계(S530)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 경우, CDN DNS 서버(140)는 로컬 DNS 서버(120)로 웹서버(160)의 IP 어드레스를 전송하고(S535), 로컬 DNS 서버(120)는 단계(S535)에서 수신한 웹서버(160)의 IP 어드레스를 클라이언트(110)로 전송한다(S540).As a result of the determination in step S530, when the client 110 and the web server 160 are locally adjacent, the CDN DNS server 140 transmits the IP address of the web server 160 to the local DNS server 120 (S530). In operation S535, the local DNS server 120 transmits the IP address of the web server 160 received in operation S535 to the client 110 in operation S540.

이후, 클라이언트(110)는 단계(S540)에서 수신한 웹서버(160)의 IP 어드레스를 이용하여, 웹서버(160)로 페이지에 포함된 객체를 요청하고(S545), 웹서버(160)로부터 해당 객체를 수신할 수 있다(S550).Thereafter, the client 110 requests the object included in the page to the web server 160 using the IP address of the web server 160 received in step S540 (S545), and from the web server 160. The object may be received (S550).

본 발명의 일 실시예에서, 단계(S450)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 경우라도, 웹서버(160)의 데이터 트래픽이 임계치를 넘는 경우에는 클라이언트(110)와 지역적으로 인접한 다른 웹서버나 호스트서버(130)의 IP 어드레스를 로컬 DNS 서버(120)로 전송하여 웹서버(160)의 부하가 증가하는 것을 방지할 수 있음은 상기한 바와 같다.In an embodiment of the present invention, even when the client 110 and the web server 160 are adjacent to each other as a result of the determination in step S450, when the data traffic of the web server 160 exceeds a threshold, the client 110. As described above, it is possible to prevent the load of the web server 160 from being increased by transmitting the IP address of another web server or host server 130 adjacent to the local DNS server 120 to the local DNS server 120.

만일, 단계(S530)에서의 판단결과 클라이언트(110)와 웹서버(160)가 지역적으로 인접한 정도보다, 특정 호스트서버(130)가 클라이언트(110)와 지역적으로 더 인접한 경우, CDN DNS 서버(140)는 로컬 DNS 서버(120)로 해당 호스트서버(130)의 IP 어드레스를 전송하고(S555), 로컬 DNS 서버(120)는 단계(S555)에서 수신한 호스 트서버(130)의 IP 어드레스를 클라이언트(110)로 전송한다(S560).If it is determined in step S530 that the client 110 and the web server 160 are closer to each other than the local proximity, the specific host server 130 is closer to the client 110, the CDN DNS server 140 ) Transmits the IP address of the host server 130 to the local DNS server 120 (S555), and the local DNS server 120 receives the IP address of the host server 130 received in step S555. Transmit to 110 (S560).

이후, 클라이언트(110)는 단계(S560)에서 수신한 호스트서버(130)의 IP 어드레스를 이용하여, 호스트서버(130)로 객체를 요청하고(S565), 호스트서버(130)로부터 해당 객체를 수신하게 된다(S570).Thereafter, the client 110 requests the object to the host server 130 using the IP address of the host server 130 received in step S560 (S565), and receives the object from the host server 130. It is made (S570).

본 발명의 일 실시예에서, 단계(S530)에서의 판단결과 클라이언트(110)와 호스트서버(130)가 지역적으로 인접한 경우라도, 해당 호스트서버(130)의 데이터 트래픽이 임계치를 넘는 경우에는 클라이언트(110)와 지역적으로 인접한 웹서버(160)나 다른 호스트서버의 IP 어드레스를 로컬 DNS 서버(120)로 전송하여 부하의 분산을 시도할 수 있음은 상기한 바와 같다.In an embodiment of the present invention, even when the client 110 and the host server 130 are geographically adjacent as a result of the determination in step S530, when the data traffic of the corresponding host server 130 exceeds a threshold, the client ( As described above, an IP address of the web server 160 or another host server adjacent to the server 110 may be transmitted to the local DNS server 120 to attempt to distribute the load.

이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것은 아니며, 기술적 사상의 범주를 일탈함 없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.As described above and described with reference to a preferred embodiment for illustrating the technical idea of the present invention, the present invention is not limited to the configuration and operation as shown and described as such, without departing from the scope of the technical idea It will be understood by those skilled in the art that many changes and modifications to the present invention are possible. And all such modifications and changes as fall within the scope of the present invention are therefore to be regarded as being within the scope of the present invention.

본 발명에 의하면 클라이언트가 웹서버 또는 하나 이상의 호스트서버 중 클라이언트와 지역적으로 인접한 서버에서 페이지에 포함된 객체를 수신할 수 있으며, 이로 인해, 클라이언트는 신속하게 객체를 수신할 수 있고, 컨텐츠 제공자는 사용자의 편의 증진으로 인한 서비스의 질적 향상을 도모할 수 있다.According to the present invention, a client can receive an object included in a page from a web server or one or more host servers locally adjacent to the client, whereby the client can receive the object quickly and the content provider can receive the user. The quality of service can be improved by improving convenience.

도 1은 본 발명의 일 실시예에 따른 CP 참여형 컨텐츠 전달 시스템의 구성도이다.1 is a block diagram of a CP participating content delivery system according to an embodiment of the present invention.

도 2는 도 1에 도시된 CDN DNS 서버의 구성도이다.FIG. 2 is a configuration diagram of the CDN DNS server shown in FIG. 1.

도 3은 본 발명의 일 실시예에 따른 CP 참여형 컨텐츠 전달 방법의 흐름도이다.3 is a flowchart of a CP participant content delivery method according to an embodiment of the present invention.

도 4는 본 발명의 다른 실시예에 따른 CP 참여형 컨텐츠 전달 방법의 흐름도이다.4 is a flowchart illustrating a CP participant content delivery method according to another embodiment of the present invention.

Claims (11)

페이지에 포함된 객체를 수신하여 저장하고 클라이언트의 요청이 있는 경우 상기 객체를 상기 클라이언트로 전송하는 하나 이상의 호스트서버;At least one host server for receiving and storing an object included in a page and transmitting the object to the client at the request of the client; 상기 페이지와 상기 객체를 저장하고, 상기 객체를 상기 하나 이상의 호스트서버로 전송하여 저장하도록 하며, 상기 클라이언트의 요청이 있는 경우 상기 페이지 또는 상기 객체를 상기 클라이언트로 전송하는 웹서버; 및A web server for storing the page and the object, transmitting the object to the one or more host servers, and storing the page and the object, and transmitting the page or the object to the client at the request of the client; And 상기 클라이언트 측의 로컬 DNS(Domain Name System) 서버로부터 상기 객체를 저장한 서버의 IP(Internet Protocol)에 대해 질의를 수신한 경우 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트와 지역적으로 인접한 서버를 선정하고 상기 선정된 서버의 IP 어드레스를 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 CDN(Contents Delivery Network) DNS 서버를 포함하는 CP(Contents Provider) 참여형 컨텐츠 전달 시스템.When a query is received from the local domain name system (DNS) server on the client side about an Internet Protocol (IP) of the server storing the object, one of the one or more host servers and the web server is located locally adjacent to the client. Contents Provider (CP) participating content delivery system comprising a CDN (Contents Delivery Network) DNS server that selects and transmits the selected IP address of the server to the client through the local DNS server. 제1항에 있어서, 상기 CDN DNS 서버는The method of claim 1, wherein the CDN DNS server is 상기 클라이언트의 IP 어드레스를 참조하여 상기 클라이언트와 지역적으로 인접한 서버를 선정하는 것을 특징으로 하는 CP 참여형 컨텐츠 전달 시스템.CP participating content delivery system, characterized in that for selecting a server locally adjacent to the client with reference to the IP address of the client. 제1항에 있어서, 상기 CDN DNS 서버는The method of claim 1, wherein the CDN DNS server is 상기 선정된 서버의 데이터 트래픽이 임계치를 초과하는 경우 상기 클라이언 트와 지역적으로 인접한 다른 서버를 선정하는 것을 특징으로 하는 CP 참여형 컨텐츠 전달 시스템.And selecting another server that is locally adjacent to the client when the data traffic of the selected server exceeds a threshold. 데이터 송수신을 위한 송수신부;Transceiver for transmitting and receiving data; 페이지에 포함된 객체를 저장한 하나 이상의 호스트서버 및 상기 페이지와 상기 객체를 제공하는 웹서버의 IP 어드레스를 저장한 데이터베이스;At least one host server storing an object included in a page, and a database storing an IP address of the page and a web server providing the object; 상기 하나 이상의 호스트서버 및 상기 웹서버 중 하나 이상의 서버와 임의의 클라이언트 간의 지역적 인접성을 판단하는 판단모듈; 및A determination module for determining local proximity between at least one of the at least one host server and the web server and any client; And 상기 송수신부를 통해 상기 페이지를 수신한 클라이언트 측의 로컬 DNS 서버로부터, 상기 객체를 저장한 서버의 IP 어드레스 질의를 수신하면, 상기 판단모듈이 판단한 결과를 참조하여 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트로 상기 객체를 전송할 특정 서버를 선정하고, 상기 데이터베이스에 저장된 상기 IP 어드레스를 참조하여 상기 선정된 특정 서버의 IP 어드레스를 상기 송수신부를 거쳐 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 제어부를 포함하는 CDN DNS 서버.Receiving the IP address query of the server storing the object from the local DNS server of the client side receiving the page through the transceiver unit, among the one or more host server and the web server with reference to the determination result A control unit for selecting a specific server to transmit the object to the client and transmitting the IP address of the selected specific server to the client through the local DNS server through the transceiver unit by referring to the IP address stored in the database. CDN DNS server. 제4항에 있어서, 상기 판단모듈은The method of claim 4, wherein the determination module 상기 임의의 클라이언트의 IP 어드레스를 참조하여 지역적 인접성을 판단하는 것을 특징으로 하는 CDN DNS 서버.CDN DNS server, characterized in that determining the local proximity by referring to the IP address of the arbitrary client. 제4항에 있어서, 상기 제어부는The method of claim 4, wherein the control unit 상기 선정된 서버의 데이터 트래픽이 임계치를 초과하는 경우 상기 클라이언트와 지역적으로 인접한 다른 서버를 선정하는 것을 특징으로 하는 CDN DNS 서버.And selecting another server that is locally adjacent to the client when the data traffic of the selected server exceeds a threshold. 하나 이상의 호스트서버가 웹서버로부터 페이지에 포함된 객체를 수신하여 저장하는 저장단계;A storage step of receiving at least one host server an object included in a page from a web server and storing the object; 클라이언트로부터 상기 페이지를 요청받은 상기 웹서버가 상기 페이지를 상기 클라이언트로 전송하는 페이지 전송단계; 및A page transmission step of transmitting the page to the client by the web server receiving the page request from the client; And 상기 페이지를 수신한 상기 클라이언트 측의 로컬 DNS 서버로부터, 상기 객체를 저장한 서버의 IP 어드레스 질의를 수신한 CDN DNS 서버가, 상기 하나 이상의 호스트서버 및 상기 웹서버 중 상기 클라이언트와 지역적으로 인접한 서버를 선정하고 상기 선정된 서버의 IP 어드레스를 상기 로컬 DNS 서버를 통해 상기 클라이언트로 전송하는 어드레스 전송단계를 포함하는 CP 참여형 컨텐츠 전달 방법.The CDN DNS server that receives the IP address query of the server that stores the object from the local DNS server of the client side that receives the page, selects one of the one or more host servers and the web server that is locally adjacent to the client. Selecting and transmitting an IP address of the selected server to the client through the local DNS server. 제7항에 있어서, 상기 어드레스 전송단계는The method of claim 7, wherein the address transfer step is 상기 CDN DNS 서버가 상기 클라이언트의 IP 어드레스를 참조하여 상기 서버를 선정하는 것을 특징으로 하는 CP 참여형 컨텐츠 전달 방법.And the CDN DNS server selects the server by referring to the IP address of the client. 제7항에 있어서, 상기 어드레스 전송단계에서 상기 CDN DNS 서버가 수신한 IP 어드레스 질의는8. The method of claim 7, wherein the IPN query received by the CDN DNS server in the address transfer step is 상기 클라이언트가 상기 페이지를 수신하고 파싱(parsing)하여 발견한 상기 객체의 저장위치를 나타나는 URL(Uniform Resource Locator)을 이용하여 상기 로컬 DNS 서버로 상기 객체를 저장한 서버의 IP 어드레스를 질의하여 이루어진 것을 특징으로 하는 CP 참여형 컨텐츠 전달 방법.The client receives the page and parses the IP address of the server storing the object by using a Uniform Resource Locator (URL) indicating a storage location of the object found by parsing. CP participant content delivery method characterized in that. 제7항에 있어서, 상기 어드레스 전송단계에서 상기 CDN DNS 서버가 수신한 IP 어드레스 질의는8. The method of claim 7, wherein the IPN query received by the CDN DNS server in the address transfer step is 상기 클라이언트로부터 상기 IP 어드레스 질의를 수신한 상기 로컬 DNS 서버가 컨텐츠 제공자 측의 DNS 서버로 상기 객체를 저장한 서버의 IP 어드레스 질의를 하고 상기 컨텐츠 제공자 측의 DNS 서버로부터 CDN 사업자의 도메인네임 정보를 수신하여 상기 CDN DNS 서버로 질의한 것을 특징으로 하는 CP 참여형 컨텐츠 전달 방법.The local DNS server receiving the IP address query from the client makes an IP address query of a server storing the object to a DNS server of a content provider and receives domain name information of a CDN provider from a DNS server of the content provider. And the CDN DNS server inquires about the CP participation content delivery method. 제10항에 있어서, 상기 로컬 DNS서버가 수신한 도메인네임 정보는11. The method of claim 10, wherein the domain name information received by the local DNS server is CNAME(Canonical NAME) 레코드에 포함하여 수신한 것을 특징으로 하는 CP 참여형 컨텐츠 전달 방법.CP participation type content delivery method, characterized in that received in the CNAME (Canonical NAME) record.
KR1020090073545A 2008-08-13 2009-08-10 Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof KR101089058B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020080079612 2008-08-13
KR20080079612 2008-08-13

Publications (2)

Publication Number Publication Date
KR20100020912A KR20100020912A (en) 2010-02-23
KR101089058B1 true KR101089058B1 (en) 2011-12-05

Family

ID=42090832

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090073545A KR101089058B1 (en) 2008-08-13 2009-08-10 Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof

Country Status (1)

Country Link
KR (1) KR101089058B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120076637A (en) 2010-12-08 2012-07-09 주식회사 케이티 System and method for content-centric services using ultra-peer
KR102193481B1 (en) * 2015-08-17 2020-12-21 에스케이텔레콤 주식회사 Proxy server, method of reconfigurating of web page using the same

Also Published As

Publication number Publication date
KR20100020912A (en) 2010-02-23

Similar Documents

Publication Publication Date Title
US11805184B2 (en) Content delivery systems and methods
US8527635B2 (en) Contents delivery system and method, web server and contents provider DNS server thereof
US8214524B2 (en) System and method for selecting an optimal authoritative name server
US20020016860A1 (en) System and method for resolving network layer anycast addresses to network layer unicast addresses
US20090013083A9 (en) System and method for using a mapping between client addresses and addresses of caches to support content delivery
JP2017536606A (en) Long tail content processing in content distribution networks
US20100121914A1 (en) Contents delivery system and method based on content delivery network provider and replication server thereof
EP2319229B1 (en) Operation of a content distribution network
KR101082362B1 (en) System and Method for contents delivery, and web server and contents provider DNS server thereof
KR101089058B1 (en) Contents Provider participation type contents delivery system and method, and Contents Delivery Network Domain Name System Server thereof
KR20100020909A (en) System and method for contents delivery using page redirection, and gslb switch thereof
KR20100054661A (en) System and method for contents delivery based on multiple content delivery network providers
KR101088023B1 (en) System and Method for contents delivery using object redirection, and GSLB switch thereof
KR101066871B1 (en) System and method for content delivery using cache server and browser cache
KR101160542B1 (en) System and method for contents delivery based on multiple Content Delivery Network providers, and content provider name server thereof
KR100944156B1 (en) Web server load balancing system and method
KR101109524B1 (en) System and method for contents delivery based on multiple Content Delivery Network providers, and content provider name server thereof
KR20100054660A (en) System and method for contents delivery based on multiple content delivery network providers, and content server thereof
KR101137249B1 (en) System and method for contents delivery based on multiple Content Delivery Network providers, and content server thereof
KR20100053372A (en) System and method for contents delivery based on content delivery network provider, and replication server thereof
KR20100055295A (en) System and method for contents delivery based on multiple content delivery network providers
KR20100054659A (en) System and method for contents delivery based on multiple content delivery network providers, and content server thereof
EP2159991A1 (en) Accessing a content distribution network
WO2001084803A2 (en) System and method for resolving network layer anycast addresses to network layer unicast addresses

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141022

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151022

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171026

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181101

Year of fee payment: 8