KR20030053285A - 웹 캐쉬 대체 구조 및 방법 - Google Patents

웹 캐쉬 대체 구조 및 방법 Download PDF

Info

Publication number
KR20030053285A
KR20030053285A KR1020010083462A KR20010083462A KR20030053285A KR 20030053285 A KR20030053285 A KR 20030053285A KR 1020010083462 A KR1020010083462 A KR 1020010083462A KR 20010083462 A KR20010083462 A KR 20010083462A KR 20030053285 A KR20030053285 A KR 20030053285A
Authority
KR
South Korea
Prior art keywords
web
cache
server
file
file type
Prior art date
Application number
KR1020010083462A
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 KR1020010083462A priority Critical patent/KR20030053285A/ko
Publication of KR20030053285A publication Critical patent/KR20030053285A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Abstract

본 발명은 인터넷 상에서 자주 접근되는 웹 개체를 캐쉬에 저장하여 관리하는 프락시 서버에서 웹 캐쉬 내에 저장된 웹 개체 삭제 관리를 효율적으로 수행할 수 있도록 한 웹 캐쉬 대체 구조 및 방법에 관한 것으로, 인터넷의 특성상 웹 개체들은 그 크기에 상당한 차이가 있을 뿐 아니라 클라이언트들은 보다 다양한 분야의 정보를 이용함에 따라 종래의 웹 캐쉬 대체 알고리즘을 이용하여 웹 캐쉬를 관리하기에는 한계가 있으며, 이로 인해 클라이언트의 다양한 요구에 적합한 웹 캐쉬 성능을 제공하지 못하는 문제점이 있었다.
따라서, 본 발명은 인터넷 상에서 서버로부터 전송되는 크기가 서로 다른 웹 개체를 파일 타입에 따라 분류하여 각각에 해당되는 분할 캐쉬에 저장해서 바이트 히트율을 보장하고, 각 분할 캐쉬 내에서는 LRU(Least Recently Used) 알고리즘에 따라 웹 개체를 삭제하도록 관리하여 응답 히트율을 보장함으로써, 바이트 히트율과 응답 히트율이 모두 보장되는 웹 캐쉬 기능을 제공할 수 있게 된다.

Description

웹 캐쉬 대체 구조 및 방법{Logic Architecture And Method For Web Cache Alternate}
본 발명은 웹 캐쉬 대체에 관한 것으로, 특히 인터넷 상에서 자주 접근되는웹 개체를 캐쉬에 저장하여 관리하는 프락시 서버에서 웹 캐쉬 내에 저장된 웹 개체 삭제 관리를 효율적으로 수행할 수 있도록 한 웹 캐쉬 대체 구조 및 방법에 관한 것이다.
일반적으로, 인터넷(Internet)이란 각 지역, 국가에 산재해 있는 수많은 네트웍들이 TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜을 통해 연결되어 있는 글로벌 네트웍을 의미하는 것으로, 각종 정보를 제공하는 서버(Server)와 서버에 접속하여 정보를 이용하는 클라이언트(Client)로 구성되어 있다.
이때, 인터넷 상에는 웹 서버, FTP 서버, 뉴스 서버, 메일 서버, 팩스 서버, IRC 서버 등과 같이 일반적인 인터넷 서비스를 제공하는 서버 이외에 특수한 서비스를 제공하는 프락시(Proxy) 서버가 존재하는데, 이러한 프락시 서버를 포함하는 네트웍 구조는 첨부된 도면 도 1과 같으며, 해당 프락시 서버(20)는 클라이언트(10)의 데이터 요청시 서버(30)로부터 가져온 데이터를 자신의 캐쉬 영역에 저장하여 관리하는 네트웍 데이터 캐쉬 기능과, 외부로부터의 침입을 방지하는 보안(방화벽) 기능을 동시에 수행한다.
특히, 프락시 서버(20)의 데이터 캐쉬 기능은 다수의 클라이언트(10)들이 자주 접근하는 개체를 저장함으로써, 서버(30)에 걸리는 부하 및 회선의 네트웍 트래픽 전송량을 줄일 수 있게 됨과 동시에 접근 속도도 단축시킬 수 있게 됨에 따라 잠재적으로 전체 월드와이드웹(World Wide Web)의 성능을 향상시킬 수 있게되는데, 이때 캐쉬에 저장되는 개체는 시간, 용량, 사용 빈도 등에 따라 삭제되거나 유지된다.
즉, 프락시 서버(20)의 캐쉬 저장 영역은 한정되어 있기 때문에 해당 데이터 캐쉬 기능은 높은 히트율(Hit Rate)을 얻기 위해서 한정된 저장 공간을 얼마나 효율적으로 사용하느냐가 매우 중요한데, 이는 결국 새로 저장할 개체를 위해 캐쉬 내에 저장되어 있는 기존의 개체 중에서 어떤 것을 먼저 삭제해야 하는가에 관한 문제와 직결된다.
전술한 문제 해결을 위해 종래에는 다양한 웹 캐쉬 대체 정책을 제안하고 있는데, 그 종류를 살펴보면 캐쉬 내에서 가장 오래된 개체를 가장 먼저 삭제하는 FIFO(First In First Out) 알고리즘과, 캐쉬 내에서 가장 오래전에 참조된 개체를 가장 먼저 삭제하는 LRU(Least Recently Used) 알고리즘과, 캐쉬 내에서 가장 적게 참조되는 개체를 가장 먼저 삭제하는 LFU(Least Frequency Used) 알고리즘 및 캐쉬 내에서 크기가 가장 큰 개체를 가장 먼저 삭제하는 SIZE(Largest file removed first) 알고리즘 등이 있다.
그런데, 전술한 종래의 웹 캐쉬 대체 정책에 있어서, FIFO 알고리즘의 경우에는 구현이 용이하지만 히트율을 위한 어떠한 보장도 할 수 없다는 문제점이 있고, LRU 알고리즘의 경우 바이트(byte) 히트율(전체 클라이언트의 요구 중에서 프락시 서버에 의해 응답되는 개체의 바이트 양의 비)에 비해 히트율(전체 클라이언트의 요구 중에서 프락시 서버에 의해 응답되는 URL(Uniform Resource Locator)의 비)이 낮은 문제점이 있으며, 이와는 반대로 높은 히트율을 보이는 LFU 알고리즘이나 SIZE 알고리즘의 경우 바이트 히트율이 낮은 문제점이 있다. 특히 SIZE 알고리즘의 경우 크기는 매우 크지만 참조율이 낮은 개체를 위해서 수천 개의 작지만 자주 접근되는 개체를 삭제하는 상황이 발생할 수 있다.
또한, 인터넷의 특성상 월드와이드웹 개체들은 그 크기에 상당한 차이가 있을 뿐 아니라 클라이언트들은 보다 다양한 분야의 정보를 이용함에 따라 전술한 어느 하나의 웹 캐쉬 대체 알고리즘만을 이용하여 웹 캐쉬를 관리하기에는 한계가 있으며, 이로 인해 클라이언트의 다양한 요구에 적합한 웹 캐쉬 성능을 제공하지 못하는 문제점이 있었다.
본 발명은 전술한 바와 같은 문제점을 해결하기 위한 것으로 그 목적은, 인터넷 상에서 서버로부터 전송되는 크기가 서로 다른 웹 개체를 파일 타입에 따라 분류하여 각각에 해당되는 분할 캐쉬에 저장하고, 각 분할 캐쉬 내에서는 LRU 알고리즘에 따라 웹 개체를 삭제하도록 관리함으로써, 바이트 히트율과 응답 히트율이 모두 보장되는 웹 캐쉬 기능을 제공하는데 있다.
도 1은 일반적인 프락시 서버를 포함하는 네트웍 구조를 개략적으로 도시한 도면.
도 2는 본 발명에 따른 웹 캐쉬 대체 방법을 구현하기 위한 프락시 서버의 논리적 구조를 도시한 도면.
도 3은 본 발명에 따른 웹 캐쉬 대체 방법이 적용되는 프락시 서버 운영 동작 순서도.
* 도면의 주요 부분에 대한 부호의 설명 *
10 : 클라이언트 20 : 프락시 서버
21 : 파일 타입 결정 모듈 22 : 분할 캐쉬
30 : 서버
상술한 바와 같은 목적을 달성하기 위한 본 발명의 특징은, 인터넷 상에서 자주 접근되는 웹 개체를 캐쉬에 저장하여 클라이언트에 대해 웹 캐쉬 기능을 제공하는 프락시 서버에 있어서, 서버로부터 전송되어 파일 타입에 따라 분류된 웹 개체를 각각 저장하기 위한 다수의 분할 캐쉬와; 상기 클라이언트의 요구에 따라 상기 서버로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 저장할 분할 캐쉬를 결정하는 파일 타입 결정 모듈을 포함하여 이루어진 웹 캐쉬 대체 구조를 제공하는데 있다.
본 발명의 다른 특징은, 인터넷 상에서 프락시 서버를 사용하는 경우의 웹 캐쉬 대체 방법에 있어서, 상기 프락시 서버에 클라이언트가 요청하는 데이터에 해당되는 웹 개체가 존재하지 않는 경우 서버로 해당되는 웹 개체를 요청한 후에 상기 서버로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 저장할 분할 캐쉬를 결정하는 과정과; 파일 타입에 따라 분류된 웹 개체를 저장할 분할 캐쉬에 저장 공간이 부족한 경우 상기 분할 캐쉬 내에서 LRU 알고리즘에 따라 기존의 웹 개체를 삭제한 후에 현재 전송받은 웹 개체를 저장하는 과정을 포함하는 웹 캐쉬 대체 방법을 제공하는데 있다.
이하, 본 발명에 따른 실시예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.
본 발명은 도 1에 도시된 프락시 서버를 포함하는 네트웍 구조에 있어서, 프락시 서버(20)의 한정된 웹 캐쉬 공간에서도 가변적인 크기를 갖는 웹 개체의 특성을 만족할 수 있는 웹 캐쉬 대체 방법을 구현하고자 하는데, 이를 위해 프락시 서버(20)의 웹 캐쉬는 모든 웹 개체들에 대해 단일 캐쉬 공간을 할당하는 대신에 파일 타입에 따라 분류되는 웹 개체를 저장할 다수의 구역을 갖는 분할된 캐쉬 구조를 갖게 된다.
즉, 본 발명에 따른 웹 캐쉬 대체 방법을 구현하기 위한 프락시 서버(20)의 웹 캐쉬는 첨부한 도면 도 2에 도시한 바와 같은 논리적 구조를 갖게 되는데, 이때 프락시 서버(20)는 파일 타입에 따라 해당되는 웹 개체를 각각 저장하기 위한 다수의 분할 캐쉬(22)와, 클라이언트(10)의 요구에 따라 서버(30)로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 해당 웹 개체를 저장할 분할 캐쉬(22)를 결정하는 파일 타입 결정 모듈(21)을 구비하여 이루어진다.
여기서, 웹 캐쉬를 웹 개체의 파일 타입에 따라 다수의 분할 캐쉬(22)로 분류하는 이유는 웹 개체의 특성상 파일 타입에 따라 그 크기가 일정범위 이내에 포함되기 때문으로, 도 2에 예시한 웹 개체에 대한 파일 타입의 구분 예를 살펴보면 CGI(Common Gateway Interface) 파일, 텍스트(Text) 및 HTML(Hyper Text Markup Language) 파일, 오디오(Audio) 파일, 비디오(Video) 파일, 그래픽(Graphic) 파일이 있을 수 있으며, 비슷한 크기를 갖는 각 파일 타입에 대해 분할 캐쉬를 할당하게 된다. 그리고, 상술한 파일 타입에 속하지 않는 웹 개체들을 위해 예비 분할 캐쉬(Unknown)를 할당하게 된다.
따라서, 본 발명에서 프락시 서버(20)는 서버(30)로부터 전송되는 웹 개체에 대해 파일 타입에 따라 분류되는 분할 캐쉬(22)를 사용함으로써, 비교적 참조율이 높지만 평균 크기가 작은 파일 타입을 갖는 웹 개체가 참조율은 낮지만 크기가 큰 파일 타입을 갖는 웹 개체에 의해 삭제되는 것을 방지할 수 있게 되고, 이로 인해 기존의 SIZE 알고리즘에 근접하는 바이트 히트율을 보장할 수 있게 된다.
또한, 파일 타입에 따라 분류된 웹 개체의 클래스들을 저장하고 있는 각 분할 캐쉬(22)에 대해서는 어떠한 웹 개체를 먼저 삭제할 것인지 우선순위를 결정해야 하는데, 이때 각 분할 캐쉬(22) 내에 저장되는 웹 개체는 비교적 동일한 크기를 갖기 때문에 LRU 알고리즘에 따라 각 분할 캐쉬 내에서 가장 오래전에 참조된 개체를 가장 먼저 삭제함으로써 우수한 응답 히트율을 보장할 수 있게 된다.
상술한 웹 캐쉬 대체 방법이 적용되는 프락시 서버 운영 동작을 첨부한 도면 도 3을 참조하여 설명하면 다음과 같다.
먼저, 프락시 서버(20)를 사용하는 클라이언트(10)가 서버(30)로 데이터를 요청하게 되면(스텝 S31), 프락시 서버(20)에서는 자신의 캐쉬 영역을 검색하여 클라이언트(10)가 요청하는 데이터에 해당되는 웹 개체가 존재하는지를 확인하게 된다(스텝 S32).
이때, 웹 개체가 존재하는 경우 프락시 서버(20)는 캐쉬에 저장되어 있는 웹 개체를 클라이언트(10) 측으로 전송해 주게 되지만(스텝 S33), 웹 개체가 존재하지 않는 경우에는 서버(30)로 해당되는 웹 개체를 요청하게 된다(스텝 S34).
이에, 서버(30)로부터 클라이언트(10)가 요청하는 데이터에 해당되는 웹 개체가 전송되면, 프락시 서버(20)에서는 파일 타입 결정 모듈(21)을 구동시켜 서버(30)로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 해당 웹 개체를 저장할 분할 캐쉬(22)를 결정한 후(스텝 S35), 서버(30)로부터 전송된 웹 개체를 해당되는 분할 캐쉬(22)에 저장함과 동시에 클라이언트(10) 측으로 전송해 주게 된다.
이때, 프락시 서버(20)에서는 파일 타입에 따라 분류된 웹 개체를 저장할 분할 캐쉬(22)에 저장 공간이 부족한지를 확인하여(스텝 S36), 분할 캐쉬(22)에 저장 공간이 부족한 경우 해당되는 분할 캐쉬(22) 내에서 삭제 우선순위를 결정하여 기존의 웹 개체를 삭제한 후에 현재 전송된 웹 개체를 새로이 저장하여 관리하게 되는데, 이때 각 분할 캐쉬(22)에 저장되는 웹 개체들은 그 크기가 유사하기 때문에 LRU 알고리즘에 따라 가장 오래전에 참조된 기존 웹 개체를 삭제한 후에 현재 서버(30)로부터 전송된 웹 개체를 저장하게 된다(스텝 S37).
한편, 스텝 S36에서 분할 캐쉬(22)에 저장 공간이 부족하지 않은 경우에는 현재 서버(30)로부터 전송된 웹 개체를 해당되는 분할 캐쉬(22)에 저장하게 된다(스텝 S38).
이후, 프락시 서버(20)에서는 서버(30)에 요청하여 전송받은 웹 개체를 해당되는 클라이언트(10)에게 전송해 주게 된다(스텝 S39).
또한, 본 발명에 따른 실시예는 상술한 것으로 한정되지 않고, 본 발명과 관련하여 통상의 지식을 가진자에게 자명한 범위내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.
이상과 같이, 본 발명은 인터넷 상에서 서버로부터 전송되는 크기가 서로 다른 웹 개체를 파일 타입에 따라 분류하여 각각에 해당되는 분할 캐쉬에 저장해서 바이트 히트율을 보장하고, 각 분할 캐쉬 내에서는 LRU 알고리즘에 따라 웹 개체를삭제하도록 관리하여 응답 히트율을 보장함으로써, 바이트 히트율과 응답 히트율이 모두 보장되는 웹 캐쉬 기능을 제공할 수 있게 된다.

Claims (2)

  1. 인터넷 상에서 자주 접근되는 웹 개체를 캐쉬에 저장하여 클라이언트에 대해 웹 캐쉬 기능을 제공하는 프락시 서버에 있어서,
    서버로부터 전송되어 파일 타입에 따라 분류된 웹 개체를 각각 저장하기 위한 다수의 분할 캐쉬와;
    상기 클라이언트의 요구에 따라 상기 서버로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 저장할 분할 캐쉬를 결정하는 파일 타입 결정 모듈을 포함하여 이루어진 것을 특징으로 하는 웹 캐쉬 대체 구조.
  2. 인터넷 상에서 프락시 서버를 사용하는 경우의 웹 캐쉬 대체 방법에 있어서,
    상기 프락시 서버에 클라이언트가 요청하는 데이터에 해당되는 웹 개체가 존재하지 않는 경우 서버로 해당되는 웹 개체를 요청한 후에 상기 서버로부터 전송되는 웹 개체를 파일 타입에 따라 분류하여 저장할 분할 캐쉬를 결정하는 과정과;
    파일 타입에 따라 분류된 웹 개체를 저장할 분할 캐쉬에 저장 공간이 부족한 경우 상기 분할 캐쉬 내에서 LRU 알고리즘에 따라 기존의 웹 개체를 삭제한 후에 현재 전송받은 웹 개체를 저장하는 과정을 포함하는 것을 특징으로 하는 웹 캐쉬 대체 방법.
KR1020010083462A 2001-12-22 2001-12-22 웹 캐쉬 대체 구조 및 방법 KR20030053285A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010083462A KR20030053285A (ko) 2001-12-22 2001-12-22 웹 캐쉬 대체 구조 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010083462A KR20030053285A (ko) 2001-12-22 2001-12-22 웹 캐쉬 대체 구조 및 방법

Publications (1)

Publication Number Publication Date
KR20030053285A true KR20030053285A (ko) 2003-06-28

Family

ID=29577883

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010083462A KR20030053285A (ko) 2001-12-22 2001-12-22 웹 캐쉬 대체 구조 및 방법

Country Status (1)

Country Link
KR (1) KR20030053285A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030055482A (ko) * 2001-12-26 2003-07-04 한국전자통신연구원 선택적인 캐시관리방법 및 장치
KR100723512B1 (ko) * 2005-11-23 2007-05-30 삼성전자주식회사 캐쉬 버퍼 제어 방법 및 이를 이용한 디스크 드라이브
EP3217611A4 (en) * 2014-11-06 2018-06-06 Xiaomi Inc. Media resource feedback method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000072521A (ko) * 2000-09-07 2000-12-05 오기호 캐싱 기능을 이용한 표기식 언어 변환기 및 변환방법
KR20010067820A (ko) * 2001-03-31 2001-07-13 이재혁 적응형 캐쉬 교체 방법
JP2001256098A (ja) * 2000-03-09 2001-09-21 Hitachi Ltd プロキシサーバにおけるキャッシの制御方法
JP2002251312A (ja) * 2001-02-23 2002-09-06 Hitachi Ltd 通信プロキシ装置
KR20030000812A (ko) * 2001-06-27 2003-01-06 에스케이 텔레콤주식회사 휴대 통신 단말기용 웹페이지 변환 시스템의 캐쉬 구조

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001256098A (ja) * 2000-03-09 2001-09-21 Hitachi Ltd プロキシサーバにおけるキャッシの制御方法
KR20000072521A (ko) * 2000-09-07 2000-12-05 오기호 캐싱 기능을 이용한 표기식 언어 변환기 및 변환방법
JP2002251312A (ja) * 2001-02-23 2002-09-06 Hitachi Ltd 通信プロキシ装置
KR20010067820A (ko) * 2001-03-31 2001-07-13 이재혁 적응형 캐쉬 교체 방법
KR20030000812A (ko) * 2001-06-27 2003-01-06 에스케이 텔레콤주식회사 휴대 통신 단말기용 웹페이지 변환 시스템의 캐쉬 구조

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030055482A (ko) * 2001-12-26 2003-07-04 한국전자통신연구원 선택적인 캐시관리방법 및 장치
KR100723512B1 (ko) * 2005-11-23 2007-05-30 삼성전자주식회사 캐쉬 버퍼 제어 방법 및 이를 이용한 디스크 드라이브
EP3217611A4 (en) * 2014-11-06 2018-06-06 Xiaomi Inc. Media resource feedback method and device

Similar Documents

Publication Publication Date Title
US6772225B1 (en) Policy enabled web caching
US10574778B2 (en) Content replacement and refresh policy implementation for a content distribution network
US6378053B1 (en) Conserving storage space by means of low resolution objects
US6330561B1 (en) Method and apparatus for improving end to end performance of a data network
US6542964B1 (en) Cost-based optimization for content distribution using dynamic protocol selection and query resolution for cache server
US6553411B1 (en) System and method for cache acceleration
US6272598B1 (en) Web cache performance by applying different replacement policies to the web cache
US6370620B1 (en) Web object caching and apparatus for performing the same
US8307088B2 (en) HTML delivery from edge-of-network servers in a content delivery network (CDN)
US8024484B2 (en) Caching signatures
US7581028B2 (en) Method for efficient image distribution and management
US7860948B2 (en) Hierarchical caching in telecommunication networks
US20030115300A1 (en) Data caching
Kangasharju et al. Locating copies of objects using the domain name system
KR20030053285A (ko) 웹 캐쉬 대체 구조 및 방법
JP2004264956A (ja) キャッシュ管理方法、およびその方法を利用可能なキャッシュサーバ
Naumenko Some recommendations on building proxy caching service
KR100911805B1 (ko) 웹 사용자와 서버간 루팅 정보 갱신방법 및 기록매체
Sofi et al. A proxy load reduction technique to improve web performance
Wong et al. Site-based approach in HTTP proxy design
Sheu et al. A novel hierarchical cache architecture for WWW servers
Jung et al. Replicache: Enhancing Web Caching Architecture with the Replication of Large Object
Bakiras et al. Dynamic organization schemes for cooperative proxy caching
Zuck et al. Network centric improvements to resource caching
Tatarinov Cache Policies for Web Servers

Legal Events

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