Abstract:
The present disclosure relates to a pre-5th-Generation (5G) or 5G communication system to be provided for supporting higher data rates Beyond 4th-Generation (4G) communication system such as Long Term Evolution (LTE). Provided are a method and apparatus for reducing the page load time in a wireless communication system. The method for page loading in a mobile terminal may include: selecting, when a page is visited, a candidate page to be pre-inspected with respect to the page; performing pre-inspection of the candidate page and determining types of objects associated with the candidate page; generating tree information for the candidate page based on a result of the determination; and computing the loading time of the candidate page based on the tree information and determining download priorities of objects that are to be downloaded when the candidate page is visited.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims priority from and the benefit under 35 U.S.C. §119(a) of Korean Patent Application No. 10-2014-0110933, filed on Aug. 25, 2014, which is hereby incorporated by reference for all purposes as if fully set forth herein. 
       BACKGROUND 
       [0002]    The present disclosure relates to a communication system. More particularly, the present disclosure relates to a method and apparatus for reducing the page load time in a communication system. 
         [0003]    To meet the demand for wireless data traffic having increased since deployment of 4G communication systems, efforts have been made to develop an improved 5G or pre-5G communication system. Therefore, the 5G or pre-5G communication system is also called a ‘Beyond 4G Network’ or a ‘Post LTE System’. 
         [0004]    The 5G communication system is considered to be implemented in higher frequency (mmWave) bands, e.g., 60 GHz bands, so as to accomplish higher data rates. To decrease propagation loss of the radio waves and increase the transmission distance, the beamforming, massive multiple-input multiple-output (MIMO), Full Dimensional MIMO (FD-MIMO), array antenna, an analog beam forming, large scale antenna techniques are discussed in 5G communication systems. 
         [0005]    In addition, in 5G communication systems, development for system network improvement is under way based on advanced small cells, cloud Radio Access Networks (RANs), ultra-dense networks, device-to-device (D2D) communication, wireless backhaul, moving network, cooperative communication, Coordinated Multi-Points (CoMP), reception-end interference cancellation and the like. 
         [0006]    In the 5G system, Hybrid FSK and QAM Modulation (FQAM) and sliding window superposition coding (SWSC) as an advanced coding modulation (ACM), and filter bank multi carrier (FBMC), non-orthogonal multiple access (NOMA), and sparse code multiple access (SCMA) as an advanced access technology have been developed. 
         [0007]    Typical mobile communication systems have been developed to provide voice services while allowing user mobility. Such mobile communication systems have gradually expanded their coverage from voice services through data services up to high-speed data services. However, as current mobile communication systems suffer resource shortages and users demand even higher-speed services, development of more advanced mobile communication systems is needed. 
         [0008]    In recent years, wireless network technologies have been combined with IP networks and smartphones have been rapidly popularized. As such, users may use web browsers to access information such as video content on the Internet. As shown in  FIG. 1 , when users use web browsers running on smartphones to access webpages of various websites on the Internet, the page load time tends to be greater than or equal to one second, over 90% of the time. 
         [0009]    The webpage load time directly affects user experience, and the short load time leads to greater user satisfaction. The page load time is one of the most important performance factors for user equipment or terminals. 
         [0010]    Hence, it is necessary to develop a scheme that can reduce the load time of webpages in a wireless communication system. 
       SUMMARY 
       [0011]    Aspects of the present disclosure are intended to address at least the above mentioned problems and/or disadvantages and to provide at least the advantages described below. Accordingly, an aspect of the present disclosure is to provide a method and apparatus for reducing the page load time in a wireless communication system. 
         [0012]    More specifically, an aspect of the present disclosure is to provide a method and apparatus that can reduce the page load time in a wireless communication system by computing page load times of objects associated with a webpage to be visited next and requesting those objects with long page load times first when the webpage is visited. 
         [0013]    In accordance with an aspect of the present disclosure, a method for page loading in a mobile terminal is provided. The method may include: selecting, when a page is visited, a candidate page to be pre-inspected with respect to the page; performing pre-inspection of the candidate page and determining types of objects associated with the candidate page; generating tree information for the candidate page based on a result of the determination; and computing the loading time of the candidate page based on the tree information and determining download priorities of objects that are to be downloaded when the candidate page is visited. 
         [0014]    In accordance with another aspect of the present disclosure, a method for page loading in a mobile terminal is provided. The method may include: checking, when a page is visited, whether a record of a previous visit to the page is present; identifying, when a record of a previous visit to the page is present, Round Trip Time (RTT) information of the page; determining a download sequence for objects associated with the page based on the RTT information; and loading the page by downloading the associated objects according to the determined download sequence. 
         [0015]    In accordance with another aspect of the present disclosure, a mobile terminal for loading pages is provided. The mobile terminal may include: an interface unit to access a page and to send and receive signals to and from the page; and a pre-inspector to perform a process of selecting, when a page is visited, a candidate page to be pre-inspected with respect to the page, performing pre-inspection of the candidate page and determining types of objects associated with the candidate page, generating tree information for the candidate page based on the determination result, and computing the loading time of the candidate page based on the tree information and determining download priorities of objects that are to be downloaded when the candidate page is visited. 
         [0016]    In accordance with another aspect of the present disclosure, a mobile terminal for loading pages is provided. The mobile terminal may include: an interface unit to access a page and to send and receive signals to and from the page; and a pre-inspector to control a process of checking, when a page is visited, whether a record of a previous visit to the page is present, identifying, when a record of a previous visit to the page is present, Round Trip Time (RTT) information of the page, determining a download sequence for objects associated with the page based on the RTT information, and loading the page by downloading the associated objects according to the determined download sequence. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0017]    The above and other aspects, features, and advantages of certain embodiments of the present disclosure will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: 
           [0018]      FIG. 1  illustrates a distribution of page loading times for websites on the Internet; 
           [0019]      FIG. 2  illustrates a series of steps for delivering web content on the Internet to a browser of the user; 
           [0020]      FIG. 3  depicts an analysis of the page load time for a webpage; 
           [0021]      FIG. 4  illustrates a wireless network architecture according to an embodiment of the present disclosure; 
           [0022]      FIG. 5  illustrates an internal structure of a mobile terminal according to an embodiment of the present disclosure; 
           [0023]      FIG. 6  illustrates an internal structure of a mobile terminal according to another embodiment of the present disclosure; 
           [0024]      FIG. 7  is a flowchart of a procedure for pre-inspection according to an embodiment of the present disclosure; 
           [0025]      FIG. 8  illustrates a scrolling action on the screen of the mobile terminal; 
           [0026]      FIG. 9  is a detailed flowchart for a pre-inspection step S 720  according to an embodiment of the present disclosure; 
           [0027]      FIG. 10  illustrates tree information for a candidate page according to an embodiment of the present disclosure; 
           [0028]      FIG. 11  is a flowchart depicting a series of operations performed when a candidate page is clicked according to an embodiment of the present disclosure; and 
           [0029]      FIG. 12  is a flowchart of a procedure performed by the mobile terminal according to another embodiment of the present disclosure. 
       
    
    
     DETAILED DESCRIPTION 
       [0030]    Hereinafter, preferred embodiments of the present disclosure are described in detail with reference to the accompanying drawings. The same or similar reference symbols are used throughout the drawings to refer to the same or like parts. Descriptions of well-known functions and constructions may be omitted for clarity and conciseness. 
         [0031]    Descriptions of well-known functions and structures incorporated herein may be omitted to avoid obscuring the subject matter of the present disclosure. Descriptions of components having substantially the same configurations and functions may also be omitted. 
         [0032]    In the drawings, some elements are exaggerated or only outlined in brief, and thus may be not drawn to scale. The present disclosure is not limited by relative sizes of objects and intervals between objects in the drawings. 
         [0033]    The aspects, features and advantages of certain embodiments of the present disclosure will be more apparent from the following detailed description taken in conjunction with the accompanying drawings. The description of the various embodiments is to be construed as exemplary only and does not describe every possible instance of the present disclosure. It should be apparent to those skilled in the art that the following description of various embodiments of the present disclosure is provided for illustration purpose only and not for the purpose of limiting the present disclosure as defined by the appended claims and their equivalents. 
         [0034]    Meanwhile, it is known to those skilled in the art that blocks of a flowchart (or sequence diagram) and a combination of flowcharts may be represented and executed by computer program instructions. These computer program instructions may be loaded on a processor of a general purpose computer, special purpose computer or programmable data processing equipment. When the loaded program instructions are executed by the processor, they create a means for carrying out functions described in the flowchart. As the computer program instructions may be stored in a computer readable memory that is usable in a specialized computer or a programmable data processing equipment, it is also possible to create articles of manufacture that carry out functions described in the flowchart. As the computer program instructions may be loaded on a computer or a programmable data processing equipment, when executed as processes, they may carry out steps of functions described in the flowchart. 
         [0035]    A block of a flowchart may correspond to a module, a segment or a code containing one or more executable instructions implementing one or more logical functions, or to a part thereof. In some cases, functions described by blocks may be executed in an order different from the listed order. For example, two blocks listed in sequence may be executed at the same time or executed in reverse order. 
         [0036]    In the description, the word “unit”, “module” or the like may refer to a software component or hardware component such as a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC) capable of carrying out a function or an operation. However, “unit” or the like is not limited to hardware or software. A unit or the like may be configured so as to reside in an addressable storage medium or to drive one or more processors. Units or the like may refer to software components, object-oriented software components, class components, task components, processes, functions, attributes, procedures, subroutines, program code segments, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays or variables. A function provided by a component and unit may be a combination of smaller components and units, and may be combined with others to compose large components and units. Components and units may be configured to drive a device or one or more processors in a secure multimedia card. 
         [0037]    The size of a webpage and the number of objects in a webpage have constantly increased since the introduction of the Web. Recently, it is estimated that the average size of a webpage is 1 Mbyte and a webpage contains 80 objects on average. 
         [0038]    Recently however, both the size of a webpage and the number of objects have sharply increased. In the near future, it is expected that the average size of a webpage will reach 3 Mbytes and that a webpage will contain 240 objects on average. 
         [0039]    Hereinafter, a description is given of a method for reducing the page load time in a mobile terminal such as a smartphone connected to the Internet according to various embodiments of the present disclosure. 
         [0040]      FIG. 2  illustrates a series of steps for delivering web content on the Internet to a browser of the user. 
         [0041]    To deliver web content on the Internet to a browser of a user, the browser on a mobile terminal obtains an IP address corresponding to a URL through a Domain Name System (DNS) protocol ( 210 ). 
         [0042]    The browser establishes a Transmission Control Protocol (TCP) connection to a web server indicated by the Internet Protocol (IP) address and receives a webpage from the web server by use of the Hypertext Transfer Protocol (HTTP) protocol. Specifically, after setup a TCP connection ( 220 ), the browser receives HTTP objects ( 250 ) from the server as a result of server processing ( 240 ) after passage of Time to First Byte (TTFB) ( 230 , the time from creation of an HTTP request to reception of the first byte of a page received by the browser) and displays the received web objects on the screen ( 260 ). 
         [0043]    In this case, one webpage is composed of multiple web objects and the URL of the browser indicates the first web object. 
         [0044]    The first web object includes a HyperText Markup Language (HTML) file usually referred to as index.html, and this index.html file may include multiple web objects or resources having different URLs. Such web objects may be style sheets, images, videos, HTML codes or JavaScript codes. 
         [0045]    According to recent webpage statistics, to load one page, a browser makes 90 web requests to 15 servers on average. As shown in Table 1 below, a webpage is composed, on average, of 10 HTML objects, 55 images, 15 JavaScript objects, and 5 Cascading Style Sheets (CSS) objects. Here, a CSS object may be a document specifying the background, font and background image of a webpage. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                 TABLE 1 
               
               
                   
                   
               
               
                   
                 Web objects 
                 Number of requests 
                 Size 
               
               
                   
                   
               
             
             
               
                   
                 HTML 
                 10 requests 
                  52 KB 
               
               
                   
                 Images 
                 55 requests 
                 812 KB 
               
               
                   
                 Javascript 
                 15 requests 
                 216 KB 
               
               
                   
                 CSS 
                  5 requests 
                  36 KB 
               
               
                   
                 Other 
                  5 requests 
                 195 KB 
               
               
                   
                 Total (Page) 
                 90 requests 
                 1,311 KB   
               
               
                   
                   
               
             
          
         
       
     
         [0046]    A web object may be connected with another web object through a link. That is, a web object may refer to another web object through associations between web objects. When a link is found in an object, the browser makes a request to the object. 
         [0047]    Factors affecting the page load time include the time for network signaling and web object transfer ( 250 ), the time for displaying web objects on the screen in the browser ( 260 ), and the server processing time ( 240 ). 
         [0048]      FIG. 3  depicts an analysis of a page load time for a webpage in consideration of the associations described above. It can be seen from  FIG. 3  that the browser takes about 0.8 seconds to load the first page from “m.naver.co.kr” by accessing 5 servers and downloading 16 objects. 
         [0049]    Since the webpage load time directly affects user experience and is a performance factor for user terminals as described before, it is necessary to develop a scheme to reduce the webpage load time. 
         [0050]    Next, a description is given of a scheme to reduce a webpage load time while minimizing usage of bandwidths according to embodiments of the present disclosure. 
         [0051]      FIG. 4  illustrates a wireless network architecture according to an embodiment of the present disclosure. 
         [0052]    As shown in  FIG. 4 , a mobile terminal  410  connected to a wireless network and at least one web server  420  may be included in the present disclosure. The web server  420  may be a web server registered as a frequently visited site. 
         [0053]    The mobile terminal  410  may include one or more applications  411  and  412  utilizing a middle layer of an operating system, a browser library  413  providing browser window functions, and a pre-inspector  414  realizing the algorithm proposed as an embodiment of the present disclosure. 
         [0054]    A webpage is content whose location is identified by a Uniform Resource Locator (URL). Such a webpage is presented to the user through the HTTP protocol connecting a client and a server on an IP network. HTTP is a protocol whereby a web object is requested and downloaded. Here, the web object may be automatically created by using information stored in a server or database or by using multiple pieces of information received from different servers. 
         [0055]    The web server  420  may be a web application server capable of automatically creating HTTP responses. The web server  420  may send a package of content as an HTTP response to a client. 
         [0056]    The web server  420  may provide documents written in the Hypertext Markup Language (HTML) or an extended markup language, videos, images, and multimedia content or a combination thereof. 
         [0057]    In one embodiment, when the user of the mobile terminal  410  reads a webpage during Internet browsing at the middle layer, the pre-inspector  414  analyzes a current page to identify pages that are highly likely to be visited next by the user. 
         [0058]    For each page that is highly likely to be visited next, to load the next page, the pre-inspector  414  downloads in advance the top level metadata file having URLs of web objects (resources) such as “index.html”. 
         [0059]    The pre-inspector  414  downloads top level web objects, web objects (resources) referenced by the top level web objects, and metadata thereon in advance. The pre-inspector  414  estimates loading times of the webpages that are highly likely to be visited next based on the information downloaded in advance. 
         [0060]    In the present embodiment, the page load time can be reduced by pre-fetching web resources based on the estimation results when one of the webpages whose loading times are estimated is actually visited. 
         [0061]    The features of the present disclosure may be summarized as follows. The pre-inspector differs in two aspects from the technique used by an existing browser (e.g. pre-fetching). 
         [0062]    First, the pre-inspector  414  at the client (e.g., the mobile terminal  410 ) fetches the top-level page to be visited next without the help of a server. 
         [0063]    Existing browsers perform pre-fetching based on tags added by the server to the metadata file like index.html for web resources using statistical information. 
         [0064]    The pre-inspector  414  of the present disclosure may analyze the current page read by the user and identify pages that are likely to be visited next in the absence of tags attached by the server. The pre-inspector may determine pages to be pre-inspected among the pages identified as being likely to be visited next based on information stored in the mobile terminal such as usage histories, user interactions and consumption of network and terminal resources, and inspect the determined pages in advance. 
         [0065]    Second, the pre-inspector of the present disclosure not only downloads the top-level file of the page to be visited next but also pre-inspects web resources associated with the top-level file via links. Hence, the pre-inspector creates a page tree to estimate the page load time. 
         [0066]    This is different from pre-fetching of the top-level URL of the next page or from pre-rendering which involves pre-fetching of all resources of the next page and screen composition. 
         [0067]    The second feature of page tree enables identification of web resources significantly affecting the page load time of a pre-fetched page. Hence, when a page is actually visited, the mobile terminal may preoccupy web resources identified through the pre-inspector, decreasing the page load time with reduced bandwidth consumption. 
         [0068]    Another feature of the present disclosure is that the pre-inspector  414  may be implemented as a part of a browser or be implemented independently of a browser. When the pre-inspector  414  is implemented as an independent entity, it may be commonly used by multiple browsers. This is described in detail with reference to  FIG. 5 . 
         [0069]      FIG. 5  illustrates an internal structure of a mobile terminal according to an embodiment of the present disclosure. 
         [0070]    As shown in  FIG. 5 , the mobile terminal may include one or more applications  510  using functions of the middle layer of the operating system. 
         [0071]    The mobile terminal may further include a browser library  520  providing browser window functions. 
         [0072]    The mobile terminal may further include a pre-inspection unit  530  to pre-inspect candidate pages with respect to the currently displayed page. 
         [0073]    The pre-inspection unit  530  may include an initial filter  531  to identify targets to be pre-inspected, a parser  532  to parse a given sentence through syntax analysis and error correction, a cache  533  to store information on visited webpages for a preset time, and a pre-inspector  534  to pre-inspect candidate pages with respect to the currently displayed page. 
         [0074]    In particular, the pre-inspection unit  530  may perform pre-inspection of candidate pages, identify types of objects associated with the candidate pages, and generate tree information for the candidate pages based on the identification results. For each candidate page, the pre-inspection unit  530  may estimate the loading time of a candidate page based on the tree information and determine priorities of objects to be downloaded when the candidate page is visited. Here, the objects may be at least one of an HTML object, image, JavaScript object, and CSS object. 
         [0075]    When an object is of type 1, the pre-inspection unit  530  may send an HTTP GET request for the object to download the object. When an object is of type 2, the pre-inspection unit  530  may send an HTTP HEAD request for the object to receive size information of the object. 
         [0076]      FIG. 6  illustrates an internal structure of a mobile terminal according to another embodiment of the present disclosure. More specifically,  FIG. 6  illustrates a browser structure for reducing the page load time based on object download histories. 
         [0077]    As shown in  FIG. 6 , the mobile terminal may receive an input event for accessing a desired webpage through a user interface  610 . Thereafter, the mobile terminal may download objects associated with the webpage through a network interface  620 . 
         [0078]    In this case, the mobile terminal may determine download priorities of a plurality of objects at object loader  650  based on cache, cookies and local storage  630  and object download histories  640 . For example, an object with a large size or long download delay may be downloaded first. 
         [0079]    When an object is downloaded, the mobile terminal may parse, or pre-parse the object according to HTML or CSS with parser  660 . The parsed object is evaluated, or pre-evaluated at Evaluator  670 , processed according to a Document Object Model (DOM)  680 , and rendered at renderer  690 . 
         [0080]    A result of the rendering may be presented to the user via the user interface  610 . 
         [0081]      FIG. 7  is a flowchart of a procedure for pre-inspection according to an embodiment of the present disclosure. 
         [0082]    The pre-inspection procedure may be include a pre-inspection phase  702  performed when a page visited by a pre-inspector (e.g., the pre-inspector  530  of  FIG. 5 ) is displayed and read by the user, and a visiting phase  704  performed when a pre-inspected page is visited by the user. 
         [0083]    Next, a description is given of the pre-inspection phase  702  and visiting phase  704  with reference to the flowchart of  FIG. 7 . 
         [0084]    At step S 710 , the pre-inspection procedure performs initial filtering. When a webpage is downloaded in the pre-inspection phase  702 , the pre-inspector applies initial filtering to visitable links attached to the webpage to identify targets for pre-inspection. 
         [0085]    The information used for initial filtering may include at least one of usage histories, user interactions, and required terminal resources. For example, an amount of memory, an amount of CPU load, an amount of battery power, an amount of remaining battery power, an amount of network resources, information on a currently connected network, an amount of traffic on a current network, billing information for a current network, and billing information of a domain or site for pre-fetching or pre-inspection may be utilized. 
         [0086]    The usage history may include a list of sites recently visited by the user. User interactions such as scrolling may be dynamically used for initial filtering. For example, as shown in  FIG. 8 , when the user performs downward scrolling to view a page in a lower region of a screen  804 , the pre-inspector may select the page in the lower region as a candidate page for pre-inspection in accordance with a scrolling direction. 
         [0087]    When a wireless LAN (WLAN) network resource, for example, Wi-Fi is activated on a mobile terminal, a Wi-Fi connection may be used for selecting a candidate page for pre-inspection. Sponsored connectivity may also be used for selecting a candidate page for pre-inspection. 
         [0088]    Identification of a target for pre-inspection may be initiated based on not only examination of an HTML file at the time of page loading but also occurrence of a dynamic event. Examples of a dynamic event may include a Wi-Fi enabling event, reception of an indication to network overhead change, and exposure of a pre-inspection target to the user due to webpage scrolling. 
         [0089]    Referring back to  FIG. 7 , after initial filtering for pre-inspection at step S 710 , the pre-inspector performs pre-inspection of candidate pages at step S 720 . Pre-inspection of candidate pages is descried in detail with reference to  FIG. 9 . 
         [0090]      FIG. 9  is a detailed flowchart for pre-inspection (step S 720  of  FIG. 7 ) according to an embodiment of the present disclosure. 
         [0091]    At step S 905 , the pre-inspector detects access of the mobile terminal to a webpage. The pre-inspector performs pre-inspection of pages indicated by URLs in the webpage. Here, the target for pre-inspection may be an HTML document. 
         [0092]    More specifically, at step S 910 , the pre-inspector (e.g., the parser  660  of  FIG. 6 ) parses an HTML file or CSS file. At step S 915 , the pre-inspector examines whether a different web object needed to load the next page is included based on a result of the parsing. 
         [0093]    If a different web object needed to load the next page is included, at step S 920 , the pre-inspector checks whether the object referenced by the top-level object is an object, or resource, is needed for page loading or is a URL associated with a different page. If the object is an object, or resource, needed for page loading, at step S 925 , the pre-inspector examines the file type associated with the URL reference. 
         [0094]    At step S 930 , the pre-inspector checks whether the file type is type 1 or type 2. If the file type is type 1, the procedure proceeds to step S 935 ; and if the file type is type 2, the procedure proceeds to step S 945 . Here, a CSS or HTML file is of type 1, and an image file is of type 2. 
         [0095]    At step S 935  (for type 1 file and not hidden), the pre-inspector sends an HTTP GET request to download a corresponding web object or resource. At step S 940 , the pre-inspector receives the corresponding web object or resource. Here, the web object may be a CSS or HTML file. 
         [0096]    At step S 945  (for type 2 file), the pre-inspector sends an HTTP HEAD request for the corresponding file. At step S 950 , the pre-inspector receives an HTTP response header (excluding file body). At step S 955 , the pre-inspector identifies the size and cacheability of the corresponding file. 
         [0097]    Although not shown, when the file type is JavaScript, the pre-inspector may pre-execute the JavaScript or regard the same as leaf. 
         [0098]    At step S 960 , the pre-inspector checks whether all the objects in the webpage have been processed. 
         [0099]    If not all the objects have been processed, the procedure returns to step S 915  and the pre-inspector repeats the subsequent steps. 
         [0100]    If all the objects have been processed, at step S 965 , the pre-inspector composes tree information for candidate pages with respect to the current webpage. Tree information is illustrated in  FIG. 10 . 
         [0101]      FIG. 10  illustrates tree information for a candidate page according to an embodiment of the present disclosure. 
         [0102]    As shown in  FIG. 10 , the tree information for a candidate page is configured as a tree of multiple objects with index information (idx)  1020  as the root. For example, while pre-inspecting a CSS file  1030 , the pre-inspector may find an image file (img)  1040  referenced by the CSS file  1030 . Then, the pre-inspector may receive header information of the image file  1040  to identify the size of the image file (img)  1040 . 
         [0103]    Likewise, the pre-inspector may generate tree information for the candidate page  1010 , which indicates that JavaScript (JS) file  1050  and HTML files  1060  and  1070  are associated with the candidate page  1010 . 
         [0104]    Referring back to  FIG. 9 , at step S 970 , the pre-inspector estimates the page load time for the candidate page based on the tree information. 
         [0105]    In one embodiment, the page load time of a web object may be computed as follows. To compute the page load time, the following items may be considered. 
         [0106]    1) A first object accessed by the browser (DNS resolution and TCP setup) 
         [0107]    2) Size of a web object 
         [0108]    3) Position of a referenced web object in an HTML or CSS file (ref_position) 
         [0109]    4) Back reference to a web object referring to the target web object 
         [0110]    In consideration of the above parameters, the page load time for a web object may be estimated as follows. The following description illustrates computation of the page load time by use of numerical expressions considering the above parameters. 
         [0111]    &lt;Example for Computation of Page Load Time&gt;
       PLT 1  (O 1 )=Tdns+Ttcp+T 1     PLT 2  (O 2 )=PLT 1  (O 1 )+Ttcp+T 2     PLT 2  (Oi)=min PLT 2 (Oj)+Ti   PLT 3  (Oi)=min PLT 2 (ROi), min PLT 3  (Oi)+Ti       
 
         [0116]    A detailed description of the example is given below. 
         [0117]    PLT 1  (O 1 ) indicates the time taken to receive Object  1 . 
         [0118]    Tdns indicates a time taken for a DNS query (i.e. a time from sending a request to a DNS server to receiving a corresponding response). 
         [0119]    Ttcp indicates a time taken for TCP connection setup. That is, Ttcp indicates the time taken for TCP handshake involving transmission of a session setup request from a client to a server, transmission of a response from the server to the client, and transmission of an ACK from the client to the server. 
         [0120]    T 1  indicates a time taken to transfer Object  1  through a TCP connection. T 1  increases with an increase of size of Object  1 . 
         [0121]    PLT 2  (O 2 ) indicates a time taken to download Object  2 . Here, as Object  2  depends on Object  1  (i.e., dependency), and Object  2  can be received after reception of Object  1 . 
         [0122]    Hence, the time taken to download Object  2  may be computed by summing up the time taken for TCP connection setup to receive Object  2 , the time taken to transfer Object  2  during a TCP session, and the time taken to receive Object  1 . 
         [0123]    PLT 2  (Oi) indicates a time taken to download Object i. Specifically, PLT 2  (Oi) indicates a time taken to transfer Object i using an empty slot during an existing TCP session. 
         [0124]    PLT 3  (Oi) indicates a time taken to download Object i. Specifically, PLT 3  (Oi) indicates a sum of the time taken to receive objects referring to Object i and the time taken to receive Object i. 
         [0125]    When the computed page load time is less than or equal to a preset threshold, the pre-inspector may attach a default optimization indication to the corresponding page having a distinct URL. 
         [0126]    When the computed page load time is greater than the preset threshold, the pre-inspector may attach both a default optimization indication and a record of web objects significantly affecting the loading time to the corresponding page based on graph analysis. In addition, the pre-inspector may compute a number of resources to be downloaded in parallel so that a corresponding page can be received within a target page load time, and write the computed value in a meta-information of the corresponding page. 
         [0127]    As described above, the pre-inspector may generate tree information for candidate pages with respect to the currently visited webpage and compute page load times for web objects based on the tree information. By use of the computed page load times, the pre-inspector may determine download priorities of web objects when a candidate page is actually visited. Here, download priorities may be determined so that objects with a large size or large download delay can be downloaded first. The pre-inspector may store the information on the download priorities as a priority list. 
         [0128]    Referring back to  FIG. 7 , after completing pre-inspection of candidate pages, at step S 730 , the pre-inspector detects a visit to a specific candidate page and then controls the mobile terminal to send a download request for a web object according to the determined priority information. This is described in more detail with reference to  FIG. 11 . 
         [0129]      FIG. 11  is a flowchart depicting a series of operations performed when a candidate page is clicked according to an embodiment of the present disclosure. 
         [0130]    At step S 1110 , the mobile terminal detects an input event like click to enter the next page (e.g. candidate page) during display of a current page. At step S 1120 , the browser of the mobile terminal sends a GET request for a URL representing the next page. 
         [0131]    At step S 1130 , the pre-inspector of the mobile terminal checks whether the received URL is associated with a pre-inspected page. 
         [0132]    If the URL is a pre-inspected page, at step S 1140 , the pre-inspector checks whether web objects are stored in the cache for a cache hit. If web objects whose valid time is not expired are present in the cache, at step S 1150 , the pre-inspector parses the next webpage by use of the cached web objects. 
         [0133]    On the other hand, if the URL is a pre-inspected page but no cached web object is present, the pre-inspector may identify objects for which a request is to be sent first based on the determined priority list. Thereafter, the pre-inspector may send a GET request for the identified objects associated with the URL according to the determined priorities. 
         [0134]    In one embodiment, the pre-inspector may determine a candidate page to be visited next with respect to a webpage currently displayed on the mobile terminal. The pre-inspector may identify types of objects associated with the candidate page and generate tree information reflecting relationships between the objects. The pre-inspector may obtain information regarding file sizes and download delays of objects of a given type based on the tree information. 
         [0135]    The pre-inspector may determine download priorities of objects that are to be downloaded first when the candidate page is actually visited by the mobile terminal based on the information on file sizes and delays. For example, the pre-inspector may assign high download priorities to objects with a large file size or large delay. 
         [0136]    When the candidate page is visited, the pre-inspector may send download requests for objects associated with the page according to the assigned download priorities. 
         [0137]    In another embodiment, for instance, when a page is visited, the mobile terminal may measure the Round Trip Time (RTT) and average download time of the page or web object and record the measurement results. For example, the mobile terminal may measure and record the RTT and average download time of the page or web object corresponding to a particular domain name. 
         [0138]    Thereafter, when the page is revisited, the mobile terminal may determine download priorities of web objects based on the recorded information. 
         [0139]    This embodiment is described in detail with reference to  FIG. 12 . 
         [0140]      FIG. 12  is a flowchart of a procedure performed by the mobile terminal according to another embodiment of the present disclosure. 
         [0141]    At step S 1210 , the mobile terminal (or pre-inspector) detects a visit to a webpage. 
         [0142]    At step S 1220 , the mobile terminal checks whether a record of a previous visit to the webpage is present. If such a record is not present, at step S 1240 , the mobile terminal measures the RTT of the webpage and average download times of web objects in the webpage and stores a result of the measurement. 
         [0143]    If such a record is present, at step S 1230 , the mobile terminal retrieves information regarding the RTT of the webpage and average download times of web objects in the webpage. 
         [0144]    At step S 1250 , the mobile terminal determines download priorities of web objects in the visited webpage based on the information regarding RTT and average download times. For example, high download priorities may be assigned to objects with a large file size or large download delay. 
         [0145]    In the above embodiment, the mobile terminal determines download priorities of web objects based on a history of visits to webpages. To this end, when the cache is replaced on a periodic or aperiodic basis, the mobile terminal may determine not to remove file size and RTT information related to a webpage visit history. 
         [0146]    That is, the mobile terminal may examine the point in time for cache replacement. When it is time to perform cache replacement, the mobile terminal may check presence of RTT information of a webpage in the cache and remove contents of the cache except for the RTT information. 
         [0147]    When a webpage is visited, the mobile terminal may store information regarding files with a high download priority, such as files whose size or download delay is greater than a threshold. Thereafter, when the webpage is revisited, the mobile terminal may determine the sequence of downloads for files based on the stored information. 
         [0148]    According to embodiments of the present disclosure, when a webpage is visited, it is possible to obtain information regarding the size and download delay only for some objects without downloading all the objects. As shown in Table 2 below, on average, one webpage has a size of 1.3 MB, an HTML file has a size of 52 KB, and a CSS file has a size of 36 KB. The HTML file and CSS file take only six percent of the total size. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                 TABLE 2 
               
               
                   
                   
               
               
                   
                 Web objects 
                 Number of requests 
                 Size 
               
               
                   
                   
               
             
             
               
                   
                 HTML 
                 10 requests 
                  52 KB 
               
               
                   
                 Images 
                 55 requests 
                 812 KB 
               
               
                   
                 Javascript 
                 15 requests 
                 216 KB 
               
               
                   
                 CSS 
                  5 requests 
                  36 KB 
               
               
                   
                 Other 
                  5 requests 
                 195 KB 
               
               
                   
                 Total (Page) 
                 90 requests 
                 1,311 KB   
               
               
                   
                   
               
             
          
         
       
     
         [0149]    Hence, after size information of an image file is obtained during pre-inspection, downloading the image file at the time when the corresponding page is visited may further reduce the page load time. 
         [0150]    In a feature of the present disclosure, the method and apparatus compute page load times of objects associated with a webpage to be visited next and request those objects with long page load times first when the webpage is visited. Hence, it is possible to reduce the overall page load time. 
         [0151]    Hereinabove, various embodiments of the present disclosure have been shown and described for the purpose of illustration without limiting the subject matter of the present disclosure. It should be understood by those skilled in the art that many variations and modifications of the method and apparatus described herein will still fall within the spirit and scope of the present disclosure as defined in the appended claims and their equivalents.