FR2815212A1 - Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page - Google Patents

Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page Download PDF

Info

Publication number
FR2815212A1
FR2815212A1 FR0013521A FR0013521A FR2815212A1 FR 2815212 A1 FR2815212 A1 FR 2815212A1 FR 0013521 A FR0013521 A FR 0013521A FR 0013521 A FR0013521 A FR 0013521A FR 2815212 A1 FR2815212 A1 FR 2815212A1
Authority
FR
France
Prior art keywords
page
pages
current page
sequence
loading
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
FR0013521A
Other languages
French (fr)
Inventor
Claude Frederic Maria Touzet
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to FR0013521A priority Critical patent/FR2815212A1/en
Publication of FR2815212A1 publication Critical patent/FR2815212A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • 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
    • H04L67/306User profiles
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Abstract

The file resides on a server and has multiple pages. The server provides a database of page sequence types (Si), and a sequence type is chosen on the basis of the current page (Pv). Pages following the current page are then loaded to the client. The execution of this procedure is on the client machine.

Description

<Desc/Clms Page number 1> <Desc / Clms Page number 1>

Figure img00010001
Figure img00010001

Chamement d'un fichier comportant une pluralité de pages La présente invention concerne un dispositif de chargement d'un fichier comportant une pluralité de pages. The present invention relates to a device for loading a file comprising a plurality of pages.

Le dispositif est agencé dans un poste de travail, un ordinateur personnel, une station de travail ou tout équipement équivalent couramment référencé comme"client".  The device is arranged in a workstation, a personal computer, a workstation or any equivalent equipment commonly referred to as "client".

Le fichier réside dans un équipement serveur connecté au poste de travail par un réseau de transmission, le réseau Internet par exemple. Le terme serveur doit donc s'entendre dans son acception la plus large et il comprend notamment les sites Internet.  The file resides in a server equipment connected to the workstation by a transmission network, the Internet for example. The term server must be understood in its broadest sense and includes in particular the websites.

Le fichier, du type texte, graphique ou image par exemple, ne peut généralement pas être visualisé dans son intégralité sur l'écran du poste de travail. De plus, sa consultation n'est pas toujours séquentielle, c'est à dire qu'en certains points plusieurs options sont possibles pour la suite de cette consultation. Il s'ensuit que le fichier est subdivisé en pages qui sont des entités indépendantes et qui peuvent généralement être intégralement visualisées sur l'écran.  For example, the file, such as text, graphic, or image, can not be viewed in its entirety on the workstation screen. Moreover, its consultation is not always sequential, that is to say that in certain points several options are possible for the continuation of this consultation. It follows that the file is subdivided into pages which are independent entities and which can generally be fully visualized on the screen.

Lorsque l'utilisateur a terminé la consultation d'une page, la page courante, il émet une requête à destination du serveur dans laquelle figure la page suivante qu'il souhaite obtenir.

Figure img00010002
When the user has finished viewing a page, the current page, he sends a request to the server in which appears the next page he wants to obtain.
Figure img00010002

Du fait d'un encombrement du réseau ou d'une saturation du serveur, le délai d'attente nécessaire à la transmission de la requête puis au chargement de la page suivante dans le poste de travail peut être relativement long. Due to network congestion or server overload, the wait time required to transmit the request and then load the next page in the workstation can be relatively long.

Plusieurs solutions ont donc été proposées pour charger dans une mémoire cache une ou plusieurs pages que l'utilisateur est supposé requérir après la page courante. Pour limiter le délai d'attente, le chargement a lieu pendant la consultation de cette page courante.  Several solutions have therefore been proposed to load into a cache one or more pages that the user is supposed to require after the current page. To limit the waiting time, the loading takes place during the consultation of this current page.

Une première solution consiste à charger toutes les pages qui pourraient éventuellement être demandées par l'utilisateur. Ce n'est pas satisfaisant car cela conduit à un accroissement considérable du trafic pour le serveur. De plus, si le nombre de pages est conséquent, le temps nécessaire au chargement de ces pages peut être très long et même excéder le temps de consultation de la page courante augmenté du temps de chargement d'une page.  A first solution is to load all the pages that could possibly be requested by the user. This is not satisfactory because it leads to a considerable increase in traffic for the server. In addition, if the number of pages is large, the time required to load these pages can be very long and even exceed the consultation time of the current page plus the loading time of a page.

Une deuxième solution mise en oeuvre dans le serveur consiste à définir le profil de l'utilisateur en mémorisant les diverses consultations qu'il a déjà effectuées. Un programme réalise alors une prédiction sur la page que va  A second solution implemented in the server is to define the profile of the user by memorizing the various consultations he has already done. A program then makes a prediction on the page that is going

<Desc/Clms Page number 2><Desc / Clms Page number 2>

demander l'utilisateur en fonction de son comportement antérieur. Là encore, le serveur subit une charge supplémentaire puisqu'il doit gérer toutes les consultations du fichier.  ask the user based on his previous behavior. Again, the server is under an extra load since it must handle all file lookups.

Une troisième solution exposée dans la demande de brevet FR 2 779 594 consiste à charger certaines pages prédéfinies suite au

Figure img00020001

chargement de la page courante. L'indication des pages prédéfinies figure dans la page courante si bien qu'il faut modifier tout le fichier. A third solution disclosed in the patent application FR 2 779 594 consists in loading certain predefined pages following the
Figure img00020001

loading the current page. The predefined pages are indicated in the current page so that the entire file must be modified.

La présente invention a ainsi pour objet un moyen de charger par anticipation une ou plusieurs pages que l'utilisateur est susceptible de requérir à

Figure img00020002

la suite de la consultation de la page courante, ceci en limitant au maximum la surcharge du serveur. The present invention thus relates to a means of loading in advance one or more pages that the user is likely to require to
Figure img00020002

following the consultation of the current page, this limiting the server overload as much as possible.

Selon l'invention, une méthode de chargement d'un fichier résidant dans un serveur, ce fichier comportant une pluralité de pages dont la dernière chargée est la page courante, comprend les étapes suivantes : - acquisition depuis le serveur d'une base de données qui répertorie les séquences types de pages du fichier, - sélection d'une séquence type au moins qui comprend la page courante, et - chargement de la page qui suit la courante dans l'une au moins des séquences types sélectionnées dès que la page courante a été chargée.

Figure img00020003
According to the invention, a method of loading a file residing in a server, this file comprising a plurality of pages, the last of which is loaded on the current page, comprises the following steps: - acquisition from the server of a database which lists the standard sequences of pages of the file, - selection of at least one standard sequence which includes the current page, and - loading of the page which follows the current in at least one of the selected standard sequences as soon as the current page has been loaded.
Figure img00020003

Avantageusement, une séquence initiale de pages qui se termine par la page courante ayant déjà été chargée, la méthode comprend une étape pour calculer la longueur d'une suite de pages qui précède cette page courante dans les séquences types sélectionnées et qui est identique à une suite finale de pages de la séquence initiale, et elle comprend une étape pour charger la page qui suit la page courante dans l'une au moins des séquences types qui conduisent à la suite finale la plus longue. Advantageously, an initial sequence of pages which ends with the current page having already been loaded, the method comprises a step for calculating the length of a sequence of pages which precedes this current page in the selected standard sequences and which is identical to a Final sequence of pages of the initial sequence, and it includes a step to load the page that follows the current page into at least one of the sequences that lead to the longest end run.

Selon une caractéristique additionnelle, la méthode comprend une étape pour charger la page qui apparaît le plus fréquemment à la suite de la page courante dans les séquences types présentant la suite finale la plus longue.  According to an additional characteristic, the method comprises a step for loading the page that appears most frequently following the current page in the standard sequences presenting the longest final sequence.

De préférence, la méthode comprend une étape pour rejeter les séquences types dont la page qui suit la page courante appartient à la séquence initiale.

Figure img00020004
Preferably, the method comprises a step for rejecting the standard sequences whose page following the current page belongs to the initial sequence.
Figure img00020004

Eventuellement, la méthode permet de charger plusieurs pages issues des séquences types sélectionnées. Optionally, the method allows to load several pages from the selected type sequences.

L'invention vise également un dispositif agencé dans un poste de travail comprenant des moyens pour mettre en oeuvre la méthode ci-dessus.  The invention also relates to a device arranged in a workstation comprising means for implementing the method above.

<Desc/Clms Page number 3> <Desc / Clms Page number 3>

La présente invention apparaîtra maintenant avec plus de détails dans le cadre de la description qui suit d'exemples de réalisation donnés à titre illustratif en se référant aux figures annexées qui représentent : - la figure 1, les éléments nécessaires au dispositif selon l'invention, et - la figure 2, un organigramme de la méthode selon l'invention.  The present invention will now appear in greater detail in the context of the following description of exemplary embodiments given by way of illustration with reference to the appended figures which represent: FIG. 1, the elements necessary for the device according to the invention, and - Figure 2, a flowchart of the method according to the invention.

En premier lieu, il convient de définir la base de données des séquences

Figure img00030001

types qui est réalisée au niveau du serveur, un site Internet le cas présent. Lorsqu'un utilisateur vient se connecter à ce site pour consulter le fichier, le serveur réalise un enregistrement de la séquence des pages demandées ou log de visite. On accumule ainsi dans un répertoire un nombre important de logs de visite qui sont créés à l'occasion de chaque connexion au site. Le nombre retenu peut aller de quelques milliers à quelques million. In the first place, it is necessary to define the sequence database
Figure img00030001

types that is performed at the server level, a website this case. When a user connects to this site to view the file, the server makes a record of the sequence of the requested pages or visit log. Thus, a large number of visit logs are accumulated in a directory, which are created during each connection to the site. The number retained can range from a few thousand to a few million.

L'étape suivante consiste à réduire la taille du répertoire pour ne conserver que des séquences types de sorte que sa transmission au poste de travail soit assurée dans un délai raisonnable. On retiendra uniquement quelques centaines de logs. Pour opérer cette réduction, plusieurs possibilités sont offertes. A titre d'exemple, il est possible d'opérer une sélection au hasard ou bien de retenir un bloc de logs consécutifs. Il est également possible de partir d'une sélection initiale puis de la faire évoluer en testant l'effet de l'apport d'une nouvelle séquence sur la performance du dispositif décrit plus loin.

Figure img00030002
The next step is to reduce the size of the directory to keep only typical sequences so that its transmission to the workstation is ensured within a reasonable time. We will only remember a few hundred logs. To make this reduction, several possibilities are offered. For example, it is possible to make a selection at random or to retain a block of consecutive logs. It is also possible to start from an initial selection then to make it evolve by testing the effect of the addition of a new sequence on the performance of the device described below.
Figure img00030002

En référence à la figure 1, le poste de travail comprend essentiellement un microprocesseur CPU, une mémoire vive RAM et une mémoire cache CA, chacun connecté à un premier contrôleur CONT. Ce premier contrôleur prévu pour la gestion du bus et de la mémoire est de plus connecté à une interface de périphériques PCI elle même raccordée à un deuxième contrôleur MASTER en charge de la gestion des périphériques au nombre desquels figure l'écran SCR. Le deuxième contrôleur MASTER est également relié à une interface interne INT sur laquelle est connectée une unité de stockage de masse telle qu'un disque (non représenté) et à une interface externe EXT connectée au réseau. L'accès au site Internet SERV se fait par l'intermédiaire d'un premier S1 et d'un deuxième S2 serveurs dits de proximité. With reference to FIG. 1, the workstation essentially comprises a microprocessor CPU, a random access memory RAM and a cache memory CA, each connected to a first controller CONT. This first controller intended for bus and memory management is further connected to a PCI peripheral interface which is itself connected to a second MASTER controller in charge of managing the peripherals, among which is the SCR screen. The second MASTER controller is also connected to an internal INT interface to which is connected a mass storage unit such as a disk (not shown) and an external EXT interface connected to the network. Access to the SERV website is via a first S1 and a second S2 server called proximity.

Lors de la première consultation du site, l'utilisateur du poste de travail

Figure img00030003

requière le chargement de la base de données des séquences types dans la mémoire de masse du poste de travail. Avantageusement, le chargement est réalisé globalement ou par parties durant une ou plusieurs périodes d'inactivité de la liaison de transmission entre le poste de travail PC et le serveur SERV. La During the first consultation of the site, the user of the workstation
Figure img00030003

requires the loading of the database of the sequences in the mass memory of the workstation. Advantageously, the loading is performed globally or in parts during one or more periods of inactivity of the transmission link between the PC workstation and the SERV server. The

<Desc/Clms Page number 4><Desc / Clms Page number 4>

base de données peut éventuellement être conservée après la consultation en vue d'utilisations ultérieures. Chaque séquence type Si est repérée par un indice i variant de 1 à t qui figure son rang dans le répertoire. La page qui figure à la jième position dans la séquence type Si est repérée Sjj, j variant de 1 à n.  database may possibly be retained after consultation for further use. Each type sequence Si is indicated by an index i varying from 1 to t which is its rank in the directory. The page which appears in the jth position in the type sequence Si is marked Sjj, j varying from 1 to n.

On se place maintenant au cours d'une consultation réalisée par l'utilisateur du poste de travail. Celui-ci a déjà requis une séquence initiale IS composée des pages Pk, k variant de 1 à v, Pv figurant donc la page en cours de visualisation ou page courante.  We now sit during a consultation conducted by the user of the workstation. This one has already required an initial sequence IS composed of the pages Pk, k varying from 1 to v, Pv thus appearing the current page of visualization or current page.

Dès le chargement de la page courante détecté par le premier contrôleur CONT, celui-ci déclenche les opérations suivantes.  Upon loading the current page detected by the first controller CONT, it triggers the following operations.

En référence à la figure 2, la séquence initiale IS est comparée à chacune des séquences types Si. Si la page courante Pv appartient à la séquence type Si et si elle n'appartient pas à la séquence initiale IS, on compare alors les pages précédant la page courante dans la séquence initiale Pv-1 et

Figure img00040001

dans la séquence type Sjj-1. En cas d'identité, on réitère la comparaison en prenant la page précédente dans la séquence initiale Pv-2 et dans la séquence type Si, j-2 et ainsi de suite jusqu'à obtenir deux pages différentes. On identifie ainsi une suite finale de pages de longueur Li commune à la séquence initiale IS et à la séquence type Si, cette suite se terminant par la page courante Pv. With reference to FIG. 2, the initial sequence IS is compared with each of the standard sequences Si. If the current page Pv belongs to the type sequence Si and if it does not belong to the initial sequence IS, then the pages preceding the current page in the initial sequence Pv-1 and
Figure img00040001

in the sequence Sjj-1. In case of identity, the comparison is repeated by taking the previous page in the initial sequence Pv-2 and in the type sequence Si, j-2 and so on until two different pages are obtained. Thus, a final sequence of pages of length Li, which is common to the initial sequence IS and to the type sequence Si, is identified, this sequence ending in the current page Pv.

On recherche alors les séquences types qui présentent la suite finale de longueur maximale. Si une seule séquence type présente la suite la plus longue, le dispositif de l'invention émet une requête pour provoquer le chargement dans la mémoire cache CA de la page qui suit la page courante dans cette séquence type. Si par contre plusieurs séquences types comportent la suite finale de longueur maximale, on examine la page suite qui suit la page courante Pv dans chacune de ces séquences. On définit la fréquence d'apparition de chaque page suite distincte comme le nombre de séquences types dans lesquelles elle est présente. Le dispositif de l'invention déclenche alors le chargement de la page suite affectée de la plus grande fréquence d'apparition si cette page est unique. We then look for standard sequences that have the final sequence of maximum length. If a single sequence has the longest sequence, the device of the invention issues a request to cause the loading in the CA cache of the page following the current page in this sequence. If, on the other hand, several standard sequences comprise the final sequence of maximum length, we examine the page following that follows the current page Pv in each of these sequences. The frequency of appearance of each separate page is defined as the number of standard sequences in which it is present. The device of the invention then triggers the loading of the page followed by the greatest frequency of appearance if this page is unique.

Dans le cas contraire, une page suite est choisie au hasard, la première du répertoire par exemple. In the opposite case, a continuation page is chosen at random, the first of the directory for example.

La succession des opérations décrites ci-dessus peut être réalisée par exemple au moyen d'un programme informatique en langage C représenté en annexe.  The succession of operations described above can be performed for example by means of a computer program in C language represented in the appendix.

Il s'agit là du mode de réalisation privilégié mais l'invention s'applique

Figure img00040002

également dans un mode dégradé. Ainsi, la recherche de la suite finale la plus This is the preferred embodiment but the invention applies
Figure img00040002

also in a degraded mode. So, looking for the most final sequel

<Desc/Clms Page number 5><Desc / Clms Page number 5>

longue n'est pas indispensable et il est possible de charger dans la mémoire cache CA la page qui suit la page courante dans la première séquence type qui comporte cette page courante. De même, il n'est pas impératif de calculer la fréquence d'apparition des différentes pages suite dans les séquences types comprenant une suite finale de longueur maximale. Il est en effet possible de retenir la page suite de la première séquence sélectionnée.  long is not essential and it is possible to load in the cache CA the page that follows the current page in the first sequence that includes this page. Similarly, it is not imperative to calculate the frequency of appearance of the various pages continued in the standard sequences comprising a final sequence of maximum length. It is indeed possible to retain the page following the first selected sequence.

Par ailleurs, lorsque différentes pages répondent aux critères de

Figure img00050001

sélection exposés ci-dessus, le dispositif de l'invention permet de charger dans la mémoire cache plusieurs d'entre elles. Moreover, when different pages meet the criteria of
Figure img00050001

selection exposed above, the device of the invention allows to load in the cache several of them.

Après la consultation de la page courante, l'utilisateur du poste de travail précise donc la page suivante qu'il souhaite consulter. Si cette page a été chargée dans la mémoire cache, elle est immédiatement visualisée. Si ce n'est pas le cas, une requête est transmise au serveur comme dans l'état de l'art mais l'invention ne conduit pas à une augmentation du délai d'attente.  After consulting the current page, the user of the workstation specifies the next page he wants to consult. If this page has been loaded into the cache, it is immediately displayed. If this is not the case, a request is transmitted to the server as in the state of the art, but the invention does not lead to an increase in the waiting period.

Les exemples de réalisation de l'invention présentés ci-dessus ont été choisis pour leur caractère concret. Il ne serait cependant pas possible de répertorier de manière exhaustive tous les modes de réalisation que recouvre cette invention. En particulier, tout moyen décrit peut-être remplacé par un moyen équivalent sans sortir du cadre de la présente invention.  The embodiments of the invention presented above have been chosen for their concrete nature. It would not be possible, however, to exhaustively list all the embodiments covered by this invention. In particular, any means described may be replaced by equivalent means without departing from the scope of the present invention.

<Desc/Clms Page number 6> <Desc / Clms Page number 6>

Figure img00060001

Annexe
Figure img00060002

#define M 10/* length of the sequence */ #define NBP 1500/* # of html pages */ char tab) e [NBP] [255] ;/*) D and string of each page */ int database [1000] [M] ;/* max # of seq in Learning Base : 1000*/ int cache [NBP] ;/* content of the navigator cache */ int history [NBP] ;/*userbehaviororhistory*/ char URL [255] ;/* Page en cours de lecture par l'internaute */ int date=0, N1 ;/* # of seq. */ int cacheindx, predictindx ; int tsize ;/* # of pages */ /*******************************/ void Prediction (void) { char predict [255] ;/* La page predite par le systeme */ int q [NBP] ;/* stats per page */ int i, j, k, l, a, onmax ; int Ion, dejavu, maxq, maxindx ; /* get current URL asked by the user, determine its ID and increment the history sequence */ i=0 ; dejavu = 0 ; while ( {i < Csize) & & (dejavu == 0)) {i++ ; dejavu = 1 ; for (k=O ; k < =str) en (URL) ; k++) if (tabie [i] [k]'=URL [k]) {dejavu = 0 ; break ;} }/* end while */ if ( (i==t~size) & & (dejavu == 0)) printf ("Not in Database\n") ; history [date] = i ; date++ ; cache [cacheindx] =i ; cacheindx++ ; ion marx = 0 ; for (a=0 ; a < NB~P ; a++) {q [a] = 0 ;} for (k=O ; k < N1 ; k++) for (I=0 ; 1 < (M-1) ; 1++) {if (database[k][l] == history [date-1]) {dejavu = 0 ; for (a= (cacheindx-1) ; a > =O ; a--) {if (database [k] [I+1] == cache [a]) {dejavu=1 ; break ;} } if (dejavu == 0)
Figure img00060001

Annex
Figure img00060002

#define M 10 / * length of the sequence * / #define NBP 1500 / * # of html pages * / char tab) e [NBP] [255]; / *) D and string of each page * / int database [1000 ] [M]; / * max # of seq in Learning Base: 1000 * / int cache [NBP]; / * content of the browser cache * / int history [NBP]; / * userbehaviororhistory * / char URL [255]; / * Page being read by the user * / int date = 0, N1; / * # of seq. * / int cacheindx, predictindx; int tsize; / * # of pages * / / ******************************* / void Prediction (void) {char predict [255]; / * The page predicted by the system * / int q [NBP]; / * stats per page * / int i, j, k, l, a, onmax; int Ion, dejavu, maxq, maxindx; / * get current URL asked by the user, determine its ID and increment the history sequence * / i = 0; dejavu = 0; while ({i <Csize) && (dejavu == 0)) {i ++; dejavu = 1; for (k = 0; k <= str) in (URL); k ++) if (tabie [i] [k] '= URL [k]) {dejavu = 0; break;}} / * end while * / if ((i == t ~ size) && (dejavu == 0)) printf ("Not in Database \ n"); history [date] = i; date ++; cache [cacheindx] = i; cacheindx ++; marx ion = 0; for (a = 0; a <NB ~ P; a ++) {q [a] = 0;} for (k = 0; k <N1; k ++) for (I = 0; 1 <(M-1); ++) {if (database [k] [l] == history [date-1]) {dejavu = 0; for (a = (cacheindx-1); a> = O; a--) {if (database [k] [I + 1] == cache [a]) {dejavu = 1; break;}} if (dejavu == 0)

<Desc/Clms Page number 7> <Desc / Clms Page number 7>

Figure img00070001

Ion = 1 ; for (a= (date-2) ; a > =O ; a--) {if ( (I+a-date+1) > =0) {if (database [k] [) +a-date+1] ==history [a]) Ion++ ; else break ; } } if (ton > ) onmax) ion marx = Ion ; for (a=0 ; a < NBP ; a++) {q [a] = 0 ;} } if (Ion == onmax) {q [database [k] [I+l]] ++ ; }/* end if dejavu */ }/* end if database */ }/* end for 1 */ if (lon~max ! =O) {maxq=0 ;/* find the most interesting */ for (k=O ; k < NBP ; k++) if (q [k] > max~q) {max~q = q [k] ; maxjndx = k ;} } q [maxindx] = 0 ; predictindx = max~indx ; for (k=0 ; k < =strlen (table [predictindx]) ; k++) {predict [k] =tab) e [pred) ctjndx] [k] ;} predict ]='\0' ;/* generate a string */ }
Figure img00070001

Ion = 1; for (a = (date-2); a> = O; a--) {if ((I + a-date + 1)> = 0) {if (database [k] [) + a-date + 1 ] == history [a]) Ion ++; else break; }} if (ton>) onmax) ion marx = Ion; for (a = 0; a <NBP; a ++) {q [a] = 0;}} if (Ion == onmax) {q [database [k] [I + 1]] ++; } / * end if dejavu * /} / * end if database * /} / * end for 1 * / if (lon ~ max! = O) {maxq = 0; / * find the most interesting * / for (k = O; k <NBP; k ++) if (q [k]> max ~ q) {max ~ q = q [k]; maxjndx = k;}} q [maxindx] = 0; predictindx = max ~ indx; for (k = 0; k <= strlen (table [predictindx]); k ++) {predict [k] = tab) e [pred) ctjndx] [k];} predict] = '\ 0'; / * generate a string * /}

Claims (6)

REVENDICATIONS 1) Méthode de chargement d'un fichier résidant dans un serveur (SERV), ce fichier comportant une pluralité de pages dont la dernière chargée est la page courante (Pv), caractérisée en ce qu'elle comprend les étapes suivantes : - acquisition depuis ledit serveur d'une base de données qui répertorie les séquences types (Si) de pages dudit fichier, - sélection d'une séquence type (Si) au moins qui comprend ladite page courante (Pv) l et - chargement de la page qui suit ladite courante (Pv) dans l'une au moins desdites séquences types sélectionnées dès que ladite page courante a été chargée.  CLAIMS 1) Method of loading a file resident in a server (SERV), this file comprising a plurality of pages, the last loaded is the current page (Pv), characterized in that it comprises the following steps: - acquisition from said server of a database which lists the standard sequences (Si) of pages of said file, - selection of at least one standard sequence (Si) which comprises said current page (Pv) and loading of the page which following said current (Pv) in at least one of said selected sequences as soon as said current page has been loaded. 2) Méthode selon la revendication 1 caractérisée en ce que, une séquence initiale (IS) de pages qui se termine par ladite page courante (Pv) ayant déjà été chargée, elle comprend une étape pour calculer la longueur (Li) d'une suite de pages qui précède ladite page courante (Pv) dans lesdites séquences types (Si) sélectionnées et qui est identique à une suite finale de pages de ladite séquence initiale (ins), et elle comprend une étape pour charger la page qui suit ladite page courante (Pv) dans l'une au moins des séquences types qui conduisent à la suite finale la plus longue. 2) Method according to claim 1 characterized in that, an initial sequence (IS) of pages which ends with said current page (Pv) having already been loaded, it comprises a step for calculating the length (Li) of a sequence of pages preceding said current page (Pv) in said selected type sequences (Si) and which is identical to a final sequence of pages of said initial sequence (ins), and includes a step for loading the page that follows said current page (Pv) in at least one of the standard sequences that lead to the longest end run. 3) Méthode selon la revendication 2, caractérisée en ce qu'elle comprend une étape pour charger la page qui apparaît le plus fréquemment à la suite de 3) Method according to claim 2, characterized in that it comprises a step for loading the page which appears most frequently as a result of
Figure img00080001
Figure img00080001
ladite page courante (Pv) dans lesdites séquences types (Si) présentant la suite finale la plus longue.  said current page (Pv) in said type sequences (Si) having the longest end run.
4) Méthode selon l'une quelconque des revendications 1 à 3, caractérisée en ce qu'elle comprend une étape pour rejeter lesdites séquences types (Si) dont la page qui suit ladite page courante (Pv) appartient à ladite séquence initiale (ins). 4) Method according to any one of claims 1 to 3, characterized in that it comprises a step for rejecting said standard sequences (Si) whose page following said current page (Pv) belongs to said initial sequence (ins) . 5) Méthode selon l'une quelconque des revendications précédentes, caractérisée en ce qu'elle permet de charger plusieurs pages issues desdites séquences types (Si) sélectionnées. 5) Method according to any one of the preceding claims, characterized in that it allows to load several pages from said selected sequences (Si). 6) Dispositif agencé dans un poste de travail (PC) comprenant des moyens pour mettre en oeuvre la méthode selon l'une quelconque des revendications précédentes.6) Device arranged in a workstation (PC) comprising means for implementing the method according to any one of the preceding claims.
FR0013521A 2000-10-09 2000-10-09 Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page Pending FR2815212A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0013521A FR2815212A1 (en) 2000-10-09 2000-10-09 Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0013521A FR2815212A1 (en) 2000-10-09 2000-10-09 Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page

Publications (1)

Publication Number Publication Date
FR2815212A1 true FR2815212A1 (en) 2002-04-12

Family

ID=8855601

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0013521A Pending FR2815212A1 (en) 2000-10-09 2000-10-09 Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page

Country Status (1)

Country Link
FR (1) FR2815212A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085226A (en) * 1998-01-15 2000-07-04 Microsoft Corporation Method and apparatus for utility-directed prefetching of web pages into local cache using continual computation and user models

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085226A (en) * 1998-01-15 2000-07-04 Microsoft Corporation Method and apparatus for utility-directed prefetching of web pages into local cache using continual computation and user models

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SCHECHTER S ET AL: "Using path profiles to predict HTTP requests", COMPUTER NETWORKS AND ISDN SYSTEMS,NL,NORTH HOLLAND PUBLISHING. AMSTERDAM, vol. 30, no. 1-7, 1 April 1998 (1998-04-01), pages 457 - 467, XP004121402, ISSN: 0169-7552 *

Similar Documents

Publication Publication Date Title
US6240447B1 (en) Method for reducing perceived delay between a time data is requested and a time data is available for display
US20170163723A1 (en) Autonomic Content Load Balancing
CA2229392C (en) Method and apparatus for precaching data at a server
US6304904B1 (en) Method and apparatus for collecting page-level performance statistics from a network device
CN109101658B (en) Information searching method and device, and equipment/terminal/server
US20070255792A1 (en) Method and apparatus for an email gateway
US20160335243A1 (en) Webpage template generating method and server
CN101763357A (en) Method and system for browser to load internet resources
FR2815212A1 (en) Loading of a multi-page file from Internet server to client, uses page sequence profiles and loads pages in anticipation on basis of profile and current page
CN102299949A (en) System and method of network data access management
US20160323405A1 (en) Web proxy
FR2805626A1 (en) METHOD AND SYSTEM FOR GRANTING PRIVILEGES BY AN ACCESS MANAGER WITHIN A COMMUNICATION NETWORK
US20220303360A1 (en) Reduction of data transmissions based on end-user context
CN110012127B (en) Cross-domain name cookie sharing method and device, storage medium and terminal
KR20000067045A (en) Image transcoding apparatus for reducing gif size and it&#39;s method
FR2855695A1 (en) Multimedia programs radio broadcasting method for e.g. PDA, involves adding header to multimedia programs before broadcasting each program, where header indicates type of client device for which program is destined
KR100188690B1 (en) Database management method
CN106372155A (en) Method and device for filtering webpage links
FR2797699A1 (en) System and procedure for transfer of data over a computer network, especially the Internet, has a more rapid method for data transfer based on substitution of recurring data objects in a file with a single generic object
FR2853788A1 (en) METHOD AND DEVICE FOR ACCESSING A DIGITAL DOCUMENT IN A PEER-TO-PEER COMMUNICATION NETWORK
US20040014469A1 (en) Method and device or re-using information received previously in a telecommunication network such as the internet
Choi et al. Network Traffic Reduction by Hypertext Compression.
JP3630547B2 (en) Database system and search data return method
Walker et al. The missing link: a preliminary typology for understanding link decay in social media
US20060064482A1 (en) System and method for caching data and filtering data requests in a client application