`
`____
`
`-4
`
`Please type
`
`plus sign
`
`inside this box
`
`Approved for use through 09/30/00
`Patent and Trademark Office U.S DEPARTMENT
`the Paperwork Reduction Aol of 1995 rIo persons are required to respond Ic
`colleclion of inlormattorr unless it displays
`
`Under
`
`PTOISBI0512J97
`0MB 0651-0032
`OF COMMERCE
`valid 0MB control
`
`runrber
`
`TRANSMITTAL
`UTILITY PATENT APPLICATION
`applications under 37 CFR 1.53b
`Only for new nonprovisional
`
`Attorney Docket No
`
`02577.POO1D
`
`Total Pages _4__
`
`First Named Inventor or Application Identifier Keith Lowery et al
`
`Express Mail Label No
`
`ELi 64804887US
`
`ADDRESS
`
`TO
`
`Assistant Commissioner for Patents
`Box Patent Application
`Washington
`20231
`
`ELEMENTS
`APPLICATION
`See MPEP chapter 600 concerning utility patent application contents
`
`..X..
`
`Fee Transmittal Form
`Submit an original and
`
`duplicate for fee processing
`
`-aUI
`
`.g
`
`26
`
`Descriptive
`Cross References
`
`Total Pages
`Specification
`preferred arrangement set forth below
`Titte of the Invention
`to Related Applicafions
`Fed sponsored
`Statement Regarding
`to Microfiche Appendix
`Reference
`Background
`of
`the Invention
`Brief Summary of the Invention
`the Drawings
`of
`Brief Description
`Detailed Description
`Claims
`-Abstract of
`
`if
`
`filed
`
`the Disclosure
`
`Drawingss 35 USC 113
`
`Total Sheets
`
`_.X_
`
`Oath or Declaration
`
`Total Pages
`
`Newly Executed Original or Copy
`
`Copy from Ptior Application 37 CFR 1.63d
`with Box 17 completed Note Box
`for Continuation/Divisional
`DELETIONS OF INVENTORS Signed statement attached deleting
`inventors named in the prior application
`see 37 CFR 1.63d2
`and 1.33b
`
`below
`
`useable if Box 4b is checked
`Incorporation By Reference
`The entire disclosure of
`the prior application from which
`copy of the oath or
`declaration is supplied under Box 4b is considered as being part of
`the disclosure
`of the accompanying application and is hereby incorporated by reference therein
`
`Microfiche Computer Program Appendix
`
`Nucleolide
`
`Submission
`
`and/or Amino Acid Sequence
`if applicable all necessary
`Computer Readable Copy
`Paper Copy identical
`to computer copy
`verifying identity of above copies
`
`Statement
`
`12/01/97
`
`-1-
`
`PTO/SB/05
`
`12/97
`
`Petitioner IBM – Ex. 1005, p. 1
`
`
`
`ACCOMPANYING APPLICATION PARTS
`
`documentss
`Assignment Papers cover sheet
`37 CFR 3.73b Statement where there is an assignee
`
`Power of Attorney
`
`English Translation Document
`
`if applicable
`
`Information Disclosure Statement
`
`IDS/PTO-1449
`
`Copies of
`
`IDS Citations
`
`____
`
`Preliminary Amendment
`
`Return Receipt Postcard MPEP 503 Should be specifically itemized
`
`_____
`
`Small Entity Statements
`
`Statement
`
`filed in prior application Status still proper and desired
`
`______
`
`Certified Copy of Priority Documents if
`
`foreign priority is claimed
`
`Other
`
`____________________________________________________
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`If
`
`CONTINUING APPLICATION check appropriate box and supply the requisite information
`Continuation-in-part CIP
`
`Divisional
`
`Continuation
`
`of pnor application No 08/636477
`
`18
`
`Correspondence Address
`
`Customer Number or Bar Code Label
`
`or
`
`Correspondence Address Below
`
`___________________________________________
`Insert Customer No or Attach Bar Code Label here
`
`NAME
`
`James
`
`Salter Rea No 35.668
`
`BLAKELY SOKOLOFF TAYLOR
`
`ZAFMAN LLP
`
`ADDRESS
`
`12400 Wdshire Boulevard
`
`Serith Fbor
`
`CITY Los Angeles
`
`Country
`
`U.S.A
`
`STATE
`
`Calomia
`
`ZIP CODE 90025-1026
`
`TELEPHONE 408 720-8598
`
`FAX 408 720-9397
`
`12/01/97
`
`-2
`
`12197
`PTO/SB/05
`0MB 0651-0032
`Approved for use through 09130/00
`Patent and Trademark Office u.s DEPARTMENT OF COMMERCE
`
`Petitioner IBM – Ex. 1005, p. 2
`
`
`
`FIELD OF THE INVENTION
`
`The present
`
`invention relates to the field of Internet
`
`technology
`
`Specifically the present
`
`invention relates to the creation and management of
`custom World Wide Web sites
`
`DESCRIPTION OF RELATED ART
`
`The World Wide Web the Web represents all of
`
`the computers on
`
`10
`
`the Internet
`
`that offer users access
`
`to information on the Internet via
`
`interactive documents or Web pages These Web pages contain hypertext
`
`links that are used to connect any combination of graphics audio video and
`
`text
`
`in
`
`non-linear non-sequential manner Hypertext links are created
`
`using
`
`special software language known as HyperText Mark-Up Language
`15 HTML
`
`sites
`
`Once created Web pages reside on the Web on Web servers or Web
`Web site can contain numerous Web pages Web client machines
`running Web browsers can access these Web pages at Web sites via
`
`20
`
`communications protocol known as HyperText Transport Protocol I-hIP
`
`Web browsers are software interfaces that run on World Wide Web clients to
`
`allow access to Web sites via
`
`simple user interface
`
`Web browser allows
`
`25
`
`Web client
`particular Web page from Web site by specifying
`to request
`Uniform Resource Locator URL
`URL is Web address that identifies the
`Web page and its location on the Web When the appropriate Web site
`receives the URL the Web page corresponding to the requested URL is
`located and if required HTML output
`is generated The HTML output
`
`is
`
`Petitioner IBM – Ex. 1005, p. 3
`
`
`
`then sent via HTTP to the client
`
`for formatting on the clients screen
`
`Although Web pages and Web sites are extremely simple to create the
`proliferation of Web sites on the Internet highlighted
`
`number of problems
`The scope and ability of Web page designer to change the content of the
`Web page was limited by the static nature of Web pages Once created Web
`page remained static until
`
`it was manually modified This in turn limited
`
`the ability of Web site managers to effectively manage their Web sites
`
`10
`
`The Common Gateway Interface CGI standard was developed to
`
`15
`
`20
`
`resolve the problem of allowing dynamic content
`
`to be included in Web
`
`pages CGI calls or procedures enable applications to generate dynamically
`created HTML output
`thus creating Web pages with dynamic content Once
`
`created these CGI applications do not have to be modified in order to
`retrieve new or dynamic data Instead when the Web page is invoked
`CGI calls or procedures are used to dynamically retrieve the
`and to generate Web page
`
`necessary data
`
`CGI applications also enhanced the ability of Web site administrators
`to manage Web sites Administrators no longer have to constantly update
`static Web pages
`
`number of vendors have developed tools for CGI based
`
`development to address the issue of dynamic Web page generation
`
`Companies like SpiderTM and BluestoneTM for example have each created
`
`development
`
`tools for CGI-based Web page development
`
`Another
`
`25
`
`company Haht SoftwareTM has developed Web page generation tool
`
`that
`
`uses BASIC-like scripting language instead of CGI scripting language
`
`Petitioner IBM – Ex. 1005, p. 4
`
`
`
`Tools that generate CGI applications do not however
`
`resolve the
`
`problem of managing numerous Web pages and requests at Web site For
`
`example
`
`single company may maintain hundreds of Web pages at their
`
`Web site Current Web server architecture also does not allow the Web
`
`server to efficiently manage the Web page and process Web client requests
`
`Managing these hundreds of Web pages in
`
`coherent manner and
`
`processing all requests for access to the Web pages is thus
`
`difficult
`
`task
`
`Existing development
`
`tools are limited in their capabilities to facilitate
`
`dynamic Web page generation and do not address the issue of managing
`
`10 Web requests or Web sites
`
`Petitioner IBM – Ex. 1005, p. 5
`
`
`
`SUMMARY OF THE INVENTION
`
`It
`
`is therefore an object of the present
`
`invention to provide
`and apparatus for creating and managing custom Web sites Specifically the
`
`method
`
`present
`
`invention claims method and apparatus for managing dynamic
`web page generation requests
`
`10
`
`15
`
`20
`
`In one embodiment
`
`the present
`
`invention claims
`
`computer-
`dynamic Web page generation request
`implemented method for managing
`to Web server the computer-implemented method comprising the steps of
`routing the request from the Web server to
`
`page server the page server
`receiving the request and releasing the Web server to process other requests
`
`processing the request
`
`the processing being performed by the page server
`concurrently with the Web server as the Web server processes the other
`requests and dynamically generating Web page in response to the request
`the Web page including data dynamically retrieved from one or more data
`
`sources Other embodiments also include connection caches
`
`to the one or
`
`more data sources page caches for each page server and custom HTML
`extension templates for configuring the Web page
`
`Other objects features and advantages of the present
`
`invention will be
`
`apparent
`
`from the accompanying drawings and from the detailed
`
`description
`
`Petitioner IBM – Ex. 1005, p. 6
`
`
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Figure illustrates
`
`typical computer system in which the present
`
`invention operates
`
`Figure
`
`illustrates
`
`typical prior art Web server environment
`
`Figure
`
`illustrates
`
`typical prior art Web server environment
`
`in the
`
`form of
`
`flow diagram
`
`10
`
`Figure
`
`illustrates one embodiment of the presently claimed
`
`invention
`
`Figure
`
`illustrates the processing of Web browser request in the
`
`15
`
`form of
`
`flow diagram according to one embodiment of the presently
`
`claimed invention
`
`Petitioner IBM – Ex. 1005, p. 7
`
`
`
`DETAILED DESCRIFflON OF ThE PREFERRED EMBODIMENT
`
`The present
`
`invention relates to method and apparatus for
`creating and managing custom Web sites In the following detailed
`
`description numerous specific details are set forth in order to provide
`
`thorough understanding of the present
`
`invention It will be apparent
`
`to one
`
`of ordinary skill
`
`in the art however
`
`that these specific details need not be
`
`used to practice the present
`
`invention In other instances well-known
`
`structures interfaces and processes have not been shown in detail
`
`in order
`
`10
`
`not
`
`to unnecessarily obscure the present
`
`invention
`
`Figure
`
`illustrates
`
`typical computer system 100 in which the present
`
`invention operates
`
`The preferred embodiment of the present
`
`invention is
`
`implemented on an IBMTM Personal Computer manufactured by IBM
`Corporation of Armonk New York An alternate embodiment may be
`
`15
`
`implemented on an RS/6000TM Workstation manufactured by IBM
`Corporation of Armonk New York It will be apparent
`
`to those of ordinary
`
`skill
`
`in the art that other computer system architectures may also be
`
`employed
`
`20
`
`In general such computer systems as illustrated by Figure
`
`comprise
`
`bus 101 for communicating information
`
`processor 102 coupled with the
`
`bus 101 for processing information main memory 103 coupled with the bus
`
`101 for storing information and instructions for the processor 102
`
`read-
`
`25
`
`only memory 104 coupled with the bus 101 for storing static information and
`
`instructions for the processor 102
`
`display device 105 coupled with the bus
`
`101 for displaying information for
`
`computer user an input device 106
`
`Petitioner IBM – Ex. 1005, p. 8
`
`
`
`coupled with the bus 101 for communicating information and command
`
`selections to the processor 102 and mass storage device 107 such as
`
`magnetic disk and associated disk drive coupled with the bus 101 for storing
`
`information and instructions
`
`data storage medium 108 containing digital
`
`information is configured to operate with mass storage device 107 to allow
`
`processor 102 access to the digital
`
`information on data storage medium 108
`
`via bus 101
`
`Processor 102 may be any of wide variety of general purpose
`
`10
`
`processors or microprocessors such as the PentiumTM microprocessor
`
`manufactured by IntelTM Corporation or the RS/6000TM processor
`
`manufactured by IBM Corporation It will be apparent
`
`to those of ordinary
`
`skill
`
`in the art however
`
`that other varieties of processors may also be used
`
`liquid crystal
`
`15
`
`in particular computer system Display device 105 may be
`device cathode ray tube CRT or other suitable display device Mass storage
`conventional hard disk drive floppy disk drive CD
`device 107 may be
`ROM drive or other magnetic or optical data storage device for reading arid
`floppy disk CD-ROM
`
`writing information stored on
`
`hard disk
`
`magnetic tape or other magnetic or optical data storage medium Data
`
`20
`
`storage medium 108 may be
`
`hard disk
`
`floppy disk CD-ROM magnetic
`
`tape or other magnetic or optical data storage medium
`
`In general processor 102 retrieves processing instructions and data
`
`from data storage medium 108 using mass storage device 107 and
`
`25
`
`downloads
`
`this information into random access memory 103 for execution
`
`Processor 102 then executes an instruction stream from random access
`
`memory 103 or read-only memory 104 Command selections and
`
`Petitioner IBM – Ex. 1005, p. 9
`
`
`
`information input at input device 106 are used to direct the flow of
`
`instructions executed by processor 102 Equivalent
`
`input device 106 may also
`
`be
`
`pointing device such as
`
`conventional mouse or trackball device The
`
`results of this processing execution are then displayed on display device 105
`
`The preferred embodiment of the present
`
`invention is implemented
`
`as
`
`software module which may be executed on
`
`computer system such as
`
`computer system 100 in
`
`conventional maimer Using well known
`
`techniques the application software of the preferred embodiment
`
`is stored
`
`10
`
`on data storage medium 108 and subsequently loaded into and executed
`
`within computer system 100 Once initiated the software of the preferred
`
`embodiment operates in the maimer described below
`
`typical prior art Web server environment Web
`Figure
`client 200 can make URL requests to Web server 201 or Web server 202 Web
`
`illustrates
`
`15
`
`servers 201 and 202 mclude Web server executables 201E and 202E
`respectively that perform the processing of Web client requests Each Web
`
`and 2021
`
`20
`
`25
`
`number of Web pages 2011
`server may have
`Depending on the URL specified by the Web client 200 the request may be
`routed by either Web server executable 201E to Web page 201
`example or from Web server executable 202E to Web page 202
`client 200 can continue making URL requests to retrieve other Web pages
`Web client 200 can also use hyperlinks within each Web page to jump to
`other Web pages or to other locations within the same Web page
`
`for
`
`Web
`
`illustrates this prior art Web server environment
`
`Figure
`flow diagram In processing block 300 the Web client makes
`
`of
`
`in the form
`
`URL
`
`Petitioner IBM – Ex. 1005, p. 10
`
`
`
`request This URL request is examined by the Web browser to determine the
`
`appropriate Web server to route the request
`
`to in processing block 302 In
`
`processing block 304 the request is then transmitted from the Web browser
`
`to
`
`the appropriate Web server and in processing block 306 the Web server
`
`executable examines the URL to determine whether
`
`it
`
`is
`
`HTML document
`
`or CGI application If the request is for an HTML document 308 then the
`
`Web server executable locates the document
`
`in processing block 310 The
`
`document
`
`is then transmitted back through the requesting Web browser for
`
`formatting and display in processing block 312
`
`10
`
`If
`
`the URL request is for CGI application 314 however the Web
`
`server executable locates the CCI application
`processmg block 316 The
`CCI application then executes and outputs HTML output
`318 and finally the HTML output
`
`is transmitted back to requesting Web
`
`in processing block
`
`15
`
`browser
`
`for formatting and display in processing block 320
`
`This prior art Web server environment does not however provide
`
`any mechanism for managing the Web requests or the Web sites As Web
`sites grow and as the number of Web clients and requests increase Web site
`
`20
`
`management becomes
`
`crucial need
`
`For example
`
`large Web site may receive thousands of requests or
`
`hits in
`
`single day Current Web servers process each of these requests on
`single machine namely the Web server machine Although these
`
`25
`
`machines may be running multi-threaded operating systems that allow
`
`transactions to be processed by independent
`
`threads all the threads are
`
`nevertheless on
`
`single machine sharing
`
`processor As such the Web
`
`Petitioner IBM – Ex. 1005, p. 11
`
`
`
`executable thread may hand off
`
`request to
`
`processing thread but both
`
`threads will still have to be handled by the processor on the Web server
`
`machine When numerous requests are being simultaneously processed by
`
`multiple threads on
`
`single machine the Web server can slow down
`
`significantly and become highly inefficient
`
`The claimed invention
`
`addresses this need by utilizing
`
`partitioned architecture to facilitate the
`
`creation and management of custom Web sites and servers
`
`Figure
`
`illustrates one embodiment of the presently claimed
`
`10
`
`invention Web client 200 issues
`
`URL request that is processed to
`
`determined proper routing In this embodiment the request is routed to
`
`Web server 201 Instead of Web server executable 201E processing the URL
`
`request however Interceptor 400 intercepts the request and routes it
`
`to
`
`Dispatcher 402 In one embodiment Interceptor 400 resides on the Web
`
`15
`
`server machine as an extension to Web server 201 This embodiment
`
`is
`
`appropriate for Web servers such as NetsiteTM from Netscape that support
`
`such extensions
`
`number of public domain Web servers such as NCSATM
`
`from the National Center for Supercomputing Applications
`
`at the
`
`University of illinois Urbana-Champaign however do not provide support
`
`20
`
`for this type of extension Thus in an alternate embodiment Interceptor 400
`via an intermediate program to Web
`
`is an independent module connected
`
`server 201 This intermediate program can be
`
`simple CGI application
`
`program that connects Interceptor 400 to Web server 201 Alternate
`
`intermediate programs the perform the same functionality can also be
`
`25
`
`implemented
`
`In one embodiment of the invention Dispatcher 402 resides on
`
`10
`
`Petitioner IBM – Ex. 1005, p. 12
`
`
`
`different machine than Web server 201 This embodiment overcomes the
`
`limitation described above in prior art Web servers wherein all processing
`
`is performed by the processor on
`
`single machine By routing the request to
`
`Dispatcher 402 residing on
`
`different machine than the Web server
`
`executable 201E the request can then be processed by
`
`different processor
`than the Web server executable 201E Web server executable 201E is thus
`
`free to continue servicing client requests on Web server 201 while the
`
`request
`
`is processed t1off-line at
`
`the machine on which Dispatcher 402
`
`resides
`
`10
`
`Dispatcher 402 can however
`
`also reside on the same machine as the
`
`Web server The Web site administrator has the option of configuring
`
`Dispatcher 402 on the same machine as Web server 201 taking into account
`
`variety of factors pertinent
`
`to
`
`particular Web site such as the size of the
`
`15
`
`Web site the number of Web pages and the number of hits at the Web site
`
`Although this embodiment will not enjoy the advantage described above
`
`namely off-loading the processing of Web requests from the Web server
`
`machine the embodiment does allow flexibility
`
`for
`
`small Web site to grow
`
`For example
`
`small Web site administrator can use
`
`single machine for
`
`20
`
`both Dispatcher 402 and Web server 201 initially then off-load Dispatcher 402
`
`onto
`
`separate machine as the Web site grows The Web site can thus take
`
`advantage of other features of the present
`
`invention regardless of whether
`
`the site has separate machines configured as Web servers and dispatchers
`
`25
`
`Dispatcher 402 receives the intercepted request and then dispatches
`
`the
`
`request to one of
`
`number of Page servers 404
`
`For example if Page
`
`server 404
`
`receives the dispatched request
`
`it processes the request and
`
`11
`
`Petitioner IBM – Ex. 1005, p. 13
`
`
`
`retrieves the data from an appropriate data source such as data source 406
`
`data source 408 or data source 410 Data sources as used in the present
`
`application include databases spreadsheets files and any other type of data
`
`repository Page server 404
`
`can retrieve data from more than one data
`
`source and incorporate the data from these multiple data sources in
`Web page
`
`single
`
`hi one embodiment each Page server 4041
`
`resides on
`
`separate
`
`machine on the network to distribute the processing of the request
`
`10
`
`Dispatcher 402 maintains
`
`variety of information regarding each Page server
`
`on the network and dispatches requests based on this information For
`
`example Dispatcher 402 retains dynamic information regarding the data
`
`sources that any given Page server can access Dispatcher 402 thus examines
`
`particular request and determines which Page servers can service the URL
`
`15
`
`request Dispatcher 402 then hands off the request to the appropriate Page
`
`server
`
`For example if
`
`the URL request requires financial data from data
`
`source 408 dispatcher 402 will
`
`first examine an information list Dispatcher
`
`20
`
`402 may determine that Page server 4043 for example has access to the
`
`requisite data in data source 408 Dispatcher 402 will
`
`thus route the URL
`
`request to Page server 4043 This connection caching functionality is
`
`described in more detail below under the heading Performance
`
`25
`
`Alternately Dispatcher 402 also has the ability to determine whether
`
`particular Page server already has the necessary data cached in the Page
`
`servers page cache described in more detail below under the heading
`
`12
`
`Petitioner IBM – Ex. 1005, p. 14
`
`
`
`Performance Dispatcher 402 may thus determine that Page server 4041
`
`and 4042 are both logged into Data source 408 but that Page server 4042
`
`has the financial
`
`information already cached in Page server 4042s page
`
`cache
`
`In this case Dispatcher 402 will
`
`route the URL request to Page server
`
`4042 to more efficiently process the request
`
`Finally Dispatcher 402 may determine that
`
`number or all Page
`
`servers 4041
`
`are logged into Data source 408 In this scenario
`
`Dispatcher 402 can examine the number of requests that each Page server is
`
`10
`
`servicing and route the request to the least busy page server This load
`
`balancing capability can significantly increase performance at
`
`busy Web
`
`site and is discussed in more detail below under the heading Scalability
`
`If for example Page server 4042 receives the request Page server
`
`15
`
`4042 will process the request While Page server 4042 is processing the
`request Web server executable 201E can concurrently process other Web
`
`client requests This partitioned architecture thus allows both Page server
`
`4042 and Web server executable 201E to simultaneously process different
`requests thus increasing the efficiency of the Web site Page server 4042
`Web page in response to the Web client request and
`dynamically generates
`the dynamic Web page is then either transmitted back to requesting Web
`
`client 200 or stored on machine that is accessible to Web server 201 for later
`
`retrieval
`
`Web page
`One embodiment of the claimed invention also provides
`designer with HTML extensions or dyna tags These dyna tags provide
`customized I-ITML functionality to Web page designer
`
`to allow the
`
`20
`
`25
`
`13
`
`Petitioner IBM – Ex. 1005, p. 15
`
`
`
`designer to build customized HTML templates that specify the source and
`
`placement of retrieved data For example in one embodiment
`HTML extension tag specifies
`data source and
`column name to allow the
`HTML template to identify the data source to log into and the column name
`
`dynatext
`
`from which to retrieve data Alternatively dyna-anchor
`
`tags allow the
`
`designer to build hyperlink queries while dynablock tags provide the
`
`designer with the ability to iterate through blocks of data Page servers use
`these HTML templates to create dynamic Web pages Then as described
`above these dynamic Web pages are either transmitted back to requesting
`10 Web client 200 or stored on machine that is accessible to Web server 201 for
`
`later retrieval
`
`The presently claimed invention provides numerous advantages
`prior art Web servers including advantages
`
`in the areas of performance
`
`over
`
`15
`
`security extensibility and scalability
`
`Performance
`
`20
`
`One embodiment of the claimed invention utilizes connection
`
`caching and page caching to improve performance
`
`Each Page server can be
`
`configured to maintain
`
`cache of connections
`
`to numerous data sources
`
`For example as illustrated in Figure
`
`Page server 4041 can retrieve data
`
`from data source 406 data source 408 or data source 410 Page server 4041
`
`25
`
`can maintain connection cache 4121 containing connections
`
`to each of data
`
`source 406 data source 408 and data source 410 thus eliminating connect
`
`times from the Page servers to those data sources
`
`14
`
`Petitioner IBM – Ex. 1005, p. 16
`
`
`
`Additionally another embodiment of the present
`invention supports
`the caching of finished Web pages to optimize the performance of the data
`
`source being utilized This page caching feature illustrated in Figure as
`
`Page cache 414 allows the Web site administrator to optimize the
`
`performance of data sources by caching Web pages that are repeatedly
`accessed Once the Web page is cached subsequent requests or hits will
`utilize the cached Web page rather than re-accessing the data source This
`
`can radically improve the performance of the data source
`
`10
`
`Security
`
`invention allows the Web site administrator to utilize
`The present
`15 multiple levels of security to manage the Web site In one embodiment
`
`the
`
`Page server can utilize all standard encryption and site security features
`provided by the Web server
`
`In another embodiment
`
`the Page server can be
`
`configured to bypass connection
`
`caches 4121-n descnbed above for
`
`particular data source and to require entry of
`
`user-supplied identification
`
`20
`
`and password for the particular data source the user is trying to access
`
`Additionally another embodiment of
`
`the presently claimed invention
`requires no real-time access of data sources The Web page caching ability
`
`described above enables additional security for those sites that want
`
`to
`
`25
`
`publish non-interactive
`
`content
`
`from internal
`
`information systems but do
`
`not want real-time Internet accessibility to those internal
`
`information
`
`systems In this instance the Page server can act as
`
`replication and staging
`
`15
`
`Petitioner IBM – Ex. 1005, p. 17
`
`
`
`agent and create Web pages in batches rather than in real-time These
`replicated Web pages are then staged for access at
`later time and access
`to the Web pages in this scenario is possible even if the Page server and
`
`dispatcher are not present later
`
`In yet another embodiment the Page server can make
`single pass
`through Web library and compile Web site that exists in the traditional
`
`form of separately available files
`
`Web library is
`collection of related Web
`books and Web pages More specifically the Web library is
`organization of Web document
`
`templates together with all
`
`the associated
`
`hierarchical
`
`10
`
`15
`
`20
`
`data source mformation Information about an entire Web site is thus
`
`contained in
`
`file thus simplifying the problem of deploying
`Web sites across multiple Page servers The process of deploying the Web
`
`single physical
`
`site in this embodiment
`
`is essentially
`
`simple copy of
`
`single file
`
`Extensibility
`
`One embodiment of
`
`invention provides the Web site
`administrator with Object Linking and Embedding OLE 2.0 extensions to
`
`the present
`
`extend the page creation process These OLE 2.0 extensions also allow
`information submitted over the Web to be processed with user-supplied
`
`functionality Utilizing development
`
`tools such as Visual Basic Visual
`
`or PowerBuilder
`
`that support
`
`the creation of OLE 2.0 automation the Web
`
`25
`
`site administrator can add features and modify the behavior of the Page
`
`servers described above This extensibility allows one embodiment of the
`
`claimed invention to be incorporated with existing technology to develop an
`
`16
`
`Petitioner IBM – Ex. 1005, p. 18
`
`
`
`infinite number of custom web servers
`
`For example OLE 2.0 extensions allow Web site administrator to
`
`encapsulate existing business rules in an OLE 2.0 automation interface to be
`
`accessed over the Web One example of
`
`business rule is the steps involved
`
`in the payoff on an installment or mortgage loan The payoff may involve
`
`for example taking into account
`
`the current balance the date and the interest
`
`accrued since the last payment Most organizations already have this type of
`
`business rule implemented using various applications
`
`such as Visual Basic
`
`10
`
`for client-server environments or CICS programs on mainframes If
`applications are OLE 2.0 compliant the Page server dynaobject HTML
`
`these
`
`extension tag can be used to encapsulated
`
`the application in an OLE 2.0
`
`automation interface
`
`The Page server is thus extensible and can incorporate
`
`the existing application with the new Page server functionality
`
`15
`
`Scalabifity
`
`One embodiment of the claimed invention allows plug and play
`
`20
`
`scalability As described above referring to Figure
`
`Dispatcher 402
`
`maintains information about all
`
`the Page servers configured to be serviced by
`
`Dispatcher 402 Any number of Page servers can thus be plugged into the
`
`configuration illustrated in Figure
`
`and the Page servers will be instantly
`
`activated as the information is dynamically updated in Dispatcher 402 The
`
`25 Web site administrator can thus manage the overhead of each Page server
`
`and modify each Page servers load as necessary to improve performance
`
`In this manner each Page server will cooperate with other Page servers
`
`17
`
`Petitioner IBM – Ex. 1005, p. 19
`
`
`
`within multi-server environment Dispatcher 402 can examine the load on
`each Page server and route new requests according to each Page server1s
`
`available resources This load-balancing across multiple Page servers can
`Web sites performance
`
`significantly increase
`
`Figure illustrates the processing of Web browser request in the
`form of
`
`flow diagram according to one embodiment of the presently
`Web browser sends
`URL request to Web server in
`
`claimed invention
`
`processing block 500 In processing block 502 the Web server receives the
`URL request and an interceptor
`
`then intercepts the handling of the request
`
`10
`
`in processing block 504 The interceptor connects to
`dispatcher and sends
`the URL request to the dispatcher in processing block 506 In processing block
`508 the dispatcher determines which Page servers can handle the request
`The dispatcher also determines which Page server is processing the fewest
`
`15
`
`requests in processing block 510 and in processing block 512 the dispatcher
`sends the URL request to an appropriate Page server The Page server
`receives the request and produces an HTML document
`
`processmg block
`514 The Page server then responds to the dispatcher with notthcation of the
`name of the cached HTML document
`
`in processing block 516 In
`
`processing
`
`20
`
`block 518 the dispatcher
`
`responds to the interceptor with the document
`
`name and the interceptor
`then replaces the requested URL with the newly
`generated HTML document
`
`in processing block 520 The Web server then
`sends the new HTML document
`
`in processing block
`522 Finally the Web browser receives and displays the HTML document
`
`requesting client
`
`to the
`
`25
`
`created by the Page server at processing block 524
`
`Thus method and apparatus for creating and managing custom Web
`
`18
`
`Petitioner IBM – Ex. 1005, p. 20
`
`
`
`sites is disclosed These specific arrangements and methods described herein
`
`are merely illustrative of the principles of the present
`
`invention Numerous
`
`modifications in form and detail may be made by those of ordinary skill
`
`in
`
`the art without departing from the scope of the present
`
`invention Although
`
`this invention has been shown in relation to
`
`particular preferred
`
`embodiment it should not be considered so limited Rather
`
`the present
`
`invention is limited only by the scope of the appended claims
`
`19
`
`Petitioner IBM – Ex. 1005, p. 21
`
`
`
`CLAIMS
`
`We claim
`
`dynamic Web
`computer-implemented method for managing
`page generation request to Web server said computer-implemented
`method comprising the steps of
`
`routing said request from said Web server to
`
`page server said page
`server receiving said request and releasing said Web server to process other
`
`requests
`
`10
`
`processing said request said processing being performed by said page
`server concurrently with said Web server as said Web server processes said
`other requests and
`
`dynamically generating Web page in response to said request said
`Web page including data dynamically retrieved from one or more data
`
`15
`
`sources
`
`The computer-implemented method in Claim herein said step
`
`of routing said request includes the steps of
`
`intercepting said request at said Web server
`
`20
`
`routing said request from said Web server to
`
`dispatcher and
`
`dispatching said request to said page server
`
`20
`
`Petitioner IBM – Ex. 1005, p. 22
`
`
`
`The computer-implemented method in Claim wherein said step
`
`of processing said request includes the step of identifying said one or more
`
`data sources from which to retrieve said data
`
`The computer-implemented met