throbber
Google Inc.
`GOOG 1011
`CBM of U.S. Patent No. 6,286,045
`
`Page 1 of 9
`
`

`
`U.S. Patent
`
`May 12, 1993
`
`Sheet 1 of 2
`
`5,751,956
`
`Fig.
`
`1
`
`‘°/\
`
`Console K13
`
`5‘
`5D
`
`'5'’
`
`
`
`ata Files
`
`Operating
`System
`
`32
`
`Zfi
`
`
`
`Fig. 2
`
`Page 2 of9
`
`Page 2 of 9
`
`

`
`U.S. Patent
`
`May 12, 1993
`
`Sheet 2 of 2
`
`5,751,956
`
`
` Client
`Requem
`Received
`
`Fig. 3
`
`40
`
`Valid
`Redirection
`
`Request?
`
`Pro Bess
`
`Accounting
`Data
`
`
`
`
`
`
`
`
`
`alid Access to
`lssue Alccess
`FY9085?
`
`Redirection
`Web Page?
`named
`
`Message
`13313
`
`
`
`
`53
`
`Issue
`Redirection
`Serve Web
`Page
`50
`
`Message
`
`
`
`Recewe URL
`
`Parse for
`Reduect
`
` Issue
`Redirection
`
`Message
`
`
`
`
`Issue
`
`Response
`Message
`
`
`
`68
`
`Fig. 4
`
`Page3of9
`
`Page 3 of 9
`
`

`
`1
`METHOD AND APPARATUS FOR
`REDIRECTION OF SERVER EXTERNAL
`HYPER-LINK REFERENCES
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`The present application is related to the following
`Application. assigne_d to the Assignee of the present Appli-
`cation:
`
`ll]
`
`1) IMPROVED WEB SCAN PROCESS. invented by
`Kirsch.
`[Attorney Docket Number: INFSl003DElJ
`GBR]. application Ser. No. D8l604.584. filed on Feb.
`21. 1996 concurrently herewith and;
`2) SECURE. CONVENIENT AND EFFICIENT SYS-
`TEM AND METHOD OF PERFORMING TRANS-
`INTERNET PURCHASE TRANSACTIONS invented
`by Kirsch, [Attorney Docket Number: INFS IOOSDEIJ
`GBR]. application Ser. No. {)8J'604.506_. filed CCII1Ctl1‘-
`rently herewith.
`
`20
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`
`The present invention is generally relntedto the control of
`network information server systems supporting World Wide
`Web based data pages and. in particular. to a server system
`and process for efficiently redirecting external server hyper-
`link references for purposes of controlling. moderating. and
`accounting for such reftaences.
`2. Description of the Related Art
`The recent substantial growth and use of the internation-
`ally connected network generally known as the Internet has
`largely been due to widespread support of the hypertext
`transfer protocol (HTTP). This protocol permits client sys-
`tems connected through Internet Service Providers (ISPs) to
`access independent and geographically scattered server sys-
`tems also connected to the Internet. Client side browsers,
`such as Netscape Mozilla and Navigator (Netscape Com-
`munications Corp.) and NCSA Mosaic. provide efficient
`graphical user intuface based client applications that imple-
`ment the client side portion of the l-l'I'I‘P protocol
`Server side application programs. generically referred to
`as I~l'I'I'Pd servers, implement the server side portion of the
`I-lT'l"P protocol. HTTP server applications are available both
`commercially. from companies such as Netscape. and as
`copyrighted freeware available in source code form. from
`NCSA.
`
`The distributed system of cornrntlnication and informa-
`tion transfer made possible by the HTTP protocol is com-
`monly known as the World Wide Web (W’WW or W3) or as
`simply “the Web.” From a client side user interface
`perspective. a system of uniform resource locators (URLs)
`is used to direct the opcaation of a web browser in estab-
`lishing atomic transactional comrnunication sessions with
`designated web server computer systems. In general. each
`URI. is of the basic form:
`
`hflp:!l<aeaver_uanre>.<sub<ioInain.tc[J_level4iounain:>r<?patii>
`
`35
`
`45
`
`55
`
`5,751,956
`
`2
`
`explicitly named data file constructed in accordance with the
`hypertext mark up language (HTML). This data file or web
`page is returned in one or more response phase HITP
`messages by the server. generally for display by the client
`browser. Additional embedded image references may be
`identified in the returned web page resulting in the client
`browser initiating subsequent HTML nansactions to retrieve
`typically embedded graphics files. Afully reconstructed web
`page image is then presented by the browser through the
`browser's graphical um interface.
`Due to the completely distributed clientlserver architec-
`ture of the Web. as made possible by the URL system further
`supported by the existing Internet name resolution services
`and routing conventions. I-l'I'l‘P servers can be indepen-
`dently established with little diflictdty. Consequently. the
`Web has no centrally or even regionally enforced organiza-
`tion other than loosely by name of the top level domain.
`Searching for information or other resources provided by
`individual I-l'1'TP servers is therefore problematic almost by
`definition. Because of the time. cost and complexity of
`assembling comprehensive. yet elficiently searchable data-
`bases of web information and resources. commercial Inter-
`net Business Strvices {IBS) have been established to pro-
`vide typically fee based or advertising revenue supported
`search engine services that operate against compilations of
`the information and resources available via the Web corre-
`lated to source URLs. Access to such search engines is
`usually provided through server local web pages served by
`the Internet Business Services. The results of a search are
`served in the form of local web pages with appropriate
`embedded remote or hyper-linked URLs dynamically con-
`structed by the server of the Internet Business Service.
`Because of the opportunity presented by the likely
`repeated client access and retrieval of search engine and
`search result web pages. providers of other Internet based
`services have begun to actively place advertisements on
`these web pages. As is typical in advertising mediums. the
`frequency of display of an advertisement generally defines
`the compensation paid to the advertisement publisher. Thus,
`the number of times that an advertisement is simply trans-
`ferred to a client browser provides an indication of how
`elfectively the advatisement is being published. A more
`direct measure of the effectiveness of a particular advertise-
`ment on a particular web page is the numba of times a client
`web browser chooses to actively pursue the URI. repre-
`sented by the advertisement. Thus. there is a need to be able
`to track information obtainable from a client browser when
`a hyper—linlred advertiser’s URL is selected.
`The difliculty in obtaining direct reference information
`arises from the fact that a web page with an embedded
`advertisement and corresponding remote URL is served in
`its entirety to the client browser upon first reference to the
`web page. The selection of a particular advertiser’s URL is
`then by definition performed through an independent trans-
`action directed to the I-l'I'I‘Pd server associated with the
`advertiser. Since the advertiser publishing lI'I'I‘Pd server is
`not part of this subsequent transaction. the publishing server
`is conventionally incapable of tracking client browser hyper-
`links actually executed to an advertiser’s URL or any other
`URLs embedded in a web page previously served to the
`client browser.
`
`'I11e serve;r_narne is typically ‘\vww” and the sub_
`domain.top—level_domain is a standard Internet domain
`reference. The path is an optional additional URL qualifier.
`Specification by user selection of a URL on the client side
`results in a transaction being established in which the client
`sends the serve: an ll'l'TP message referencing a default ctr
`
`Simple web page access counters are relatively well
`known and used throughout the Web. 'I11ese access counters
`are based on a common gateway interface (CGI) facility
`supported by modern l-l’1'TPd server systems The CGI
`facility permits generally small programs. at least typically
`in terms of function. to be executed by a server in response
`
`Page 4 of9
`
`Page 4 of 9
`
`

`
`5,751,956
`
`3
`to a client URL request. That is. the HTML web page
`definition provides for the embedding of a specific HTML
`reference that will specify execution of a server side CGI
`program as part of the process of the web browser recon-
`structing an image of a served web page. Such a HTML
`reference is typically of the form:
`dmg s1c=“htlp:f!www.ta:'getcomlcgi-bi.n.fcou.nr.cgi”‘>
`
`Thus. a counter value incremented with each discrete execu-
`tion of the CGI program (countcgi) dynarrrirxrlly provides
`part of the displayable image of the reconstructed wda page.
`The time. remote client requester. client domain. client
`browser type and other information that may be lcrrown
`through the operation of the HTTP protocol may be logged
`as part of the CGI program's function. Consequently, a
`reasonable manner of accounting and auditing for certain
`web page accesses exists.
`Access counters. however. fundamentally log only server
`local web page accesses. The client browser to the CGI
`program is evaluated by the client in connection with the
`initial serving of the web page to the client browser. The
`initial serving of the web page to the client browser can be
`connected. but any subsequent selection of a URL that
`provides a hyper-link reference to an external server is not
`observed and therefore is not counted by a CGI program
`based access oountrn. Other limitations of access counters
`arise from the fact that the implementing CGI program is an
`independently loadable executable. The CGI program must
`be discretely loaded and executed by the server computer
`system in response to each URL reference to the CGI
`program The repeated program loading and execution
`overhead. though potentially small for each individual invo-
`cation of the CGI program. can represent a significant if no:
`substantial load to the sever computer system. The frequent
`execution of CGI programs is commonly associated with a
`degradation of the eifective average access time of the
`H'I'I'Pd server in responding to client URL requests. Since
`an Internet Business Service providing access to a search
`engine logs millions of requests each day, even small
`reductions in the efliciency of serving web pages can seri-
`ously degrade the cost efliciency of the Internet Business
`Service. As of December. 1995. 1nfoSeelr Corporation. in
`particular. handles an avuage of five million retrievals a day.
`The execution overhead associated with CGI programs is
`often rather significant Many CGI programs are imple-
`mented at least in part through the use of an interpreted
`language such as Perl or TCL. Consequently, a substantial
`processing ovahead is involved in multiple mass storage
`transfers to load both the interpreter and CGI program
`scripts. to process the scripts through the execution of the
`interpreter, and then actually log whatever useful data is
`generated. typically to persistent mass storage. Finally. the
`interpreter andlor CGI program may have to be unloaded
`In addition. external CGI programs present a significant
`problem. in terms of maintenance. including
`and
`ongoing server configuration and control. and security in the
`context of a busy server system. Individual CGI programs
`will likely be needed for each independent web page in order
`to separately identify web page service counts. Alternatively.
`a CGI program can be made sufficiently by complex to be
`able to distinguish the precise manner in which the program
`is called so as to identify a particular web page and log an
`appropriately distinctive access count. Maintenance of such
`CGI programs on a server system where large numbers of
`page accesses are being separately counted is non trivial.
`Further. the existence of external programs, particularly
`of scripts that are interpreted dynamically, represents a
`
`4
`
`ll]
`
`potential security problem. In particular. the access and
`execute permissions of interpreted scripts must be carefully
`managed and monitored to prevent any unauthorized script
`from being executed that could. in turn. compromise the
`integrity of the data being collected if not the fundamental
`integrity of the server computer system itself. Consequently.
`known access counters provide no solution directly in full or
`in part to the need to account or audit URL references to
`external servers based on hyper—1inlrs from previously
`served web pages.
`The HTTP protocol itself provides for a basic server based
`system of URL redirection for servers and clients supporting
`the 1.5 or later versions of the HTTP protocol. A configu-
`ration file associated with an I-l'I'l‘P server (typically
`srrn.conf) can specify a redirect directive that effectively
`maps a server local directory URL refaence to an external
`URL reference through the use of a configuration directive
`of the form:
`
`Redirect fdirl http:f!uewsenrer,widgetnonr!dirl
`
`When a Version 1.5 or later H"lTP server receives a URL
`reference to a local directory (ldirl) that is specified as above
`for redirection, a redirect message is returned to the client
`browser including a new location in the form of an URL
`(http:b‘newserver.widget.coInldir1). This redirect URL is
`then used by the client browser as the basis for a conven-
`tional client URL request.
`.
`This existing server based redirection function is insufi-
`cient to support external server access traclcing since. in its
`usual form. the redirection is of the entire directory hierar-
`chy that shares a common redirected base directory. Even in
`the most restricted form. the redirection is performed on a
`per directory reference basis. Thus. every access to the
`directory. independent of the particular web page or graphics
`image or CGI program that is the specific object of an access
`request is nonetheless discretely redirected without distinc-
`tion. Any potential use of the existing server redirect func-
`tion is therefore exceedingly constrained if not practically
`prohibited by the HITP protocol defined operation of the
`redirect directive.
`Ftuthermore. the redirect directive capability of the I-l'I'I'P
`protocol server does not provide for the execution of a CGI
`program or other executable coincident with the perfor-
`mance of the redirection thereby essentially precluding any
`action to capture information related to the redirect URL
`request. In addition. the complexity of the resource configu-
`ration file necessary to specify redirection down to a pa
`directory configuration again raises significant
`configuration. maintenance and. to a lesser degree. security
`issues. Thus. saver redirection does not possess even the
`basic capabilities necessary to support external URL hyper-
`link reference auditing or accounting.
`Finally. a form of redirection might be accomplished
`though the utilization of a relatively complex CGI program.
`Such a redirection CGI program would likely need to
`perform some form of alternate resource identification as
`necessary to identify a redirection target URL. Assuming
`that a unique target URL can be identified. a redirection
`message can then be retlnned to a client from the CGI
`prog:rarn through the I-l'I'I'Pserver as necessary to provide a
`redirection URL to the client browser.
`Unfortunately. any such CGI program would embody all
`of the disadvantages associated with even the simplest
`access counter programs Not only would problems of execu-
`tion load and latency, as well as configuration. maintenance
`and security remain. but such an approach to providing
`redirection is inherently vulnerable to access spoofing.
`
`45
`
`55
`
`Page 5 of9
`
`Page 5 of 9
`
`

`
`5
`
`6
`
`5,751,956
`
`Access spoofing is a problem particular to CGI programs
`arising from the fact that the H'I'ML reference to the CGI
`program may be issued without relation to any particular
`web page. Consequently. any CGI program implementing an
`access counter or other auditing or accounting data collect-
`ing program can produce an artificially inflated access count
`from repeated reference to the CGI program HTML state-
`ment outside and independent of a proper web page. Access
`spoofing inherently undermines the apparent if not actual
`integrity of any data gathered by a CGI program Since. at
`minimum. the ability to insure the accuracy of even a simple
`access count would be of fundamental importance to an
`Internet service advertiser.
`the use of CGI programs to
`provide even basic accounting or auditing functions is of
`limited practical use. Finally. HTML does not provide a
`tamper-proof way for two URLs to be accessed in sequence
`with just one URL reference buton. such as. for example. a
`server CGI counter URL reference followed by external
`server URL reference.
`
`SUMMARY OF THE INVENTION
`
`Thus. a general purpose of the present invention is to
`movide a system and method of reliably tracking and
`redirecting hype"-linlr references to external server systems.
`This is achieved by the present invention through the
`provision of a Web server computer system that provides for
`server based controlled management over a client reference
`to a resource locator that is independently selected by a
`client computer system and that references an external Web
`Server. The Web server system provides a client system with
`a predetermined URL reference to the Web server system.
`encoded with predetermined redirection and accounting data
`including a reference to a second server system. On receipt
`by the first Web server system of the predetermined URL
`reference from the client system, the predetermined redirec-
`tion and accounting data is decoded from the predetermined
`URL and processed by the Web server system to provide the
`client system with a redirection message including the
`reference to the second server syste-.m. The accounting data
`is processed by the Web server system and resulting data is
`selectively stored by the Web server system.
`Thus. an advantage of the present invention is that URL
`reference data is captured in an expedient manner that
`interposes a minimum latency in returning the ultimately
`referenced web page while imposing minimum visibility of
`the redirection protocol on client users
`Another advantage of the present invention is that inde-
`pendent invocations of server external supportprograrns and
`multiple external data references are not required as a
`consequence of the present invention. thereby rninirnizing
`the CPU and disk intensive load on the web servr: computer
`system and the resulting latency.
`A further advantage of the present invention is that the
`reference identifier and redirection directive can both be
`maintained wholly within the URL specification discretely
`provided by a client HTM1. request Thus.
`the present
`invention is superior in both eliiciency and maintenance
`requirements to a CGI counter. or any method that incor-
`porates a CGI counter.
`Sti.ll another advantage of the present invention is that
`program modifications necessary to support the protocol of
`the present invention are implemented entirely at the server
`end of a protocol transaction. Client side participation in the
`transaction is within the existing client side defined HTML
`protocol.
`A still further advantage of the present invention is that
`the implementation of the invention introduces minimum
`
`exposure to additional security breaches due to the closed
`form of the protocol while providing substantial security
`against inappropriate URL and protocol references. This is
`accomplished preferably by the inclusion of validation codes
`inside the URL speci.ficat.ion.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`These and other advantages and features of the present
`invention will become better understood upon consideration
`of the following detailed description of the invention when
`considered in connection with the accompanying drawings.
`in which like reference numerals designate like parts
`throughout the figures thereof. and wherein:
`FIG. 1 provides a schematic representation of client and
`server computer systems internetworked through the Inter-
`net;
`
`20
`
`FIG. 2 provides a block diagram of a server computer
`system implementing an HTTP daemon (H'I'I‘Pd) server in
`accordance with a preferred embodiment of the present
`invention;
`
`FIG. 3 provides a flow diagram illustrating the process
`performed by a preferred embodiment of the present inven-
`tion in receiving and processing client URL requests; and
`FIG. 4 provides a flow diagram illustrating the server side
`processing of special redirect URLs in accordance with
`another preferred embodiment of the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`35
`
`45
`
`SD
`
`55
`
`65
`
`A typical environment 10 utilizing the Internet for net-
`work services is shown in FIG. 1. Client computer system 12
`is coupled directly or through an Internet service provider
`(ISP) to the Internet 14. By logical reference via a uniform
`resotnce locator. a corresponding Internet server system 16.
`18 may be accessed. A generally closed hypertext transfer
`protocol transaction is conducted between a client browser
`application executing on the client system 12 and an I-II'I‘Pd
`server application executing on the server system 16. In a
`preferred embodiment of the present invention. the server
`system 16 represents an Internet Business Service that
`supports or serves web pages that embed hyper-link refer-
`ences to other I-lTI‘Pd server systems coupled to the Internet
`14 and that are at least logically external to the server system
`16.
`
`A web page served by the server system 16 to the client
`12 embeds at URL reference to a web page served by the
`logimlly external server system. Selection of this embedded
`URL l.hrou§1 the client browser of the client computer
`system 12 results in an HTTP transaction with the server
`system 16 rather than the external server. The information
`stored in the embedded URL first served with the web page
`to client system 12 is thus provided back to the server system
`16 upon selection of the URL even though the apparent
`target of the U'RLis the external server system. Aredirection
`response is men provided by the server system 16 to the
`client system 12 providing the corresponding redirection
`URL.
`
`As shown in FIG. 2. the server system 16 receives the
`redirection request infcnnation via a network connection 20
`to a network interface 22 within the server system 16. The
`network interface 2.2 is coupled through an internal bus 24
`to a central processing unit (CPU) 26. The CPU 26 executes
`a network operating system 28 in support of the network
`interface 22 and other functional aspects of the server
`system 16. The network operating system 28 supports the
`
`Page 6 of9
`
`Page 6 of 9
`
`

`
`5,751,956
`
`7
`execution by the CPU 26 of an H'I'I'Pd server application 30
`that defines the responsive operation of the server system 16
`to H'l"1"P requests received via the network 20. Finally. the
`network operating system 28 provides for temporary and
`persistent storage of data in a mass storage device 32
`preferably including a persistent storage media such as
`provided by a conventional hard disk drive.
`In accordance with the preferred embodiment of the
`present
`invention.
`the embedded redirection information
`provided as part of a URL HTTP request is processed by the
`H"l'1"'Pd server 30. Preferably. the processing by the H"lTPd
`server 30 is performed through the execution of the server 30
`itself as opposed to the execution of any external CGI
`programs or the like. The redirection information is pro-
`cessed by the execution of the server 30 to identify and
`validate the particular URL reference that provided the
`redirection information and to generate a redirection target
`URL.
`
`In a preferred embodiment of the present invention. an
`embedded URL containing redirection information is for-
`matted as follows:
`
`http:J!<direcL_server>sFIedi:er:t?¢data>?hrtp:!t<rcdirecLserver:
`
`The diroct_serve:r portion of the embedded URL specifies
`the H'l"l"P server target of a transaction that is to be initially
`established by the client system 12. The remaining infor-
`mation is provided to the targeted direct server. While the
`direct server may be any H'I'l'P server accessible by the
`client system 12 that has been designated to service redi-
`rection requests in accordance with the present invention.
`the direct server is preferably the I-l'I'I‘Pd server 3|} that
`initially served the web page with the embedded redirection
`URL to the client system 12.
`The term “redirect” in the embedded redirection URL is
`a key word that is pre-identified to the HTI'Pd server 30 to
`specify that the URL corresponds to a redirection request in
`accordance with the present invention. Although the term
`“redirect” is the preferred term. any term or code may be
`selected provided that the term can be uniquely identified by
`the H'I'I'Pd server 30 to designate a redirection URL.
`The “
`” term of the redirection URL provides refer-
`ence identifier data to the I-l'I"l'Pd server 30 that can be used
`to further identify and potentially validate a redirection URL
`to the H'ITPd server 30. This data thus permits an account-
`ing of the redirection URL to be made by the l{I"I’Pd server
`30. In the context of an advertisement. the data may encode
`a particular advertising client for whom access data may be
`kept. a particular instance of the graphic image provided to
`a client system 12 in association with the redirection URL.
`and potentially a validation code that may serve to ensure
`that inappropriate client uses of a redirection URL can be
`distinguished and discarded by the H'I'I'Pd server 30.
`An exemplary redirection URL. constructed using HTML
`in accordance with a preferred embodiment of the present
`invention. is as follows.
`
`25
`
`30
`
`35
`
`45
`
`55
`
`«in lnef'=“|:|ttp :l!www.i11foaeek.oon1r'IShed.imt?l*iwPg-(XJ3-
`AA?ls2|:p:!fwww.newspage.com">
`
`Within the redirection data. the data component “NwPg“
`serves as a client or account identifier. The data component
`“D03” is a series identifier indicating a particular graphic
`image that was associated with the redirection URL as
`embedded in the web page served to the client system 12
`Finally. the data component “
`” may be utilized to provide
`a basic validation identifier that serves to permit the l-l'I'I'Pd
`server 30 to identify inappropriate repeated submissions of
`
`I55
`
`8
`the redirection URLto the server system 16 or those that are
`determined to be obsolete by convention.
`In an alternate embodiment of the present invention. the
`validation data encodes a data representation that can be
`used in conjunction with the HTTP protocol to provide
`information regarding the client system 12 that submitted
`the redirection URL and. optionally.
`the graphics series
`identifier data. to limit repeated use of the redirection URL
`by the same client system 12. within a defined short period
`of time. Thus. an inappropriate attempt by a third party client
`to, in elfect. tamper with the data collected by the server
`system 16 with respect to any particular redirection URL can
`be identified with relative if not complete catainty and
`blocked. In addition. date codes older than a certain time
`interval can be declared by computation to be invalid.
`Consequently. a copy of the embedded redirection URL
`cannot be stored on a client system 12 and remain viable for
`use for longer than a period of time defined exclusively by
`the server computer system 16.
`Each of the data terms within a redirection URL may be
`statically or dynamically created by the H'I'I‘Pd server 30 as
`part of the process of originally serving a web page with the
`embedded redirection URL to a client computer system 12.
`With dynamic generation. different graphic images corre-
`sponding to a single advertiser or one of any number of
`advertisers may be effectively served with an otherwise
`statically defined web page. The data terms of the embedded
`redirection URL may be dynamically selected based on the
`identity of the advertiser and graphim image in addition to
`separately establishing a hypertext link to the graphics
`image as part of an instance of serving a particular web page
`by the HTI'Pd server 30. Indeed. the selection of advertiser
`and graphics image could be made at least in part on the
`identity of the client computer system 12 as established
`through information provided by the conventional operation
`of the lfI'I'P protocol. and on the client profile if known.
`The validation code may also be dynamically generated.
`In an alternate embodiment of the present invention. the
`validation code encodes a representation of the day of the
`year with the account and image identifier data tends to
`generate an identifier. preferably encoded as two digits. that
`provides a suflicient degree of uniqueness to allow an
`embedded redirection URL to be aged on a per day basis.
`Ftn'thermore. the validation code remains constant on a per
`day basis and thereby still permits the number of references
`on a per day per specific client system 12 basis to be tracked
`by the HTI‘Pd server 30 so as to limit the frequency that a
`specific instantiation of the web page is repeatedly presented
`to a specific client 12. Additionally, the H'ITPd server 30
`may operate to block operation on a received redirection
`URL where the corresponding web page has not recently
`been served to the requesting client 12.
`Various bit shift. check sum. and modulo arithmetic
`algorithms can be utilized to generate the validation code in
`a consistent manner known to the I-l'ITPd server 30. but that
`cannot be readily discerned upon examination of the result-
`ing redirection URL by a specific client computer system 12.
`Altcrnately.
`the validation code may be an arbitrarily
`selected value that is implicitly recognized as valid by the
`H'I'I'Pd server 30 for a programmable period of time from
`one day to several weeks or longer. In the extreme. and
`consistent with the initially preferred embodiment of the
`present
`invention. the validation code is a static value
`provided as part of the embedded redirection URL.
`Independent of the particular manner the validation code
`is generated or the assigned length of time that the code is
`recognized by the H'ITPd server 30 as valid, evaluation of
`
`Page 7 of9
`
`Page 7 of 9
`
`

`
`5,751,956
`
`9
`
`the data terms of a redirection URL is preferably performed
`completely internally to the I-l"I"I'Pd server 30. The data
`terms are preferably sufiiciently complete as to be unam-
`biguous in identifying a particular instantiation of an embed-
`ded redirection URLwithout significant. if any. resort to the
`loading and execution of an external program or even
`significantly to interrogate look-up files stored by the per-
`sistent storage device 32. Consequently.
`the burden of
`evaluating aredirection URL in accordance with the present
`invention is almost completely computational in nature. As
`is conventionally appreciated. the perfonnanoe of a server
`computer system 16 is not typically computationally bound.
`but rather bound by the rate of il3pllUOLIIpt.tl. (HO) access to
`the persistent storage device 32 and to the network 20. By
`substantially if not completely limiting the evaluation of the
`redirection URL to a computational operation, with only a
`limited U0 operation to save auditing or accounting data
`obtained in connection with aredirection URL. an optimally
`minimal burden on the server computer system 16 is realized
`by the operation of the present invention. Indeed. the saving
`of accounting or auditing data may be cached by the network
`cperating system 28 to defer the write IIO operation to the
`persistent storage device 32 until otherwise excess [10
`bandwidth is availablein the ongoing operation of the server
`compI.Ita' system 16.
`The final portion of the preferred structure of a redirection
`URL is a second URL. This second URL preferably iden-
`tifies directly the target server syst for the redirection.
`Preferably, any path portion provided as part of the direct
`server specification of the redirection URL is repeated as a
`path component of the redirect server portion of the redi-
`rection URL. However. path portion identity is not required.
`In general. all that is required in accordance with the present
`invention is a one to one correspondence between the direct
`server and redirect server terms of the redirection URL A
`less strict relationship may be used if the impact upon the
`auditing or accounting data collected by the operation of the
`present invention is consistent with the desired characteristic
`of that data. For example. difierent direct server specifica-
`tions may correlate to the use of a common redirect server
`as a means of further identifying a particular instantiation of
`an embedded redirection URL. Alternately. otherwise iden-
`tical instantiations of an embedded redirection URL may
`reference any of a number of redirect servers. This may be
`done to distribute load on the cooperatively operating redi-
`rect servers or to provide a means for verifying the auditing
`or accounting data collected by the ongoing opaation of the
`present invention. Indeed. the second URL of a redirection
`URL can itself be a redirection UR]... though care needs to
`be taken not to create an infinite redirection loop.
`A preferred method 40 of processing redirection URLs
`provided to a server computer system 16 by a client com-
`puter system 12 is illustrated in FIG. 3. As each client
`request is received 42 the data provided as part of the request
`is cttamined to determine whether the request embeds the
`red

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