throbber
US006449658B1
`(10) Patent No.:
`a2) United States Patent
`US 6,449,658 B1
`Lafe et al.
`(45) Date of Patent:
`Sep. 10, 2002
`
`
`(54) METHOD AND APPARATUS FOR
`ACCELERATING DATA THROUGH
`COMMUNICATION NETWORKS
`
`(75)
`
`Inventors: Olurinde E. Lafe, Chesterland; Atila
`Boros, University Heights; Valeriy
`Tsuryk, Richmond Heights, all of OH
`(US)
`(73) Assignee: QuikCAT.com, Inc., Mayfield Village,
`OH (US)
`
`(*) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. No.: 09/442,797
`
`Nov. 18, 1999
`
`Filed:
`(22)
`GO6F 15/16
`Int. C17
`(51)
`(52) US. Ch. cecccccccsee 709/247; 709/219; 709/203.
`(58) Field of Search oo... eee 709/247, 219,
`709/229, 203
`
`(56)
`
`8/2000 Chiba et al. wo... 345/202
`6,111,566 A
`
`8/2000 Appelman ...........0.. 709/247
`6,112,250 A *
`9/2000 Dorricott ...... 382/233
`6,125,209 A
`
`
`11/2000 Starnes et al. .......... 709/217
`6,144,996 A
`12/2000 Yokomizo boccesees cece sees 709/203
`6,163,796 A
`FOREIGN PATENT DOCUMENTS
`
`JP
`JP
`wo
`
`12/1996
`08331173
`12/1998
`10334003
`12/1997
`97/49252
`OTHER PUBLICATIONS
`
`Nand, A., “Mail Servers with Embedded Data Compression
`Mechanism,” document number XP—002164409, dated Mar.
`30, 1998, 1 page.
`* cited by examiner
`.
`.
`.
`Primary Examiner—Ayaz Sheikh
`Assistant Examiner—Philip B. Tran
`(74) Attorney, Agent, or Firm—Michael A.Jaffe
`(57)
`ABSTRACT
`
`A method and apparatus for accelerating data transport
`through communication networks (e.g.,
`the Internet)
`is
`taught. The data sources may include Internet web pages,
`References Cited
`electronic mails, computerfiles, digitized pictures, voice and
`video. The method combines smart content-based data com-
`U.S. PATENT DOCUMENTS
`pression schemes with intelligent routing to efficiently move
`5.627829 A
`5/1997 Gl
`\
`370/230
`information across a network. The apparatus works with
`ve
`/
`Cesom Ct ale woes.
`/
`ae
`aoe
`5,638,498 A
`6/1997 Tyler et al.
`..........
`w. 395/117
`
`existing communications protocols (e.g., TCP/IP, UDP,
`5,673,322 A *
`9/1997 Pepeet al
`709/219
`HTTP, SMTPand POP3)andfits transparently with Internet
`5.768.525 A *
`6/1998 Kralowetz et al. 709228
`5,838,927 A * 11/1998 Gillon et al. vce 709/247~~browsing applications.
`5,872,845 A
`2/1999 Feder weveecesesseeeseees 380/18
`5,938,737 A *
`8/1999 Smallcombetal. ........ 709/247
`
`31 Claims, 9 Drawing Sheets
`
`
`
`
`
`INTERNET
`SERVICE
`
`PROVIDER
`
`
`
`
`
`
`
`LOW- SPEED
`
`
`
`CLIENT
`
`THE INTERNET
`
`
`
`
`
`ACCELERATOR
`SERVER
`
`Commvault Ex. 1029
`Commvault v. Realtime
`
`US Patent No. 9,054,728
`
`Page1
`
`Page 1
`
`Commvault Ex. 1029
`Commvault v. Realtime
`US Patent No. 9,054,728
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 1 of 9
`
`US 6,449,658 B1
`
`
`
`
`
`HIGH-SPEED
`
` oeLids
`
`
`
`
`THEINTERNET
`
`Fig.| PRIORART
`
`CLIENT
`
`CHCT
`BoC
`
`Page 2
`
`uM
`us
`eso
`wWa>
`EF woe
`zineVg
`
`LOW-
`
`SPEED
`
`Page 2
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 2 of 9
`
`US 6,449,658 B1
`
`YOLVY31309¥6bi41N3179
`YILAdWOIS,Y3SN 43NY3S.
`
`
`L3NY31NT3H1IN3113
`
`LINSIINI
`
`JITAYSS
`
`YIOTAOYd
`
`
`
`VWM3814T1WMBUTJ
`
`ebry
`
`
`
`AXOUddllH
`
`YIAY3S
`
`
`WNOITLN3ANO3
`YOLVYITIIIV
`
`WNOTILN3ANO9
`
`
`
`AXOYdd1lH
`
`
`
`YO1VY319939
`
`IN3113
`
`ee
`
`
`
`NOT1LVIIIdd¥
`
`IN3119
`
`Page 3
`
`Q33dS-M071
`
`YOLVYS1IIIV
`
`Page 3
`
`
`
`
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 3 of 9
`
`US 6,449,658 B1
`
`
`
`Q334dSHOTH
`
`
`
`NOT1I3NNO3
`
`0330SMOT
`
`p‘bry
`
`‘1030108d
`
`YISUVd
`
`
`
`JI41II3dS3dAL
`
`NOISS3adW0I
`
`0ALIVWAODLV
`
`1030104d
`
`YASYVd
`
`
`
`
`YOLVYI13II¥NOTLJ3NNOJYOLVYI1IIIV|gan]Fagg|NOLINIddv
`Maoy|SSN>ASEHwar
`
`SS3udN0I300334S
`
`1¥Q3SS3Y¥dWOIO3SSIYdWOINN
`
`0ALTAVAD
`
`¢bi
`
`Page 4
`
`Page 4
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 4 of 9
`
`US 6,449,658 B1
`
`v9‘bry
`
`ce
`
`
`
`
`
`WOOUIOWOP@eopawoy
`
`sooww ———rr8t
`
`
`
`RT]CERRATIO
`
`aor
`
`
`
`
`
`*sidalqa153ayspasojquapurjasvaly
`
`*spsobay
`
`uyor
`
`SOB
`
`dyay
`
`
`
`
`
`aossay syooTsowdymainwi
`
`133807apy
`
`WO"INIGY"
`
`
`
`T1¥H7WOOS2+3SNOdS3YdLWSWOYSTVWOWId1WS
`
`
`
`
`
`
`
`
`
`LYVLSPSEF3SNOdS39Y¥dLWS
`
`
`
`INdNITEVA
`
`VIVO‘QWdlWS
`
`6V9DidOLHOLYW
`
`
`
`HOOSe*ASNOdS3YdIWS
`
`
`"QLLd333d*OWIdLWS
`
`Page 5
`
`Page 5
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 5 of 9
`
`US 6,449,658 B1
`
`
`
`IMAGE .BMP
`
`POWERPOINT .PPT
`
`MIME HRO
`
`MATCH TO FIC. 6A]
`em gyms > ces mn mmc mee bem omees 3 swt comme + coms cm 6 mem tet tt Sy es se es
`
`
`
`MIME HRO
`
`
`
`TEXT
`
`
`MIME HRO
`
`
`
`
`PICTURE! .BMP
`BASE64 ENCODED
`
`
`
`MIME HRO
` TEXT
`BASE64 ENCODED
`
` SMTP CMO: QUIT
`
`SMTP RESPONSE: 250 OK
`
`
`
`
`
`SMTP RESPONSE:
`SMTP. ABC INC.COM
`CLOSING SESSION
`
`e221
`
` ACCELERATOR CLIENT
` 20
`
`Fig. 6A2
`
`Page 6
`
`Page 6
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 6 of 9
`
`US 6,449,658 B1
`
`SMTP RESPONSE: 250 OK
`
`SMTP RESPONSE: 354 START
`MAIL INPUT
`
`Fig. 6BI
`
` ACCELERATOR CLIENT
`
`
`
`SMTP CMD MAIL FROM
`SMTP RESPONSE: 250 OK
`MAIL.ABCINC.COM
`
`
`SMTP CMO RECEIPT TO
`SMTP CMD DATA
`
`
`
`
`MIME HRO
`
`
`TEXT
`
` MIME HRO
`
`
` PICTURE! .BMP
`
`
` MIME HRO
`
` PPT. TXT
` TEXT
`
`
`IMAGE «BMP
`
`
`MIME HRO
`
`SMTP CMO: QUIT
`
`
`
`
`SMTP RESPONSE: 250 OK
`
`SMTP RESPONSE: 221
`SMTP. ABCINC .COM
`CLOSING SESSTON
`
`Q
`
`
`
`
`
`ACCELERATOR SERVER
`
`MATCH TO FIG. 6B2
`
`Page 7
`
`Page 7
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 7 of 9
`
`US 6,449,658 B1
`
`MATCH TO FIG. 6B)
`eee meet mes ves lt 8 oa Ft 4 Sam 5M ues 5 AS 6 ey 6 nd fe SO Soe ff9 eS ee a es mg
`
`SMTP CMO MAIL FROM
`
`SMTP CMO RECEIPT 10
`
`SMTP CMO DATA
`
`
`
`MIME HRO
`
`
`
`TEXT
`
`MIME HRO
`
`SMTP RESPONSE: 250 OK
`MAIL.ABCINC .COM
`
`SMTP RESPONSE: 250 OK
`
`SMTP RESPONSE: 354 START
`MAIL INPUT
`
`Fig. 0B2
`
`
`
`
`
`
`
`
`
`
`
`
` PICTURE] .BMP
`
`BASE64 ENCOOEO
`MIME HRO
` Q
` SMTP RESPONSE: 250 OK
`
`
`
`
`
`
`
`
`SMTP RESPONSE: 22!
`SMTP. ABCINC .COM
`CLOSING SESSION
`
`
`
`
`
`IMAGE .BMP
`
`Q
`
`POWERPOINT .PPT
`BASE64 ENCODED
`
`a S
`
`MTP CMO: QUIT
`
`
`
`SMTP ABCINC.COM - SMTP SERVER
`
`Page 8
`
`Page 8
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 8 of 9
`
`US 6,449,658 B1
`
`
` TEXT ANO
`FORMAT ING
`
`
`
`
`JPG
`DISASSEMBLY
`AT QUALITY Q
`
`TEXT AND
`FORMAT ING
`
`FORMAT ING
`
`
`TEXT AND
`
`
`
`COMPRESSION
`
`TEXT AND
`FORMAT ING
`
`
`
`QECOMPRESSION
`
`
`
`
`TEXT ANO
`FORMAT ING
`
`
`
`
`
`TEXT ANO
`FORMAT ING
`
`
`
`
`
`JPG
`ASSEMBLY
`Q
`
`Page 9
`
`Page 9
`
`

`

`U.S. Patent
`
`Sep. 10, 2002
`
`Sheet 9 of 9
`
`US 6,449,658 B1
`
`
`
` USER'S COMPUTER
`
`
`
` UNCOMPRESSED
`
`
`AT QUALITY Q
`"LOCALHOST ‘
`
`
`
`
`127.0.0.1
`
`
`
`
`COMPRESSEO
`AT QUALITY @
`
`
`
`|ACCELERATORSERVERSERVER
`
`ORIGINAL
`OBJECTS
`
`GET
`IMAGE! .JPG
`
`CNN.COM
`Fig. 8
`
`Page 10
`
`Page 10
`
`

`

`US 6,449,658 B1
`
`1
`METHOD AND APPARATUS FOR
`ACCELERATING DATA THROUGH
`COMMUNICATION NETWORKS
`
`FIELD OF INVENTION
`
`The present invention generally relates to a method and
`apparatus for improving data transfer rates, and more par-
`ticularly to a method and apparatus for accelerating data
`through communication networks.
`
`BACKGROUND OF THE INVENTION
`
`The bandwidth problem is a lingering issue with many
`communication networks,particularly the Internet. No Inter-
`net surfer enjoys the long delays associated with viewing
`graphically intensive web sites. The use of the Internet
`continues to grow at an exponential rate. As the numberof
`users has increased, so has the need for a solution to deliver
`data over the Internet quickly.
`Most Internet users connect to the Internet by dialup
`modems running at 28.8 kilobits per second (kps) to 56.6
`kps. Wireless mobile users have a bigger bandwidth prob-
`lem. The best wireless connections are currently below 19.2
`kps. Corporate landline users generally enjoy faster connec-
`tions of 128 kps or more. However, even at the higher
`connection speeds, users can find themselves waiting end-
`lessly for a web site to download to their personal computer
`because of the size of data at the site.
`
`The majority of web sites that tend to hold a user’s interest
`use color-rich graphic files for appeal. These graphics can
`consume over 50% of the data volume found within the web
`site. Digital audio and videofiles similarly require millions
`of bytes per second for transmission. The balance of the
`contents on a typical web page consistsoftext files, most of
`which are transmitted in raw uncompressed form.
`Due to the rapid growth of Internet usage and the large
`size of most digital files on web pages,
`it has become
`apparent that a dire need exists for a seamless transport
`engine to move data quickly through the Internet. The ideal
`transport engine would allow the Internet user to control the
`rate at which information is received or sent.
`
`FIG. 1 illustrates a conventional prior art arrangementfor
`communications between a client and the Internet.
`In
`
`particular, a low speed communications link is utilized
`between a Client 12 and an Internet service provider (ISP)
`16. This low speed communications link will typically take
`the form of a conventional telephone voice line of the Plain
`Old Telephone System (POTS) or a Cellular Wireless Net-
`work. A high speed communications link (e.g., T1/T3
`carrier) is utilized between the Internet 18 and ISP 16. It is
`readily apparent
`that the data transfer rate will be con-
`strained by the low speed communications link between
`client 12 and ISP 16. Therefore, despite the high speed
`communications link provided between ISP 16 and the
`Internet 18, the user of Client 12 will experience slow data
`transfer rates due to the low speed communications link
`between Client 12 and ISP 16. The present
`invention
`addresses this and other drawbacksof the priorart.
`It can be readily appreciated that the need often arises to
`transmit large amounts of data across a variety of commu-
`nication networks (e.g., the Internet;
`the Plain Old Tele-
`phone System (POTS); Cellular Wireless Networks; Local
`Area Networks (LAN); Wide Area Networks (WAN); and
`Satellite Communications Systems). A major example is
`digital audio data. The volumeof data required to encode
`raw audio data is large. Consider a stereo audio data sampled
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`at 44100 samples per second and with a maximum of16 bits
`used to encode each sample per channel. A one-hourrecord-
`ing of a raw digital music with that fidelity will occupy about
`606 megabytes (MB)of storage space. To transmit such an
`audio file over 56 kilobits per second communications
`channel (e.g.,
`the rate supported by most POTS through
`modems), will take over 24.6 hours.
`Oneapproach for dealing with the bandwidth limitation is
`to compress the data before transmission. For certain kinds
`of data (e.g., text, computer executable file, financial data)
`the compression/decompression process must reproduce a
`perfect reproduction of the transmitted data when decoded.
`Such a process is described as being “lossless.” In some
`other cases, especially when the transmitted information is
`to be perceived and not to be read (e.g., pictures, audio,
`video data) the compression/decompression process need
`not result in a perfect reconstruction of the transmitted data.
`The process is described as being “lossy” when the recon-
`structed data is not a perfect copy of the original.
`The present invention provides a method and apparatus
`for transmitting and receiving data at faster rates through
`communication networks, such as the Internet.
`Moreover, the present invention selectively employs both
`“lossless” and “lossy” compression methods in order to
`compress the information being moved across a given
`network.
`
`SUMMARYOF THE INVENTION
`
`According to the present invention there is provided a
`system for data transfer acceleration comprising:
`(1) an
`accelerator client for intercepting data transferred between a
`client computer and a communications network service
`provider via a first communications link, wherein said
`accelerator client compresses data transmitted from the
`client computer to the communications network service
`provider, and forwards said compressed data to said com-
`munications network service provider, and said accelerator
`client decompresses compressed data transmitted from the
`communications network service provider to the client
`computer, and forwards said uncompressed data to said
`client computer; and (2) an accelerator server for intercept-
`ing data transferred between the communications network
`service provider and a communications network, via a
`second communications link, wherein said accelerator
`server decompresses compressed data transmitted from the
`communications network service provider to the communi-
`cations network, and forwards the uncompressed data to the
`communications network, and said accelerator server com-
`presses data transmitted from the communications network
`to the communications network service provider, and for-
`wards the compressed data to the communications network
`service provider.
`According to another aspect of the present invention there
`is provided a method of data transfer acceleration compris-
`ing: intercepting data transferred between a client computer
`and a communications network service provider via a first
`communications link, wherein data transmitted from the
`client computer to the communications network service
`provider is compressed, and forwarded to said communica-
`tions network service provider, and decompressing com-
`pressed data transmitted from the communications network
`service provider to the client computer, and forwarding said
`uncompressed data to said client computer; and
`intercepting data transferred between the communications
`network service provider and a communications network,
`via a second communicationslink, wherein compressed data
`
`Page 11
`
`Page 11
`
`

`

`US 6,449,658 B1
`
`3
`transmitted from the communications network service pro-
`vider to the communications network is decompressed, and
`forwarded to the communications network, and data trans-
`mitted from the communications network to the communi-
`cations network service provider is compressed, and for-
`warded to the communications network service provider.
`Accordingto still another aspect of the present invention
`there is provided a system for data transfer acceleration
`comprising: (1) an accelerator client for intercepting data
`transferred between a client computer and a communications
`network service provider via a first communications link,
`wherein said accelerator client selectively compresses data
`transmitted from the client computer to the communications
`network service provider, and forwards the intercepted data
`to said communications network service provider, and said
`accelerator client decompresses any compressed data trans-
`mitted from the communications networkservice provider to
`the client computer, and forwardsthe intercepted data to said
`client computer; and (3) an accelerator server for intercept-
`ing data transferred between the communications network
`service provider and a communications network, via a
`second communications link, wherein said accelerator
`server decompresses any compressed data transmitted from
`the communications network service provider to the com-
`munications network, and forwards the intercepted data to
`the communications network, and said accelerator server
`selectively compresses data transmitted from the communi-
`cations network to the communications network service
`provider, and forwards the intercepted data to the commu-
`nications network service provider.
`In accordance with yet another aspect of the present
`invention there is provided a method of data transfer accel-
`eration comprising:
`intercepting data transferred between a client computer
`and a communications network service provider via a
`first communications link, wherein data transmitted
`from the client computer to the communications net-
`work service provider is selectively compressed, and
`forwarded to said communications network service
`
`provider, and decompressing compressed data trans-
`mitted from the communications network service pro-
`vider to the client computer, and forwarding said
`uncompressed data to said client computer; and
`intercepting data transferred between the communications
`network service provider and a communications
`network, via a second communications link, wherein
`compressed data transmitted from the communications
`network service provider to the communications net-
`work is decompressed, and forwarded to the commu-
`nications network, and data transmitted from the com-
`munications network to the communications network
`service provider is selectively compressed, and for-
`warded to the communications network service pro-
`vider.
`
`An advantage of the present invention is the provision of
`a method and apparatus for increasing a data transferrate.
`Another advantage of the present invention is the provi-
`sion of a method and apparatus for data transfer acceleration
`that operates independently of any special network protocol.
`Another advantage of the present invention is the provi-
`sion of a method and apparatus for data transfer acceleration
`that operates whenever a TCP/IP network connection to an
`Accelerator Server is available.
`
`Another advantage of the present invention is the provi-
`sion of a method and apparatus for data transfer acceleration
`that operates with the public Internet, independently from
`any Internet service provider (ISP).
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`60
`
`65
`
`4
`Another advantage of the present invention is the provi-
`sion of a method and apparatusfor data transfer acceleration
`that operates within a corporate intranet.
`Still another advantage of the present invention is the
`provision of a method and apparatus for data transfer
`acceleration that operates through firewalls.
`Still another advantage of the present invention is the
`provision of a method and apparatus for data transfer
`acceleration that operates with corporate HTTP proxies.
`Yet another advantage of the present invention is the
`provision of a method and apparatus for data transfer
`acceleration that operates in Virtual Public Networks.
`Yet another advantage of the present invention is the
`provision of a method and apparatus for data transfer
`acceleration that supports both wireless and wire line sys-
`tems.
`
`Yet another advantage of the present invention is the
`provision of a method and apparatus of data transfer accel-
`eration that selectively uses “lossless” and “lossy” methods
`in order to compress/decompressdata.
`Still other advantages of the invention will become appar-
`ent to those skilled in the art upon a reading and under-
`standing of the following detailed description, accompany-
`ing drawings and appended claims.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention may take physical form in certain parts and
`arrangements of parts, a preferred embodiment and method
`of which will be described in detail in this specification and
`illustrated in the accompanying drawings which form a part
`hereof, and wherein:
`FIG. 1 is an illustration of conventional information flow
`to and from a Client (Internet user) that is connected to the
`Internet through an Internet Service Provider (ISP);
`FIG. 2 is an illustration of the information flow between
`
`a Client and the Internet, according to a preferred embodi-
`ment of the present invention;
`FIG. 3 is an illustration of an Accelerator Client and an
`
`Accelerator Server operating from behind a security “fire-
`wall”;
`FIG. 4 illustrates the connection between an Accelerator
`
`Client and an Accelerator Server via a low-speed commu-
`nications link;
`FIG. 5 illustrates the general process for compression of
`various types of data objects;
`FIGS. 6A and 6B illustrate the process of sending an
`electronic mail including media and non-media objects, in
`accordance with a preferred embodiment of the present
`invention;
`FIG. 7A illustrates the disassembly of a data document
`into media and non-media objects, and compression thereof;
`FIG. 7B illustrates the decompression of media and
`non-media objects, and re-assembly thereof into the original
`data document; and
`FIG. 8 illustrates the processes of downloading a web
`page using an Accelerator Client according to a preferred
`embodiment of the present invention.
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`
`The present invention provides a method and apparatus
`for sending and receiving data at a faster rate in a commu-
`nication network, such as the Internet. The present invention
`generally operates as follows: when a Client (i.e., the user)
`requests information (e.g., a page from a web site) from the
`
`Page 12
`
`Page 12
`
`

`

`US 6,449,658 B1
`
`5
`the request 1s processed through an Accelerator
`Internet,
`Server (AS). Acommandis issued by the AS via the Internet
`for the requested web page to be imported into the AS. The
`received contents of the web page (including images,text,
`audio and video data) are then compressed by the AS. The
`compressed data is sent back to the Client. However, a
`decoder, which forms a part of an Accelerator Client (AC),
`intercepts the data sent to the client and decompresses the
`compressed data, and rebuilds the requested page for display
`at the Client. The total time it takes to deliver the requested
`page is reduced, because a smaller data chunk (i.e., com-
`pressed data rather than uncompressed data) is transported
`through low speed communication lines typically used
`between the Client and the Internet. The present invention
`also incorporates the acceleration of electronic mail (email)
`during both the sending and receiving phases, as will also be
`described in detail below.
`
`In accordance with a preferred embodimentofthe present
`invention, data acceleration is achieved by replacing the
`Client’s slow connection with a compressed link to the
`Accelerator Server, as will be described below. This allows
`the user to transfer large amounts of data more quickly over
`the slow connection. The Accelerator Server is connected to
`the Internet or a corporate intranet by a high-speed connec-
`tion. The effect is that the user realizes much higher data
`transfer speeds, because the same amount of data can be
`transferred in less time.
`The Accelerator Server and Accelerator Client use
`
`intelligent, content-based compression/decompression algo-
`rithms that can compress pictures, images (e.g., JPEG and
`GIF files) and other media objects with minimal percep-
`tional quality loss achieving much higher compressionratios
`than conventional lossless compression algorithms. Lossless
`compression can be used for non-media objects, suchas text,
`formatting, executables and unsupported media objects. In
`contrast,
`lossy compression algorithms can be used for
`media objects, such as images, video and audio. Examples
`of compression algorithms include, but are not limited to
`cellular automata transforms (CAT), discrete cosine
`transform, wavelets, fractal image compression, Huffman
`coding, arithmetic coding and dictionary techniques (e.g.,
`LZ77 and LZ78).
`Table I, set forth below, provides a glossary of terms
`commonly used in connection with Internet communica-
`tions:
`
`HTTP
`HTML
`
`SMTP
`
`POP3
`
`MIME
`
`BASE64
`
`TABLEI
`
`
`
`Hypertext Transfer Protocol: Used to download and upload
`content from the World Wide Web.
`Hypertext Markup Language: The set of “markup” symbols
`or codes inserted in a file intended for display on a World
`Wide Web browser.
`Simple Mail Transfer Protocol: Used to send mail messages
`in Internet.
`Post Office Protocol version 3: Used to retrieve messages
`from host mailboxes.
`Multi-Purpose Internet Mail Extensions: Used to exchange
`contents of different types other than text, which was the
`only content originally meant to transfer using SMTP and
`POP3. It allows transferring attachment of multimedia and
`document content, as well as nested and forwarded
`attachments. It defines codes for each content type and
`encoding type like BASE64, QUOTED-PRINTABLE,and
`the like.
`An encoding scheme, which encodes binary content, which
`can include non-printable and control into printable
`characters. It makes content longer, but BASE64 encoded
`content can travel through conventional SMTP and POP3
`host, which cannot process binary content.
`
`6
`
`RPC
`
`DCOM
`
`JPG, JPEG
`
`GIF
`
`TABLEI-continued
`Remote Procedure Call: Used to execute a function
`call at a remote computer, without knowledge of the
`underlying network.
`Distributed Component Object Model: A set of Microsoft
`concepts and program interfaces in which client program
`objects can request services from server program objects
`on other computers in a network.
`The Component Object Model (COM)provides a set of
`interfaces allowing clients and servers to communicate
`within the same computer (running a Windows 95 or NT
`system).
`Joint Photographic Experts Group: A graphic image format,
`based on the Discrete Cosine Transform, created by
`choosing from a range of compression qualities.
`Graphics Interchange Format: One of the two most common
`file formats for graphic images on the World Wide Web.
`
`Referring now to the drawings wherein the showingsare
`for the purposes of illustrating a preferred embodiment of
`the invention only and not for purposes of limiting same,
`FIG. 2 illustrates the flow of information between a Client
`and the Internet, according to a preferred embodimentof the
`present
`invention. A system according to a preferred
`embodiment of the present invention may include a Client
`22, an Accelerator Client (AC) 20, an ISP 26, an Accelerator
`Server (AS) 30 and a communications network, such as the
`Internet 28. A low speed communications link may be
`utilized between Chent 22 and ISP 26. This low speed
`communications link will
`typically take the form of a
`conventional telephone voice line of the Plain Old Tele-
`phone System (POTS) or a Cellular Wireless Network. A
`high speed communications link (e.g., a T1/T3 carrier) is
`typically utilized between ISP 26 and AS 30, and between
`AS 30 and the Internet 28. The present invention utilizes
`data compression to improve the data transfer rate through
`the slowest communicationslink of the system, namely, the
`low speed communications link between client 22 and ISP
`26. Asimplified illustration of the data flow is shownin FIG.
`4.
`
`Accelerator Client 20 is an application that runs on Client
`22 (ie.,
`the user’s computer) or on a separate special-
`purpose device or computer system used in connection with
`Client 22. In a preferred embodiment, it supports the fol-
`lowing Internet. protocols: HTTP (Web), SMTP, and POP3
`(email), all of which are defined above.
`Accelerator Server 30 is an application that runs on a
`general-purpose server computer or on a special-purpose
`device or computer system. In a preferred embodiment,it
`also supports the following Internet protocols: HTTP (Web),
`SMTP, and POP3 (email).
`Operation of the system shown in FIG. 2 will now be
`described in detail. In the embodimentillustrated in FIG. 2,
`Accelerator Client 20 runs on client computer 22. Accelera-
`tor Client 20 communicates with browsers and email clients
`running on client 22 using a special IP address 127.0.0.1,
`known as “localhost”. This is simply a shortcut, which is
`used by TCP/IP for referring to the computer on which the
`program is running. This is a convenient way to force a
`browser or an email client application to communicate with
`a program running on the same computer using the concept
`of TCP/IP networking. Accelerator Client 20 intercepts the
`transfer protocol (HTTP, SMTP, POP3) and extracts its
`contents,
`then selectively performs compression when
`sending, and decompression when receiving compressed
`contents. It should be appreciated that Accelerator Client 20
`will decide whether compression is worthwhile for
`improved data transfer rates. Therefore, not all data will
`necessarily be compressed in all cases.
`
`10
`
`25
`
`5
`
`40
`
`55
`
`65
`
`Page 13
`
`Page 13
`
`

`

`US 6,449,658 B1
`
`7
`Referring now to FIG. 5, the process of compression will
`be described in detail. Accelerator Client 20 and Accelerator
`
`Server 30 include a protocol parser 52, a compressor 54, and
`a protocol assembler 56. Protocol parser 52 breaks a data
`document into media and non-media objects (e.g., image
`objects, text objects, etc.). Compressor 54 utilizes a suitable
`compression technique to compress each object at a quality
`Q. Protocol assembler 56 receives the compressed objects,
`decompresses the compressed objects and reassembles them
`accordingly. Protocol assembly 56 includes a decompressor.
`It should be understood that in most cases non-media objects
`(e.g., text objects) are subject to lossless compression (i.e.,
`Q=100).
`In accordance with an embodimentof the present inven-
`tion wherein a CAT hierarchical compression method is
`used, the Accelerator Server 30 may determine that one or
`more web pages or other data is frequently requested.
`Accordingly, it will cache the web pages or other data in
`compressed form at Q=100. By caching at Q=100,
`the
`Accelerator Server 30 can provide the web page or other
`data at any level of compression quality Q requested by a
`client.
`
`It should be appreciated that Accelerator Client 20 can
`work through conventional HTTP Proxy servers and
`firewalls, as illustrated in FIG. 3.
`FIG. 8 illustrates the case of downloading hypothetical
`media objects (i.e., imagel.jpg, image2.gif) and non-media
`objects (i.e., HTML text of cnn.com),
`in response to an
`Internet GET request. All compression and decompressionis
`done using quality Q, which maybe selected by the user. As
`indicated above quality Q=100 signifies lossless
`compression, and is typically utilized for non-media objects
`such as text objects. The following are the steps for data
`acceleration, according to a preferred embodiment of the
`present invention, during a web browsing session at client
`computer 22:
`(1) the user’s browser(running onclient 22) is directed to
`the localhost as to an HTTP Proxy;
`(2) The browser sends the appropriate GET requests for
`the HTMLpage. In FIG. 8, the process for downloading
`the cnn.com web page is shown.
`(3) The GET requestis intercepted by Accelerator Client
`20 which may compress the GET request and for-
`warded it to Accelerator Server 30 via ISP 26;
`(4) Accelerator Server 30 then performs the following:
`A. decompress the GET request (if in compressed
`form) and download the requested HTMLtext and/or
`other data from the Internet 28 in accordance with
`
`the GET request,
`B. selectively performing a lossy and/or lossless com-
`pression to generate one or more compressed
`objects, and
`C. send the compressed objects to Accelerator Client 20
`via ISP 26.
`
`(5) Accelerator Client then performs the following:
`A. decompresses a compressed object sent by Accel-
`erator Server 30, and
`B. sends the decompressed object to the browser run-
`ning on client 22.
`(6) The browseron client 22 then performsthe following:
`A.displays the decompressed object (e.g., text, JPG
`image, or GIF image),
`B. extracts the embedded links, and
`C. issues requests to Accelerator Client 20 for the next
`object, and in response thereto Accelerator Client 20
`sends the next object (decompressed).
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`In the case where a user desires to send an electronic mail
`(email) message, an email client, running on client computer
`22, is used to create the email message. Reference is now
`made to FIGS. 6A and 6B, wherein an email message
`includes two attachments (picturel.bmb and powerpnt.ppt).
`The steps involved in accelerating the sending of electronic
`mail messages, according to a preferred embodimentof the
`present invention are as follows:
`(1) In response to initiation of a “send” command, the
`email client sends SMTP commands to Accelerator
`Client 20 instead of the destination SMTPserver smt-
`p.abcinc.com (a fictional address);
`(2) Accelerator Client 20 forwards these commandsto the
`Accelerator Server 30. It should be noted that AC 20
`
`will selectively compress the data at a quality Q. In this
`regard, some data may require that it not be compressed
`in order for the data transfer operation to successfully
`operate, as will be explained in further detail below;
`(2) Accelerator Server 30 decompresses the compressed
`data and sends the uncompresseddatato the destination
`SMTPserver. The response commands. are routed back
`the same way.
`It should be appreciated that a DATA SMTP command
`indicates the start of the actual email message. The text
`message and the attachments come wrapped in MIME
`headers (MIME HRD). Thetext and associated formatting
`are disassembled and all components compressed(lossless)
`separately. Moreover, attachments (e.g., JPG and GIF files)
`are unwrapped from MIMEenclosure (disassembly) and
`compressed with the appropriate algorithm at quality Q
`(FIG. 7A). It should be understood that the MIMEheaders
`remain uncompressed.
`As indicated above, Accelerator Server 30 reverses the
`compression process by decompressing the objects (e.g.,
`text and formatting non-media objects, and JPG and GIF
`media objects) and re-assembling the objects into their
`original format. All of the objects are reconstructed at
`quality Q, except the objects compressed without any qual-
`ity loss (e.g, text and formatting non-media objects). See
`FIG. 7B.
`
`For receiving Internet emails, a very similar process is
`used, except that instead of the SMTP protocol, the POP3
`(Post Office Protocol version 3) is used. The attachments to

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket