throbber
EX1029
`EX1029
`
`

`

`(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2007/0185978A1
`(43) Pub. Date:
`Aug. 9, 2007
`MONTULL
`
`US 20070185978A1
`
`(54) PERSISTANT CLIENT STATE IN A
`HYPERTEXT TRANSFER PROTOCOL
`BASED CLIENT SERVER SYSTEM
`
`(76) Inventor: Lou MONTULLI, Palo Alto, CA (US)
`Correspondence Address:
`GLENN PATENT GROUP
`3475 EDISON WAY, SUITE L
`MENLO PARK, CA 94025 (US)
`Appl. No.:
`11/737,042
`(21)
`(22) Filed:
`Apr. 18, 2007
`Related U.S. Application Data
`(62) Division of application No. 10/272.896, filed on Oct.
`17, 2002, which is a ERROR - reissue-of application
`No. 08/918,977, filed on Aug. 27, 1997, now Pat. No.
`6,134,592, which is a division of application No.
`08/540,342, filed on Oct. 6, 1995, now Pat. No.
`5,774,670.
`
`Publication Classification
`
`(51)
`
`Int. C.
`G06F 5/16
`
`(2006.01)
`
`(52) U.S. Cl. .............................................................. 709/219
`
`(57)
`
`ABSTRACT
`
`A method and apparatus for transferring state information
`between a server computer system and a client computer
`system. In one embodiment of the method, an http client
`requests a file. Such as an HTML document, on an http
`server, and the http server transmits the file to the http client.
`In addition, the http server transmits a state object, which
`describes certain state information, to the http client. The
`http client stores the state object, and will typically send the
`state object back to the http server when making later
`requests for files on the http server. In a typical embodiment,
`the state object includes a domain attribute which specifies
`a domain or network address, and the state object is trans
`mitted from the http client to a server only when the http
`client makes an http request to the server and the server is
`within the domain. In one embodiment, the apparatus
`includes a processor and memory and a computer readable
`medium which stores program instructions. In the case of the
`client system, the instructions specify operations such as
`receiving and storing the state information; in the case of the
`server system, the instructions specify operations such as
`sending the state information to a client system.
`
`Server A
`
`
`
`One of the maior features of the world-wide-web
`is the ability to retrieve images from
`sites distributed around-the world.
`These images can be then be
`Combined with a text document
`retrieved separately and presented
`as a single 'virtual" document to
`an end-user.
`This HTML document demonstrates
`this capability. This document was
`fetched from a server in northern
`California. However, this image:
`was obtained from the University
`of Stockhoir.
`
`Launch Labs EX1029 Page 1
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 1 of 8
`
`US 2007/0185978A1
`
`
`
`
`
`Launch Labs EX1029 Page 2
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 2 of 8
`
`US 2007/0185978A1
`
`124
`
`-120
`
`I/O
`Controller
`
`Network
`Interface
`
`
`
`122
`
`I/O
`Controller
`
`FIG. 1B
`
`Launch Labs EX1029 Page 3
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 3 of 8
`
`US 2007/0185978A1
`
`Server A
`
`Server B
`
`Server C
`
`Image 1
`
`Image 2
`
`HTML
`Text
`
`
`
`
`
`One of the major features of the world-wide-web
`is the ability to retrieve images from
`sites distributed arounds the World.
`These images can be then be
`combined with a text document
`retrieved separately and presented
`as a single "virtual" document to
`an end-user.
`This HTML document demonstrates
`this capability. This document was
`fetched from a server in northern
`California. However, this image:
`Was obtained from the University
`of Stockholm.
`
`FIG. 2
`
`Launch Labs EX1029 Page 4
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 4 of 8
`
`
`
`
`
`
`
`
`
`<,,415"||DUS-|b/qamowap/nps*anin’pseuMAM//d13U,=04Se|pplw=UBI]D.S\T>
`
`<q>“SIOUI}[[WO}peulDjqoSDM
`
`
`
`
`
`
`
`
`
`
`
`
`
`<a/}11/>e]duwoxgzBuipoo7efpwypeyngqisisiq<e|i!{>
`
`
`
`
`
`
`
`
`
`
`
`du/se|duox36u|poo7eBow]pazng!43isiq<y>
`
`
`
`
`
`Sefpw!9A91}840}AZI]JqD94}S|GeM-apIM-pj4OMalyJoS8in}pe}4olpw984}Joaud
`
`
`
`
`
`Peu|quosequal}UNSseBpulese]“pj4OM84}PUNOIDpajnqis}sipseLIswWodJ
`
`
`
`
`
`
`
`
`
`
`
`<d>A}1]!Godo9si}S8}Di}SUOWepjUEWND0PJWIHSIU]"4asn-puaUD0}j}UEUNDOp
`
`
`
`
`
`
`
`
`
`
`
`
`
`u{DN{41A,,a|BulsDbsDpazusseidpupA}jDupdaspaaalsjeu}UBUNDOP1X9}DUM
`
`
`
`
`
`
`
`‘JBABMOH*DIUIOJ1/D9:Wiey}40uUl4aAd9s0Wo4Jpeyo}e}SDMjUeUINDOpS14)
`
`:oBow!Siu}
`
`
`
`
`
`
`
`
`
`US 2007/0185978 A1
`
`
`
`
`
`
`aUIDD<,,416°o6o|ns/es"ns*wa//:314,=04S9]pp!w=uB1)QWI>:8uoSiu)Puy
`JoAyis4aatuy<,,]wiUrxepul/as'ns*win//'d}34,=}e4yV>94}wou}
`
`
`
`
`
`
`
`
`
`
`"<V/>u]ou90}5
`
`VE“OLA
`
`Launch Labs EX1029 Page 5
`
`Launch Labs EX1029 Page 5
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 5 of 8
`
`US 2007/0185978A1
`
`
`
`Launch Labs EX1029 Page 6
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 6 of 8
`
`US 2007/0185978 A1
`
`client
`
`
`
`172
`
`
`
`176-N
`
`Y
`
`sends a URL
`
`SerWer
`
`
`
`returns d HTML
`document and
`cookies
`
`174
`
`sends cookies
`
`FIG. 4
`
`Launch Labs EX1029 Page 7
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 7 of 8
`
`US 2007/0185978A1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`212
`Browser Sends a Request to Merchant Server.
`
`Browser Receives and Displays HTML Document.
`
`-
`
`214
`
`215
`
`Additional
`Browsing?
`216
`No
`Browser selects a Particular Product.
`
`Merchant Server Sends Form.
`
`218
`222
`
`Browser Sends POST With Specific
`Information About Selected Product.
`
`224
`Merchant Server Generates and Sends Synthetic
`Page and Cookie Describing Selected Product.
`
`Browser Stores Cookie That Describes Selected Product
`226
`
`228
`
`More
`Product
`YesN Browsing?
`
`
`
`230
`No
`Browser Accesses a Check-Out Page and
`Sends Cookie Describing Selected Products.
`
`Server Processes the Transaction
`
`240
`
`Launch Labs EX1029 Page 8
`
`

`

`Patent Application Publication Aug. 9, 2007 Sheet 8 of 8
`
`US 2007/0185978A1
`
`144
`
`140
`1.
`
`
`
`DDDDDDDDDDDD. DDD|
`
`Illili
`lili II
`DDDDIDDID DDD
`148
`
`
`
`
`
`
`
`FIG. 6
`
`Launch Labs EX1029 Page 9
`
`

`

`US 2007/0185978 A1
`
`Aug. 9, 2007
`
`PERSISTANT CLIENT STATE IN A HYPERTEXT
`TRANSFER PROTOCOL BASED CLIENT SERVER
`SYSTEM
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`0001. This application is a divisional of U.S. patent
`application Ser. No. 10/272,896 filed Oct. 17, 2002, which
`is a reissue of U.S. Pat. No. 6,134,592 granted Oct. 17, 2000
`(U.S. patent application Ser. No. 08/918,977 filed Aug. 27,
`1997) which is a divisional of U.S. Pat. No. 5,774,670
`granted Jun. 30, 1998 (U.S. patent application Ser. No.
`08/540.342 filed Oct. 6, 1995), each of which is incorporated
`herein in its entirety by this reference thereto.
`
`FIELD OF INVENTION
`0002 This invention relates to communication in a client
`server computer systems. Specifically, the invention relates
`to client-server computer systems in which a server can send
`state information to a client and the client stores the state
`information for later retransmissions back to the server.
`
`BACKGROUND OF THE INVENTION
`0003. An important use of computers is the transfer of
`information over a network. Currently, the largest computer
`network in existence is the InterNet. The InterNet is a
`worldwide interconnection of computer networks that com
`municate using a common protocol. Millions of computers,
`from low end personal computers to high-end Super com
`puters are coupled to the InterNet.
`0004) The InterNet grew out of work funded in the 1960s
`by the U.S. Defense Department’s Advanced Research
`Projects Agency. For a long time, InterNet was used by
`researchers in universities and national laboratories to share
`information. As the existence of the InterNet became more
`widely known, many users outside of the academic/research
`community (e.g., employees of large corporations) started to
`use InterNet to carry electronic mail.
`0005. In 1989, a new type of information system known
`as the World-Wide-Web (“the Web’) was introduced to the
`InterNet. Early development of the Web took place at
`CERN, the European Particle Physics Laboratory. The Web
`is a wide-area hypermedia information retrieval system
`aimed to give wide access to a large universe of documents.
`At that time, the Web was known to and used by the
`academic/research community only. There was no easily
`available tool which allows a technically untrained person to
`access the Web.
`0006. In 1993, researchers at the National Center for
`Supercomputing Applications (NCSA) released a Web
`browser called “Mosiac' that implemented a graphical user
`interface (GUI). Mosiac's graphical user interface was
`simple to learn yet powerful. The Mosiac browser allows a
`user to retrieve documents from the World-Wide-Web using
`simple point-and-click commands. Because the user does
`not have to be technically trained and the browser is pleasant
`to use, it has the potential of opening up the InterNet to the
`a SSCS.
`0007. The architecture of the Web follows a conventional
`client-server model. The terms "client' and “server” are
`used to refer to a computer's general role as a requester of
`
`data (the client) or provider of data (the server). Under the
`Web environment, Web browsers reside in clients and Web
`documents reside in servers. Web clients and Web servers
`communicate using a protocol called “HyperText Transfer
`Protocol (HTTP). Abrowser opens a connection to a server
`and initiates a request for a document. The server delivers
`the requested document, typically in the form of a text
`document coded in a standard Hypertext Markup Language
`(HTML) format, and when the connection is closed in the
`above interaction, the server serves a passive role, i.e., it
`accepts commands from the client and cannot request the
`client to perform any action.
`0008. The communication model under the conventional
`Web environment provides a very limited level of interac
`tion between clients and servers. In many systems, increas
`ing the level of interaction between components in the
`systems often makes the systems more robust, but increasing
`the interaction increases the complexity of the interaction
`and typically slows the rate of the interaction. Thus, the
`conventional Web environment provides less complex,
`faster interactions because of the Web’s level of interaction
`between clients and servers.
`0009. In the conventional Web environment, clients do
`not retain information of a session after the session is closed.
`In many systems, the ability to retain information after the
`systems become inactive is crucial to the functioning of the
`systems. Thus, it is desirable to allow clients to have this
`ability.
`
`SUMMARY OF THE INVENTION
`0010. The present invention involves a client-server sys
`tem on a network in which a server can send state informa
`tion to a client and the client stores the state information. The
`stored state information can later be sent back to the server
`at appropriate times. In this manner, the state of a client can
`be maintained in the client-server system where no state
`inherently exists in Such a system.
`0011. One embodiment of the present invention is a
`network system for communicating documents containing
`information Such as text and one or more images. The
`system comprises a first computer (i.e., a server) capable of
`sending Such documents over a network Such as the Inter
`Net. The system also has a second computer (i.e., a client)
`which can request these documents or files from the server.
`After the requested documents are received, the client can
`display the documents. In accordance with the present
`invention, the server can send state information to the client
`when a document is sent. The client then stores the state
`information, which is typically in the form of a state object.
`In a Subsequent request for documents to the server, the
`client can send the stored state information to the server.
`0012. In an embodiment of the invention, the server uses
`a hypertext transfer protocol (http') to communicate over
`the network with clients; such clients also communicate with
`the server using the hypertext transfer protocol. This server
`and these clients are referred to as an http server and http
`clients respectively. The server typically will include a
`server processor and a memory and a computer readable
`medium, Such as a magnetic (“hard disk') or optical mass
`storage device, and the computer readable medium of the
`server contains computer program instructions for transmit
`ting the file from the server system to the client system and
`
`Launch Labs EX1029 Page 10
`
`

`

`US 2007/0185978 A1
`
`Aug. 9, 2007
`
`for transmitting the state object to the client system. The
`client typically will include a client processor and a memory
`and a computer readable medium, Such as a magnetic or
`optical mass storage device, and the computer readable
`medium of the client contains computer program instruc
`tions for receiving the state object, which specifies the State
`information, from the server and for storing the state object
`at the client. The state object, in a typical embodiment, will
`include a name attribute. Such as a domain attribute.
`0013. One of the applications of the present invention is
`an on-line shopping system. A customer can browse infor
`mation delivered by a merchant server using a browser
`running on a client. The customer can also select products to
`be placed in a virtual shopping basket. The server then sends
`state information related to the selected products to the
`browser on the client for storage. When the customer wants
`to purchase the products in the virtual shopping basket, the
`browser sends the corresponding State information to a
`specified check-out Web page for processing.
`0014) Another application of the present invention is an
`“on-line' information service, such as a newspaper's Web
`server which includes articles or other information from the
`newspaper's Subscription services. In one example, a news
`paper or publishing company may have several different
`publications, each requiring a separate Subscription fee
`which may differ among the different publications. A user of
`the information service may browse the different publica
`tions by making http requests, from the clients/user's com
`puter system, to the publisher's Web server which responds
`with the requested publication and state information speci
`fying the user's identification, and other Subscription infor
`mation (e.g., user registration and billing information) which
`allows the user to view the contents of the publication; this
`information is typically provided by the user at least once in
`a conventional log-on process. Thereafter, this information
`is included in the state information which is exchanged
`between the client and the server in the process of the
`invention. Accordingly, when the user, during the browsing
`process, desires to view another publication (e.g., from the
`same or different publisher) this state information will be
`transmitted back to the Web server to provide the necessary
`subscription information (thereby entitling the user to view
`the publication) without requiring the user to re-enter the
`necessary Subscription information. In this manner, a user
`may browse from publication to publication on the Web
`server or a different Web server in the domain without
`having to re-enter, when seeking a new publication, the
`necessary Subscription information.
`0.015 These and other features of the present invention
`will be disclosed in the following description of the inven
`tion together with the accompanying drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0016. The objects, features, and advantages of the present
`invention will be apparent from the following detailed
`description of the preferred embodiment of the invention
`with references to the following drawings.
`0017 FIG. 1A is a pictorial diagram of a computer
`network used in the present invention.
`0018 FIG. 1B shows a computer network containing a
`client system and a server system.
`
`FIG. 2 illustrates the retrieval of remote text and
`0.019
`images and their integration in a document.
`0020 FIG. 3A shows an example of an HTML document
`which can be processed by the browser of the present
`invention.
`0021
`FIG. 3B shows the integrated document corre
`sponding to the HTML document of FIG. 3A as it would
`appear on a display Screen of a client computer.
`0022 FIG. 4 shows schematically the flow of information
`between a client and a server in accordance with the present
`invention.
`0023 FIG. 5 is a flow chart showing the operation of a
`merchant system of the present invention.
`0024 FIG. 6 shows a computer system that could be used
`to run the browser of the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`0025 Methods and apparatuses for maintaining state
`information in a client-server based computer network sys
`tem are disclosed. The following description is presented to
`enable any person skilled in the art to make and use the
`invention. For purposes of explanation, specific nomencla
`ture is set forth to provide a thorough understanding of the
`present invention. However, it will be apparent to one skilled
`in the art that these specific details are not required to
`practice the present invention. Descriptions of specific appli
`cations are provided only as examples. Various modifica
`tions to the preferred embodiments will be readily apparent
`to those skilled in the art, and the general principles defined
`herein may be applied to other embodiments and applica
`tions without departing from the spirit and scope of the
`invention. Thus, the present invention is not intended to be
`limited to the embodiments shown, but is to be accorded the
`widest scope consistent with the principles and features
`disclosed herein.
`0026.
`Prior to describing the present invention...some
`introductory material is explained, including explanations
`concerning client-server computing, InterNet addresses,
`URLs and browsing of the Web.
`0027 Client-Server Computing
`0028 FIG. 1A illustrates a conceptual diagram of a
`computer network 100, such as the InterNet. Computer
`network 100 comprises Small computers (such as computers
`102, 104,106, 108, 110 and 112) and large computers, such
`as computers A and B, commonly used as servers. In
`general, Small computers are “personal computers' or work
`stations and are the sites at which a human user operates the
`computer to make requests for data from other computers or
`servers on the network. Usually, the requested data resides
`in large computers. In this scenario, Small computers are
`clients and the large computers are servers. In this specifi
`cation, the terms "client' and “server” are used to refer to a
`computer's general role as a requester of data (client) or
`provider of data (server). In general, the size of a computer
`or the resources associated with it do not preclude the
`computer's ability to act as a client or a server. Further, each
`computer may request data in one transaction and provide
`data in another transaction, thus changing the computers
`role from client to server, or vice versa.
`
`Launch Labs EX1029 Page 11
`
`

`

`US 2007/0185978 A1
`
`Aug. 9, 2007
`
`0029. A client, such as computer 102, may request a file
`from server A. Since computer 102 is directly connected to
`server A through a local area network, this request would not
`normally result in a transfer of data over what is shown as
`the “network” of FIG. 1. The “network” of FIG. 1 represents
`the InterNet which is an interconnection of networks. A
`different request from computer 102 may be for a file that
`resides in server B. In this case, the data is transferred from
`server B through the network to server A and, finally, to
`computer 102. The distance between servers A and B may be
`very long, e.g. across continents, or very short, e.g., within
`the same city. Further, in traversing the network the data may
`be transferred through several intermediate servers and
`many routing devices, such as bridges and routers.
`0030) The World-Wide-Web (“The Web’) uses the client
`server model to communicate information between clients
`and servers. Web Servers are coupled to the InterNet and
`respond to document requests from Web clients. Web clients
`(also known as Web “browsers') are programs that allow a
`user to simply access Web documents located on Web
`Servers.
`FIG. 1B shows, in more detail, an example of a
`0031
`client-server system interconnected through the InterNet
`100. In this example, a remote server system 122 is inter
`connected through the InterNet to client system 120. The
`client system 120 includes conventional components such as
`a processor 124, memory 125 (e.g. RAM), a bus 126 which
`couples the processor 124 and memory 125, a mass storage
`device 127 (e.g. a magnetic hard disk or an optical storage
`disk) coupled to the processor and memory through an I/O
`controller 128 and a network interface 129, such as a
`conventional modem. The server system 122 also includes
`conventional components such as a processor 134, memory
`135 (e.g. RAM), a bus 136 which couples the processor 134
`and memory 135, a mass storage device 137 (e.g. a magnetic
`or optical disk) coupled to the processor 134 and memory
`135 through an I/O controller 138 and a network interface
`139, such as a conventional modem. It will be appreciated
`from the description below that the present invention may be
`implemented in software which is stored as executable
`instructions on a computer readable medium on the client
`and server systems, such as mass storage devices 127 and
`137 respectively, or in memories 125 and 135 respectively.
`0032)
`InterNet Addresses
`0033. As discussed in the background, the InterNet con
`sists of a worldwide computer network that communicates
`using well defined protocol known as the InterNet Protocol
`(IP). Computer systems that are directly connected to the
`InterNet each have an unique InterNet address. An InterNet
`address consists of four numbers where each number is less
`than 256. The four numbers of an InterNet address are
`commonly written out separated by periods such as
`192.101.O.3
`0034) To simplify InterNet addressing, the “Domain
`Name System’ was created. The domain name system
`allows users to access InterNet resources with a simpler
`alphanumeric naming system. An InterNet Domain name
`consists of a series of alphanumeric names separated by
`periods. For example, the name “drizzle.stanford.edu' is the
`name for a computer in the physics department at Stanford
`University. Read from left to right, each name defines a
`Subset of the name immediately to the right. In this example,
`
`“drizzle' is the name of a workstation in the “stanford'
`domain. Furthermore, “stanford' is a subset of the “edu’
`domain. When a domain name is used, the computer
`accesses a “Domain Name Server to obtain the explicit four
`number InterNet address.
`0035 Uniform Resource Locators
`0036) To further define the addresses of resources on the
`InterNet, the Uniform Resource Locator system was created.
`A Uniform Resource Locator (URL) is a descriptor that
`specifically defines a type of InterNet resource and its
`location. URLs have the following format:
`resource. Sub.--type://domain.address/path. Sub.--
`0037)
`aC
`0038. Where “resource.sub-type' defines the type of
`internet resource. Web documents are identified by the
`resource type “http' which indicates that the hypertext
`transfer protocol should be used to access the document.
`Other resource types include “ftp (file transmission proto
`col) and “telnet. The “domain.address' defines the domain
`name address of the computer that the fresource is located
`on. Finally, the “path..sub.--name' defines a directory path
`within the file system of the server that identifies the
`resource. The right most name on the path name portion is
`usually the name of an actual file. Web pages are identified
`by the resource type “http'. By convention, most Web pages
`end with the suffix ".html that suggests the file is a
`HyperText Markup Language document.
`0039. An example of a URL for a Web document is:
`0040) http://info.cern.ch/hypertext/Datasources/WWW/
`Geographical.html
`0041) This URL indicates that by using the HTTP (Web)
`protocol to reach a server called “info.cern.ch, there is a
`directory “hypertext/Datasources/WWW that contains a
`hypertext document named “Geographical.html. Resources
`on the Internet are uniquely addressable by their URL.
`0.042 Browsing the World-Wide-Web
`0043. To access an initial Web document, the user enters
`the URL for a Web document into a Web browser program.
`The Web browser then sends an http request to the server
`that has the Web document using the URL. The Web server
`responds to the http request by sending the requested HTTP
`object to the client. In most cases, the HTTP object is an
`plain text (ASCII) document containing text (in ASCII) that
`is written in HyperText Markup Language (HTML). The
`HTML document usually contains hyperlinks to other Web
`documents. The Web browser displays the HTML document
`on the screen for the user and the hyperlinks to other Web
`documents are emphasized in some fashion Such that the
`user can selected the hyperlink.
`0044 FIG. 2 illustrates the retrieval of remote text and
`images and their integration in a Web page by a client
`computer 130. In FIG. 2, server A contains a text document
`coded in a standard HTML format. Server B contains an
`image file called Image 1 and server C contains another
`image file called Image 2. Each of these servers is remotely
`located from the other servers and the client 130. The
`transfer of data is via the Internet. It should be appreciated
`that the text and image files could be located in the same
`server which is remote from client 130.
`
`Launch Labs EX1029 Page 12
`
`

`

`US 2007/0185978 A1
`
`Aug. 9, 2007
`
`004.5 FIG.3A shows an example of an HTML document.
`FIG. 3B shows the corresponding integrated document (Web
`page) as it would appear on a display screen of a client
`computer. The first line of the document in FIG. 3A reads
`“<title> Distributed Image Loading Example.</title>. In
`this case, the tags <title> and </title> are HTML delimiters
`corresponding to the beginning and ending, respectively, of
`text that is designated as the title of the HTML document.
`The title could be used for various purposes. Such as listing
`of the document in an automatically generated index.
`0046) The second line of the HTML document of FIG.3A
`reads “-h1 > Distributed Image Loading Example </h1>
`The <hild and </h1> are HTML delimiters for a header that
`is to be displayed in a largest font. The browser software
`running on the client computer 130 interprets the header tags
`and thus displays the text between the header tags in a largest
`font size on the client’s display Screen.
`0047. After the title and header, the HTML document of
`FIG. 3A contains the text “One of the major features . .
`.
`capability’. At the end of the text paragraph is another
`HTML tag shown as <p>. This is a tag indicating the end of
`a paragraph.
`0.048. To continue with the second paragraph of the
`HTML document, the text reads “This document . . . this
`image: <IMG align=middle src="http://www.su.se/SU1
`ogo.gif"> was obtained . . . ". The text in angle brackets
`defines an image to be placed in the text. Specifically, the
`“IMG’ tag indicates that an image is being defined. The
`“align=middle' tag indicates that the image should be
`aligned in the middle of the current line of text. Finally,
`“src=’ tag indicates that the source image file can be located
`using the URL “http://www.su.se/SUlogo.gif.
`0049. The line continues with the phrase “from the <A
`href="http://www.su.se/index.html> University of Stock
`holm-/A> This phrase defines “University of Stockholm' as
`a link to another Web document. Specifically, the “A” tag
`defines the beginning of a link. The “href=' tag defines that
`the link is to a Web page that can be located using the URL
`"http://www.su.se/index.html. Next, the text “University of
`Stockholm' is the text that will be the link. Finally, the “/A'
`tag defines the end of the link definition. As illustrated in
`FIG. 3B, the text “University of Stockholm' is displayed
`with underlining that indicates it is a link to another docu
`ment. If the user selects the underlined text “University of
`Stockholm', then the browser will send out a http request for
`the Web page at the URL address “http://www.su.se/in
`dex.html.
`0050. It can be seen from the above example that the
`HTML document contains all information a browser needs
`for displaying a Web page. Thus, the only responsibility of
`a Web server is to provide the requested document, and there
`is no need for the server to request a client to do anything
`else. However, this role of a server also limits the utility of
`the Web environment.
`0051. Adding State Information to the HyperText Trans
`fer Protocol
`0.052 The present invention provides an extension to the
`prior art HTTP protocol. Using the teachings of the present
`invention, when a server responds to an http request by
`returning an HTTP object to a client, the server may also
`send a piece of state information that the client system will
`
`store. In an embodiment of the present invention, the state
`information is referred to as a “cookie'. Included in the state
`information (the cookie) is a description of a range of URLS
`for which that state information should be repeated back to.
`Thus, when the client system sends future HTTP requests to
`servers that fall within the range of defined URLs, the
`requests will include a transmittal of the current value of the
`state object. By adding the ability to transfer state informa
`tion back and forth, Web servers can then play an active role
`in transactions between clients and servers. The term state
`object is also used herein to refer to the state information.
`0053 FIG. 4 is a drawing showing schematically the flow
`of information between a client system and a server system.
`At a time indicated by numeral 172, the client system sends
`an http request to the Web server. In response to the http
`request, the server returns an HTML document together with
`a header, which is typically separate from the HTML docu
`ments, at a time indicated by numeral 174. The header may
`contain one or more cookies. Upon receiving the HTML
`document and the header, the client system displays an
`HTML document on the screen and stores the cookies in a
`memory Such as a storage medium. The client may switch
`and work on other tasks, or may be shut down completely.
`This is indicated by a dash line 176. At a time indicated by
`numeral 178, the client system may access a Web server that
`is specified in the received cookie, such that the client
`system transmits the cookies to the server, thus providing
`state information about the client system to the server
`System.
`0054) This extension to the http protocol provides a
`powerful new tool which enables a large number of new
`types of applications to be written for a Web-based envi
`ronment. Examples of new applications include on-line
`shopping that stores information about items currently
`selected by consumers, for-fee on-line services that can send
`back registration information and thus free users from
`retyping a user-id on next connection, and Web sites that can
`store per-user preferences on the client system and have the
`client supply those preferences every time the site is later
`accessed.
`0.055
`Server Behavior
`0056. A particular embodiment of the state information is
`described below in order to provide an example according to
`the present invention. It will be appreciated that alternative
`formats may be used in accordance with the principles of the
`present invention. As stated above, the extension to the
`HTTP protocol adds a new piece of state information to the
`HTTP header as part of an HTTP response from a Web
`server. Typically, the state information is generated by a
`common gateway interface (“CGI) script. The state infor
`mation is stored by the receiving client system in the form
`of a “cookie list' for later use. The syntax of the new data,
`in one embodiment, is:
`NAME=VALUE: expires=DATE:
`0057 Set-Cookie:
`path=PATH:
`0.058 domain=DOMAIN. sub.--NAME: secure
`0059) The capitalized terms can be set by the server
`system. The first attribute is “NAME=VALUE'. This
`attribute serves to identify a cookie. The “NAME attribute
`is a name for the cookie. The "NAME attribute is the only
`required attribute on the “Set-Cookie' header in one
`
`Launch Labs EX1029 Page 13
`
`

`

`US 2007/0185978 A1
`
`Aug. 9, 2007
`
`embodiment. The “VALUE' is a value assigned to the
`pr

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