KR101367120B1 - 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법 - Google Patents

웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법 Download PDF

Info

Publication number
KR101367120B1
KR101367120B1 KR1020120024231A KR20120024231A KR101367120B1 KR 101367120 B1 KR101367120 B1 KR 101367120B1 KR 1020120024231 A KR1020120024231 A KR 1020120024231A KR 20120024231 A KR20120024231 A KR 20120024231A KR 101367120 B1 KR101367120 B1 KR 101367120B1
Authority
KR
South Korea
Prior art keywords
web page
proxy
client
time
module
Prior art date
Application number
KR1020120024231A
Other languages
English (en)
Other versions
KR20130102980A (ko
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 KR1020120024231A priority Critical patent/KR101367120B1/ko
Publication of KR20130102980A publication Critical patent/KR20130102980A/ko
Application granted granted Critical
Publication of KR101367120B1 publication Critical patent/KR101367120B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법이 개시된다. 웹페이지 로딩 시간 측정 시스템은 클라이언트에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 클라이언트로 제공하는 웹사이트 제공부를 포함한다. 이때, 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈을 포함하고, 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트에서 특정 웹페이지의 웹페이지 로딩 시간이 계산된다.

Description

웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법{SYSTEM AND METHOD FOR MEASURING WEBPAGE LOADING TIME USING WEB BROWSER AND PROXY}
본 발명의 실시예들은 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법에 관한 것이다.
웹페이지 로딩 시간(또는 웹페이지 로딩 속도)의 측정을 위해, 종래기술에서는 일반적으로 페이지 요청에서부터 온 로드(on load) 이벤트까지의 시간 간격을 측정하도록 하는 어플리케이션이 이용된다. 즉, 단말기에 상술한 어플리케이션이 설치된 이후, 어플리케이션의 제어에 따라 웹페이지 로딩 시간이 측정된다.
그러나, 종래기술에서 어플리케이션에 기반하여 웹페이지 로딩 시간을 측정하는 방법은, 일례로 스마트폰의 경우, 운영체제 및 운영체제의 버전이 다양하고, 잦은 운영체제의 업데이트 등에 의해, 스팩(spec), 이벤트 변경 및 속도 측정 기준, 내장 API(Application Programming Interface) 등이 변화하게 되어, 정확한 웹페이지 로딩 시간을 측정하기 어렵다. 즉, 웹페이지 로딩 시간이 플랫폼에 따라 달라질 수 있는 문제점이 있다. 또한, 어플리케이션의 유지보수에 따른 이슈가 존재한다.
또한, 이러한 웹페이지 로딩 시간은 자바스크립트(JavaScript)를 이용하여 측정되나, 자바스크립트만으로는 다양한 구현상 제약이 나타나는 문제점이 있다. 예를 들어, 자바스크립트만으로는 브라우저 캐시를 제어할 수 없다. 웹페이지 로딩 시간의 측정을 위해 최초로 웹페이지에 접속을 하는 경우, 웹페이지의 구성 요소들이 단말기에 캐싱되고, 두 번째 이후부터 동일한 웹페이지에 접속하게 되면, 웹페이지의 구성 요소들을 네트워크를 통해 다운로드 받지 않고, 단말기에 캐싱된 구성 요소들을 재사용하여 웹페이지에 접속되기 때문에 웹페이지 로딩 시간이 짧아진다. 즉, 브라우저 캐시의 사용 유무는 웹페이지 로딩 시간을 측정하는데 큰 영향을 미치기 때문에, 웹페이지 로딩 시간을 보다 정확하게 측정하기 위해서는 브라우저 캐시를 제어할 수 있어야 한다.
본 명세서에서는, 보다 효과적으로 웹페이지 로딩 시간을 측정할 수 있는 시스템 및 방법이 제공된다.
단말기에서 웹브라우저만을 이용하여 웹페이지 로딩 시간(On Load Time, OLT)를 측정할 수 있도록 지원함으로써, 단말기의 플랫폼과 무관하게 웹페이지 로딩 시간을 측정할 수 있고, 측정된 웹페이지 로딩 시간을 다양한 플랫폼의 단말기들간에 동일한 지표로 이용할 수 있는 웹페이지 로딩 시간 측정 시스템 및 방법을 제공한다.
프록시 서버를 이용하여 브라우저 캐시를 제어함으로써, 보다 정확한 웹페이지 로딩 시간을 측정할 수 있고, 패킷의 헤더를 변경하거나 네트워크 환경을 제어하는 등의 추가 기능을 구현할 수 있는 웹페이지 로딩 시간 측정 시스템 및 방법을 제공한다.
클라이언트에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 클라이언트로 제공하는 웹사이트 제공부를 포함하고, 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈을 포함하고, 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트에서 특정 웹페이지의 웹페이지 로딩 시간이 계산되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템이 제공된다.
일측에 따르면, 모듈은, 사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈 및 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈을 포함할 수 있다.
다른 측면에 따르면, 사용자 인터페이스 모듈을 이용한 웹브라우저의 제어에 따라, 사용자 인터페이스가 클라이언트의 화면에 표시될 수 있고, 시각 확인 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트에서 요청 시각 및 완료 시각을 통해 웹페이지 로딩 시간이 계산될 수 있다.
또 다른 측면에 따르면, 완료 시각은 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드(onload) 이벤트의 발생 시각에 기초하여 확인될 수 있다.
또 다른 측면에 따르면, 웹사이트는, 클라이언트로부터 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈 및 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈을 더 포함할 수 있고, 파라미터 설정 모듈 및 프로파일 생성 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트에서 프로파일이 생성될 수 있다.
또 다른 측면에 따르면, 프로파일에 기초하여 프록시 서버에서 프록시가 동적으로 생성될 수 있고, 동적으로 생성된 프록시를 통해 웹 서버에서 제공하는 특정 웹페이지가 클라이언트로 전달될 수 있다.
또 다른 측면에 따르면, 동적으로 생성된 프록시에서 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 브라우저 캐시의 사용 여부가 제어될 수 있다.
또 다른 측면에 따르면, 파라미터 설정 모듈은, 업로드(upload) 대역폭 또는 다운로드(download) 대역폭과 같은 링크 대역폭이나 종단간(end-to-end) 대역폭, 링크 레이튼시(latency)나 종단간 레이튼시와 같은 지연 시간(delay), 노이즈, 패킷 손실(loss), 토폴로지(topology) 및 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 설정받기 위한 모듈을 포함할 수 있고, 더 설정된 파라미터가 포함된 프로파일에 기초하여 프록시 서버에서 특정 웹페이지가 클라이언트로 전달되는 네트워크 환경이 제어될 수 있다.
또 다른 측면에 따르면, 프로파일은, 클라이언트를 통해 프록시 풀을 관리하는 장치 프로파일 제공 서버로 전달될 수 있고, 장치 프로파일 제공 서버에서 프로파일에 기초하여 클라이언트로 프록시가 할당될 수 있다.
또 다른 측면에 따르면, 프로파일에 대응하는 프록시가 프록시 풀에 존재하지 않는 경우, 장치 프로파일 제공 서버에서 프록시 서버로 프록시 정보가 전송될 수 있고, 프록시 정보에 기초하여 프록시 서버에서 프로파일에 대응하는 프록시가 생성될 수 있다.
웹사이트를 제공하는 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 웹사이트가 화면에 표시되도록 제어하는 웹브라우저를 포함하고, 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈을 포함하고, 웹브라우저는, 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 제어하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템이 제공된다.
클라이언트의 브라우저 캐시 사용 여부가 설정된 프록시를 동적으로 생성하는 프록시 관리부 및 클라이언트로부터의 웹페이지 요청을 프록시를 통해 해당 웹 서버로 전달하고, 해당 웹 서버로부터 수신된 특정 웹페이지에 대한 정보를 해당 프록시를 통해 클라이언트로 전달하는 정보 전달부를 포함하고, 클라이언트에 포함된 웹브라우저의 제어에 따라, 클라이언트에서 특정 웹페이지에 대한 웹페이지 로딩 시간이 계산되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템이 제공된다.
클라이언트에서 웹페이지 로딩 시간을 측정하는 방법에 있어서, 클라이언트에 포함된 웹브라우저에서 웹페이지 로딩 시간을 측정하는 웹사이트를 웹사이트 제공 서버로 요청하도록 클라이언트를 제어하는 단계, 웹브라우저에서 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 웹사이트가 화면에 표시되도록 클라이언트를 제어하는 단계 및 웹브라우저에서 웹사이트에 포함된 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 클라이언트를 제어하는 단계를 포함하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법이 제공된다.
단말기에서 웹브라우저만을 이용하여 웹페이지 로딩 시간(On Load Time, OLT)를 측정할 수 있도록 지원함으로써, 단말기의 플랫폼과 무관하게 웹페이지 로딩 시간을 측정할 수 있고, 측정된 웹페이지 로딩 시간을 다양한 플랫폼의 단말기들간에 동일한 지표로서 이용할 수 있다.
프록시 서버를 이용하여 브라우저 캐시를 제어함으로써, 보다 정확한 웹페이지 로딩 시간을 측정할 수 있고, 패킷의 헤더를 변경하거나 네트워크 환경을 제어하는 등의 추가 기능 구현할 수 있다.
도 1은 본 발명의 일실시예에 있어서, 클라이언트, 프록시 서버 및 웹 서버를 나타낸 도면이다.
도 2는 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 방법을 설명하기 위한 도면이다.
도 3은 본 발명의 일실시예에 있어서, 프록시 서버를 설명하기 위한 도면이다.
도 4는 본 발명의 일실시예에 있어서, 프로파일 제공 서버를 나타낸 도면이다.
도 5는 본 발명의 일실시예에 있어서, 프록시를 생성하기 위한 과정을 나타낸 일례이다.
도 6은 본 발명의 일실시예에 있어서, 프록시를 제거하기 위한 과정을 나타낸 일례이다.
도 7은 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 8은 본 발명의 다른 실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 9는 본 발명의 또 다른 실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 10은 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 방법을 도시한 흐름도이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 있어서, 클라이언트, 프록시 서버 및 웹 서버를 나타낸 도면이다. 즉, 도 1은 클라이언트(110), 프록시 서버(120) 및 웹 서버(130)간의 관계를 나타내고 있다.
클라이언트(110)는 사용자들이 웹 서버(130)에서 제공하는 서비스에 접속하기 위해 이용하는 사용자단말기를 의미할 수 있으며, 유무선 네트워크를 통해 웹 서버(130)에 접속할 수 있다. 클라이언트(110)는 프록시 서버(120)를 거쳐서 웹 서버(130)가 제공하는 웹페이지를 불러올 수 있다.
이때, 클라이언트(110)는 기본 내장된 웹브라우저를 이용하여 웹페이지 로딩 시간(On Load Time, OLT)을 측정할 수 있다. 이 경우, 자바스크립트만으로는 브라우저 캐시를 제어하지 못하는 문제점을 해결하기 위해, 프록시 서버(120)에서 브라우저 캐시의 제어를 지원함으로써, 이러한 브라우저 캐시의 제어를 통해 클라이언트(110)는 보다 정확하게 웹페이지 로딩 시간(On Load Time, OLT)을 측정할 수 있게 된다.
프록시 서버(120)는 상술한 바와 같이 브라우저 캐시의 사용 여부를 설정할 수 있는 기능을 포함한다. 브라우저 캐시를 사용하는 것으로 설정된 경우, 클라이언트(110)로 한번 로드(load)된 웹페이지는 클라이언트(110)로 리로드(reload) 시 브라우저 캐시를 이용하여 해당 웹페이지를 로드하게 된다. 또한, 브라우저 캐시를 사용하지 않는 것으로 설정된 경우, 클라이언트(110)로 한번 로드(load)된 웹페이지의 리로드 시 프록시 서버(120)에서 브라우저 캐시의 헤더 컨트롤 옵션을 변경할 수 있다. 이 경우, 헤더 컨트롤 옵션의 변경에 따른 강제 리로드를 통해 브라우저 캐시를 사용하지 않고 웹페이지가 리로드될 수 있다.
만약, 프록시 서버(120)에서 브라우저 캐시의 헤더 컨트롤 옵션을 변경하지 않는 경우, 강제 리로드를 진행하더라도 브라우저 캐시가 사용되게 된다. 클라이언트(110)가 이러한 헤더 컨트롤 옵션을 변경하기 위해서는 별도의 프로그램이 필요하고, 이 경우에는, 웹페이지 로딩 시간의 측정이 플랫폼에 종속되는 문제가 발생하게 된다. 즉, 본 발명의 실시예들에서는 프록시 서버(120)를 이용하여 브라우저 캐시의 사용 여부를 제어함으로써, 클라이언트(110)에 별도의 프로그램을 설치하지 않더라도 보다 정확한 웹페이지 로딩 시간을 측정할 수 있어, 플랫폼과 무관한 웹페이지 로딩 시간의 측정이 가능해진다.
또한, 프록시 서버(120)의 사용을 통해 다양한 네트워크 환경을 구현하여 웹페이지 로딩 시간을 측정하는 것이 가능해진다. 예를 들어, 프록시 서버(120)를 이용하지 않는 종래기술에서 특정 서비스의 출시 전이나 개편 시, 서비스의 성능 평가를 위해 웹페이지 로딩 시간을 측정하고자 하는 경우, 다양한 사용자들의 웹 접속 환경을 반영하여 웹페이지 로딩 시간을 측정하기 위해서는, 실제의 다양한 웹 접속 환경을 구현하고, 구현된 웹 접속 환경내에서 웹페이지 로딩 시간을 측정해야만 했다.
그러나, 프록시 서버(120)를 이용하는 본 발명의 실시예들에서는 프록시 서버(120)를 이용하여 3G나 4G와 같은 모바일 환경, 해외, 국내 광랜, ADSL 등의 다양한 네트워크 환경을 구현(emulation)하여 클라이언트(110)가 다양한 환경에서 웹페이지 로딩 시간을 측정하도록 하는 것이 가능해진다.
즉, 프록시 서버(120)에서, 기설정된 네트워크 환경에 대한 값으로 패킷 전송을 조절하여 원하는 네트워크 종류를 시뮬레이션할 수 있다. 이를 위해, 프록시 서버(120)는 업로드(upload) 대역폭 또는 다운로드(download) 대역폭과 같은 링크 대역폭 또는 종단간(end-to-end) 대역폭, 링크 레이튼시(latency)나 종단간 레이튼시와 같은 지연 시간(delay), 노이즈, 패킷 손실(loss), 토폴로지(topology), 로딩 반복 횟수 등과 같이 다양한 파라미터를 더 이용하여 원하는 네트워크 환경을 구현하여 웹페이지 로딩 시간의 측정을 시뮬레이션할 수 있다.
이때, 웹페이지 로딩 시간을 측정하는 시뮬레이션에서, 복수개의 웹페이지를 반복적으로 테스트하고자 하는 경우, 즉, 테스트할 URL이 복수개이고, 복수개의 URL 각각을 반복적으로 테스트하여 웹페이지 로딩 시간을 측정하고자 하는 경우, 라운드 로빈(round robin) 방식과 리피트 퍼스트(repeat first) 방식 중 하나의 방식이 선택적으로 이용될 수 있다. 여기서, 라운드 로빈 방식은 복수개의 URL을 번갈아 선택하여 반복 테스트하는 방식을 포함할 수 있고, 리피트 퍼스트 방식은 하나의 URL을 반복 테스트한 후 다음 URL을 반복 테스트하는 방식을 포함할 수 있다.
또한, 프록시 서버(120)는 송수신되는 패킷을 분석하여 통계 정보를 생성할 수도 있다. 프록시 서버(120)는 이러한 통계 정보를 이후 설명될 웹사이트 제공 서버나 클라이언트(110)로 제공하여 활용되도록 할 수 있다. 일례로, 상술한 통계 정보를 이용하여 오브젝트별로 네트워크 상에서 지연이 발생한 부분을 확인하는 것이 가능해진다.
웹 서버(130)는 상술한 바와 같이 프록시 서버(120)를 거쳐 클라이언트(110)로 웹페이지를 제공하는 시스템을 의미할 수 있다.
도 2는 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 방법을 설명하기 위한 도면이다. 도 1 및 도 2를 함께 참조하면, 웹사이트(210)는 웹사이트 제공 서버(미도시)를 통해 클라이언트(110)의 요청에 따라 클라이언트(110)로 제공될 수 있다. 이때, 클라이언트(110)는 웹사이트(210)에 포함된 모듈을 이용하여 클라이언트(110)에 포함된 웹브라우저의 제어에 따라 특정 웹페이지의 웹페이지 로딩 시간을 측정할 수 있다. 즉, 별도의 프로그램을 설치하지 않고도 클라이언트(110)에 기본적으로 내장된 웹브라우저를 이용하여 웹페이지 로딩 시간을 측정할 수 있기 때문에 플랫폼에 독립된 웹페이지 로딩 시간의 측정이 가능해진다. 여기서, 상기 모듈은 도 2에 도시된 웹 코어(220)에 대응될 수 있다.
클라이언트(110)는 웹사이트(210)를 통해 제공되는 인터페이스를 이용하여 파라미터들을 입력 또는 설정할 수 있다. 이때, 웹브라우저는 웹사이트(210)에 포함된 스크립트 등의 로직에 따라 입력 또는 설정된 파라미터들을 통해 측정 프로파일을 생성(231)할 수 있다.
또한, 웹브라우저는 웹 코어(220)에 포함된 스크립트 등의 로직에 따라 측정 시작 버튼과 같은 사용자 인터페이스를 클라이언트(110)의 화면에 표시할 수 있다. 이때, 웹브라우저는 화면에 표시된 사용자 인터페이스를 통해 측정 시작이 요청(232)되면, 프록시의 설정(233)을 확인하여 웹페이지 로딩 시간의 측정을 수행(234)할 수 있다. 측정된 측정 결과(235)는 웹사이트(210)를 통해 클라이언트(110)의 화면에 표시될 수 있다. 이때, 웹브라우저는 웹 코어(220)를 이용하여 측정이 요청된 요청 시각과 특정 웹페이지의 로딩이 완료된 완료 시각을 확인할 수 있고, 요청 시각과 완료 시각을 이용하여 웹페이지 로딩 시간을 계산할 수 있다. 여기서, 완료 시각은 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드(onload) 이벤트의 발생 시각에 기초하여 확인될 수 있다.
이 경우, 프록시의 설정(233)은 브라우저 캐시의 사용 여부를 제어할 수 있는 프록시 서버(120)와의 연결을 위한 것으로, 프록시 서버(120)는 웹 서버(130)가 제공하는 특정 웹페이지를 클라이언트(110)로 전달하기 위한 프록시를 생성(241)할 수 있다. 이때, 프록시는 측정 시작 요청에 따라 상술한 프로파일에 기초하여 동적으로 생성될 수 있다. 또한, 프록시 서버(120)는 프록시에 따른 네트워크 제어를 설정(242)할 수 있다. 생성된 프록시는 프록시 서버(120)를 통해 클라이언트(110)로 할당될 수도 있고, 이후 설명할 장치 프로파일 제공 서버(미도시)를 통해 할당될 수도 있다.
이미 설명한 바와 같이, 상술한 프로파일은 업로드 대역폭 또는 다운로드 대역폭과 같은 링크 대역폭 또는 종단간 대역폭, 링크 레이튼시나 종단간 레이튼시와 같은 지연 시간, 노이즈, 패킷 손실, 토폴로지, 로딩 반복 횟수 등과 같이 다양한 파라미터들을 포함할 수 있고, 프록시는 이러한 파라미터들에 기초하여 생성될 수 있다. 뿐만 아니라, 상술한 파라미터들에 따른 네트워크 환경도, 생성된 프록시에 따라 프록시 서버(120)에 의해 구현될 수 있다.
도 3은 본 발명의 일실시예에 있어서, 프록시 서버를 설명하기 위한 도면이다. 프록시 서버(120)는 복수개의 프록시들(310)을 포함할 수 있다. 이때, 프록시 서버(120)는 복수개의 프록시들(310) 각각을 동적으로 생성 및 제거할 수 있다. 또한, 복수개의 프록시들(310) 각각은 도 3에 도시된 바와 같이 브라우저 캐시의 사용 여부를 설정하여 제어하는 'Cache Controller' 모듈, 네트워크 환경을 설정하여 제어하는 'Network Simulator' 모듈 및 통계 정보를 생성하기 위한 프로파일링 기능의 사용 여부를 설정하는 'Profiler' 모듈을 포함할 수 있다.
이때, 도 3에서 'cache on'은 브라우저 캐시를 사용함을, 'cache off'는 브라우저 캐시를 사용하지 않음을 각각 나타낼 수 있다. 또한, 'slow', 'medium' 및 'fast'는 각각 기설정된 네트워크 환경을 나타내는 값으로, 'slow', 'medium' 및 'fast' 각각에 대해, 상술한 링크 대역폭 또는 종단간 대역폭, 지연 시간, 노이즈, 패킷 손실 및 토폴로지, 로딩 반복 횟수 등과 같은 파라미터들이 미리 기설정될 수 있다. 또한, 'use'는 프로파일링 기능을 사용함을, 'disuse'는 프로파일링 기능을 사용하지 않음을 각각 나타낼 수 있다.
즉, 프록시 서버(120)는 브라우저 캐시의 사용 여부, 네트워크 환경, 프로파일링 기능의 사용 여부 등이 다양하게 설정된 복수개의 프록시들(210)을 동적으로 생성하여 클라이언트(110)와 웹 서버(130)간의 통신을 중개함으로써, 웹 서버(130)의 서비스가 다양한 네트워크 환경에서 클라이언트(110)로 제공되는 상황을 구현할 수 있게 된다.
도 4는 본 발명의 일실시예에 있어서, 프로파일 제공 서버를 나타낸 도면이다. 장치 프로파일 제공 서버(400)는 처음으로 프로파일에 대한 옵션을 설정할 때, 프록시 서버(120)에 포함된 복수개의 프록시들(210) 중 어떤 프록시를 사용해야 할지를 결정하여 프록시 풀(proxy pool) 내에서 해당하는 프록시의 번호(식별자)를 클라이언트(110)로 할당한다. 일례로, 프록시의 번호는 프록시의 URL을 포함할 수 있다. 프록시 풀은 장치 프로파일 제공 서버(400)에 포함될 수 있고, 장치 프로파일 제공 서버(400)에서 프록시 서버(120)로 제공하는 정보에 따라 특정 프록시가 동적으로 생성 또는 삭제될 수 있다.
도 5는 본 발명의 일실시예에 있어서, 프록시를 생성하기 위한 과정을 나타낸 일례이다. 즉, 도 5는 클라이언트(110), 장치 프로파일 제공 서버(400) 및 프록시 서버(120)에서 프록시의 생성을 위해 수행되는 과정을 설명하기 위한 일실시예이다.
단계(511)에서 클라이언트(110)는 측정 시작을 요청할 수 있다. 예를 들어, 클라이언트(110)는 클라이언트(110)로 제공된 기설정된 웹사이트 상에 구현된 사용자 인터페이스를 이용하여 웹페이지 로딩 시간의 측정을 시작할 것을 요청할 수 있다. 여기서, 기설정된 웹사이트는 도 2를 통해 설명한 웹사이트(210)에 대응될 수 있다. 이러한 요청은 장치 프로파일 제공 서버(400)로 전달될 수 있다.
단계(512)에서 장치 프로파일 제공 서버(400)는 생성된 후 기설정된 기간이 지난 프록시들을 제거할 수 있다. 프록시들을 제거하는 과정에 대해서는 이후 도 6을 통해 보다 자세히 설명한다.
단계(513)에서 장치 프로파일 제공 서버(400)는 해당 프로파일 정보를 확인할 수 있다. 즉, 장치 프로파일 제공 서버(400)는 우선, 상기 요청에 해당하는 파라미터들을 확인하여 해당 파라미터들에 대응하여 사용하기 위한 프록시를 결정할 수 있다. 여기서, 확인되는 파라미터들은 브라우저 캐시의 사용 여부, 링크 대역폭 또는 종단간 대역폭, 지연 시간, 노이즈, 패킷 손실, 토폴로지, 로딩 반복 횟수 및 프로파일링 기능의 사용 여부 중 적어도 하나에 대한 파라미터를 포함할 수 있다.
단계(514)에서 장치 프로파일 제공 서버(400)는 사용할 프록시의 포트를 결정할 수 있다. 즉, 클라이언트(110)는 단계(514)에서 결정된 포트를 이용하여 프록시 서버(120)와 통신할 수 있다. 사용할 프록시는 프록시 풀에서 선택될 수 있다.
단계(515)에서 장치 프로파일 제공 서버(400)는 사용할 프록시가 존재하는지 여부를 판단할 수 있다. 이때, 장치 프로파일 제공 서버(400)는 사용할 프록시가 존재하는 경우 단계(518)을 수행할 수 있고, 사용할 프록시가 존재하지 않는 경우 단계(516)를 수행할 수 있다.
단계(516)에서 장치 프로파일 제공 서버(400)는 생성할 프록시에 대한 프록시 정보를 저장 및 전송한다. 이때, 장치 프로파일 제공 서버(400)는 프록시 정보를 프록시 서버(120)로 전송할 수 있고, 프록시 서버(120)에서는 단계(521) 내지 단계(524)가 수행될 수 있다. 프록시 정보는 단계(514)에서 결정된 프록시의 포트, 측정 시작을 요청한 클라이언트의 IP 주소 및 측정될 네트워크에 대한 정보인 네트워크 프로파일을 포함할 수 있다. 이때, 네트워크 프로파일은 링크 대역폭 또는 종단간 대역폭, 지연 시간, 노이즈, 패킷 손실 및 토폴로지 중 적어도 하나에 대한 파라미터를 포함하거나 또는 적어도 하나에 대한 파라미터에 의해 설정된 값을 포함할 수 있다.
단계(517)에서 장치 프로파일 제공 서버(400)는 장치 파일을 생성한다. 이때, 장치 파일에는 프록시 풀에서 선택된 프록시의 번호(식별자)와 단계(514)에서 결정된 프록시의 포트에 대한 정보가 포함될 수 있다. 또한, 장치 파일에는 클라이언트(110)가 프록시 서버(120)와 연결되기 위해 필요한 정보들이 선택적으로 더 포함될 수 있다.
단계(518)에서 장치 프로파일 제공 서버(400)는 장치 파일을 전송한다. 즉, 장치 프로파일 제공 서버(400)에서 장치 파일을 클라이언트(110)로 전송함으로써, 클라이언트(110)가 장치 파일을 이용하여 프록시 서버(120)와 연결할 수 있고, 프록시 서버(120)에서 할당되는 프록시와 통신할 수 있게 된다.
단계(519)에서 클라이언트(110)는 장치 파일에 기초하여 단말기에 프록시를 설정한다. 이때, 프록시의 설정은 프록시의 번호를 이용하여 이루어질 수 있다. 일례로, 프록시의 번호는 이미 설명한 바와 같이 해당 프록시의 URL을 포함할 수 있고, 이러한 프록시의 URL을 이용하여 연결될 프록시가 단말기에서 설정될 수 있다. 단말기는 클라이언트(110)를 의미할 수 있다.
단계(520)에서 클라이언트(110)는 프록시의 설정을 확인한 후, 측정을 시작한다. 이때, 클라이언트(110)는 프록시 서버(120)에서 할당된 프록시와 통신하여 도 1을 통해 설명한 웹 서버(130)로부터 웹페이지를 제공 받을 수 있으며, 웹페이지 로딩 시간의 측정은 이미 설명한 바와 같이 클라이언트(110)에 기본적으로 내장된 웹브라우저가 기설정된 웹페이지에 포함된 모듈을 이용하여 수행할 수 있다.
단계(521)에서 프록시 서버(120)는 결정된 프록시 정보에 따라 프록시 설정(configuration) 파일을 생성한다. 여기서, 결정된 프록시 정보는 단계(516)에서 전송된 프록시 정보에 대응될 수 있고, 프록시 서버(120)는 장치 프로파일 제공 서버(400)로부터 수신된 프록시 정보에 따라 프록시 설정 파일을 생성할 수 있다.
단계(522)에서 프록시 서버(120)는 생성된 프록시 설정 파일로 프록시 데몬을 시작한다. 즉, 프록시 서버(120)는 단계(522)에서 프록시 정보에 따른 프록시를 동적으로 생성할 수 있다.
단계(523)에서 프록시 서버(120)는 서비스 설정 파일에 네트워크 프로파일을 반영한다. 네트워크 프로파일은 해당 네트워크에 대한 링크 대역폭 또는 종단간 대역폭, 지연 시간, 노이즈, 패킷 손실 및 토폴로지 중 적어도 하나에 대한 파라미터를 포함할 수 있다.
단계(524)에서 프록시 서버(120)는 서비스를 재시작한다. 즉, 프록시 서버(120)는 서비스를 재시작하여 네트워크 프로파일이 서비스에 반영되도록 할 수 있다.
도 6은 본 발명의 일실시예에 있어서, 프록시를 제거하기 위한 과정을 나타낸 일례이다. 즉, 도 6는 클라이언트(110), 장치 프로파일 제공 서버(400) 및 프록시 서버(120)에서 프록시의 제거를 위해 수행되는 과정을 설명하기 위한 일실시예이다.
단계(611)에서 클라이언트(110)는 프록시의 삭제를 요청할 수 있다. 예를 들어, 클라이언트(110)는 측정이 종료되는 경우, 또는 사용자에 의해 프로파일 종료가 요청되는 경우, 장치 프로파일 제공 서버(400)로 프록시의 삭제를 요청할 수 있다. 이때, 프록시의 삭제를 요청하는 것은, 클라이언트(110)에서 단순히 측정이 종료되었음을 알리거나 또는 프로파일 종료가 요청되었음을 장치 프로파일 제공 서버(400)로 알림으로써, 자동적으로 수행될 수 있다.
단계(612)에서 장치 프로파일 제공 서버(400)는 해당 프로파일 정보를 확인한다. 즉, 장치 프로파일 제공 서버(400)는 삭제해야 할 프록시를 확인하기 위해 해당 프로파일 정보를 확인할 수 있다.
단계(613)에서 장치 프로파일 제공 서버(400)는 해당 프록시 정보를 삭제한다. 이때, 실제로 프록시 서버(120)에서 생성된 해당 프록시를 동적으로 제거하기 위해, 장치 프로파일 제공 서버(400)는 프록시 서버(120)로 해당 프록시를 삭제할 것을 요청할 수 있다. 이때, 프록시 서버(120)에 의해 단계(615) 내지 단계(618)이 수행될 수 있다.
단계(614)에서 장치 프로파일 제공 서버(400)는 해당 장치 파일을 삭제한다. 즉, 하나의 장치 파일은 생성되는 하나의 프록시에 대해 생성되기 때문에, 해당 프록시를 제거하는 경우, 해당 장치 파일 역시 필요가 없어지므로 해당 장치 파일 역시 삭제하여 동기화할 수 있다.
단계(615)에서 프록시 서버(120)는 해당 프록시 데몬을 종료한다. 즉, 프록시 서버(120)는 프록시 데몬을 종료하여 동적으로 프록시를 제거할 수 있다.
단계(616)에서 프록시 서버(120)는 해당 프록시 설정 파일을 삭제한다. 즉, 프록시 서버(120)는 삭제된 프록시에 대한 프록시 설정 파일을 삭제할 수 있다.
단계(617)에서 프록시 서버(120)는 서비스 설정 파일에서 해당 네트워크 프로파일을 삭제한다. 네트워크 프로파일은 해당 네트워크에 대한 링크 대역폭 또는 종단간 대역폭, 지연 시간, 노이즈, 패킷 손실 및 토폴로지 중 적어도 하나에 대한 파라미터를 포함할 수 있다.
단계(618)에서 프록시 서버(120)는 서비스를 재시작한다. 즉, 프록시 서버(120)는 서비스를 재시작하여 해당 네트워크 프로파일의 삭제가 서비스에 반영되도록 할 수 있다.
도 7은 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다. 본 실시예에 따른 웹페이지 로딩 시간 측정 시스템(700)은 도 2에서 설명한 웹사이트(210)를 제공하는 서버인 웹사이트 제공 서버에 대응될 수 있다.
이러한 웹페이지 로딩 시간 측정 시스템(700)은 클라이언트(110)에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 클라이언트(110)로 제공하는 웹사이트 제공부(710)를 포함할 수 있다. 이때, 웹사이트는 웹페이지 로딩 시각을 계산하기 위한 모듈을 포함할 수 있다. 이 경우, 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트(110)에서 특정 웹페이지의 웹페이지 로딩 시간이 계산될 수 있다. 여기서, 특정 웹페이지는 도 1을 통해 설명한 웹 서버(130)에 의해 제공될 수 있다. 이와 같이, 본 실시예에서는 클라이언트(110)에 별도의 프로그램을 설치하지 않고도, 웹페이지 로딩 시간을 측정하기 위한 모듈이 포함된 웹사이트와 웹브라우저를 이용하여 웹페이지 로딩 시간을 측정하기 때문에 단말기의 플랫폼과 무관한 웹페이지 로딩 시간의 측정이 가능해진다.
이를 위해, 모듈은 사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈을 포함할 수 있다. 이때, 사용자 인터페이스 모듈을 이용한 웹브라우저의 제어에 따라, 사용자 인터페이스가 클라이언트(110)의 화면에 표시될 수 있고, 시각 확인 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트(110)에서 요청 시각 및 완료 시각을 통해 웹페이지 로딩 시간이 계산될 수 있다. 여기서, 완료 시각은 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드(onload) 이벤트의 발생 시각에 기초하여 확인될 수 있다.
또한, 웹사이트는 클라이언트(110)로부터 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈 및 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈을 더 포함할 수 있다. 이 경우, 파라미터 설정 모듈 및 프로파일 생성 모듈을 이용한 웹브라우저의 제어에 따라, 클라이언트(110)에서 프로파일이 생성될 수 있다.
이러한 프로파일에 기초하여 도 1을 통해 설명한 프록시 서버(120)에서 프록시가 동적으로 생성될 수 있다. 예를 들어, 프록시는 상술한 프로파일을 수신한 장치 프로파일 제공 서버(400)의 요청에 따라 프록시 서버(120)에서 생성될 수 있다. 즉, 프로파일은 클라이언트(110)를 통해 프록시 풀을 관리하는 장치 프로파일 제공 서버(400)로 전달될 수 있고, 장치 프로파일 제공 서버(400)에서 프로파일에 기초하여 클라이언트(110)로 프록시가 할당될 수 있다. 이때, 프로파일에 대응하는 프록시가 프록시 풀에 존재하지 않는 경우, 장치 프로파일 제공 서버(400)에서 프록시 서버(120)로 프록시 정보가 전송될 수 있고, 프록시 정보에 기초하여 프록시 서버(120)에서 프로파일에 대응하는 프록시가 생성될 수 있다.
또한, 동적으로 생성된 프록시를 통해 웹 서버(130)에서 제공하는 특정 웹페이지가 클라이언트(110)로 전달될 수 있다. 이 경우, 동적으로 생성된 프록시에서 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 브라우저 캐시의 사용 여부가 제어될 수 있다. 즉, 별도의 프로그램을 클라이언트(110)가 설치하지 않더라도, 프록시 서버(120)를 통해 브라우저 캐시의 사용 여부를 제어하여 보다 정확하게 웹페이지 로딩 시간이 계산될 수 있다.
또한, 프록시 서버(120)를 이용함으로써, 웹페이지 로딩 시간 측정 시스템(700)은 특정 웹페이지가 클라이언트(110)로 전달되는 네트워크 환경을 제어하는 것이 가능해진다. 예를 들어, 상술한 파라미터 설정 모듈은 업로드 대역폭 또는 다운로드 대역폭과 같은 링크 대역폭이나 종단간 대역폭, 링크 레이튼시나 종단간 레이튼시와 같은 지연 시간, 노이즈, 패킷 손실, 토폴로지 및 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 설정받기 위한 모듈을 포함할 수 있다. 이때, 프록시 서버(120)는 더 설정된 파라미터가 포함된 프로파일에 기초하여 클라이언트(110)로 전달되는 네트워크 환경을 제어할 수 있다. 즉, 도 5의 단계(523)에서 설명한 바와 같이 프록시 서버(120)는 서비스 서정 파일에 네트워크 프로파일을 반영하여 네트워크 환경을 제어할 수 있으며, 이러한 네트워크 프로파일이 상술한 더 설정된 파라미터에 의해 결정될 수 있다. 따라서, 클라이언트(110)는 새로운 프로파일의 생성, 기존의 프로파일의 선택 또는 연결되는 프록시의 변경만으로도 다양한 네트워크 환경에서 웹페이지 로딩 시간을 측정할 수 있게 된다.
도 8은 본 발명의 다른 실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다. 우선, 도 8은 본 실시예에 따른 웹페이지 로딩 시간 측정 시스템(800), 웹브라우저(810), 웹사이트 제공 서버(820) 및 프록시 서버(120)를 도시하고 있다. 여기서, 웹페이지 로딩 시간 측정 시스템(800)은 도 1을 통해 설명한 클라이언트(110)에 대응될 수 있고, 웹브라우저(810)는 클라이언트(110)에 기본적으로 내장된 웹브라우저를 의미할 수 있다. 또한, 웹사이트 제공 서버(820)는 도 7을 통해 설명한 웹페이지 로딩 시간 측정 시스템(700)에 대응될 수 있다.
웹브라우저(810)는 웹사이트를 제공하는 웹사이트 제공 서버(820)로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 제어할 수 있다. 여기서, 웹사이트는, 특정 웹페이지의 웹페이지 로딩 시각을 계산하기 위한 모듈을 포함할 수 있고, 웹브라우저(810)는 상기 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 웹페이지 로딩 시간 측정 시스템(800)을 제어할 수 있다. 특정 웹페이지는 도 1을 통해 설명한 웹 서버(130)를 통해 제공되는 웹페이지에 대응될 수 있다.
즉, 웹페이지 로딩 시간 측정 시스템(800)을 이용하는 경우, 별도의 프로그램을 설치하지 않고도 웹사이트에 포함된 모듈과 기본적으로 내장된 웹브라우저(810)를 이용하여 웹페이지 로딩 시간을 계산함으로써, 플랫폼에 무관하게 보다 정확한 웹페이지 로딩 시간을 계산하는 것이 가능해진다.
이때, 모듈은 사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈 및 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈을 포함할 수 있다. 이 경우, 웹브라우저(810)는 사용자 인터페이스 모듈을 통해 사용자 인터페이스가 화면에 표시되도록 제어할 수 있고, 시각 확인 모듈을 통해 요청 시각 및 완료 시각을 이용하여 웹페이지 로딩 시간이 계산되도록 웹페이지 로딩 시간 측정 시스템(800)을 제어할 수 있다. 여기서, 완료 시각은 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드 이벤트의 발생 시각에 기초하여 확인될 수 있다.
또한, 웹사이트는 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈 및 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈을 더 포함할 수 있다. 이때, 웹브라우저(810)는 파라미터 설정 모듈 및 프로파일 생성 모듈을 이용을 통해 프로파일이 생성되도록 웹페이지 로딩 시간 측정 시스템(800)을 제어할 수 있다.
이러한 프로파일에 기초하여 프록시 서버(120)에서 프록시가 동적으로 생성될 수 있다. 예를 들어, 프록시는 상술한 프로파일을 수신한 장치 프로파일 제공 서버(400)의 요청에 따라 프록시 서버(120)에서 생성될 수 있다. 즉, 웹페이지 로딩 시간 측정 시스템(800)은 프로파일을 프록시 풀을 관리하는 장치 프로파일 제공 서버(400)로 전달할 수 있고, 장치 프로파일 제공 서버(400)에서 프로파일에 기초하여 웹페이지 로딩 시간 측정 시스템(800)으로 프록시가 할당될 수 있다. 이때, 프로파일에 대응하는 프록시가 프록시 풀에 존재하지 않는 경우, 장치 프로파일 제공 서버(400)에서 프록시 서버(120)로 프록시 정보가 전송될 수 있고, 프록시 정보에 기초하여 프록시 서버(120)에서 프로파일에 대응하는 프록시가 생성될 수 있다.
또한, 동적으로 생성된 프록시를 통해 웹 서버(130)에서 제공하는 특정 웹페이지가 웹페이지 로딩 시간 측정 시스템(800)으로 전달될 수 있다. 이 경우, 동적으로 생성된 프록시에서 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 브라우저 캐시의 사용 여부가 제어될 수 있다. 즉, 별도의 프로그램을 웹페이지 로딩 시간 측정 시스템(800)이 설치하지 않더라도, 프록시 서버(120)를 통해 브라우저 캐시의 사용 여부를 제어하여 보다 정확하게 웹페이지 로딩 시간이 계산될 수 있다.
또한, 프록시 서버(120)를 이용함으로써, 웹페이지 로딩 시간 측정 시스템(800)은 특정 웹페이지가 웹페이지 로딩 시간 측정 시스템(800)으로 전달되는 네트워크 환경을 제어하는 것이 가능해진다. 예를 들어, 상술한 파라미터 설정 모듈은 업로드 대역폭 또는 다운로드 대역폭과 같은 링크 대역폭이나 종단간 대역폭, 링크 레이튼시나 종단간 레이튼시와 같은 지연 시간, 노이즈, 패킷 손실, 토폴로지 및 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 설정받기 위한 모듈을 포함할 수 있다. 이때, 프록시 서버(120)는 더 설정된 파라미터가 포함된 프로파일에 기초하여 웹페이지 로딩 시간 측정 시스템(800)으로 전달되는 네트워크 환경을 제어할 수 있다. 즉, 도 5의 단계(523)에서 설명한 바와 같이 프록시 서버(120)는 서비스 서정 파일에 네트워크 프로파일을 반영하여 네트워크 환경을 제어할 수 있으며, 이러한 네트워크 프로파일이 상술한 더 설정된 파라미터에 의해 결정될 수 있다. 따라서, 웹페이지 로딩 시간 측정 시스템(800)으로 새로운 프로파일의 생성, 기존의 프로파일의 선택 또는 연결되는 프록시의 변경만으로도 다양한 네트워크 환경에서 웹페이지 로딩 시간을 측정할 수 있게 된다.
도 9는 본 발명의 또 다른 실시예에 있어서, 웹페이지 로딩 시간 측정 시스템의 내부 구성을 설명하기 위한 블록도이다. 본 실시예에 따른 웹페이지 로딩 시간 측정 시스템(900)은 도 1을 통해 설명한 프록시 서버(120)에 대응될 수 있다.
이러한 웹페이지 로딩 시간 측정 시스템(900)은 도 9에 도시된 바와 같이 프록시 관리부(910) 및 정보 전달부(920)를 포함할 수 있다.
프록시 관리부(910)는 클라이언트(110)의 브라우저 캐시 사용 여부가 설정된 프록시를 동적으로 생성한다. 이때, 프록시는 클라이언트(110)로부터 웹페이지 로딩 시간 측정 시스템(900)으로 전달되는 프로파일이나 또는 도 4를 통해 설명한 장치 프로파일 제공 서버(400)에서 웹페이지 로딩 시간 측정 시스템(900)으로 전달되는 프록시 정보를 통해 생성될 수 있다. 이를 위해, 웹페이지 로딩 시간 측정 시스템(900)은 클라이언트(110)로부터의 웹페이지 요청에 대응하여 클라이언트(110)로부터 프로파일을 수신하거나 또는 장비 프로파일 제공 서버(400)로부터 프록시 정보를 수신하는 정보 수신부(미도시)를 더 포함할 수 있다. 이 경우, 프록시 관리부(910)는 프로파일 또는 프록시 정보에 기초하여 생성하기 위한 프록시의 브라우저 캐시 사용 여부를 결정할 수 있다. 이때, 동적으로 생성된 프록시는, 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 브라우저 캐시의 사용 여부를 제어할 수 있다.
정보 전달부(920)는 클라이언트(110)로부터의 웹페이지 요청을 프록시를 통해 해당 웹 서버(130)로 전달하고, 해당 웹 서버(130)로부터 수신된 특정 웹페이지에 대한 정보를 해당 프록시를 통해 클라이언트(110)로 전달한다. 이때, 클라이언트(110)에 포함된 웹브라우저의 제어에 따라, 클라이언트(110)에서 특정 웹페이지에 대한 웹페이지 로딩 시간이 계산된다.
또한, 상술한 프로파일 및 프록시 정보 중 적어도 하나는, 업로드 대역폭 또는 다운로드 대역폭과 같은 링크 대역폭이나 종단간 대역폭, 링크 레이튼시나 종단간 레이튼시와 같은 지연 시간, 노이즈, 패킷 손실, 토폴로지 및 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 포함할 수 있다. 이 경우, 프록시 관리부(910)는 더 포함된 파라미터에 기초하여 프록시를 통해 제공하는 데이터에 대한 네트워크 환경을 설정할 수 있다.
도 10은 본 발명의 일실시예에 있어서, 웹페이지 로딩 시간 측정 방법을 도시한 흐름도이다. 본 실시예에 따른 웹페이지 로딩 시간 측정 방법은 이미 자세히 설명한 바 있는 클라이언트(110)에 의해 수행될 수 있다. 특히, 도 10에 도시된 단계(1010) 내지 단계(1030)은 클라이언트(110)에 포함된 웹브라우저에 의해 수행될 수 있다.
단계(1010)에서 웹브라우저는 웹페이지 로딩 시간을 측정하는 웹사이트를 웹사이트 제공 서버로 요청하도록 클라이언트(110)를 제어한다. 이미 설명한 바와 같이 웹사이트에는 웹페이지 로딩 시간을 측정하기 위한 모듈이 포함될 수 있다.
단계(1020)에서 웹브라우저는 상기 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 클라이언트(110)를 제어한다.
단계(1030)에서 웹브라우저는 웹사이트에 포함된 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 클라이언트(110)를 제어한다.
즉, 별도의 프로그램을 설치하지 않고도, 기본적으로 내장된 웹브라우저에서 웹사이트에 포함된 모듈을 이용하여 웹페이지 로딩 시간을 계산함으로써, 플랫폼에 무관하게 보다 정확한 웹페이지 로딩 시간을 계산하는 것이 가능해진다.
이때, 모듈은 사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈 및 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈을 포함할 수 있다. 이 경우, 웹브라우저는 단계(1030)에서 사용자 인터페이스 모듈을 이용하여 사용자 인터페이스가 클라이언트의 화면에 표시되도록 제어하는 단계(미도시) 및 시각 확인 모듈을 이용하여 클라이언트(110)에서 요청 시각 및 완료 시각을 통해 웹페이지 로딩 시간이 계산되도록 제어하는 단계(미도시)를 더 수행할 수 있다. 여기서, 완료 시각은 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드 이벤트의 발생 시각에 기초하여 확인될 수 있다.
또한, 웹사이트는 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈 및 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈을 더 포함할 수 있다. 이때, 웹브라우저는 단계(1030)에서 파라미터 설정 모듈 및 프로파일 생성 모듈을 이용을 통해 프로파일이 생성되도록 클라이언트(110)를 제어하는 단계(미도시)를 더 수행할 수 있다.
이러한 프로파일에 기초하여 도 1을 통해 설명한 프록시 서버(120)에서 프록시가 동적으로 생성될 수 있다. 예를 들어, 프록시는 상술한 프로파일을 수신한 장치 프로파일 제공 서버(400)의 요청에 따라 프록시 서버(120)에서 생성될 수 있다. 즉, 클라이언트(110)는 프로파일을 프록시 풀을 관리하는 장치 프로파일 제공 서버(400)로 전달할 수 있고, 장치 프로파일 제공 서버(400)에서 프로파일에 기초하여 클라이언트(110)로 프록시가 할당될 수 있다. 이때, 프로파일에 대응하는 프록시가 프록시 풀에 존재하지 않는 경우, 장치 프로파일 제공 서버(400)에서 프록시 서버(120)로 프록시 정보가 전송될 수 있고, 프록시 정보에 기초하여 프록시 서버(120)에서 프로파일에 대응하는 프록시가 생성될 수 있다.
또한, 동적으로 생성된 프록시를 통해 웹 서버(130)에서 제공하는 특정 웹페이지가 클라이언트(110)로 전달될 수 있다. 이 경우, 동적으로 생성된 프록시에서 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 브라우저 캐시의 사용 여부가 제어될 수 있다. 즉, 별도의 프로그램을 클라이언트(110)에서 설치하지 않더라도, 프록시 서버(120)를 통해 브라우저 캐시의 사용 여부를 제어하여 보다 정확하게 웹페이지 로딩 시간이 계산될 수 있다.
또한, 프록시 서버(120)를 이용함으로써, 클라이언트(110)는 특정 웹페이지가 클라이언트(110)로 전달되는 네트워크 환경을 제어하는 것이 가능해진다. 예를 들어, 상술한 파라미터 설정 모듈은 업로드 대역폭 또는 다운로드 대역폭과 같은 링크 대역폭이나 종단간 대역폭, 링크 레이튼시나 종단간 레이튼시와 같은 지연 시간, 노이즈, 패킷 손실, 토폴로지 및 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 설정받기 위한 모듈을 포함할 수 있다. 이때, 프록시 서버(120)는 더 설정된 파라미터가 포함된 프로파일에 기초하여 클라이언트(110)로 전달되는 네트워크 환경을 제어할 수 있다. 즉, 도 5의 단계(523)에서 설명한 바와 같이 프록시 서버(120)는 서비스 서정 파일에 네트워크 프로파일을 반영하여 네트워크 환경을 제어할 수 있으며, 이러한 네트워크 프로파일이 상술한 더 설정된 파라미터에 의해 결정될 수 있다. 따라서, 클라이언트(110)로 새로운 프로파일의 생성, 기존의 프로파일의 선택 또는 연결되는 프록시의 변경만으로도 다양한 네트워크 환경에서 웹페이지 로딩 시간을 측정할 수 있게 된다.
도 7 내지 도 10에서 생략된 내용은 도 1 내지 도 6을 참조할 수 있다.
이와 같이, 본 발명의 실시예들에 따르면, 단말기에서 웹브라우저만을 이용하여 웹페이지 로딩 시간(On Load Time, OLT)를 측정할 수 있도록 지원함으로써, 단말기의 플랫폼과 무관하게 웹페이지 로딩 시간을 측정할 수 있고, 측정된 웹페이지 로딩 시간을 다양한 플랫폼의 단말기들간에 동일한 지표로서 이용할 수 있다. 또한, 프록시 서버를 이용하여 브라우저 캐시를 제어함으로써, 보다 정확한 웹페이지 로딩 시간을 측정할 수 있고, 패킷의 헤더를 변경하거나 네트워크 환경을 제어하는 등의 추가 기능 구현할 수 있다.
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
110: 클라이언트
120: 프록시 서버
130: 웹 서버
210: 웹사이트
220: 웹 코어

Claims (35)

  1. 삭제
  2. 삭제
  3. 클라이언트에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 상기 클라이언트로 제공하는 웹사이트 제공부
    를 포함하고,
    상기 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 클라이언트에서 특정 웹페이지의 웹페이지 로딩 시간이 계산되고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 사용자 인터페이스 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 사용자 인터페이스가 상기 클라이언트의 화면에 표시되고,
    상기 시각 확인 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 클라이언트에서 상기 요청 시각 및 상기 완료 시각을 통해 상기 웹페이지 로딩 시간이 계산되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  4. 클라이언트에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 상기 클라이언트로 제공하는 웹사이트 제공부
    를 포함하고,
    상기 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 클라이언트에서 특정 웹페이지의 웹페이지 로딩 시간이 계산되고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 완료 시각은 상기 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드(onload) 이벤트의 발생 시각에 기초하여 확인되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  5. 클라이언트에 포함된 웹브라우저에 의해 발생한 요청에 따라, 웹페이지 로딩 시간을 측정하는 웹사이트를 상기 클라이언트로 제공하는 웹사이트 제공부
    를 포함하고,
    상기 웹사이트는, 웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 클라이언트에서 특정 웹페이지의 웹페이지 로딩 시간이 계산되고,
    상기 웹사이트는,
    상기 클라이언트로부터 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈; 및
    상기 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈
    을 더 포함하고,
    상기 파라미터 설정 모듈 및 상기 프로파일 생성 모듈을 이용한 상기 웹브라우저의 제어에 따라, 상기 클라이언트에서 상기 프로파일이 생성되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  6. 제5항에 있어서,
    상기 프로파일에 기초하여 프록시 서버에서 프록시가 동적으로 생성되고,
    상기 동적으로 생성된 프록시를 통해 웹 서버에서 제공하는 상기 특정 웹페이지가 상기 클라이언트로 전달되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  7. 제6항에 있어서,
    상기 동적으로 생성된 프록시에서 상기 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 상기 브라우저 캐시의 사용 여부가 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  8. 제5항에 있어서,
    상기 파라미터 설정 모듈은, (1) 업로드(upload) 대역폭 또는 다운로드(download) 대역폭을 포함하는 링크 대역폭이나 종단간(end-to-end) 대역폭, (2) 링크 레이튼시(latency) 또는 종단간 레이튼시를 포함하는 지연 시간(delay), (3) 노이즈, (4) 패킷 손실(loss), (5) 토폴로지(topology) 및 (6) 로딩 반복 횟수 중 적어도 하나를 상기 파라미터로서 더 설정받기 위한 모듈을 포함할 수 있고,
    상기 더 설정된 파라미터가 포함된 프로파일에 기초하여 프록시 서버에서 상기 특정 웹페이지가 상기 클라이언트로 전달되는 네트워크 환경이 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  9. 제5항에 있어서,
    상기 프로파일은, 상기 클라이언트를 통해 프록시 풀을 관리하는 장치 프로파일 제공 서버로 전달되고,
    상기 장치 프로파일 제공 서버에서 상기 프로파일에 기초하여 상기 클라이언트로 프록시가 할당되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  10. 제9항에 있어서,
    상기 프로파일에 대응하는 프록시가 상기 프록시 풀에 존재하지 않는 경우, 상기 장치 프로파일 제공 서버에서 상기 프록시 서버로 프록시 정보가 전송되고,
    상기 프록시 정보에 기초하여 상기 프록시 서버에서 상기 프로파일에 대응하는 프록시가 생성되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  11. 삭제
  12. 삭제
  13. 웹사이트를 제공하는 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 제어하는 웹브라우저
    를 포함하고,
    상기 웹사이트는,
    웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 웹브라우저는, 상기 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 제어하고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 웹브라우저는, 상기 사용자 인터페이스 모듈을 통해 상기 사용자 인터페이스가 상기 화면에 표시되도록 제어하고, 상기 시각 확인 모듈을 통해 상기 요청 시각 및 상기 완료 시각을 이용하여 상기 웹페이지 로딩 시간이 계산되도록 제어하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  14. 웹사이트를 제공하는 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 제어하는 웹브라우저
    를 포함하고,
    상기 웹사이트는,
    웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 웹브라우저는, 상기 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 제어하고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 완료 시각은 상기 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드 이벤트의 발생 시각에 기초하여 확인되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  15. 웹사이트를 제공하는 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 제어하는 웹브라우저
    를 포함하고,
    상기 웹사이트는,
    웹페이지 로딩 시각을 계산하기 위한 모듈
    을 포함하고,
    상기 웹브라우저는, 상기 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 제어하고,
    상기 웹사이트는,
    브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈; 및
    상기 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈
    을 더 포함하고,
    상기 웹브라우저는, 상기 파라미터 설정 모듈 및 상기 프로파일 생성 모듈을 통해 상기 프로파일이 생성되도록 제어하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  16. 제15항에 있어서,
    상기 프로파일에 기초하여 프록시 서버에서 프록시가 동적으로 생성되고,
    상기 동적으로 생성된 프록시를 통해 웹 서버에서 제공하는 상기 특정 웹페이지가 상기 프록시 서버로부터 전달되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  17. 제16항에 있어서,
    상기 동적으로 생성된 프록시에서 상기 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 상기 브라우저 캐시의 사용 여부가 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  18. 제15항에 있어서,
    상기 파라미터 설정 모듈은, (1) 업로드(upload) 대역폭 또는 다운로드(download) 대역폭을 포함하는 링크 대역폭이나 종단간(end-to-end) 대역폭, (2) 링크 레이튼시(latency)나 종단간 레이튼시를 포함하는 지연 시간(delay), (3) 노이즈, (4) 패킷 손실(loss), (5) 토폴로지(topology) 및 (6) 로딩 반복 횟수 중 적어도 하나를 상기 파라미터로서 더 설정받고,
    상기 더 설정된 파라미터가 포함된 프로파일에 기초하여 프록시 서버에서, 상기 특정 웹페이지가 전달되는 네트워크 환경이 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  19. 제15항에 있어서,
    상기 프로파일은, 프록시 풀을 관리하는 장치 프로파일 제공 서버로 전달되고,
    상기 장치 프로파일 제공 서버에서 상기 프로파일에 기초하여 프록시가 할당되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  20. 제19항에 있어서,
    상기 프로파일에 대응하는 프록시가 상기 프록시 풀에 존재하지 않는 경우, 상기 장치 프로파일 제공 서버에서 상기 프록시 서버로 프록시 정보가 전송되고,
    상기 프록시 정보에 기초하여 상기 프록시 서버에서 상기 프로파일에 대응하는 프록시가 생성되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  21. 삭제
  22. 클라이언트의 브라우저 캐시 사용 여부가 설정된 프록시를 동적으로 생성하는 프록시 관리부; 및
    상기 클라이언트로부터의 웹페이지 요청을 상기 프록시를 통해 해당 웹 서버로 전달하고, 상기 해당 웹 서버로부터 수신된 특정 웹페이지에 대한 정보를 상기 해당 프록시를 통해 상기 클라이언트로 전달하는 정보 전달부
    를 포함하고,
    상기 클라이언트에 포함된 웹브라우저의 제어에 따라, 상기 클라이언트에서 상기 특정 웹페이지에 대한 웹페이지 로딩 시간이 계산되고,
    상기 웹페이지 요청에 대응하여 상기 클라이언트로부터 프로파일을 수신하거나 또는 장비 프로파일 제공 서버로부터 프록시 정보를 수신하는 정보 수신부
    를 더 포함하고,
    상기 프록시 관리부는,
    상기 프로파일 또는 상기 프록시 정보에 기초하여 생성하기 위한 프록시의 상기 브라우저 캐시 사용 여부를 결정하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  23. 제22항에 있어서,
    상기 프로파일 및 상기 프록시 정보 중 적어도 하나는, (1) 업로드 대역폭 또는 다운로드 대역폭를 포함하는 링크 대역폭이나 종단간 대역폭, (2) 링크 레이튼시 또는 종단간 레이튼시를 포함하는 지연 시간, (3) 노이즈, (4) 패킷 손실, (5) 토폴로지 및 (6) 로딩 반복 횟수 중 적어도 하나를 파라미터로서 더 포함하고,
    상기 프록시 관리부는,
    상기 더 포함된 파라미터에 기초하여 상기 프록시를 통해 제공하는 데이터에 대한 네트워크 환경을 설정하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  24. 클라이언트의 브라우저 캐시 사용 여부가 설정된 프록시를 동적으로 생성하는 프록시 관리부; 및
    상기 클라이언트로부터의 웹페이지 요청을 상기 프록시를 통해 해당 웹 서버로 전달하고, 상기 해당 웹 서버로부터 수신된 특정 웹페이지에 대한 정보를 상기 해당 프록시를 통해 상기 클라이언트로 전달하는 정보 전달부
    를 포함하고,
    상기 클라이언트에 포함된 웹브라우저의 제어에 따라, 상기 클라이언트에서 상기 특정 웹페이지에 대한 웹페이지 로딩 시간이 계산되고,
    상기 동적으로 생성된 프록시는, 상기 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 상기 브라우저 캐시의 사용 여부를 제어하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 시스템.
  25. 삭제
  26. 삭제
  27. 클라이언트에서 웹페이지 로딩 시간을 측정하는 방법에 있어서,
    상기 클라이언트에 포함된 웹브라우저에서 웹페이지 로딩 시간을 측정하는 웹사이트를 웹사이트 제공 서버로 요청하도록 상기 클라이언트를 제어하는 단계;
    상기 웹브라우저에서 상기 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 상기 클라이언트를 제어하는 단계; 및
    상기 웹브라우저에서 상기 웹사이트에 포함된 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 상기 클라이언트를 제어하는 단계
    를 포함하고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 상기 클라이언트를 제어하는 단계는,
    상기 사용자 인터페이스 모듈을 이용하여 상기 사용자 인터페이스가 상기 클라이언트의 화면에 표시되도록 제어하는 단계; 및
    상기 시각 확인 모듈을 이용하여 상기 클라이언트에서 상기 요청 시각 및 상기 완료 시각을 통해 상기 웹페이지 로딩 시간이 계산되도록 제어하는 단계
    를 포함하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  28. 클라이언트에서 웹페이지 로딩 시간을 측정하는 방법에 있어서,
    상기 클라이언트에 포함된 웹브라우저에서 웹페이지 로딩 시간을 측정하는 웹사이트를 웹사이트 제공 서버로 요청하도록 상기 클라이언트를 제어하는 단계;
    상기 웹브라우저에서 상기 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 상기 클라이언트를 제어하는 단계; 및
    상기 웹브라우저에서 상기 웹사이트에 포함된 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 상기 클라이언트를 제어하는 단계
    를 포함하고,
    상기 모듈은,
    사용자 인터페이스를 제공하기 위한 사용자 인터페이스 모듈; 및
    상기 사용자 인터페이스를 통해 측정이 요청된 요청 시각 및 상기 특정 웹페이지의 로딩이 완료되는 완료 시각을 확인하기 위한 시각 확인 모듈
    을 포함하고,
    상기 완료 시각은 상기 특정 웹페이지의 로딩이 완료되는 경우 발생하는 온로드 이벤트의 발생 시각에 기초하여 확인되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  29. 클라이언트에서 웹페이지 로딩 시간을 측정하는 방법에 있어서,
    상기 클라이언트에 포함된 웹브라우저에서 웹페이지 로딩 시간을 측정하는 웹사이트를 웹사이트 제공 서버로 요청하도록 상기 클라이언트를 제어하는 단계;
    상기 웹브라우저에서 상기 웹사이트 제공 서버로부터 수신된 데이터에 기초하여 상기 웹사이트가 화면에 표시되도록 상기 클라이언트를 제어하는 단계; 및
    상기 웹브라우저에서 상기 웹사이트에 포함된 모듈을 통해 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 상기 클라이언트를 제어하는 단계
    를 포함하고,
    상기 웹사이트는,
    상기 클라이언트로부터 브라우저 캐시의 사용 여부를 파라미터로서 설정받기 위한 파라미터 설정 모듈; 및
    상기 설정된 파라미터를 포함하는 프로파일을 생성하기 위한 프로파일 생성 모듈
    을 더 포함하고,
    상기 특정 웹페이지의 웹페이지 로딩 시간이 계산되도록 상기 클라이언트를 제어하는 단계는,
    상기 파라미터 설정 모듈 및 상기 프로파일 생성 모듈을 이용하여 상기 클라이언트가 상기 프로파일을 생성하도록 제어하는 단계
    를 포함하는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  30. 제29항에 있어서,
    상기 프로파일에 기초하여 프록시 서버에서 프록시가 동적으로 생성되고,
    상기 동적으로 생성된 프록시를 통해 웹 서버에서 제공하는 상기 특정 웹페이지가 상기 클라이언트로 전달되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  31. 제30항에 있어서,
    상기 동적으로 생성된 프록시에서 상기 특정 웹페이지를 위한 데이터의 헤더에 포함된 헤더 컨트롤 옵션을 변경하여 상기 브라우저 캐시의 사용 여부가 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  32. 제29항에 있어서,
    상기 프로파일을 생성하도록 제어하는 단계는,
    (1) 업로드 대역폭 또는 다운로드 대역폭을 포함하는 링크 대역폭이나 종단간 대역폭, (2) 링크 레이튼시나 종단간 레이튼시를 포함하는 지연 시간, (3) 노이즈, (4) 패킷 손실, (5) 토폴로지 및 (6) 로딩 반복 횟수 중 적어도 하나를 상기 파라미터 설정 모듈을 통해 상기 파라미터로서 더 설정받아 상기 프로파일을 생성하도록 제어하고,
    상기 더 설정된 파라미터가 포함된 프로파일에 기초하여 프록시 서버에서 상기 특정 웹페이지가 상기 클라이언트로 전달되는 네트워크 환경이 제어되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  33. 제29항에 있어서,
    상기 프로파일은, 상기 클라이언트를 통해 프록시 풀을 관리하는 장치 프로파일 제공 서버로 전달되고,
    상기 장치 프로파일 제공 서버에서 상기 프로파일에 기초하여 상기 클라이언트로 프록시가 할당되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  34. 제33항에 있어서,
    상기 프로파일에 대응하는 프록시가 상기 프록시 풀에 존재하지 않는 경우, 상기 장치 프로파일 제공 서버에서 상기 프록시 서버로 프록시 정보가 전송되고,
    상기 프록시 정보에 기초하여 상기 프록시 서버에서 상기 프로파일에 대응하는 프록시가 생성되는 것을 특징으로 하는 웹페이지 로딩 시간 측정 방법.
  35. 제27항 내지 제34항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
KR1020120024231A 2012-03-09 2012-03-09 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법 KR101367120B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120024231A KR101367120B1 (ko) 2012-03-09 2012-03-09 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120024231A KR101367120B1 (ko) 2012-03-09 2012-03-09 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20130102980A KR20130102980A (ko) 2013-09-23
KR101367120B1 true KR101367120B1 (ko) 2014-02-27

Family

ID=49452485

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120024231A KR101367120B1 (ko) 2012-03-09 2012-03-09 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101367120B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190032603A (ko) * 2016-08-12 2019-03-27 알리바바 그룹 홀딩 리미티드 인증 방법, 디바이스 및 인증 클라이언트

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326097B (zh) * 2015-07-01 2020-10-27 上海云双信息科技有限公司 一种测试页面感知性能的方法与装置
CN106612198B (zh) * 2015-10-26 2019-08-13 中国移动通信集团公司 一种业务质量测试指标的测试方法及装置
CN106815036B (zh) * 2015-11-30 2020-06-26 阿里巴巴集团控股有限公司 加载提示方法及装置
CN109586988B (zh) * 2017-09-28 2020-10-02 中国移动通信有限公司研究院 一种网页打开时延测试方法、网络设备及智能网关
KR102066178B1 (ko) * 2017-11-14 2020-02-17 주식회사 케이티 웹 모니터링 시스템 및 이를 이용한 응답시간 분포 정보 생성 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004534308A (ja) * 2001-06-12 2004-11-11 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ユーザ選択による画像のリロード
KR20110068551A (ko) * 2009-12-16 2011-06-22 김일 웹 페이지의 로딩 소요시간 측정을 위한 위젯과 이를 이용하여 웹 페이지의 로딩 소요시간을 포인트로 전환하는 방법 및 이들을 위한 기록매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004534308A (ja) * 2001-06-12 2004-11-11 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ユーザ選択による画像のリロード
KR20110068551A (ko) * 2009-12-16 2011-06-22 김일 웹 페이지의 로딩 소요시간 측정을 위한 위젯과 이를 이용하여 웹 페이지의 로딩 소요시간을 포인트로 전환하는 방법 및 이들을 위한 기록매체

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190032603A (ko) * 2016-08-12 2019-03-27 알리바바 그룹 홀딩 리미티드 인증 방법, 디바이스 및 인증 클라이언트
US10686786B2 (en) 2016-08-12 2020-06-16 Alibaba Group Holding Limited Authentication method, device and authentication client
KR102175117B1 (ko) * 2016-08-12 2020-11-06 알리바바 그룹 홀딩 리미티드 인증 방법, 디바이스 및 인증 클라이언트
KR20200127058A (ko) * 2016-08-12 2020-11-09 알리바바 그룹 홀딩 리미티드 인증 방법, 디바이스 및 인증 클라이언트
KR102289994B1 (ko) 2016-08-12 2021-08-17 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 인증 방법, 디바이스 및 인증 클라이언트

Also Published As

Publication number Publication date
KR20130102980A (ko) 2013-09-23

Similar Documents

Publication Publication Date Title
KR101367120B1 (ko) 웹브라우저와 프록시를 이용하여 웹페이지 로딩 시간을 측정하는 시스템 및 방법
EP1316187B1 (en) Method and system for testing a contents server
CN100471139C (zh) 一种网络测试的系统和方法
US9559915B2 (en) System and method for dynamically testing networked target systems
CN109600280B (zh) 压力测试系统、方法、装置及计算机可读存储介质
CN104113870B (zh) 网络测试方法和移动终端
CN112311628B (zh) 网络测速方法、系统、网络设备和存储介质
CN103327051A (zh) 远程桌面管理系统及方法
CN110312140B (zh) 直播数据处理方法、装置、系统及计算机可读存储介质
CN103795762A (zh) 一种反向代理的测试方法及系统
CN105704178A (zh) 任务平台的接入方法及装置
WO2016188101A1 (zh) 一种针对业务系统的测试方法和装置
CN117956429A (zh) 一种用于自动驾驶车辆的通信方法、装置及电子设备
CN107360036A (zh) 一种网络故障定位方法、终端和服务器
CN108255672B (zh) 数据校验的方法、装置和存储介质以及电子设备
CN107508759B (zh) 信息上报方法、装置、计算机可读存储介质和电子设备
CN103220715B (zh) 一种上报网络性能测试结果的方法及装置
CN111628902B (zh) 速率测试方法和装置、电子设备和计算机可读存储介质
US11611612B2 (en) Link quality measurements and link status detection
WO2017011981A1 (zh) 一种流表项的定时处理方法及装置
JP4724721B2 (ja) マルチアプリケーション・プロトコルにおいて、サービスプラットフォームがユーザー端末情報を獲得することを保証する方法
CN109190396A (zh) 一种数据自动验证方法、装置及设备
CN114915565A (zh) 网络调试的方法和系统
CN112650666B (zh) 一种软件测试系统、方法、装置、控制设备及存储介质
KR20150084307A (ko) 네트워크에서 웹 로딩 시간 제어 방법 및 장치

Legal Events

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

Payment date: 20170124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180108

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190107

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 7