WO2003094047A2 - Accelerated transmission of hypertext documents - Google Patents

Accelerated transmission of hypertext documents Download PDF

Info

Publication number
WO2003094047A2
WO2003094047A2 PCT/DE2003/001379 DE0301379W WO03094047A2 WO 2003094047 A2 WO2003094047 A2 WO 2003094047A2 DE 0301379 W DE0301379 W DE 0301379W WO 03094047 A2 WO03094047 A2 WO 03094047A2
Authority
WO
WIPO (PCT)
Prior art keywords
archive
file
files
server
buffer memory
Prior art date
Application number
PCT/DE2003/001379
Other languages
German (de)
French (fr)
Other versions
WO2003094047A3 (en
Inventor
Andreas Dangberg
Original Assignee
Siemens Aktiengesellschaft
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 Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Priority to EP03747392A priority Critical patent/EP1509860A2/en
Priority to US10/512,974 priority patent/US20060122844A1/en
Publication of WO2003094047A2 publication Critical patent/WO2003094047A2/en
Publication of WO2003094047A3 publication Critical patent/WO2003094047A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. 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/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/63Routing a service request depending on the request content or context
    • 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/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • 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]

Definitions

  • the invention relates to the accelerated transmission of hypertext documents, in particular HTML pages with the HTTP protocol.
  • the HTTP / 1.1 protocol allows a connection to be kept open, so that the connection setup and clearing down are not necessary.
  • the browser regularly has a cache ('cache.'), From which previously loaded elements can be extracted.
  • the latter is devalued by the fact that the graphic designers prefer to use different graphics on each page.
  • the buffer memory can only buffer elements of identical addresses; when activating a reference that leads to another computer, all graphics are reload when visiting this page for the first time.
  • the problem is only barely visible to professional users due to the high computing speeds and fast network connections today. However, it is found that private users are also no longer willing to wait a long time for a page to be built and may no longer consider a commercial offer if the loading time is subjectively too slow.
  • the HTML tag provides that not only the name of the JAVA class to be executed, but also the address of a JAR archive in which the class is to be contained is specified. The browser then loads the entire archive and takes the class and the objects it needs from the archive.
  • the object of the present invention is to provide a solution with which all objects required by one side can be transmitted with a network transfer and which is nevertheless compatible with the previous use.
  • the HTML page should remain unchanged; only the server and browser are supplemented in such a way that an improved server with an improved browser increases efficiency, but the remaining three combinations remain functional.
  • the solution uses the possibility that the browser sets an indicator when the HTML page is requested, which is ignored by previous servers and is used by new servers to send an archive containing the HTML page instead of the HTML page , In contrast to a JAR archive, this archive is not set as a whole in the buffer memory, but is unpacked and loaded into the buffer memory (element). The content of the archive can contain any elements that can be addressed via URL, which are then used automatically by the buffer memory mechanism.
  • the invention is as follows: When an HTML page is requested, the browser sets an indicator on the basis of which the server sends an archive instead of the HTML page, which the browser unpacks into the cache.
  • the archive contains, for example, the images required by the page, which are then retrieved from the cache, so that only one network transfer is required per page.
  • the invention is compatible with previous operation, in particular by using the 'content negotiation' according to RFC 2295 or 'remote variant selection' according to RFC 2296.
  • the wave line 10 indicates a network to which a client below the wave line 10 and a server above the wave line 10 are connected.
  • the network and the connections are preferably implemented using the Internet protocol HTTP.
  • the HTTP process includes a switch 16 with which it is decided whether the requested document "testl.html” is taken from the mass storage device 18 as before and sent back to the client, or the extension to be described is used.
  • the display program ('browser') in the client that requested the page comprises a controller 22 for a buffer memory 24.
  • the invention changes the process as follows: An indicator in the request from "testl.html” informs the server process 14 that an archive can also be processed instead of the requested file. This indicator is presented in more detail below. If this indicator is set, the server process 14 checks whether there is a corresponding archive 20, here with the name 'testl .harc', and then sends this archive 20 back, symbolized by the switch 16. A corresponding entry in the header ('header') in accordance with the HTTP protocol, for example the (new) MIME type 'archive / harc' instead of 'text / html', indicates to the buffer memory process 22 that a instead of a single document Archive is transmitted.
  • the buffer storage process 22 then breaks the archive down into its elements and stores these elements individually in the buffer memory 24, as indicated in FIG. 1. As in the example, include the file 'testl.html' in the archive. Since this is now in the buffer memory, it can be made available to the display program as before. This interprets the HTML text and determines that additional files are required. For this purpose, as always, it is first checked whether these are in the buffer memory. Since this is the case, these additional files 'imgl.jpg', 'test2.html' and 'scriptl.js' are taken from the buffer memory; communication with the server is no longer necessary.
  • a new element can be defined in the HTTP header.
  • content selection ('content negotiation') according to RFC 2295 or 'remote variant selection' according to RFC 2296 is preferred.
  • the latter is mainly used to make different Requesting language variants of an HTML page is therefore not fully usable in order not to lose this ability.
  • the formats known to the browser are listed in the header of the request; the server can then send one of these formats.
  • a browser with a buffer memory according to the invention uses this header and adds an appropriate (MIME) type.
  • MIME appropriate
  • a server according to the invention only sends the archive format if the browser has declared it possible. This is one way of realizing the indicator listed above.
  • the browser is set up in such a way that it first requests the file 'testl.harc' instead of the file 'testl.html' and, if the server shows this as not available, then requests the original 'testl.html'.
  • the changed file type then represents the above-mentioned indicator.
  • the indicator permitting an archive is only set if the document is not yet in the buffer memory. In the event that it is still in the buffer memory but is no longer valid, an archive is then no longer permitted, since the other elements can still be valid.
  • one solution is that manually or automatically maintained lists, also by means of a data bank are implemented, which assign the file names of the archives pages. If the file name is found in one of the lists and the assigned archive exists, the archive is transferred instead of the file.
  • the server can also search for existing archives and the page in these archives and automatically transmit the archive in the event of a hit.
  • Another variant checks whether the subdirectory in which the requested file is or should be contains an archive. If this is the case, the archive is transferred instead of the file. Optionally, it can be checked beforehand whether the file is contained in the archive. In a further development, if no archive is available, it is created, saved and transmitted from all files of the subdirectory 'on the fly'. In this case, a positive or negative list of file types, in particular via their extensions, is preferably specified, for example, so that JAVA archives (.jar) are not included.
  • the buffer memory of an intermediary referred to as a 'proxy' is used.
  • a proxy server receives the request from the browser and in turn sends it to the server, receives the requested document and forwards it to the browser.
  • a proxy server has a protective function in that the outbound requests are routed through a single, dedicated system.
  • a proxy server such as 'SQID' or the corresponding Apache module is usually combined with a buffer memory in order to transmit requested pages as often as possible from the proxy via the expensive external connection without the external connection being loaded. The proxy server can therefore set the indicator, receive an archive, unpack it in the buffer memory and then use the fast and inexpensive internal network to make a large Efficiently supply a number of conventional browsers with parts of external HTML pages.
  • the archive sent by the server contains the requested file, which is then processed further from the buffer memory.
  • the controller for the buffer memory should also be able to handle the case that the archive received does not contain the requested file. Since it is not generally possible to decide whether the content of the archive should be discarded for security reasons or whether it can still be set in the buffer memory, this selection is set via user options and may depend on whether simple HTTP or secure HTTPS is used as the protocol was used. Furthermore, either the requested file can immediately be treated as not available (error 404 in the HTTP protocol). Or a second request can preferably be made, in which the indicator that an archive is welcome is not set and the page is requested again individually.
  • the server can check whether the requested file is present in the archive and only then send the archive, otherwise it can send the file itself. This solution is simple, manageable and robust against errors in the assignment of files and archives.
  • the archive is sent. If it is not up to date, either only the page is sent or the current page is temporarily or permanently replaced in the archive by the current version and then the archive is sent. If it does not exist, the archive can still be sent on the assumption that the control of the buffer memory, as described above, then requests the page again, but without an archive indicator. This applies to HTML pages, which are changed more often, but where the images etc. used in them are changed very rarely. In this version, an archive containing objects required by the page is still sent in front of the page, so to speak.
  • the server sends two files upon request of a file; namely an archive without the file and then or before the file.
  • the indicator which indicates that an archive can be delivered instead of the requested page is useful for the invention, but not essential. For example, consider a closed network, as is often the case with self-service terminals. Then it can be assumed that all browsers are able to receive an archive instead of a requested file; explicit marking is no longer necessary. The same applies to the data supplied by the server: The MIME type in the header indicates that an archive is being sent. Alternatively, each file received can first be interpreted as an archive and only treated as a simple file if it is not a valid archive.
  • one of the formats known as 'are', 'zip', 'tar', 'epio', 'cab', '1ha' etc. can be used as the archive format, in which the files become a new file representing the archive be packed. Often a compression is used and the transfer is accelerated if the packed files are not already compressed, as is the case with the common image formats • gif, 'jpg' and 'png'.
  • Another possibility with the HTTP (S) protocol is to encode the returned data as a multi-part message with separators in accordance with the MIME standard RFC-2046 ('multi-part message'). Here, a number of individual files are connected to a total stream by separators. The data type in the header is then 'multipart / mixed'.
  • This variant has the advantage that the dynamic compilation in the server is particularly simple.
  • the requested file is preferably sent as the first part. Then either a prepared file is added, which already has a
  • the invention was described on the basis of HTML pages. It is equally applicable to other markup sites such as the successor XHTML, the XML extension, and other appropriate formats.

Abstract

When a HTML page is requested, an indicator is set by a browser and is used to enable the server to send back an archive, in the place of the HTML page, which is unpacked by the browser in the cache. The archive contains, for example, the images which are required by said page and which are retrieved from the cache such that only one network transfer is required per page. The invention is compatible with previous operations, especially by using content negotiation according to RFC 2295 or remote variant selection according to RFC 2296.

Description

Beschleunigte Übermittlung von Hypertext-DokumentenAccelerated transmission of hypertext documents
Die Erfindung betrifft die beschleunigte Übermittlung von Hypertext-Dokumenten, insbesondere von HTML-Seiten mit dem Protokoll HTTP.The invention relates to the accelerated transmission of hypertext documents, in particular HTML pages with the HTTP protocol.
Die Verwendung des als Internet bekannten Netzwerks mit 'Browser' genannten Anzeigeprogrammen, der Markierungsspräche HTML und dem Protokoll HTTP ist dem entsprechenden Fachmann im Detail allgemein bekannt.The use of the network known as the Internet with 'browsers', the marking languages HTML and the HTTP protocol is generally known in detail to the person skilled in the art.
Bei dem Abruf von HTML-Seiten wird seitens der Autoren der Seiten in immer größerem Umfang von Grafiken und anderen eingebetteten Komponenten Gebrauch gemacht. Dies bewirkt, daß zunächst die durch eine URL adressierte HTML-Seite von dem darin angegebenen Server abgerufen und vom Server an den Browser übertragen wird. Nach dem Erhalt der Seite (oder eines ersten Teils) wird diese nach den Syntax-Regeln von HTML analysiert, wobei die Elemente durch Tags markiert sind. Dabei werden Grafiken durch das IMG-Tag eingebettet . Das IMG- Tag enthält mit dem ' SRC= ' Parameter die Adresse einer zu ladenden Grafik oder Bilddatei. Für jedes dieser Elemente wird nun die Datei von dem Server abgerufen, also für jedes Bild ein Anforderungs-Antwort-Paar des HTTP-Protokolls durchgeführt .When HTML pages are called up, the authors of the pages are making increasing use of graphics and other embedded components. This means that the HTML page addressed by a URL is first retrieved from the server specified therein and transferred from the server to the browser. After receiving the page (or a first part) it is analyzed according to the syntax rules of HTML, with the elements being marked by tags. Graphics are embedded by the IMG tag. With the 'SRC =' parameter, the IMG tag contains the address of a graphic or image file to be loaded. The file is then called up from the server for each of these elements, that is, a request-response pair of the HTTP protocol is carried out for each image.
Die damit lange Zeit des Aufbaus einer HTML-Seite wird durch verschiedene Maßnahmen kompensiert. Zum einen erlaubt es das Protokoll HTTP/1.1, eine Verbindung geöffnet zu halten, so daß der Verbindungsauf- und -abbau entfallen. Weiterhin hat der Browser regelmäßig einen Pufferspeicher ('cache.'), dem bereits früher geladene Elemente entnommen werden können. Letzterer wird allerdings dadurch entwertet, daß die Grafik- Designer mit Vorliebe auf jeder Seite unterschiedliche Grafiken einsetzen. Außerdem kann der Pufferspeicher nur Elemente identischer Adresse puffern; beim Aktivieren eines Verweises, der auf einen anderen Rechner führt, sind von dort alle Gra- fiken neu zu laden, wenn diese Seite das erste Mal besucht wird. Das Problem wird lediglich durch die hohen Rechengeschwindigkeiten und schnellen heutigen Netzwerkverbindungen den professionellen Nutzern wenig sichtbar. Es wird allerdings festgestellt, daß auch die privaten Benutzer nicht mehr bereit sind, lange auf den Aufbau einer Seite zu warten und ein kommerzielles Angebot gegebenenfalls nicht mehr in Betracht ziehen, wenn die Ladezeit subjektiv zu langsam ist.The long time it took to build an HTML page is compensated for by various measures. On the one hand, the HTTP / 1.1 protocol allows a connection to be kept open, so that the connection setup and clearing down are not necessary. Furthermore, the browser regularly has a cache ('cache.'), From which previously loaded elements can be extracted. However, the latter is devalued by the fact that the graphic designers prefer to use different graphics on each page. In addition, the buffer memory can only buffer elements of identical addresses; when activating a reference that leads to another computer, all graphics are reload when visiting this page for the first time. The problem is only barely visible to professional users due to the high computing speeds and fast network connections today. However, it is found that private users are also no longer willing to wait a long time for a page to be built and may no longer consider a commercial offer if the loading time is subjectively too slow.
Für die spezielle Klasse eingebetteter Objekte namens JAVA- Applet sieht das HTML-Tag vor, daß nicht nur der Name der auszuführenden JAVA-Klasse, sondern zudem die Adresse eines JAR-Archivs angegeben wird, in dem die Klasse enthalten sein soll. Der Browser lädt dann das gesamte Archiv und entnimmt die Klasse wie auch davon benötigte Objekte dem Archiv.For the special class of embedded objects called JAVA applet, the HTML tag provides that not only the name of the JAVA class to be executed, but also the address of a JAR archive in which the class is to be contained is specified. The browser then loads the entire archive and takes the class and the objects it needs from the archive.
Davon ausgehend, wird in der Patentschrift US 6,026,437 eine Verbesserung vorgeschlagen. Wenn in der traditionellen Lösung zunächst das HTML-Dokument und danach das JAR-Archiv in zwei getrennten Aufrufen geladen werden muß, so schlägt die genannte Schrift vor, daß der Hypertext-Verweis ('link') auf ein JAR-Archiv zeigt, das genau ein, das JAR-Archiv benutzende HTML-Dokument enthält. Diese Lösung erfordert allerdings zuvor Änderungen aller Browser, da die Optimierung durch eine geänderte Syntax der Verweise bewirkt wird.Based on this, an improvement is proposed in US Pat. No. 6,026,437. If, in the traditional solution, the HTML document and then the JAR archive have to be loaded in two separate calls, the font suggests that the hypertext link ('link') points to a JAR archive that does exactly that an HTML document using the JAR archive. However, this solution requires changes to all browsers beforehand, since the optimization is caused by a changed syntax of the references.
Die vorliegende Erfindung stellt sich die Aufgabe, eine Lösung anzugeben, mit der alle von einer Seite benötigten Objekte mit einem Netzwerktransfer übertragen werden können und die dennoch kompatibel mit der bisherigen Verwendung ist. Insbesondere soll die HTML-Seite unverändert bleiben; lediglich werden Server und Browser so ergänzt, daß ein verbesserter Server mit einem verbesserten Browser eine Effizienzsteigerung bewirkt, aber die restlichen drei Kombinationen unverändert funktionsfähig bleiben. Die Lösung verwendet die Möglichkeit, daß der Browser bei der Anforderung der HTML-Seite einen Indikator setzt, der von bisherigen Servern ignoriert wird und von neuen Servern dazu verwendet wird, anstelle der HTML-Seite ein Archiv zu senden, das die HTML-Seite enthält. Dieses Archiv wird, im Gegensatz zu einem JAR-Archiv, nicht als ganzes in den Pufferspeicher eingestellt, sondern entpackt und elementweise in den Pufferspeicher (cache) geladen. Der Inhalt des Archivs kann beliebige, per URL adressierbare Elemente enthalten, die dann durch den Pufferspeicher-Mechanismus automatisch benutzt werden. Es ist also, auch im Gegensatz zu dem genannten Stand der Technik, nicht notwendig, daß alle in der Seite enthaltenden Elemente in dem Archiv enthalten sind. Insbesondere wird es häufig sinnvoll sein, ein JAR-Archiv gerade nicht zu integrieren und dieses getrennt zu laden. Auch können Elemente enthalten sein, die erst mittelbar referiert werden, wenn z.B. in der Seite auf eine andere Seite verwiesen wird, die wiederum Graphiken enthält und diese bereits bei der ersten Seite mit übertragen werden.The object of the present invention is to provide a solution with which all objects required by one side can be transmitted with a network transfer and which is nevertheless compatible with the previous use. In particular, the HTML page should remain unchanged; only the server and browser are supplemented in such a way that an improved server with an improved browser increases efficiency, but the remaining three combinations remain functional. The solution uses the possibility that the browser sets an indicator when the HTML page is requested, which is ignored by previous servers and is used by new servers to send an archive containing the HTML page instead of the HTML page , In contrast to a JAR archive, this archive is not set as a whole in the buffer memory, but is unpacked and loaded into the buffer memory (element). The content of the archive can contain any elements that can be addressed via URL, which are then used automatically by the buffer memory mechanism. In contrast to the prior art mentioned, it is therefore not necessary that all elements contained in the page are contained in the archive. In particular, it will often make sense not to integrate a JAR archive and to load it separately. It can also contain elements that are only indirectly referenced, for example, if the page refers to another page, which in turn contains graphics and these are already transferred on the first page.
Zusammengefaßt stellt sich die Erfindung wie folgt dar: Bei der Anforderung einer HTML-Seite wird von dem Browser ein Indikator gesetzt, auf Grund dessen der Server anstelle der HTML-Seite ein Archiv zurücksendet, das von dem Browser in den Cache entpackt wird. Das Archiv enthält beispielsweise die von der Seite benötigten Bilder, die dann von dem Cache abgerufen werden, so daß pro Seite nur ein Netzwerk-Transfer notwendig ist. Die Erfindung ist kompatibel zum bisherigen Betrieb, insbesondere durch Verwendung der 'content negotia- tion' nach RFC 2295 oder ' remote variant selection' nach RFC 2296.In summary, the invention is as follows: When an HTML page is requested, the browser sets an indicator on the basis of which the server sends an archive instead of the HTML page, which the browser unpacks into the cache. The archive contains, for example, the images required by the page, which are then retrieved from the cache, so that only one network transfer is required per page. The invention is compatible with previous operation, in particular by using the 'content negotiation' according to RFC 2295 or 'remote variant selection' according to RFC 2296.
Die Erfindung wird nachfolgend an Hand eines Ausführungsbei- spiels und einiger Varianten genauer beschrieben.The invention is described in more detail below on the basis of an exemplary embodiment and some variants.
In Fig. 1 ist eine Anordnung skizziert, an Hand derer der Ablauf beschrieben werden soll. Durch die Wellenlinie 10 ist ein Netzwerk angedeutet, mit dem ein Client unterhalb der Wellenlinie 10 und ein Server oberhalb der Wellenlinie 10 verbunden sind. Das Netzwerk und die Verbindungen werden bevorzugt mit dem Internet-Protokoll HTTP realisiert.An arrangement is sketched in FIG. 1, on the basis of which the sequence is to be described. The wave line 10 indicates a network to which a client below the wave line 10 and a server above the wave line 10 are connected. The network and the connections are preferably implemented using the Internet protocol HTTP.
In dem Client befinde sich ein HTML-Dokument 12, das einen Verweis (link), hier '<a href=" testl .html"> link </a>', enthält. Durch Aktivierung des Verweises wird eine Anfrage an den HTTP-Prozeß 14 gerichtet. Der HTTP-Prozeß umfaßt einen Schalter 16, mit dem entschieden wird, ob das angeforderte Dokument "testl.html" wie bisher von dem Massenspeicher 18 entnommen und zum Client zurückgeschickt wird, oder die noch zu beschreibende Erweiterung angewendet wird. Das Anzeigeprogramm ('browser') im Client, das die Seite angefordert hat, umfaßt eine Steuerung 22 für einen Pufferspeicher 24.In the client there is an HTML document 12 which contains a link, here '<a href=" testl .html"> link </a>'. By activating the link, a request is made to the HTTP process 14. The HTTP process includes a switch 16 with which it is decided whether the requested document "testl.html" is taken from the mass storage device 18 as before and sent back to the client, or the extension to be described is used. The display program ('browser') in the client that requested the page comprises a controller 22 for a buffer memory 24.
Das angeforderte Dokument "testl.html" lautet beispielsweise wie folgt:For example, the requested document "testl.html" is as follows:
<HTML><HEAD><TITLE>TESTl</TITLEx/HEAD><HTML> <HEAD> <TITLE> testl </ titlex / HEAD>
<B0DY><H1>TEST1</H1><B0DY> <H1> TEST1 </ H1>
Image: <IMG SRC=imgl . pg ALT="imgl">Image: <IMG SRC = imgl. pg ALT = "imgl">
Link: <A HREF=test2.html> test2 </a>Link: <A HREF=test2.html> test2 </a>
Script: <srcipt src=scriptl . jsx/script>Script: <srcipt src = scriptl. jsx / script>
JAVA-Applet: <APPLET src=an_applet . java> </applet>JAVA applet: <APPLET src = an_applet. java> </applet>
</BODY></HTML></ BODY> </ HTML>
In dem Fall, das vom Server-Prozeß 14 nur wie bisher das angeforderte Dokument zurückgesendet wird, wird dieses wie gehabt von der Steuerung 22 in den Pufferspeicher 24 eingetragen und steht dann dem Anzeigeprogramm als Dokument 26 zur Verfügung. In dem Dokument 26 sind mehrere Verweise enthalten, und zwar die Verweise ' <img src=imgl . jpg> ' , <a href=test2.html>" und <script src=scriptl . js>" . Nunmehr interpretiert das Anzeigeprogramm das Dokument "testl.html" und trifft auf eben diese Verweise, woraufhin die darin angegebenen Dateien "imgl.jpg", "test2.html" und "scriptl.js" nacheinander vom Server angefordert, in den Cache 24 abgelegt und sodann in den HTML-Text 26 funktional eingefügt werden.In the event that the server process 14 only sends the requested document back as before, this is entered by the controller 22 into the buffer memory 24 as before and is then available to the display program as document 26. There are several references in document 26, namely the references'<img src = imgl. jpg>',<ahref=test2.html>"and<script src = scriptl. js>". Now the display program interprets the document "testl.html" and strikes precisely these references, whereupon the files “imgl.jpg”, “test2.html” and “scriptl.js” specified therein are successively requested by the server, stored in the cache 24 and then functionally inserted into the HTML text 26.
Die Erfindung verändert den Ablauf wie folgt: Durch einen Indikator in der Anforderung von "testl.html" wird dem Server- Prozeß 14 mitgeteilt, daß anstelle der angeforderten Datei auch ein Archiv verarbeitet werden kann. Dieser Indikator wird weiter unten noch genauer dargestellt. Ist dieser Indikator gesetzt, so prüft der Server-Prozeß 14, ob es ein entsprechendes Archiv 20, hier mit dem Namen ' testl .harc ' , gibt und sendet dann, durch den Schalter 16 symbolisiert, eben dieses Archiv 20 zurück. Durch einen entsprechenden Eintrag in den Kopfzeilen ('header') gemäß dem Protokoll HTTP, beispielsweise dem (neuen) MIME-Typ ' archive/harc ' anstelle von 'text/html', wird dem Pufferspeicherprozeß 22 angezeigt, daß anstelle eines einzigen Dokuments ein Archiv übermittelt wird. Daraufhin zerlegt der Pufferspeicherprozeß 22 das Archiv in seine Elemente und speichert diese Elemente einzeln im Pufferspeicher 24, wie in Fig. 1 angedeutet. Sei wie im Beispiel die Datei 'testl.html' in dem Archiv enthalten. Da diese nunmehr im Pufferspeicher ist, kann sie wie bisher dem Anzeigeprogramm zur Verfügung gestellt werden. Dieses interpretiert den HTML-Text und stellt fest, daß noch weitere Dateien benötigt werden. Hierzu wird, wie immer, zunächst geprüft, ob sich diese im Pufferspeicher befinden. Da das der Fall ist, werden diese weiteren Dateien 'imgl.jpg', 'test2.html' und 'scriptl.js' dem Pufferspeicher entnommen; eine Kommunikation zu dem Server ist nicht mehr notwendig.The invention changes the process as follows: An indicator in the request from "testl.html" informs the server process 14 that an archive can also be processed instead of the requested file. This indicator is presented in more detail below. If this indicator is set, the server process 14 checks whether there is a corresponding archive 20, here with the name 'testl .harc', and then sends this archive 20 back, symbolized by the switch 16. A corresponding entry in the header ('header') in accordance with the HTTP protocol, for example the (new) MIME type 'archive / harc' instead of 'text / html', indicates to the buffer memory process 22 that a instead of a single document Archive is transmitted. The buffer storage process 22 then breaks the archive down into its elements and stores these elements individually in the buffer memory 24, as indicated in FIG. 1. As in the example, include the file 'testl.html' in the archive. Since this is now in the buffer memory, it can be made available to the display program as before. This interprets the HTML text and determines that additional files are required. For this purpose, as always, it is first checked whether these are in the buffer memory. Since this is the case, these additional files 'imgl.jpg', 'test2.html' and 'scriptl.js' are taken from the buffer memory; communication with the server is no longer necessary.
Für den Indikator, mit dem der Client dem Server mitteilt, daß ein Archiv willkommen ist, kann entweder ein neues Element in den HTTP-Kopfzeile definiert werden. Bevorzugt wird jedoch die Inhalts-Auswahl ('content negotiation' ) nach RFC 2295 oder die ' remote variant selection' nach RFC 2296 verwendet. Letztere wird überwiegend verwendet, um verschiedene Sprachvarianten einer HTML-Seite anzufordern und ist daher, um diese Fähigkeit nicht zu verlieren, nicht uneingeschränkt verwendbar. Besser ist die Inhalts-Auswahl, die bislang dazu verwendet wird, daß der Server nicht die Original-Datei, sondern eine komprimierte Version sendet. Hierzu werden die dem Browser bekannten Formate in dem Header der Anfrage aufgezählt; der Server kann dann eines dieser Formate senden. Ein Browser mit einem Pufferspeicher nach der Erfindung benutzt diesen Header und fügt einen passenden (MIME-) Typ hinzu. Ein Server, der nicht darauf eingerichtet ist, ignoriert dieses Format und verhält sich wie bisher. Ein Server gemäß der Erfindung sendet auch nur dann das Archiv-Format, wenn der Browser dieses als möglich deklariert hat. Dies ist damit eine Möglichkeit, den oben aufgeführten Indikator zu realisieren.For the indicator with which the client informs the server that an archive is welcome, either a new element can be defined in the HTTP header. However, content selection ('content negotiation') according to RFC 2295 or 'remote variant selection' according to RFC 2296 is preferred. The latter is mainly used to make different Requesting language variants of an HTML page is therefore not fully usable in order not to lose this ability. Better is the content selection that has been used so far that the server does not send the original file, but a compressed version. For this purpose, the formats known to the browser are listed in the header of the request; the server can then send one of these formats. A browser with a buffer memory according to the invention uses this header and adds an appropriate (MIME) type. A server that is not set up for this ignores this format and behaves as before. A server according to the invention only sends the archive format if the browser has declared it possible. This is one way of realizing the indicator listed above.
In einer anderen Variante wird der Browser so eingerichtet, daß er anstelle der Datei 'testl.html' zunächst die Datei 'testl.harc' anfordert und, wenn der Server diese als nicht verfügbar darstellt, dann die ursprüngliche 'testl.html' anfordert. Der geänderte Dateityp stellt dann den oben genannten Indikator da.In another variant, the browser is set up in such a way that it first requests the file 'testl.harc' instead of the file 'testl.html' and, if the server shows this as not available, then requests the original 'testl.html'. The changed file type then represents the above-mentioned indicator.
In einer Weiterbildung der Erfindung wird der ein Archiv zulassende Indikator nur dann gesetzt, wenn das Dokument noch nicht im Pufferspeicher ist. In dem Fall, das es sich zwar noch im Pufferspeicher befindet, aber nicht mehr gültig ist, wird dann ein Archiv nicht mehr zugelassen, da die anderen Elemente durchaus noch gültig sein können.In a development of the invention, the indicator permitting an archive is only set if the document is not yet in the buffer memory. In the event that it is still in the buffer memory but is no longer valid, an archive is then no longer permitted, since the other elements can still be valid.
Eine andere Weiterbildung macht die Anforderung eines Archivs davon abhängig, daß keine oder nur eine vorgegebenen geringe Anzahl oder nur ältere Dokumente desselben Servers im Pufferspeicher sind.Another development makes the requirement of an archive dependent on the fact that there are no or only a predetermined small number or only older documents of the same server in the buffer memory.
Seitens des Servers besteht eine Lösung darin, daß manuell oder automatisch geführte Listen, auch mittels einer Daten- bank realisiert, vorhanden sind, die den Dateinamen der Seiten Archive zuordnen. Wird der Dateiname in einer der Listen gefunden und existiert das zugeordnete Archiv, dann wird das Archiv anstelle der Datei übertragen.On the server side, one solution is that manually or automatically maintained lists, also by means of a data bank are implemented, which assign the file names of the archives pages. If the file name is found in one of the lists and the assigned archive exists, the archive is transferred instead of the file.
Auch kann der Server jedes Mal nach vorhandenen Archiven und in diesen nach der Seite suchen und im Trefferfalle automatisch das Archiv übermitteln.The server can also search for existing archives and the page in these archives and automatically transmit the archive in the event of a hit.
In einer anderen Variante wird geprüft, ob das Unterverzeichnis, in dem die angeforderte Datei gespeichert ist oder sein sollte, ein Archiv enthält. Ist dies der Fall, so wird das Archiv statt der Datei übertragen. Optional kann zuvor geprüft werden, ob die Datei in dem Archiv enthalten ist. In einer Weiterbildung wird, wenn kein Archiv vorhanden ist, dieses aus allen Dateien des Unterverzeichnisses ' on the fly' gebildet, abgespeichert und übermittelt. Hierbei wird bevorzugt eine Positiv- oder Negativliste von Dateiarten, insbesondere über deren Erweiterungen, beispielsweise festlegen, daß JAVA-Archive (.jar) nicht eingeschlossen werden.Another variant checks whether the subdirectory in which the requested file is or should be contains an archive. If this is the case, the archive is transferred instead of the file. Optionally, it can be checked beforehand whether the file is contained in the archive. In a further development, if no archive is available, it is created, saved and transmitted from all files of the subdirectory 'on the fly'. In this case, a positive or negative list of file types, in particular via their extensions, is preferably specified, for example, so that JAVA archives (.jar) are not included.
Bei einer alternative Anwendung der Erfindung wird der Pufferspeicher eines als 'proxy' bezeichnenten Vermittlers verwendet. Ein Proxy-Server erhält von dem Browser die Anforderung und stellt sie seinerseits an den Server, erhält das angeforderte Dokument zurück und gibt dieses dem Browser weiter. Ein Proxy-Server hat einerseits eine Schutzfunktion, indem die nach außen gehenden Anfragen über einen einziges, de- dizierte System geleitet werden. Ein Proxy-Server wie ' SQID ' oder der entsprechenden Apache-Modul wird meist mit einem Pufferspeicher kombiniert, um über die teure Externverbindung angeforderte Seiten möglichst häufig von dem Proxy aus zu ü- bermitteln, ohne daß die Externverbindung belastet wird. Deshalb kann der Proxy-Server den Indikator setzen, ein Archiv erhalten, dieses in den Pufferspeicher entpacken und dann ü- ber das schnelle und preiswerte interne Netz eine große An- zahl von herkömmlichen Browsern effizient mit Teilen externer HTML-Seiten versorgen.In an alternative application of the invention, the buffer memory of an intermediary referred to as a 'proxy' is used. A proxy server receives the request from the browser and in turn sends it to the server, receives the requested document and forwards it to the browser. On the one hand, a proxy server has a protective function in that the outbound requests are routed through a single, dedicated system. A proxy server such as 'SQID' or the corresponding Apache module is usually combined with a buffer memory in order to transmit requested pages as often as possible from the proxy via the expensive external connection without the external connection being loaded. The proxy server can therefore set the indicator, receive an archive, unpack it in the buffer memory and then use the fast and inexpensive internal network to make a large Efficiently supply a number of conventional browsers with parts of external HTML pages.
In der Regel und damit bevorzugt enthält das von dem Server gesendete Archiv die angeforderte Datei, die dann aus dem Pufferspeicher heraus weiterverarbeitet wird.As a rule, and therefore preferably, the archive sent by the server contains the requested file, which is then processed further from the buffer memory.
Auch um robust gegen Fehler zu sein, soll die Steuerung für den Pufferspeicher auch den Fall handhaben können, daß das erhaltene Archiv die angeforderte Datei nicht enthält. Da es nicht allgemein entscheidbar ist, ob in diesem Fall der Inhalt des Archivs aus Sicherheitsgründen verworfen werden soll oder dennoch in den Pufferspeicher eingestellt werden kann, wird diese Auswahl über Benutzeroptionen eingestellt und ggf. davon abhängig sein, ob als Protokoll einfaches HTTP oder gesichertes HTTPS verwendet wurde. Weiterhin kann entweder die angeforderte Datei sogleich als nicht vorhanden (Fehler 404 im HTTP-Protokoll) behandelt werden. Oder es kann bevorzugt eine zweite Anforderung erfolgen, bei welcher der Indikator, daß ein Archiv willkommen ist, nicht gesetzt ist und somit die Seite nochmals einzeln angefordert wird.In order to be robust against errors, the controller for the buffer memory should also be able to handle the case that the archive received does not contain the requested file. Since it is not generally possible to decide whether the content of the archive should be discarded for security reasons or whether it can still be set in the buffer memory, this selection is set via user options and may depend on whether simple HTTP or secure HTTPS is used as the protocol was used. Furthermore, either the requested file can immediately be treated as not available (error 404 in the HTTP protocol). Or a second request can preferably be made, in which the indicator that an archive is welcome is not set and the page is requested again individually.
Der Server kann einerseits, nachdem ein Archiv bestimmt ist, das der angeforderten Datei zugeordnet ist, prüfen, ob die angeforderte Datei im Archiv vorhanden ist und nur dann das Archiv senden, andernfalls doch die Datei selbst senden. Diese Lösung ist einfach, überschaubar und robust gegen Fehler in der Zuordnung von Dateien und Archiven.On the one hand, after an archive has been determined which is assigned to the requested file, the server can check whether the requested file is present in the archive and only then send the archive, otherwise it can send the file itself. This solution is simple, manageable and robust against errors in the assignment of files and archives.
Besser ist es jedoch, wenn zudem geprüft wird, ob die Datei in dem Archiv nicht nur vorhanden, sondern auch aktuell ist. Ist sie aktuell und vorhanden, wird das Archiv gesendet. Ist sie nicht aktuell, wird entweder nur die Seite gesendet oder zuvor die aktuelle Seite temporär oder permanent in dem Archiv durch die aktuelle Version ersetzt und dann das Archiv gesendet . Ist sie nicht vorhanden, kann dennoch das Archiv gesendet werden in der Annahme, daß die Steuerung der Pufferspeicher, wie oben beschrieben, daraufhin die Seite nochmals, jedoch ohne Archiv-Indikator, anfordert. Dieser Fall betrifft HTML- Seiten, die zwar häufiger geändert werden, aber bei denen die darin verwendeten Bilder usw. sehr selten verändert werden. Bei dieser Ausführung wird sozusagen vor der Seite immer noch ein Archiv gesendet, das von der Seite benötigte Objekte enthält.However, it is better if it is also checked whether the file in the archive is not only available but also up-to-date. If it is current and available, the archive is sent. If it is not up to date, either only the page is sent or the current page is temporarily or permanently replaced in the archive by the current version and then the archive is sent. If it does not exist, the archive can still be sent on the assumption that the control of the buffer memory, as described above, then requests the page again, but without an archive indicator. This applies to HTML pages, which are changed more often, but where the images etc. used in them are changed very rarely. In this version, an archive containing objects required by the page is still sent in front of the page, so to speak.
Bei einer Fortbildung dieser Variante schickt der Server auf die Anfrage einer Datei hin zwei Dateien; nämlich ein Archiv ohne die Datei und sodann oder zuvor die Datei .In a further development of this variant, the server sends two files upon request of a file; namely an archive without the file and then or before the file.
Der Indikator, der anzeigt, daß ein Archiv anstelle der angeforderten Seite geliefert werden kann, ist für die Erfindung zweckmäßig, aber nicht zwingend. Sei beispielsweise ein geschlossenes Netzwerk gegeben, wie es bei Selbstbedienungster- inals häufig der Fall ist. Dann kann davon ausgegangen werden, daß alle Browser in der Lage sind, anstelle einer angeforderten Datei ein Archiv zu erhalten; eine explizite Markierung ist nicht mehr notwendig. Gleiches gilt für die vom Server gelieferten Daten: Es wird bevorzugt über den MIME-Typ im Header angezeigt, daß ein Archiv gesendet wird. Alternativ kann aber auch jede erhaltenen Datei zunächst als Archiv interpretiert werden und erst dann, wenn es sich nicht um ein gültiges Archiv handelt, als einfache Datei behandelt werden.The indicator which indicates that an archive can be delivered instead of the requested page is useful for the invention, but not essential. For example, consider a closed network, as is often the case with self-service terminals. Then it can be assumed that all browsers are able to receive an archive instead of a requested file; explicit marking is no longer necessary. The same applies to the data supplied by the server: The MIME type in the header indicates that an archive is being sent. Alternatively, each file received can first be interpreted as an archive and only treated as a simple file if it is not a valid archive.
Als Archivformat kann einerseits eines der unter als 'are', 'zip', 'tar', ' epio ' , 'cab', '1ha' usw. bekannten Formate verwendet werden, bei denen die Dateien zu einer neuen, das Archiv darstellenden Datei verpackt werden. Häufig wird dabei noch eine Kompression verwendet und so die Übertragung weiter beschleunigt, sofern die verpackten Dateien nicht bereits ohnehin komprimiert sind, wie es bei den gängigen Bildformaten gif, 'jpg' und 'png' der Fall ist. Eine andere Möglichkeit beim HTTP (S) -Protokoll besteht darin, die zurückgesendeten Daten als mehrteilige Nachricht mit Trennzeichen gemäß dem MIME-Standard RFC- 2046 ('multi-part message') zu codieren. Hierbei wird eine Anzahl von einzelnen Dateien durch Trenner zu einem Gesamtstrom verbunden. Der Datentyp im Header ist dann 'multipart/mixed' . Diese Variante hat den Vorteil, daß die dynamische Zusammenstellung im Server besonders einfach ist. Bevorzugt wird als erster Teil die angeforderte Datei selbst gesendet. Daran anschließend wird entweder eine vorbereitete Datei angefügt, die bereits eineOn the one hand, one of the formats known as 'are', 'zip', 'tar', 'epio', 'cab', '1ha' etc. can be used as the archive format, in which the files become a new file representing the archive be packed. Often a compression is used and the transfer is accelerated if the packed files are not already compressed, as is the case with the common image formats gif, 'jpg' and 'png'. Another possibility with the HTTP (S) protocol is to encode the returned data as a multi-part message with separators in accordance with the MIME standard RFC-2046 ('multi-part message'). Here, a number of individual files are connected to a total stream by separators. The data type in the header is then 'multipart / mixed'. This variant has the advantage that the dynamic compilation in the server is particularly simple. The requested file is preferably sent as the first part. Then either a prepared file is added, which already has a
'multipart-message' darstellt und die dann ohne weiteres angefügt werden kann (ggf. unter Anpassung der Grenztrenner'multipart-message' and which can then be easily added (if necessary, by adjusting the limit separator
('boundary delimiter'). Oder es werden gemäß eines Datenbank- eintrags bzw. einer sonstigen Liste die dort enthaltenen Dateien einzeln angefügt. Diese Variante ist funktional gleichwertig zu einem traditionellen Archiv und wird daher im Rahmen der Erfindung als Archiv-Format angesehen.('boundary delimiter'). Or the files contained there are added individually according to a database entry or another list. This variant is functionally equivalent to a traditional archive and is therefore regarded as an archive format in the context of the invention.
Die Erfindung wurde an Hand von HTML-Seiten beschrieben. Sie ist auf weitere Markup-Seiten wie den Nachfolger XHTML, die Erweiterung XML, sowie andere adäquate Formate gleichermaßem anwendbar . The invention was described on the basis of HTML pages. It is equally applicable to other markup sites such as the successor XHTML, the XML extension, and other appropriate formats.

Claims

Patentansprüche claims
1. Server für mehrere, durch Adressen bestimmte Dateien, insbesondere Markup-Seiten, mit den Merkmalen:1. Server for several files determined by addresses, in particular markup pages, with the features:
- der Server bestimmt unter Verwendung der in einer Anforderung einer Datei enthaltenen Adresse, ob a) die Datei selbst oder b) anstelle der Datei ein Archiv, das mehrere Dateien umfaßt, zurückgesendet wird.- Using the address contained in a request for a file, the server determines whether a) the file itself or b) an archive, which comprises several files, is sent back instead of the file.
2. Server nach Anspruch 1, wobei die Anforderung einen Archiv-Indikator umfaßt und nur bei Anwesenheit Indikators anstelle der Datei ein Archiv zurückgesendet wird.2. Server according to claim 1, wherein the request comprises an archive indicator and an archive is only sent back if the indicator is present instead of the file.
3. Server nach Anspruch 2 , wobei der Indikator mittels einer Inhalts-Auswahl implementiert wird.3. Server according to claim 2, wherein the indicator is implemented by means of a content selection.
4. Server nach einem der Ansprüche 1 bis 3, wobei eine Assoziativliste verwendet wird und,4. Server according to one of claims 1 to 3, wherein an associative list is used and,
- wenn hierdurch der Adresse der angeforderten Datei eine andere Datei zugeordnet ist, diese Datei gesendet wird, und wenn der angeforderten Datei mehrere Dateien zugeordnet sind, diese Dateien als ein Archiv gesendet werden.- If this means that another file is assigned to the address of the requested file, this file is sent, and if several files are assigned to the requested file, these files are sent as an archive.
5. Server nach einem der Ansprüche 1 bis 3 , wobei die angeforderte Datei in vorhandenen Archiven sucht und, wenn die angeforderte Datei vorhanden ist, ein solches Archiv anstelle der Datei zurücksendet.5. Server according to one of claims 1 to 3, wherein the requested file searches in existing archives and, if the requested file exists, sends back such an archive instead of the file.
6. Server nach einem der Ansprüche 1 bis 3 , wobei die angeforderte Datei in einem Verzeichnis lokalisiert und anstelle der Datei ein Archiv aus allen Dateien des Verzeichnisses, gebildet gemäß vorbestimmter Auswahlkriterien, zurückgesendet wird. 6. Server according to one of claims 1 to 3, wherein the requested file is localized in a directory and instead of the file an archive of all files in the directory, formed according to predetermined selection criteria, is sent back.
7. Server nach einem der vorigen Ansprüche, wobei das Archiv als mehrteilige Nachricht mit Trennzeilen gestaltet ist.7. Server according to one of the preceding claims, wherein the archive is designed as a multi-part message with separating lines.
8. Pufferspeicher mit Einträgen für adressierte Dateien, insbesondere Markup-Seiten, wobei der Pufferspeicher ein Assoziativspeicher ist, der einen Index mit der Adresse der gepufferten Dateien und einen Speicher mit deren Inhalten hat, mit den Merkmalen: ist eine angeforderte Datei nicht im Pufferspeicher vorhanden oder ungültig, wird sie mit ihrer Adresse von einem durch die Adresse bestimmten Server angefordert, falls von dem Server anstelle der adressierten Datei ein Archiv gesendet wird, in das mehrere Dateien gepackt sind, wird das Archiv entpackt, und es werden die mehreren Dateien einzeln in dem Pufferspeicher abgelegt, so daß nachfolgende Anforderungen dieser Dateien aus dem Pufferspeicher befriedigt werden können.8. Buffer memory with entries for addressed files, in particular markup pages, the buffer memory being an associative memory which has an index with the address of the buffered files and a memory with their contents, with the features: if a requested file is not present in the buffer memory or invalid, it is requested with its address from a server determined by the address, if the server sends an archive in which several files are packed instead of the addressed file, the archive is unpacked and the multiple files are added individually in stored in the buffer memory so that subsequent requests for these files from the buffer memory can be satisfied.
9. Browser für Markup-Seiten, umfassend einen Pufferspeicher nach Anspruch 8. 9. Browser for markup pages, comprising a buffer memory according to claim 8.
PCT/DE2003/001379 2002-04-30 2003-04-29 Accelerated transmission of hypertext documents WO2003094047A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP03747392A EP1509860A2 (en) 2002-04-30 2003-04-29 Accelerated transmission of hypertext documents
US10/512,974 US20060122844A1 (en) 2002-04-30 2003-04-29 Accelerated transmission of hypertext documents

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10219390A DE10219390B4 (en) 2002-04-30 2002-04-30 Server, buffer memory and browser for accelerated transmission of hypertext documents
DE10219390.8 2002-04-30

Publications (2)

Publication Number Publication Date
WO2003094047A2 true WO2003094047A2 (en) 2003-11-13
WO2003094047A3 WO2003094047A3 (en) 2004-05-27

Family

ID=29285049

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2003/001379 WO2003094047A2 (en) 2002-04-30 2003-04-29 Accelerated transmission of hypertext documents

Country Status (4)

Country Link
US (1) US20060122844A1 (en)
EP (1) EP1509860A2 (en)
DE (1) DE10219390B4 (en)
WO (1) WO2003094047A2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156423B1 (en) * 2004-11-01 2012-04-10 Sprint Spectrum L.P. Method and system for dynamically updating fixed resources on client station
JPWO2006051906A1 (en) * 2004-11-12 2008-05-29 株式会社ジャストシステム Archiver device, data acquisition device, and data acquisition method
US7953893B1 (en) 2008-04-03 2011-05-31 Sprint Spectrum L.P. Method and system for expedited HTTP communication
RU2475832C1 (en) * 2009-03-30 2013-02-20 Нокиа Корпорейшн Methods and systems for processing document object models (dom) to process video content
US20100306344A1 (en) * 2009-04-06 2010-12-02 Nokia Corporation Methods and Systems for Using Multipart Messaging with Preset Constraints

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0868063A2 (en) * 1997-03-26 1998-09-30 International Business Machines Corporation Method and apparatus for precaching data at a server
US6336122B1 (en) * 1998-10-15 2002-01-01 International Business Machines Corporation Object oriented class archive file maker and method
US20020029228A1 (en) * 1999-09-09 2002-03-07 Herman Rodriguez Remote access of archived compressed data files

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185625B1 (en) * 1996-12-20 2001-02-06 Intel Corporation Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object
US6055569A (en) * 1998-01-27 2000-04-25 Go Ahead Software Inc. Accelerating web access by predicting user action
US6427187B2 (en) * 1998-07-31 2002-07-30 Cache Flow, Inc. Multiple cache communication
US6625624B1 (en) * 1999-02-03 2003-09-23 At&T Corp. Information access system and method for archiving web pages
US6560618B1 (en) * 2000-03-22 2003-05-06 International Business Machines Corporation On-demand generation, packaging, and delivery of archive files
US20020065800A1 (en) * 2000-11-30 2002-05-30 Morlitz David M. HTTP archive file

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0868063A2 (en) * 1997-03-26 1998-09-30 International Business Machines Corporation Method and apparatus for precaching data at a server
US6336122B1 (en) * 1998-10-15 2002-01-01 International Business Machines Corporation Object oriented class archive file maker and method
US20020029228A1 (en) * 1999-09-09 2002-03-07 Herman Rodriguez Remote access of archived compressed data files

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
INNERJOIN: "mod_gunzip howto" INTERNET CITATION, [Online] 2. Februar 2002 (2002-02-02), Seiten 1-5, XP002274155 Gefunden im Internet: URL:http://web.archive.org/web/20020202171 755/http://www.innerjoin.org/apache-compre ssion/howto.html> [gefunden am 2002-02-02] *

Also Published As

Publication number Publication date
EP1509860A2 (en) 2005-03-02
DE10219390B4 (en) 2007-05-31
WO2003094047A3 (en) 2004-05-27
DE10219390A1 (en) 2003-12-11
US20060122844A1 (en) 2006-06-08

Similar Documents

Publication Publication Date Title
EP1559038B1 (en) Method for the pre-transmission of structured data amounts between a client device and a server device
DE60130633T2 (en) Secure Internet Clipboard
DE69833899T2 (en) Dynamic data transmission device and method
DE60015423T2 (en) Method and device for reproducing objects in a network
DE69736045T2 (en) Method for transmitting and displaying data pages in a data network
DE69731318T2 (en) MAKING COMMUNICATION CONNECTIONS IN A COMPUTER NETWORK
DE60127247T2 (en) NETWORK DEVICE FOR THE DOCUMENT STATEMENT OF VALIDITY
DE10024715B4 (en) Method and apparatus for establishing a two-way communication between a host system and a device
DE112013007597T5 (en) Improved web server for storing large files
DE202008013034U1 (en) System for speeding up browsing sessions
EP1369790A2 (en) Method for dynamically generating structured documents
EP1620810B1 (en) Method and arrangement for establishing and updating a user surface used for accessing data pages in a data network
DE10219390B4 (en) Server, buffer memory and browser for accelerated transmission of hypertext documents
EP1845440B1 (en) Method and assembly for printing from web applications and the corresponding computer program and the corresponding machine readable storage medium
DE69925435T2 (en) A computer-implemented method and apparatus for providing a logical access point to one or more files
DE10296924T5 (en) User-defined selective reloading of images
DE102005042068B4 (en) Method and arrangement for handling files by means of mobile terminals and a corresponding computer program and a corresponding computer-readable storage medium
DE60108176T2 (en) METHOD AND SYSTEM FOR DELIVERING INFORMATION IN A TELECOMMUNICATIONS NETWORK
EP3454290A1 (en) Data exchange between different applications/clients
WO2002037793A2 (en) Method for the exchange of data in a network, device for carrying out said method, computer program for carrying out the same and data store for the storage of the above
DE102014100225B4 (en) System and method for delivering advertising content
DE10351739A1 (en) Server system for supplying information concerning server traffic e.g. for Internet subscriber, has logic circuit held in servlet container and configured for receiving request or requirement
DE10105188B4 (en) Method for feeding internet pages into digital broadcast signals
DE10224102A1 (en) Internet web page transmission system loads new main page in response to answer using script in hidden frame
DE10059931A1 (en) Method and device for data transmission and remote-controlled generation of output data

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2003747392

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2003747392

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2006122844

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10512974

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 10512974

Country of ref document: US