|Publication number||US20020029228 A1|
|Application number||US 09/393,084|
|Publication date||Mar 7, 2002|
|Filing date||Sep 9, 1999|
|Priority date||Sep 9, 1999|
|Also published as||US6427149|
|Publication number||09393084, 393084, US 2002/0029228 A1, US 2002/029228 A1, US 20020029228 A1, US 20020029228A1, US 2002029228 A1, US 2002029228A1, US-A1-20020029228, US-A1-2002029228, US2002/0029228A1, US2002/029228A1, US20020029228 A1, US20020029228A1, US2002029228 A1, US2002029228A1|
|Inventors||Herman Rodriguez, Cornell G. Wright|
|Original Assignee||Herman Rodriguez, Cornell G. Wright|
|Export Citation||BiBTeX, EndNote, RefMan|
|Referenced by (33), Classifications (10), Legal Events (6)|
|External Links: USPTO, USPTO Assignment, Espacenet|
 1. Field of the Invention
 This invention pertains to the arts of selective access and download of archived compressed files via computer networks such as the Internet and intranets. This invention relates in particular to standard multi-file compression archives, such as ZIP, GZIP, and CAB files, and the ability to access files contained within those archives on an individual or group basis via computer networks.
 2. Description of the Related Art
 As shown in FIG. 4, client/server computer systems are well known within the art, including those which are interconnected via intranets and Internets. A client computer (60) may access (61) a web server computer (64) through the Internet or “world wide web” (62) using a dial-up modem connection, cable modem, Asymmetric Digital Subscriber Loop (“ADSU”), Integrated Services Digital Network (“ISDN”) or other data connection. Likewise, the web server computer (64) may interface (63) to the Internet using the same data connection options, but more commonly through much higher data rate connections such as T1 or T3 digital transmission lines. A client computer may also access a “local” web server or corporate intranet server via an intranet (65), which may be a local area network (“LAN”). A typical client computer is provided with a keyboard (81) for receiving input and commands from a user, and a display (80) for outputting information to a user, as well as optional pointing devices such as a mouse or pointing pad.
 Web “browsers” are commonly used on networked client computers in order to access a web server. FIG. 5 shows the functional organization of the software and hardware components of a client computer (60) utilized when a web server is accessed to retrieve stored files. An Internet browser program (71), such as Microsoft Explorer or Netscape Navigator, communicates to a network communications protocol stack (73), such as Transmission Control Protocol/Internet Protocol (“TCP/IP”). The protocol stack controls and communicates to a network interface (“NIC”), such as an Ethernet LAN interface card or a modem. The browser program (71) may store (75) files which have been downloaded from servers on the network on the system hard drive(s) or in system memory (76).
 Various file archive and compression methods and systems are well known within the arts of computer and networking technology. Public standards or conventions for the compression and archiving of data files such as “ZIP” files are available, as well as certain proprietary formats such as the Microsoft “cabinet” file format.
 A zip file may contain only one compressed data file or multiple data files. The Internet request for comment (“RFC”) 1952, a public document, discloses in detail the format and organization of a zip file developed by the Free Software Foundation, called GZIP. FIG. 1 shows the format of a GZIP file (1), including a header section (2), the compressed data blocks (3), and a tail section (4). The header section (2) contains information to identify the file as a GZIP file in the ID1 through ID3 elements, an indication of the type of compression used (i.e. deflation, LZW, etc.) in the compression mode element, a set of flags to indicate optional parameters that may be included in the GZIP file, a record of the operating system with which the original file was compatible, the original file name, a comment possibly entered by the operator, and a CRC value. Following the header section (2) is the actual compressed file data organized in blocks (3), which is in turn followed by another CRC and a record of the original, uncompressed file size.
 In order to store multiple compressed data files in a single archive file, the common technique is to repeat the sequence of elements as given in FIG. 1. This allows for individual compressed files to be extracted and decompressed without requiring all the archived files to the extracted and decompressed.
 Many Internet and intranet servers provide downloadable archive files. For example, many software corporations provide downloadable demonstration copies of their products on their corporate web sites. This allows potential customers to use a web browser to select products to preview, download the demo versions, decompress or “unzip” the files and install the software products. As seen in FIG. 5, an archive and compression utility program (78) such as Pkware Incorporated's PKUNZIP may be used to retrieve an archive file from system memory or hard drive (76) and to extract and decompress the files contained therein. Alternatively, the browser program (71) may launch (77) the utility program (78) directly, or may use a browser “plug-in” (72) to extract and decompress files from the downloaded archive file.
FIG. 2 shows the typical process or method used to retrieve these archive files. An Internet or intranet client computer uses a web browser, such as Netscape Navigator or Microsoft Explorer, to select (21) a page or address on an web server to be viewed. When the address or page is selected, a series of commands and responses (22) are exchanged between the web server and the web browser via the Internet or an intranet. This type of “web browsing” is well known within the art.
 The web server accesses (23) the requested web address or web page, and returns (24) one or more web objects, typically in the form of Hypertext Markup Language (“HTML”) documents, JAVA scripts, and graphics files such as Compuserve Graphics files (“GIF”) and Joint Photographics Experts Group (“JPEG”) files. The operator of the web browser reviews the web page which he or she has received, and selects (25) a hyperlink which points to an archive file such as a ZIP file. The operator may be presented with a choice to download and save the file to the client computer's disk drive, or to download the file and immediately launch an application associated with the file, such as PKUNZIP from Pkware, Inc.
 Then, a request (26) is made to the web server to download the indicated archive file. In response to this request (26), the web server accesses (27) the entire archive file and begins transmitting this file to the web browser via the computer network. If the archive file is large in size relative to the data transfer rate between the web server and the client computer, the download may require several minutes to hours to complete.
 Finally, after the entire file has been downloaded, the file is either saved (31) or the file is “opened” (33) using the registered application program, such as PKUNZIP, on the client computer. If the archive file contains multiple compressed files, the operator is presented for the first time during the process with a list of the contained file names, lengths, and comments as the utility program extracts and displays those elements from the archive file. The operator can then selectively extract and decompress one or more of the multiple files as desired.
 The problems that arise with this process are the time required to retrieve just one or a few of the files contained in the archive file, and the disk space consumed by the storage of unwanted files. With the prior art method, an operator may ultimately only desire to access one small file that is contained in a much larger multi-file archive file. But, in order to access the individual file, the operator may have to download the entire archive file and then extract and decompress the single file contained within. This means that the operator may have to wait for several minutes to hours to receive a file contained within an archive file, which, if transmitted individually, may only require a few seconds to minutes to download. This repeated many times a day or week, and multiplied by many users on a network (such as a corporate LAN or intranet) accumulates to considerable wasted human operation hours as well as significant wasted computer network bandwidth, disk storage and memory.
 Therefore, there exists a need in the art for a method to selectively retrieve compressed data files over computer networks which are stored within multiple-file archive files. There further exists a need in the art for this method to provide the user with a listing of the files available within an archive file without requiring a full download of the actual archive file, and to do so in a timely manner to minimize operator wait time. Finally, there exists a need in the art for this method to be realizable and compatible with existing equipment and software commonly used for computer network communications and browsing, and to minimize the need for special software or hardware to practice the method.
 The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of a preferred embodiment of the invention, as illustrated in the accompanying drawings wherein like reference numbers represent like parts of the invention.
 The method disclosed herein provides the capability of a standard Internet browsing utility such as Netscape's Navigator or Microsoft's Explorer, to display the contents of a web-stored archive file and to selectively download compressed files from within the archive file without the need for a special browser “plug-in” and without the need to download the entire archive file. By providing file listing and extraction functions on the web server, and by delivering the file listing to the browser using a common and standard interface such as HTML, the method can be realized using common technology on web servers and without need for changes to or additions to millions of client computers' software.
FIG. 1 discloses an archive file format which is well known within the art, and is exemplary of other archive file formats which are also known within the art.
FIG. 2 illustrates a typical method followed for accessing, downloading, and selectively extracting and decompressing files from archive files which are stored on computer network servers.
FIG. 3 sets forth the method of the invention which allows the contents of the archive file to be viewed prior to downloading any compressed data, such that individual files can be selected and downloaded, thereby avoiding wasted time and computer network bandwidth required to download undesired files within the archive file.
FIG. 4 shows the general arrangement of client computers, web servers, intranets and the Internet.
FIG. 5 illustrates the functional organization of software and hardware components of a client computer used when accessing files via a network.
 The method of the invention relies upon changes to the web server only, and does not necessarily require special modifications to the client computer software, browsers, or hardware. Primarily, a number of software functions are added to the web server functionality, such as a software function to extract a listing of file names and file comments from archive files, and a software function to generate an HTML document containing this information with hyperlinks to indicate specific files to be downloaded. Also, a function to extract an individual or group of compressed files from an archive file is added to the web server. These kinds of functions can be custom developed relying upon knowledge within the art, or by using source code commonly available from sources such as the Free Software Foundation. These functions may also be purchased from vendors of compression and archive utilities, such as Pkware, Inc.
 Turning to FIG. 3, the variation in the steps taken from the typical process as shown in FIG. 2 is evident. As in the typical process, the user selects (21) a web page to view using a web browser such as Explorer or Navigator. This results in a request (22) to the web server to receive the web page. The web server then accesses (23) all of the web objects required by that page, such HTML documents, JAVA scripts, and graphics files, and transmits (24) those objects to the browser over the computer network, such as the Internet or an intranet. This web page contains one or more hyperlinks to archive files, such as a ZIP file.
 The user then selects a hyperlink (40) which refers to an archive file, and results in a special request (41) to the web server for a listing of the contents of the archive file rather than a request to directly proceed to downloading the entire archive file. This special request can be as simple as a second hyperlink on the original web page:
 Click here to download the entire ZIP file, or
 Click here to view the contents of the ZIP file
 where hyperlinked text is underlined following Internet page conventions, and where the first hyperlink refers directly to the ZIP file itself (the traditional method). Likewise, the second hyperlink refers to an existing file listing or a request to create and transmit a file listing.
 To follow the conventional method to download the entire archive file, the user would click on the first hyperlink, as indicated in the process of FIG. 2. However, if the user preferred to view a listing of files contained within the archive file, the user would click on the second hyperlink. This would result in a special request, preferably in the form of a hyperlink, being transmitted (41) to the web server from the client computer. The web server would then use the file list function and dynamic web page creation functions described supra to create (42) a web page containing a list of the files contained within the archive file. The web page would also contain hyperlinks to individual file names, which would allow the user to indicate which files to extract and download. Alternatively, the file listing web page may already exist, and it may be stored or accessible by the web server.
 In an enhanced embodiment, this step may include the transmission of a password dialog page, in the form of HTML or a web form, to collect and verify a password from the user prior to transmitting the file listing.
 In a further enhanced embodiment, the file listing may include icons next to or near each file name in the listing such that the user can quickly identify the types of files listed, such as word processor files, video clips, and spreadsheets. This feature may be realized by the web server including these icons in the form of Compuserve graphics (“GIF”) files to the HTML document for the file listing, which eliminates the need for the client to have the associated icons stored on the client computer.
 The file listing page is then transmitted (43) to the browser on the client computer, where the user reviews the list, and selects (44) one or more files for reception. This results in one or more requests being transmitted (46) to the web server in the same manner that previous requests for data have been transmitted in the method. The web server responds by executing (47) the file extraction utilities to extract and optionally decompress the selected files from the archive file. Those extracted files are then transmitted (48) to the client computer or network client, where they are saved (49) and/or decompressed (50) by the appropriate software application. The time (45) spent waiting for the transfer to complete using this method is substantially reduced compared to the conventional method as the total data volume to be downloaded is reduced, and as unwanted data is not downloaded at all.
 For files which were selected to be extracted and decompressed by the web server prior to transmission to the client computer, the proper application program on the client computer which is registered to that file type may be optionally launched to allow immediate operation on the file after it is received. For example, if the file is an Apple Quicktime video clip, the proper Apple viewer could be launched. Or, if the file were a Lotus WordPro word processor document, Lotus WordPro would be launched. The method of using file name extensions to associate files with and cooperatively launch the application is well understood in the art, and similar functionality is found in most personal computer operating systems.
 The use of a standard HTML document to communicate the file list and to provide selection command interface to the user avoids the need for a special plug-in or modification to the existing browser software, and enables it to be compatible with all standard web browsers. Finally, the dynamic creation of the file listing page minimizes web server storage requirements, which is often a complementary requirement on servers which are storing compressed archive files.
 The method and system described herein is preferably implemented on a web server system based on an IBM RS6000 computer platform running a suitable web server suite, such as the IBM AIX operating system and the IBM WebSphere Application Server product. Alternative computer platforms, web server software, and operating systems such as Microsoft NT or IBM OS/2, and IBM-compatible personal computers or Sun workstations, can be utilized, as well.
 The functions for the web server to list archived files and selectively extract compress files from archive files are preferably part of the Data Compression Library available from Pkware, Inc.
 It will be understood from the foregoing description that various modifications and changes may be made in the preferred embodiment of the present invention without departing from its true spirit, such as the use of alternate web server platforms, operating systems and archive file management utilities. It is intended that this description is for purposes of illustration only and should not be construed in a limiting sense. The scope of this invention should be limited only by the language of the following claims.
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US6704886 *||Jan 25, 2001||Mar 9, 2004||Emc Corporation||Data backup system having independent data restore execution|
|US7069278||Aug 6, 2004||Jun 27, 2006||Jpmorgan Chase Bank, N.A.||System for archive integrity management and related methods|
|US7328211||Sep 21, 2001||Feb 5, 2008||Jpmorgan Chase Bank, N.A.||System and methods for improved linguistic pattern matching|
|US7366974||Sep 3, 2004||Apr 29, 2008||Jp Morgan Chase Bank||System and method for managing template attributes|
|US7415489 *||Jan 10, 2006||Aug 19, 2008||International Business Machines Corporation||Managing an archived file system|
|US7516139||Mar 17, 2004||Apr 7, 2009||Jp Morgan Chase Bank||Processing of tree data structures|
|US7698282 *||May 1, 2007||Apr 13, 2010||Siebel Systems, Inc.||Method, apparatus, and system for remote client search indexing|
|US7823064 *||Aug 30, 2007||Oct 26, 2010||Adobe Systems Incorporated||Interleaving compressed archives within a page description language file|
|US7844579||Feb 21, 2006||Nov 30, 2010||Pkware, Inc.||System and method for manipulating and managing computer archive files|
|US7890465 *||Oct 26, 2006||Feb 15, 2011||Pkware, Inc.||Systems and methods for manipulating and managing computer archive files|
|US7904437 *||Jul 2, 2008||Mar 8, 2011||International Business Machines Corporation||Managing an archived file system|
|US7937478||Aug 29, 2007||May 3, 2011||International Business Machines Corporation||Apparatus, system, and method for cooperation between a browser and a server to package small objects in one or more archives|
|US7962446||Sep 10, 2007||Jun 14, 2011||Siebel Systems, Inc.||Method, apparatus, and system for searching based on search visibility rules|
|US8104076||Nov 13, 2006||Jan 24, 2012||Jpmorgan Chase Bank, N.A.||Application access control system|
|US8117315||Jul 20, 2007||Feb 14, 2012||International Business Machines Corporation||Apparatus, system, and method for archiving small objects to improve the loading time of a web page|
|US8244692||Jun 30, 2010||Aug 14, 2012||Adobe Systems Incorporated||Interleaving compressed archives within a page description language file|
|US8365067 *||Dec 14, 2001||Jan 29, 2013||International Business Machines Corporation||Method and system for moving single documents between a document processing system and a document repository|
|US8370232||Nov 18, 2005||Feb 5, 2013||Jpmorgan Chase Bank, National Association||System and method for back office processing of banking transactions using electronic files|
|US8489830 *||Mar 30, 2007||Jul 16, 2013||Symantec Corporation||Implementing read/write, multi-versioned file system on top of backup data|
|US9098721||Jun 5, 2012||Aug 4, 2015||Pkware, Inc.||Method for strongly encrypting .ZIP files|
|US20020073120 *||Dec 14, 2001||Jun 13, 2002||International Business Machines Corporation||Method and system for moving single documents between a document processing system and a document repository|
|US20040088278 *||Jan 14, 2003||May 6, 2004||Jp Morgan Chase||Method to measure stored procedure execution statistics|
|US20040103199 *||Nov 22, 2002||May 27, 2004||Anthony Chao||Method and system for client browser update from a lite cache|
|US20050065965 *||Mar 17, 2004||Mar 24, 2005||Ziemann David M.||Navigation of tree data structures|
|US20050065987 *||Aug 6, 2004||Mar 24, 2005||Telkowski William A.||System for archive integrity management and related methods|
|US20050138088 *||Oct 21, 2004||Jun 23, 2005||Yuri Basin||System and method for manipulating and managing computer archive files|
|US20050142526 *||Dec 22, 2004||Jun 30, 2005||Yamaha Corporation||Music apparatus with selective decryption of usable component in loaded composite content|
|US20050180387 *||Apr 8, 2003||Aug 18, 2005||Maurizio Ghirardi||Method for organising communication between manager objects and managed objects in a communication network, architecture and software thereof|
|US20090037386 *||Aug 1, 2008||Feb 5, 2009||Dietmar Theobald||Computer file processing|
|US20110113257 *||May 12, 2011||Pkware, Inc.||Systems and methods for manipulating and managing computer archive files|
|EP1551005A1 *||Dec 21, 2004||Jul 6, 2005||Yamaha Corporation||Music apparatus with selective decryption of usable component in loaded composite content|
|EP2441020A2 *||Jun 3, 2010||Apr 18, 2012||Bruce R. Backa||System and method for end-user archiving|
|WO2003094047A2 *||Apr 29, 2003||Nov 13, 2003||Siemens Ag||Accelerated transmission of hypertext documents|
|U.S. Classification||1/1, 707/E17.006, 707/999.204, 707/999.2|
|Cooperative Classification||Y10S707/959, Y10S707/99942, Y10S707/915, G06F17/30076|
|Sep 9, 1999||AS||Assignment|
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RODRIGUEZ, HERMAN;WRIGHT, CORNELL G. JR.;REEL/FRAME:010241/0792
Effective date: 19990903
|Nov 18, 2005||FPAY||Fee payment|
Year of fee payment: 4
|Jan 21, 2010||FPAY||Fee payment|
Year of fee payment: 8
|Mar 7, 2014||REMI||Maintenance fee reminder mailed|
|Jul 11, 2014||FPAY||Fee payment|
Year of fee payment: 12
|Jul 11, 2014||SULP||Surcharge for late payment|
Year of fee payment: 11