KR20050021752A - 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘 - Google Patents

분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘 Download PDF

Info

Publication number
KR20050021752A
KR20050021752A KR1020030058939A KR20030058939A KR20050021752A KR 20050021752 A KR20050021752 A KR 20050021752A KR 1020030058939 A KR1020030058939 A KR 1020030058939A KR 20030058939 A KR20030058939 A KR 20030058939A KR 20050021752 A KR20050021752 A KR 20050021752A
Authority
KR
South Korea
Prior art keywords
shared
proxy
proxies
hot spot
server
Prior art date
Application number
KR1020030058939A
Other languages
English (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 정길도
Priority to KR1020030058939A priority Critical patent/KR20050021752A/ko
Publication of KR20050021752A publication Critical patent/KR20050021752A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/58Caching of addresses or names
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/59Network arrangements, protocols or services for addressing or naming using proxies for addressing
    • 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/10Architectures or entities
    • H04L65/1045Proxies, e.g. for session initiation protocol [SIP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

월드 와이드 웹에서 사용자의 요청에 대한 웹 서버의 신속하고 정확한 서비스는 매우 중요하다. 그러나 인터넷 사용자의 급속한 증가로 인하여 신속한 서비스가 어려운 상황이다. 이러한 문제를 해결하는 방법으로 분산 웹 캐싱이 사용되고 있다. 분산 웹 캐싱의 성능은 히트율에 의해서 결정되며 히트율은 메모리 사이즈, 서버의 처리속도, 로드밸런싱등에서 커다란 영향을 받는다. 기존의 로드밸런싱은 주로 현재의 시스템 상태를 기준으로 실시하고 있으나, 미래에 발생할 서비스를 예측하는 방법을 이용하여 실시함으로 히트율의 향상이 가능하다.
본 발명은 웹 서버와 공유 프록시들 사이에 요청이 가장 빈번한 핫 스팟에 대하여 예측모델(신경망, 통계방법, 시스템 동적방법, 인공지능등)을 이용하여 미리 예측하고, 예측된 핫 스팟을 공유한 프록시에 미리 패치함으로 프록시의 활용을 개선하는 핫 스팟 예측 알고리즘(Hot Spot Prediction Algorithm)이다. 여기에서 핫 스팟은 가장 인기있는 컨텐츠의 집합이다. 공유 프록시 사이에서 핫 스팟을 분산하는 방법은 현재 시스템의 로드 상태를 분석하고, 로드가 적게 부과된 프록시들에 우선적으로 패치한다. 이러한 방법을 이용함으로 향후 발생할 과다한 서비스에 대한 요구가 해결되고, 히트율의 개선을 가져올 수 있게 된다. 시스템은 해싱(일반적인 해싱, consistent hashing)을 기반으로 구성하였고, 시뮬레이션을 위하여 프로그램 언어인 PERL을 이용하여 시뮬레이터를 작성하였다. 시뮬레이션을 통하여 본 발명의 컨시스턴스 해싱을 기반으로 시스템을 구성하고 제안한, 핫 스팟 예측 알고리즘이 기존 방법중의 하나인 컨시스턴스 해싱에 비교하여 볼 때 로드밸런싱과 히트율 측면에서 성능이 향상되었다.

Description

분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘{Hot Spot Prediction Algorithm for Development of Distributed Web Caching System}
본 발명은 현재 구성되어 있는 네트워크의 구조에서 사용자에게 신속하고 정확한 정보를 제공하고자 하는 것으로서, 좀더 상세하게는 사용자에 의해서 가장 많이 요청되는 컨텐츠들을 미리 예측하여 공유된 다른 프록시에 미리 패치함으로 향우에 발생될 서비스에 대하여 즉각적으로 처리하여 서비스의 질을 향상 시키는 것이다. 그러나 현재의 인테넷을 이용한 데이터 전송은 네트워크상의 예측할 수 없는 지연과 전송의 실패가 빈번하게 발생하는 경향이 있는데, 이러한 지연과 실패는 네트워크상의 스웜프(swamp)된 서버와 병목현상(bottleneck)으로 인하여 발생한다. 서버의 최대 처리 용량에 비하여 많은 양의 요청을 받았을 때 정보 제공이 매우 느리거나 실패하게 되는현상을 서버의 스웜프 상태라 한다. 또한 병목현상은 네트워크에서 데이터 전송이 갑자기 느려지거나 정체하는 것으로서 사용자의 폭주에 의해서 발생한다. 이런한 문제는 웹 캐싱을 사용하여 어느정도 감소 효과를 얻을 수 있지만, 급증하는 인터넷 사용자의 요구에 대하여 초기 설치된 시설만으로는 신속한 요청을 기대하는 사용자의 요구를 만족시키기 어렵다. 최근에는 사용자의 요구를 만족시키고, 효과적인 네트워크의 자원 활용을 위하여 분산 웹 캐싱을 사용하고 있는데, 일반적인 캐싱의 의미는 요청빈도가 높은 웹 컨텐츠를 사용자와 근접한 로컬서버에 저장시키는 방법으로 트랙픽이 많은 라우팅 경로를 통과해 원격지의 웹 서버에 접속할 필요가 없어 서비스 효율과 품질을 동시에 개선할 수 있는 기술이다. 이를 확장한 분산 웹 캐싱은 네트워크 상에 여러 프록시를 두고 각 프록시들이 담당하는 컨텐츠들을 미리 자신의 메모리에 저장함으로 사용자의 요구에 즉각 대응할 수 있다. 또한 분산 웹 캐싱 시스템은 사용자에게 네트워크상의 가장 가까운 프록시에 접속하게 하거나, 연결 시간이 짧은 프록시에 접속하게 함으로 응답시간을 빠르게 한다. 그리고 해쉬 라우팅을 사용함으로 여러 프록시에 웹 컨텐츠의 중복 복사를 방지하여 프록시의 효율을 최대화 시킨다.
이러한 시스템을 구축하기 위한 알고리즘의 일례로서 CARP(cache array routing protocol)또는 글로벌 호스팅 시스템등을 들 수 있다. CARP이나 글로벌 호스팅 시스템등은 특정 컨텐츠에 대하여 과다하게 요청되었을 때, 공유된 프록시에 분산 처리함으로 서비스에 대한 과부하를 줄여 나간다. 하지만 공유 프록시에 과부화 요청된 컨텐츠를 분산시켜 처리할 때, 분산시킬 컨텐츠에 대한 정보는 현재의 로드상태를 확인하여 로드밸런싱을 수행한다. 이러한 방법은 과부화 요청에 대한 트랙픽은 다소 감소될 수 있지만 근본적으로 해결하지는 못한다.
본 발명은 상기와 같은 문제점을 해소하기 위해 웹 서버나 공유된 프록시의 중의 특정 프록시에서 서비스하고 있는 특정 컨텐츠에 대한 요청이 폭주하기 전에 예측모델을 이용하여 미리 이 특정 컨텐츠를 예측하고, 공유된 다른 프록시에 분산 패치함으로서 폭주에 대한 서비스의 지연시간을 줄이고, 서버가 스웜프되는 것을 방지함은 물론, 최적화된 시스템을 구축하는데 본 발명의 목적이 있다.
이와 같은 목적을 달성하기 위한 본 발명은, 사용자가 웹 서버나 프록시에 접속하여 행한 모든 작업들을 기록한 access_log 파일을 이용하여, 어느 특정한 프록시에서 요청 빈도수가 높은 몇 개의 컨텐츠에 대하여 분석한다. access_log 파일은 웹 서버를 통해 이루어지는 모든 작업들을 기록한 파일이다. 사용자가 웹 서버에 접속하면 모든 작업이 이 파일에 데이터로 남게 된다. 즉, 특정 웹 페이지를 사용자가 요구하면, 웹 서버는 해당 웹 페이지와 관련된 모든 컨텐츠들에 접근하게 된다. 따라서 사용자가 요청하는 웹 페이지뿐만 아니라 그 페이지와 관련된 이미지 파일, 링크 데이터등 요청된 컨텐츠를 처리하는 모든 과정의 정보가 이 파일에 저장되는 것이다. 그러므로 이 파일의 분석을 통해 요청 데이터 수, 접속시간, 방문자 수 및 방문 경로등의 요청에 대한 사용자의 패턴을 얻을 수 있는 중요한 자료가 된다.
본 발명은 웹이나 프록시에서 서비스를 제공하는 컨텐츠들을 시간의 경과에 따라 요청한 시간과 그때 요청된 컨텐츠들을 추출하여 데이터로 이용하였다. 예측하는 방법으로는 예측모델(신경망, 통계방법, 시스템 동적방법, 인공지능등)을 이용한 시계열 방식을 이용하여 access_log 파일에서 추출한 데이터를 사용하여 요청에 대한 패턴을 학습 시킨다. 요청에 대한 패턴을 학습시킨 예측모델을 이용하여 향후 요청될 양을 예측한다. 그리고 예측된 요청량에 비례하여 핫 스팟을 분산 가능한 공유 프록시에 로드밸런싱 방법에 따라 미리 패치시킨다. 이러한 방식으로 핫 스팟을 지리적으로 가까운 곳에 패치시키면 갑자기 폭증할 요청량에 대비함으로 컨텐츠 전송 네트워크(content delivery network)의 성능을 증가 시킬 수 있게 된다.
이하 첨부된 도면에 의해 상세히 설명하면 다음과 같다.
본 발명을 위해서 구성한 시스템은 도 1에서 보는 바와 같이 글로벌 호스팅 시스템과 동일하지만, 소프트웨어적으로 핫 스팟을 예측하여 5의 과정을 먼저 수행한다. 도 1에서 수행 과정을 자세히 살펴보면 다음과 같다. 먼저 사용자가 웹 서버에게 컨텐츠를 요청한다. 그러면 상위 도메인 네임 서버(DNS)에서는 도메인을 해석하여 사용자에게 지리적으로 가까운 하위 도메인 네임 서버의 주소를 사용자에게 보내준다. 사용자는 다시 하위 도메인 네임 서버에게 요청받은 컨텐츠가 할당된 프록시의 주소를 요청하고, 하위 도메인 네임 서버에서는 가장 가까운 가상 호스트 주소를 사용자에게 넘겨주게 된다. 하위 도메인 네임 서버에서는 가상 호스트 네임을 실제 주소로 바꾸어 주는 역할을 하게 된다. 이때 사용자는 하위 도메인 네임 서버에서 제공한 프록시에 원하는 컨텐츠를 요청한다. 요청한 자료가 존재하면 프록시는 서비스를 제공하고, 그렇지 않을 경우에는 프록시가 오리지날 웹 서버에게 컨텐츠 자료를 요청하여 사용자에게 제공한다. 또한 자신의 캐시 메모리에도 자료를 저장하여 향우에 요청될 때 사용하게 된다.
시뮬레이터는 수정이 용이하고, 관리의 편의성을 위하여 모듈화 방식으로 작성하였으며, 프로그램밍 언어인 PREL을 사용하였다. 시뮬레이터의 전체적인 구성은 도 2와 같다. 시뮬레이션을 실시할 때 관련된 모듈의 흐름을 살펴보면 다음과 같다.
모든 프로그램의 모듈에 관련된 옵션들은 Test.pl에서 설정 할 수 있다. 이때 사용가능한 옵션의 목록을 살펴보면, 공유 프록시의 총 개수, 하나의 컨텐츠를 처리할 수 있는 속도, 캐시 메모리의 사이즈, 예측할 때의 오차를 고려하여 오차율등을 셋팅할 수 있도록 하였다. 각 모듈은 도 2에서 보는 봐와 같이 Test.pl, Virtual.pm, Web.pm, Dns.pm과 Proxy.pm으로 구성되어 있다. Virtual.pm에서는 전체적인 시뮬레이션을 담당하고, 이곳에서 모든 데이터가 처리되어진다. Web.pm에서는 컨텐츠를 요청하는 기능을 수행하고, Dns.pm에서는 요청받은 컨텐츠를 어느 프록시에 할당 시킬 것인가를 결정하며, Proxy.pm에서는 할당 받은 컨텐츠를 캐시 메모리에 저장한다.
이상에서 상술한 바와같이 본 발명은, 웹 서버나 공유된 프록시에서 요청이 빈번한 핫 스팟을 신경망을 이용하여 미리 예측하고, 예측된 핫 스팟을 공유된 다른 프록시에 분산 패치함으로 프록시간의 요청받는 편차가 줄어들게 되어 프록시의 효율을 증가시킴은 물론, 신속하게 요청에 대한 서비스를 해줌으로써 서비스의 질을 향상시키게 된다. 이러한 효과를 확인하기 위하여 시뮬레이터를 구성하였다. 실제 시스템을 구축하기 전에 시뮬레이션을 통하여 최적화된 시스템의 구성이 가능하다.
도 1은 글로벌 호스팅 시스템에 기반하여 제안된 시스템의 구성도.
도 2는 본 발명에서 사용되는 시뮬레이터의 데이터 처리 흐름도.

Claims (1)

1. 웹 서버와 공유 프록시들 사이에 요청이 가장 빈번한 핫 스팟을 예측모델(신경망, 통계방법, 시스템 동적방법, 인공지능등)을 이용하여 미리 예측하고, 예측된 핫 스팟을 공유한 프록시에 미리 패치함으로 프록시의 활용을 개선하는 핫 스팟 예측 알고리즘.
2. 실제 시스템을 구축하기 전에 시뮬레이션을 통하여 최적화된 시스템의 구성을 가능하게 하는 시뮬레이터.
KR1020030058939A 2003-08-26 2003-08-26 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘 KR20050021752A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030058939A KR20050021752A (ko) 2003-08-26 2003-08-26 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030058939A KR20050021752A (ko) 2003-08-26 2003-08-26 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘

Publications (1)

Publication Number Publication Date
KR20050021752A true KR20050021752A (ko) 2005-03-07

Family

ID=37229935

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030058939A KR20050021752A (ko) 2003-08-26 2003-08-26 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘

Country Status (1)

Country Link
KR (1) KR20050021752A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11562042B2 (en) 2019-02-15 2023-01-24 Guizhou Baishancloud Technology Co., Ltd. Intelligent hotspot scattering method, apparatus, storage medium, and computer device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11562042B2 (en) 2019-02-15 2023-01-24 Guizhou Baishancloud Technology Co., Ltd. Intelligent hotspot scattering method, apparatus, storage medium, and computer device

Similar Documents

Publication Publication Date Title
US10404790B2 (en) HTTP scheduling system and method of content delivery network
RU2549135C2 (ru) Система и способ для обеспечения более быстрой и более эффективной передачи данных
US6888836B1 (en) Method for allocating web sites on a web hosting cluster
US8166197B2 (en) Multipath routing process
US8200842B1 (en) Automatic traffic control using dynamic DNS update
US9407570B2 (en) Method, apparatus, and system for allocating CDN volume
US6122666A (en) Method for collaborative transformation and caching of web objects in a proxy network
US6317778B1 (en) System and method for replacement and duplication of objects in a cache
US7117242B2 (en) System and method for workload-aware request distribution in cluster-based network servers
CN111327461A (zh) 一种基于cdn系统的域名管理方法、装置、设备及介质
US10404603B2 (en) System and method of providing increased data optimization based on traffic priority on connection
EP3066577B1 (en) Content node selection using network performance profiles
CN109951543A (zh) 一种cdn节点的数据查找方法、装置及网络设备
Liang et al. A location‐aware service deployment algorithm based on K‐means for cloudlets
CN112698941A (zh) 一种基于动态负载均衡的实时数据库查询方法
Benkacem et al. Integrated ICN and CDN Slice as a Service
CN112087382B (zh) 一种服务路由方法及装置
CA3072956C (en) System and method for metro mid-tier mapping in a content delivery network
KR20050021752A (ko) 분산 웹 캐싱의 성능 향상을 위한 핫 스팟의 예측 알고리즘
KR20040001355A (ko) 멀티미디어 컨텐츠 분배망 구성 방법 및 그를 이용한멀티미디어 컨텐츠 서비스 방법
Iyengar et al. Enhancing web performance
CN113301445B (zh) 一种内容分发网络的地址分配方法和装置
Asaka et al. Distributed web caching using hash-based query caching method
CN109302505B (zh) 数据传输方法、系统、装置和存储介质
Makhkamov et al. A survey of cache placement algorithms in content delivery networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application