WO2007062026A2 - Distributed content exchange and presentation system - Google Patents

Distributed content exchange and presentation system Download PDF

Info

Publication number
WO2007062026A2
WO2007062026A2 PCT/US2006/045039 US2006045039W WO2007062026A2 WO 2007062026 A2 WO2007062026 A2 WO 2007062026A2 US 2006045039 W US2006045039 W US 2006045039W WO 2007062026 A2 WO2007062026 A2 WO 2007062026A2
Authority
WO
WIPO (PCT)
Prior art keywords
exchange controller
content
exchange
controller
advertising
Prior art date
Application number
PCT/US2006/045039
Other languages
French (fr)
Other versions
WO2007062026A3 (en
Inventor
Douglas Ashbaugh
Original Assignee
Douglas Ashbaugh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Douglas Ashbaugh filed Critical Douglas Ashbaugh
Publication of WO2007062026A2 publication Critical patent/WO2007062026A2/en
Publication of WO2007062026A3 publication Critical patent/WO2007062026A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • This specification is related to the field of coordinating and displaying information, via a network.
  • Advertising service exchange technologies prevalent on the Internet often require browser-based scripting languages, browser- based cookies, or server-side cookies, which need to be enabled and available for proper ad service operation.
  • a severe problem with prior advertising exchange system art may exist if any of the scripting language, browser-side cookies, or server-side cookies, are disabled or unavailable, resulting in spurious consumption of advertisers credits or complete malfunction.
  • the lack of availability of any of these is becoming more prevalent on the Internet due primarily to security-oriented and privacy concerns.
  • people and other computer technologies often take action with intent to falsely prosper from advertising systems, or to inappropriately attack the advertising accounts of their competition, through false stimulation of the advertising system.
  • the invention solves this set of problems by eliminating these dependencies, as well as solves other problems such as a lack of performance of prior advertising exchanges' use of blockable ad technologies and firewalls to prevent various forms of fraud including IP blast, Auto Surf, Click Fraud, and other attacks against or misuse of an advertiser's accounts.
  • This invention generates advertising that cannot be blocked from a practical perspective.
  • This invention also solves the problem of limited inventory of prior stand-alone advertising exchanges by providing a communications foundation for interconnecting disparate and distinct, like, advertising exchanges.
  • This invention provides a robust foundation and presentation platform extending normal advertising exchange capabilities with search-engine-like asynchronous query support.
  • an advanced formatter and presentation system is provided allowing easy re-customization and configuration of search result presentation.
  • the business model surrounding the invention is supported based on the sale and trade of impression credits for advertising and for the reward and allowed redemption of points for appropriate •participation or interaction with the exchange controller embodied by this invention.
  • the invention eliminates the need for keyword bidding models prevalent on the Internet and extends search and content management capabilities to the point where paid-for or bidded keyword oriented paradigms are ultimately meaningless.
  • FIG. 1 is a schematic representation of a first embodiment of a network exchange for the presentation of information and related advertising in accordance with the present invention
  • FIGs. 2, 2a, and 2b are illustrations of browser windows that are divided into frames to present content, navigation features, and advertising within the frames, in accordance with one implementation of the present invention
  • FIG. 3 is a schematic view of a second embodiment of a network exchange in accordance with the present invention
  • FIG. 4 is a schematic representation of a third embodiment of a network exchange in accordance with the present invention
  • FIG. 5 is a block diagram of a hardware platform embodying one implementation of the exchange controller
  • FIG. 6 is an image of the window area of a network browsing device that interacts with the network exchange controller and is sensitive to human stimuli;
  • FIG. 7 is a flow chart of a request process by a network browsing device that has been enhanced to sense human stimulus and convey related awareness during transactions with a network exchange controller;
  • FIG. 8 is a flow chart representing first stage and key processing steps of the exchange controller's ability to organize a lookup of content while operating in a secure and indirectly human presence aware manner;
  • FIG. 8a is a flow chart of secondary stages of the network exchange controller regarding its ability to select content directly or indirectly and respond to stimulus;
  • FIG. 9 is a schematic diagram of a network appliance, or equivalent browsing device, interacting with a Metasearch Engine that is leveraging one or more exchange controllers for content selection and presentation;
  • FIG. 9a is a flow chart of the operating process of a Metasearch Engine designed to interact with a network browsing device and form a response that indirectly dispatches search requests to networked exchange controllers;
  • FIG. 10 is an example of the results presented in the window area of a network browsing device as constructed by the Metasearch Engine and one or more of the exchange controllers the Metasearch Engine leveraged during a search process.
  • FIG. 11 is an example of an alternate layout, as compared to FIG. 10, and similar content presentation with alternate stylization as displayed in a web browser and as originally generated by an exchange controller that is an embodiment of this invention.
  • FIG. 12 is a flow chart of the asynchronous content search and flexible formatting capacity of the exchange controller embodied by this invention. Notable in this diagram is also the ability for an embodiment of the present invention to relay search requests to replicated implementations of the invention for further processing.
  • a user viewing information provided over the Internet by means of a browser running on a network appliance, as an example.
  • the practical implementations of the invention are not limited to the example of a user viewing information over the Internet via a browser running on a network appliance.
  • the technology that presents the information to the user need not be a web browser. Rather, it can be any device that has the ability to render information that is formatted according to the Extensible Hypertext Markup Language (XHTML) standard, such as a Personal Digital Assistant (PDA), cellular telephone, or the like.
  • XHTML Extensible Hypertext Markup Language
  • PDA Personal Digital Assistant
  • the underlying distributed content exchange architecture organizes and links independent content exchange systems.
  • the systems that are linked may be independent websites on a computer, independent websites on separate computers, physically disjoint computers running a content exchange, or other form of distributed and networked hardware operating as an independent content exchange point in the overall network.
  • the systems may support Hypertext Markup Language (HTML) compliant framesets as well, and accordingly HTML compliant framesets may be used in the examples discussed in this specification. Nonetheless, other types of framesets may be used in addition to, or instead of, HTML compliant framesets.
  • framesets are utilized as an underlying presentation method, because other methods of content presentation, particularly for the purposes of advertising, are more readily blocked by modern browser software, thus preventing display of some or all of the intended content or advertising to the target user.
  • advertising is used as an example, the framesets may be used for presenting other information that does not have any advertising content. Accordingly, the embodiments described hereinafter should be viewed as illustrative, and not limiting in any manner.
  • FIG. 1 is a schematic representation of a networked content exchange that can be employed to implement the principles of the present invention.
  • the network exchange may be used to facilitate advertising or for other purposes, such as the dissemination of news or information related to public services.
  • a user at a network appliance 10 that is running a browser application may enter a Uniform Resource Locator (URL) in the browser, or click on a link displayed in the browser, to request a web page.
  • Network appliance 10 may be a personal computer, a terminal, PDA, a web enabled TV, an e-book reader, a telephone, a mobile phone, or any other network appliance.
  • the request for the web page can be initiated by other stimuli.
  • an embedded script or an embedded object within a page currently being viewed can automatically initiate the request for a new web page.
  • the request is transmitted via a network 12, such as the Internet or other network, to a server 14 (e.g., an exchange controller) associated with the URL.
  • a server 14 e.g., an exchange controller
  • Network 12 is any group of devices that are communicatively linked to one another.
  • network 12 can be any combination of one or more of a Local Area Network (LAN), Wide Area Network (WAN) 5 a telephone network, a wireless network, and/or other network.
  • the server includes at least one exchange controller.
  • the exchange controller may be a combination of software and hardware in which the software is running on a machine (which is the hardware) that hosts a server (e.g., a web server).
  • the controller may be a network hardware appliance running the content exchange software, or further encoded into a hardware-only network appliance.
  • the controller software runs on a computer, which is a web server.
  • the exchange system includes multiple content exchange nodes, and a controller is located at each content exchange node.
  • the exchange system delineates different content exchange nodes by having different domain names associated with different content exchange nodes.
  • different content exchange nodes may be delineated by assigning different node IDs to each content exchange node.
  • some servers may be distinguished from one another by their node IDs while other servers may be distinguished by their domain names.
  • domain names which resolve through DNS (Domain Name System) to a numeric IP (Internet Protocol) address
  • DNS Domain Name System
  • IP Internet Protocol
  • identifiers maybe used to identify each individual content exchange node in the network in addition to, or instead of domain names and/or node IDs.
  • the server 14 transmits a frameset generation stream to the network appliance, as represented by the arrows "1."
  • This frameset generation stream comprises HTML or XHTML code that causes the browser to display a window having one or more frames.
  • An HTML or XHTML content rendering and layout construct such as a frameset tag, with any number of subordinate frame tags, defines the layout of a browsing device window, or portion of the overall window, that allows multiple views of full XML, XHTML, or HTML documents to be concurrently presented in such a manner that the information in one view remains visible while other views are scrollable or replaceable as though they are operating in their own fully functional browser window.
  • an attribute of the frame tag is an Internet URL that indicates to a web browser where to derive content for rendering in the related frame.
  • the frameset tag, frame tags, and related internal Internet URLs are referred to herein as the frameset generation stream.
  • the frameset generation stream 1 indicates the structure of the frames within the display area of the browser window or equivalent device, and identifies the content that is to fill each of the frames. Examples of an XML document with XHTML Document Type
  • DTD Definition
  • the display area is split horizontally, to present vertically stacked frames as shown in FIG. 2b.
  • the term "prof represents the protocol that is used for the communications, e.g. hypertext transfer protocol (http) or hypertext transfer protocol secure (https), and the .php extension represents only one of many common implementations of a programming language that can be varied substantially for use as handlers for processing the URLs and arguments for the Source, System Resource Controller (SRC), and URLs of each frame within the exchange controller generated frameset (PHP is a recursive acronym that stands for PHP Hypertext Preprocessor, and the inner PHP stands for Personal Home Page).
  • SRC System Resource Controller
  • PHP PHP Hypertext Preprocessor
  • the header line containing DOCTYPE helps define Extensible Markup Language (XML) methods referring to the DTD, which may participate in the
  • XML document transformation process often referred to as Extensible Style Sheet Language Transformation (XSLT) transformation.
  • This transformation process optionally results in a frameset tag set understood by many DTD targeted rendering devices such as can be reduced often to native XHTML or HTML frameset and frame tags.
  • the xmlns specifier refers to the XML namespace required to properly render the content as well.
  • the xmlns specifier and the tag set rendering transformation process overview is only an example.
  • This implementation of the exchange controller's output and handling of documents from both an input and output perspective is however XML/XHTML/HTML capable and compliant.
  • the tagset given is an example of an XML compliant set of tags.
  • This tag set is only an example and it should be noted that the disclosed embodiment of this invention in the form of an advertising and content exchange controller is not limited to application of any markup language; and further that quick substitution of layout plans and templates will allow the exchange controller to digest and produce alternately formed content without any significant change to the embodiment. These specific examples may contain unimportant syntax peculiarities, and are only given as examples.
  • the tagset includes fictitious URLs, which are given only for realistic illustrative purposes.
  • FIG. 2a illustrates an example of a vertically split window that might be displayed in response to the first example of a XHTML frameset generation stream presented above.
  • the window optionally includes a title bar 16, as well as one or more menu bars 18, tool bars 20, and/or status bars 22, which might be selectively enabled or disabled by the user or through programming.
  • the remainder of the window constitutes the display area.
  • the display area is divided into three frames that are oriented in a columnar format.
  • the left frame 24 displays primary content associated with the web page that was requested by the user or one of the other stimuli described previously.
  • the URL for this page is identified by the "SRC" tag.
  • the content of the frame 24 is associated with the domain " SiteA.com”.
  • the request for the desired content, or the subsequent display thereof induces concurrent display of advertising or other secondary content, pursuant to an arrangement with the owner of the primary content page or via an arrangement with the exchange operator.
  • the stimuli to present the advertising or other secondary content can be applied by the primary content page, or it can be authorized by the primary content page owner allowing third party stimuli to trigger the generation of the frames.
  • advertising is used an example, any other secondary content may be substituted.
  • the second frame and/or other frames can be filled with information provided by one or more subscription services.
  • a subscription service perhaps the user subscribes to a service that sends the user one or more vocabulary words, news stories, and/or educational articles that are presented to the user in one or more of the plurality of framesets while the user is searching for other information.
  • the plurality of frames may be populated with any information that was not explicitly requested by the user's search query.
  • Another example of an application for multiple framesets is for sending an unstoppable emergency broadcast, which may be used by government agencies.
  • major content providers that are over a certain size may be granted or required to have the ability to redirect information through an exchange controller, which splits the browsing device.
  • the primary content that was requested may be provided in one frame, and the emergency information may be provided in an alternate frame.
  • emergency broadcasts may be provided that do not inhibit anyone from using the primary content requested.
  • the primary content requested may be blocked or displayed along side the emergency broadcast.
  • the subject matter, or other non-requested information, appearing in the advertising frame can be related to the information in the primary content page, or it can be entirely distinct, such as emergency broadcast information transmitted by a government agency.
  • the reaction of the exchange controller to stimuli by a network browsing device or alternate exchange controller is to select content based on the desired stimuli and then to respond.
  • the selection of content is induced by a string pattern and/or by one or more stimuli, for example.
  • the string pattern may represent a category ID, consumer ID, advertiser ID, publisher ID, website ID, or targeting criteria used for content biasing.
  • the string pattern may be located in the initiating code and/or may part of a related generated URL request to the exchange controller.
  • the stimuli may be already formatted in an appropriate URL that includes content biasing identifiers, or a content selective communications request that selects one or more exchange controllers.
  • the content selective requests may be in the form of arguments associated with a URL (using HTTP, sockets, or UDP level protocols, for example).
  • the exchange controller selects a content provider, set of providers, or alternate content source (depending on the context and type of request made to the exchange controller). The final selection from local content and advertising inventory is based on other internal policies or criteria that extend beyond the original biasing criteria.
  • the exchange controller formats a response and responds to the stimulus, or in turn may relay a request to an alternate content exchange controller, which then repeats this selection process until the original request is ultimately fulfilled in a meaningful manner.
  • the biasing criteria for determining the second content may be the category setting of the advertiser's site or browsing device that triggered the request.
  • the exchange controller When content specific criteria is contained in the URLs as ID numbers or strings, the exchange controller does a database lookup according to the member ID 5 advertiser ID, or even category ID, other ID and/or other information to ultimately derive alternate required forms of the requested content used to select content or relay to alternate controllers.
  • the conversion of the IDs or other information enables symbolic content selection criteria.
  • the numeric values associated with the content in each exchange controller may vary substantially making it potentially ineffective to use local strings or number strings only known to an individual controller.
  • Once content is identified, it is rendered directly or indirectly within one of the frames. Identifying appropriate content indirectly may involve determining that the content cannot be provided by a local exchange controller (e.g., server 14), and results in relaying the content request and related criteria to another server and/or another exchange controller for request fulfillment.
  • a local exchange controller e.g., server 14
  • an exchange controller may relay a request and its related criteria to an alternate exchange controller even if it can fulfill the request.
  • the right frame 26 displays the advertising that is authorized by, or induced by, the content page or equivalent stimulus, as provided from the domain "SiteB.info.”
  • the middle frame 28 in the illustrated example comprises a navigation frame, provided from a third domain, "Sitel4.net.” This navigation frame includes control buttons or hypertext links 30 that can be clicked by the user to cause the content displayed in the left frame 24 or the right frame 26 to appear in a separate window or replace the content in the overall browsing device window depending on the rendering target of the navigation buttons in the middle frame 28.
  • the middle frame 28 also provides an area 32 that can be used to display additional advertising or multimedia entertainment, such as banners or videos.
  • the navigation frame 28 is optional.
  • one or more of the advertising frames, any first content frames, and/or the other information frames can be eliminated as well.
  • the function of the first content frames, advertising frames, and/or other frames is unaffected by the presence or absence of one another and/or the navigation frame, because they are logically independent of each other.
  • the exchange controller While application and use of an empty frameset, or in other words a frameset lacking meaningful Internet URLs for presentation of some content in at least one frame, is impractical, the exchange controller has the capacity to provide such a frameset generation stream that is properly interpreted by a network browsing device and may show no errors but only an empty or meaningless window. From a practical use perspective, at least one frame within the frameset must be dimensioned to some or the entire portion of the display window and should contain an Internet URL referencing properly formatted and available content for presentation.
  • Various browser devices may allow for post-rendering resize of the various frames, or a future markup language may provide an option to allow post- rendering resize of the frames, and therefore varying the frame sizes to tightly collapse upon one another while still rendering the content, however by default not initially viewable, may be useful in some applications.
  • An example of such might be presenting multiple web documents containing intended and alternate advertising content in frames on devices where limited or exceptionally small amounts of browser window real estate is present. Examples of such devices might include cell phones, PDAs, or portable gaming devices.
  • the minimum visual presentation would be an advertiser's website or equivalent content, or an emergency broadcast web page or equivalent content provided by an appropriate and authorized source.
  • the concurrent display of content, advertising, and/or other information in a single window can be implemented for the purposes of advertising or other purposes with as few as two frames, one of which displays the requested content and the other of which displays the advertising or other content, and/or one of which displays navigation or advertising for self-promotion of the ad service.
  • the locations of the primary content frame and the primary advertising frame and/or any other frames can be swapped without impact to any of the frames' functions or usefulness.
  • the relative sizes, styles, and shapes of the frames can be varied to any extent supported by the modern markup language specification.
  • the frames may be round, ellipsoidal, triangular, hexagonal, polygonal, trapezoidal, in the shape of a rhombus, diamond, star, or any other supported shape. No matter the frame shape, there would be no change, or substantially no change, to the controllers' methods of providing ad content to, or multiple frames simultaneously within, a capable browser.
  • references herein to XML, XHTML, HTML, or any equivalent markup language are ultimately considered exemplary and virtually identical with respect to implementation in the disclosed embodiments of the invention as long as the markup or programming language provides the underlying frames, or equivalent containers for complete documents, and the overall technology provides an equivalent browser device rendering capability supporting the formed output.
  • the markup language while implemented for the common Internet and web browsers in the disclosed embodiment, is irrelevant in general.
  • An example showing a clear divergence from the listed and currently supported markup languages can be a private or specialized implementation of this invention in an alternate customized embodiment such as a Flash or Java applet based plug-in browser equivalent, or an SGML equivalent with use of an SGML browser as the rendering device.
  • the illustrated embodiment depicts one approach for retrieving the content that is to appear in each of the respective frames 24, 26 and 28.
  • the information that is displayed in the frames is provided by three respective network resources, such as servers.
  • the three servers are illustrated in the figures as being implemented on three different physical devices, respectively. It will be appreciated, however, that any two or more of the servers can be resident on the same machine.
  • the term "server” refers to a process running on a machine, as opposed to the machine itself.
  • the separation between servers is a logical one.
  • each server may be associated with a different domain name, or numeric or textual content exchange network node identifier, and there may or may not be physical separation as well between each server.
  • the features of the navigation frame 28 might be provided by a server at the same server 14 that returned the frameset generation stream.
  • the network appliance 10 upon receipt of the frameset generation stream, the network appliance 10 sends a first request 2a to the server 14. This request may comprise the URL associated with the appearance of the navigation frame 28.
  • the server 14 returns the appropriate XHTML code in a message 3 a, to generate the appropriate display of the navigation frame 28 within the window.
  • the information pertaining to the navigation frame can be provided by a server that is not executing on the server 14.
  • the information for the content frame 24 is provided by a content server 34 that is associated with the website requested by the user.
  • network appliance 10 sends a request 2b, which may contain the URL, to the server 34.
  • the network appliance 10 sends a request 2c to an advertising server 36 that provides the advertising information that appears in the advertising frame 26.
  • content server 34 sends a message 3b which may contain the XHTML or HTML code for the content to appear in the frame 24, and the advertising server 36 transmits a message 3 c, which may contain the XHTML or HTML code for the advertisement appearing in the frame 26. While the example of FIG.
  • the display area can be divided into any desirable number of frames.
  • the owner of the website that provides the content appearing in the frame 24 may have agreements with three different advertisers.
  • the right portion of the display area might be divided into three, vertically stacked frames, each of which displays a separate advertisement.
  • the advertisement in each of the three frames might be provided by a single advertising server 36, or multiple respective advertising servers 36, 38, etc.
  • the frame-based advertising allows for display of multiple full XHTML or HTML document content in simultaneously presented frames and is not limited to rendering a single complete document.
  • This form of advertising is not limited to display of specific incremental entities, such as images or custom multimedia objects, as found in the other traditional forms of Internet advertising.
  • the approach described herein displays any properly formatted XHTML or HTML content document in total in each frame, which can include any number of device- supported incremental entities.
  • Advertising by frames provides complete transparency to the content that is actually rendered inside each of the frames.
  • there is no special programming required to support the presentation of full XHTML or HTML documents in each frame since framesets are part of the core XHTML and HTML language specifications and supported widely by browsing technologies.
  • browser- based scripting is not necessary to induce the display of advertising. In fact, a web browser scripting interpreter/processor can be disabled, and the advertising will still appear.
  • Iframe tags often referred to as floating frames, can be used to mimic this form of advertising.
  • Iframes are inline frames, which can be used as a target.
  • Iframes are logically at a different logical layer in most modern rendering devices, whereas in contrast the choice of framesets and frame tags is more atomic and rudimentary and no blocking technology is currently known to exist. Consequently, advertising and self- promotion leveraging frame sets may be a more reliable form of advertising than iframe tags. Because of the blocking technologies that are evolving, it is anticipated that other technologies, such as Java or Flash applets, may be leveraged to mimic a web browser capable of mimicking this form of advertising as part of an advertising business model. In the example of FIG. 1, once the frameset generation stream is received from the server 14, the browser or other XHTML-rendering device directly transmits requests to the respective servers that provide the content that appears in each of the frames.
  • FIG. 3 An example of this approach is illustrated in FIG. 3.
  • the initiation of the process begins in the same manner, with the transmission of a request "0" from the network appliance 10 to the server 14, and the return of a frameset generation stream from the server 14 to the network appliance 10.
  • the XHTML code of the frameset generation stream does not contain the URLs that are directly associated with the content server 34 and advertising server 36. Rather, in the embodiment of FIG. 3 the URLs that pertain to the content of the frames are each associated with the server 14.
  • a similar type of tag can be employed for the right frame 26.
  • each of the messages 2a, 2b and 2c is transmitted to the server 14.
  • the server 14 is the provider of the content for the navigation frame 28, this content can be directly returned to the network appliance 10, in the form of message 3a.
  • the server 14 transmits HTTP Location header redirect requests to the browser on the network appliance 10.
  • These header redirect requests are represented as messages 3b and 3 c in the example of FIG. 3.
  • the "redirect" feature of the HTTP protocol provides redirection status codes that a server can employ to indicate to a browser device that it should look for a desired page at another URL. This other URL is specified in the Location" HTTP header. Therefore, in the example of FIG. 3, messages 3b and 3c contain redirection status codes and Location headers that identify the URLs associated with the content server 34 and advertising server 36.
  • the browser on the network appliance 10 Upon receiving these header redirect messages, the browser on the network appliance 10 sends new requests 4a and 4b to the content server 34 and advertising server 36, in accordance with the URLs in the Location headers of the messages 3b and 3 c, respectively.
  • the servers 34 and 36 return the desired content 5a for the content frame 24, and the advertisement data 5b for the advertising frame 26, respectively.
  • the browser, or other XHTML-rendering module supports HTTP header redirects, the appropriate information will appear in the respective frames of the display area.
  • the URLs associated with the server 14 can be directed to multiple parallel exchange controllers for scalability, reliability, and performance.
  • the initial exchange controller can programmatically direct the base URLs in the frameset generation stream 1 to alternate known exchange servers at the time of generation.
  • FIG. 4 Another indirect approach that supports other protocols is illustrated in FIG. 4.
  • server 14 plays an active role in retrieving and providing the content to the browser running on the network appliance 10.
  • the browser when the browser receives the frameset generation stream in the message 1, it sends three requests 2a, 2b and 2c to the server 14.
  • the exchange controller supplies the content for the navigation frame directly to the browser, via the message 3.
  • the server 14 sends requests 4a and 4b to the web server 34 and advertising server 36, respectively.
  • These two servers return the appropriate content for the respective frames to the server 14, by way of messages 5a and 5b.
  • the exchange controller Upon receipt of these messages, the exchange controller then provides the content to the browser on the network appliance 10, via messages 6a and 6b.
  • the server 14 is of a type that can use an alternative protocol, such as UDP, and TCP socket level communication to retrieve the desired content and advertisements from other like exchange servers.
  • the servers that it connects to can be the endpoint content delivery servers, or intermediate exchange servers.
  • One of the optional attributes for a frame contained in a frameset is "name”.
  • the content frame 24, navigation frame 28 and advertising frame 26 are given the names "leftFramel 111070204", “navFramel 111070204” and “rightFramel 111070204", respectively.
  • the value "1111070204” is a randomly generated number. The number can vary across each of these three names as well, as it is not important for them to be synchronized but is simplified here for illustrative purposes. A new random number is produced each time a frameset generation stream is transmitted. The use of a randomly generated number for the frame name further thwarts efforts to block advertisements.
  • the exchange controller communicates with other exchange controllers in an intelligent manner in that, if appropriate content is not found at one of the exchange controllers, or if one or more or the exchange controllers is configured to directly route requests to other exchange controllers, stimuli is passed to alternate exchange controllers when required.
  • Communicating with other exchange controllers effectively increases the local exchange controller's virtual content inventory of appropriately selectable content.
  • This intelligent sharing of content among these intelligent exchange controllers produces a transparency of location of the content to the original human surfer or other machine-oriented stimuli.
  • the presentation of advertising using this method and/or intelligent exchange controller may have another unique advantage to Internet website owners that is non-obvious even after review of the core methods and exchange controller system.
  • the business benefit is that website owners can participate in a cooperative advertising solution that allows them to eliminate all advertising content from their website, reserving full display area for their real business content. Utilizing the entire display and web page space for primary content while still periodically displaying advertisements may be accomplished by the exchange controller's use of time based control of the periodicity related to the production of the frameset generation streams as released by the exchange controller.
  • the exchange controller is adjustable by the exchange administrator to periodically ignore stimuli for a period of time just after an ad has been generated by stimuli from a particular IP address.
  • the value of the time delay variable, which stimuli are ignored, and/or which exchange controllers are ignored may be different for different users.
  • the time delay value may be adjusted by the exchange controller administrator and/or user if allowed by the exchange administrator or the business operator's respective policies, the advertiser or other provider of secondary content may adjust how often ads or other secondary content are presented. Adjusting the timing delay value, thereby leveraging the periodic display of secondary content, gives advertisers and others an advantage in eliminating web advertising content directly from their web pages.
  • adjusting the timing delays makes their web page, sometimes implemented as what is known as a doorway page, the content provider's own advertising content for use as an advertisement as displayed by other content providers (e.g., advertisers) that reciprocate with one another (which could be referred to as reciprocal content providers or reciprocal exchange controllers) by providing content to one another within a network of Internet advertising exchange controllers.
  • Controlling the reciprocal exchange of advertising content in this manner has business value since special formatted advertising content is no longer required, because the entire web page document becomes the advertisement displayed in the alternate frame. Consequently, no custom ads, banners, flash, etc, are needed.
  • advertising by use of frames for displaying primary content, and secondary advertiser's content, in this reciprocal manner may allow some website advertisers to advertise even though they cannot modify or add advertising content to their web page.
  • the advertiser advertises by using a replicated affiliate website page
  • the same web page is displayed by the competing affiliate advertisers.
  • An affiliate ID is passed within the URL 5 which is the only way to discern one affiliate from the other affiliates that use the same page.
  • the replicated affiliate page is generated and modifiable only by the affiliate system owner.
  • Using time delays is an optional feature of the frame based advertising exchange controller and system that further entices advertisers that are leveraging replicated advertising sites and the like to participate in this model of cooperative and reciprocal advertising.
  • Simultaneous advertising and participation in the reciprocal advertising system is accomplished by the display of the replicated affiliate site in the primary content frame produced by this system, and by displaying alternate advertising content (which may be a reciprocal advertiser's website content or doorway page) in the secondary frame.
  • the primary and secondary content are complete web documents originally provided by the advertiser and the secondary reciprocating advertiser indirectly through the system, which is centered on the exchange controller.
  • a primary advertiser, or advertiser using the replicated affiliate website can control the frequency of participation in the reciprocal exchange system. This is advantageous in reducing the cost of advertising whereby participating in a reciprocal exchange program commonly derives free advertising credits or reduces the cost of advertising credits, as can be done through the exchange controller presented.
  • a cookieless latch is facilitated.
  • Many consumers disable cookies on their browsing devices.
  • the cookieless latch implements a memory queue related to recent stimuli, types of stimuli, and mapped in particular to network browsing devices based on the IP address of each device originating a request.
  • the cookieless latch caches the required data in memory for a period of time as determined by the system administrator. It therefore delays/controls the transmission of frame generation streams to any network device. For example, if the same request from the same origin identified by IP address and stimulus type, representing a particular type of ad, exists in the memory of the cache, the system will not respond with a frame generation stream.
  • the cookieless latch thereby helps control the periodicity of ad presentation, as well as eliminates the common problem of spurious ad generation upon uncontrolled repeated stimuli by a network-browsing device caused when its cookies are disabled. It should be noted that the cookieless latch mechanism and functionality in the disclosed embodiment of the invention is not limited to frame-based forms of advertising exchange controllers only and application to other advertising exchange systems would be highly useful.
  • the business of advertising on the Internet often involves an advertiser's purchase of ad credits representing a display of their website or ad to a surfer on the Internet. Without the cookieless latch, spurious presentation of the ad or website occurs and inappropriately consumes advertiser's purchased advertising.
  • Another problem that plagues the Internet is exchange mechanisms or stimulus devices often embodied as a computer program known as hit generators or AutoSurf exchanges. These devices are intent on stimulating advertisers' websites mechanically and automatically without a human being involved, and are often used to improperly inflate a website's traffic oriented ratings, or other nefarious activities with one type being Click Fraud, while inappropriately consuming advertisers' dollars indirectly by consumption of the ad credits. As such an advertiser's credits are consumed without actual human beings seeing the website. The result of this is exceptionally poor sales conversion ratios for the amount of advertising dollars and volume of advertising implemented during a marketing effort.
  • a logic and protection system may be included in an exchange server that optionally works in conjunction with properly programmed stimuli devices and reduces the likelihood of inappropriate consumption of advertising credits.
  • the browsing device is enabled to indicate to the exchange controller when it is appropriate to deduct a credit based on human stimulus only and further makes provisions so that advertising can still be presented autonomously without indicating credits may be deducted.
  • An exchange controller may have logic embedded with appropriate communication protocols in place so that browser devices can be trusted to trigger credit deductions only when it is expected that a human being is actually present and interacting with the web browser.
  • the browsing device runs both autonomously or manually, but only signals the exchange controller to deduct credits when an interaction occurs that is expected to be a uniquely human interaction with the device.
  • stimuli may be triggered when a field associated with the GUI of the browsing device is filled in.
  • a deduction in credits of an advertiser's account by the exchange controller may not be triggered unless a message is received from the browser explicitly indicating that the browser is controlled by a human.
  • the message may be encrypted and may be nothing more than "this message is to confirm that the preceding interaction was triggered by a human," or the message may be a series of signals that have no meaning, but that match a special message stored or encoded within the content exchange controller, and the content exchange controller checks for the match prior to deducting a credit (and no credit is deducted if there is no match).
  • An exchange controller may include a facility to export a formatted and raw list of advertisers. Exporting the inventory list of advertisers has an advantage for increasing generic link ratings, and targeted link ratings, for advertisers.
  • Link ratings are a measurement commonly used by search engines and potential advertisers to determine the value and usefulness of a site.
  • Link ratings are ratings assigned to web entities (e.g., websites or web pages) that characterize the link counts associated with that web entity. Link counts are how many other sites reference a particular site. Generic link ratings refer to all sites that reference a particular site, where as targeted link ratings refer to how many similar content sites reference a particular site. When a particular site also references all other sites that refer to it, it is then considered perfectly cross-linked with all of the other sites.
  • the exchange controller provides software or scripting that a website owner may leverage to trigger the cross-linkage.
  • Link enhancement (which is enhancing the link ratings) of the advertiser's website is accomplished by inserting scripting into a searchable page on the website or by embedding a link to the composite list onto a web page of their site, or by other similar means.
  • An alternate method of implementation is by publishing a valid web document that contains all of the other appropriate advertisers' website URLs and can be relocated to the advertiser's website and integrated by a normal HTML URL reference. By doing so, the rating engines on the Internet see each advertiser's site that participate in this solution as grossly cross-linked either indirectly or directly thereby increasing the individual website's link rating substantially.
  • FIG. 5 shows a block diagram of a computer 500, which may be used as network appliance 10, or may host an exchange controller 14, content server 34 and/or advertising server 36.
  • the computer 500 may include output system 502, input system 504, memory system 506, processor system 508, communications system 512, and input/output device 514.
  • Output system 502 may include any one of, some of, any combination of, or all of a monitor system, a handheld display system, a printer system, a speaker system, a connection or interface system to a sound system, an interface system to peripheral devices and/or a connection and/or interface system to a computer system, intranet, and/or internet, for example.
  • Input system 504 may include any one of, some of, any combination of, or all of a keyboard system, a mouse system, a track ball system, a track pad system, buttons on a handheld system, a scanner system, a microphone system, a connection to a sound system, and/or a connection and/or interface system to a computer system, intranet, and/or internet (e.g., IrDA, USB), for example.
  • a keyboard system e.g., a mouse system, a track ball system, a track pad system, buttons on a handheld system, a scanner system, a microphone system, a connection to a sound system, and/or a connection and/or interface system to a computer system, intranet, and/or internet (e.g., IrDA, USB), for example.
  • IrDA internet
  • Memory system 506 may include, for example, any one of, some of, any combination of, or all of a long term storage system, such as a hard drive, a database system, a short term storage system, such as random access memory, a removable storage system, such as a floppy drive or a removable drive, and/or flash memory.
  • Memory system 506 may include one or more machine-readable media that may store a variety of different types of information.
  • the terms machine-readable media, or machine-readable medium are used to refer to any medium capable of carrying information readable by a machine.
  • a machine-readable media is a computer-readable medium.
  • Another example of a machine-readable medium is paper having holes that are detected that trigger different mechanical, electrical, and/or logic responses.
  • machine-readable medium also includes media that carry information while the information that is in transit from one location to another, such as copper wire and/or optical fiber.
  • Memory system 506 may store one or more computer instructions that cause a processor to carry out steps that implement a browser, server 14, content server 34, and/or advertising server 36.
  • Processor system 508 may include any one of, some of, any combination of, or all of multiple parallel processors, a single processor, a system of processors having one or more central processors and/or one or more specialized processors dedicated to specific tasks. Processor system 508 carries out the instructions stored on memory system 506.
  • Communications system 512 communicatively links output system 502, input system 504, memory system 506, processor system 508, and/or input/output system 514 to each other.
  • Communications system 512 may include any one of, some of, any combination of, or all of electrical cables, fiber optic cables, and/or means of sending signals through air or water (e.g. wireless communications), or the like.
  • Some examples of means of sending signals through air and/or water include systems for transmitting electromagnetic waves such as infrared and/or radio waves and/or systems for sending sound waves.
  • Input/output system 514 may include devices that have the dual function as input and output devices.
  • input/output system 514 may include one or more touch sensitive screens, which display an image and therefore are an output device and accept input when the screens are pressed by a finger or stylus, for example.
  • the touch sensitive screens may be sensitive to heat and/or pressure.
  • One or more of the input/output devices may be sensitive to a voltage or current produced by a stylus, for example.
  • Input/output system 514 is optional, and may be used in addition to or in place of output system 502 and/or input device 504.
  • FIG. 6 depicts a window displayed by a network browsing device that has rendered three separate HTML/XHTML documents in three separate frames within the overall screen real estate used for presentation (browser window).
  • This browsing device interacts with the content exchange controller by signaling the controller when a human is expected to be interacting with the browsing device as compared to when a human is not interacting with the browsing device.
  • Key aspects of this figure indicate that entire web documents (website pages) are rendered in each of three frames, with the left frame scrolling enabled, center frame scrolling disabled, and right frame scrolling enabled.
  • the center frame and document rendered within it is referred to as navigation.
  • the left frame will be referred to as primary content
  • right frame be referred to as secondary or advertising content.
  • a special attribute of the network browsing device that interacts with the exchange control is its ability to detect the presence of a human and transmit credentials to the exchange controller that allow the exchange controller to understand when a human is expected to be present and not present. Because of this facility inherent to this device, it is referred to as human sensitized network browsing device, and an optional key capability of an advertising system enabled by an embodiment of the controller presented.
  • FIG. 6 details several exemplary features of a human sensitized network browsing device for use in this application.
  • the title bar (16) and status bar (22) are combined in functionality within this device.
  • the menu area (18) and tool bar area (20) assist the user to select and stimulate content presentation.
  • the presentation areas of the left frame for primary content (24), the middle frame for navigation content (28), and the right frame for secondary or advertising content (26) each render entire valid HTML/XHTML/XML documents within them.
  • GUI Graphic User Interface
  • the graphical features of the navigation or control of the device are unimportant.
  • a significant aspect of the human interface features is the device is sensitized to transmit appropriate signal information to the exchange controller when a human directly interacts with the device.
  • the scan button (40), the window (44), the tool bars (20) and menu(s) (18) are predetermined to transmit special signals when interacted with.
  • other areas and features of a different embodiment of a human sensitized network browsing device may also be designed to transmit analogous signal information to the exchange controller.
  • the device does not convey information to the controller that a human (user) is present, but may convey information such as IP addresses, source location information, demographic information, or channel selection as can be seen in the upper right portion of the tool bar (20) above the right frame (26). Further, it can be anticipated that an embodiment of such a device can convey environmental information to the exchange controller such as device temperature, source location environment characteristics, or the geographic position of the browsing device for consumption by the exchange controller in determining content, for example.
  • An example of the economic benefit of this function of the sensitized network browsing device may be to stimulate the exchange controller to dispatch content and advertisements to the user that would help the user improve environmental conditions.
  • both the content and advertising may be considered targeted.
  • This aspect of the extensibility of the network browsing device and its composite interaction with the exchange controller to improve the targeting of content and advertising is only limited by input mechanisms inherent in a physical manifestation of such device.
  • Other embodiments may be extended to leverage any new I/O (Input/Output) made available to the device.
  • the exchange controller can enhance targeting of the content and advertising, as well as textual messages or imagery in the navigation or other documents presented in the frames displayed in the device window.
  • FIG. 7 is a flow chart of the general processing of the network browsing device (10).
  • the device may wait on stimulation (700) from a human or timers.
  • the test for stimulation present (702) may be complex and parallel in nature, testing several inputs such as the GUI features or internal I/O or timers.
  • an inherent test for human presence (708) may occur and result in the addition of indicators (710) to the request (712) the network browsing device may make to the networked exchange controller.
  • the network browsing device After forming the request (712), the network browsing device transmits the request (714) to the network exchange controller by whatever means the natural communication between the device and exchange controller is embodied by. In the general case, an Internet level request is made through one of several supported protocols.
  • the composite process of transmitting and rendering (714) encompasses the request conveyed to the network exchange controller, the response of content from the controller, and the rendering of the content traditionally in the frames asserted by the frame generation stream returned by the controller.
  • the network browsing device may start or reset timers (716) to enable automated stimulation upon timeout for the next request-response-rendering transaction cycle.
  • the value of the timers that is used may be relative to the GUI controls (46) of network browsing device interface as depicted in FIG. 6 or by predetermined values based on implementation, adjustments for embodiment technology, or intended usage.
  • next cycle repeats at an initial state represented by a wait for next stimuli (700) by returning to an initial or adjusted starting condition (BO).
  • a wait for next stimuli 700
  • BO initial or adjusted starting condition
  • timers are used to indicate the time to wait for rendering of content, and then the time to wait after rendering of content. While these are effective and useful, other timers may be introduced, for example, on a per frame basis. While the disclosed embodiment allows the timers to apply to all frames, this is not a limitation of the overall processes and content delivery and advertising system.
  • the exchange controller request-response cycle is initiated.
  • the browsing device can be enabled to maintain state with the network exchange controller, or to operate in a stateless environment such as the Internet via http/https protocols, without diverging from the spirit of the application and system.
  • the disclosed embodiment may operate in either a state-free or semi-stated (use of browser or server cookies as is optional or for convenience in specific implementation) environment for support of various features of the overall content presentation system.
  • the content presentation system refers to the combined embodiment and function of the network browsing device, the exchange controller(s), and the optionally distributed content and advertising servers.
  • FIG. 8 is a flow chart of the exchange controller's request-response cycle of the overall content presentation system. This diagram assumes a network device has in some form transmitted a request for content to the exchange controller. The initial state of the exchange controller is depicted as an entry point or ready state (NO) in the diagram.
  • NO ready state
  • the exchange Upon stimulation, the exchange proceeds to process the stimulus by initiating a Firewall Test (806).
  • the Firewall Test is a network request blocking consideration and in an embodiment uses the IP address of the requesting device and locally stored IP addresses as a basis for testing if a request should be allowed. In an embodiment, the Firewall may be enabled or disabled. If the requestor is not blocked from submitting requests to the exchange controller as answered by testing (808), the system process continues to the logical point (Nl) in the process.
  • the exchange controller initiates additional protective tests referred to as AutoSurf, IP Blast, and Click Fraud tests, and (812) that determine if the requestor is proceeding to repeat requests too quickly or generate nefarious requests to the exchange controller.
  • the period between requests, tracked by IP address, optionally combined with an ad or website id, member/surfer id, member/publisher id, or member/advertiser id, (participants) is generally the basis for these tests. However the basis for any test may be varied to eliminate the IP address or to base it upon a time period and alternate data arriving directly or indirectly as part of the request stimuli.
  • the system Upon summarization of the test results determining if the requestor is too fast (814) the system will proceed to parse the request (816) or reject the request and optionally respond with an error message (820).
  • the response on error may be null as to not give the stimulating device or user any information. This is particularly the case when the user is considered an attacker, a user who intends to do harm to the exchange system.
  • the built-in Firewall, AutoSurf, IP Blast, and Click Fraud tests are preferable features of this application, related to a content exchange controller; however each or all may be excluded or separated within alternate embodiments without impacting the frame-based content presentation methods or other aspects of the content exchange controller and this application.
  • the parsing of the request may be intent upon determining the type of request, the requestor, the participants, the desired content or other targeting or biasing criteria, the network browsing device features, or a signal that a human is present or not.
  • a general security check (818) occurs to validate the request as from an authenticated or allowed network browsing device or other source of stimulus, such as an alternate exchange controller that has relayed a request or made an independent request.
  • the process moves to the next logical point in the process (N2).
  • the error response process (820) occurs.
  • a Human Test for the "human is present” criteria passed to the exchange controller (14) when stimuli from a human sensitized network browsing device (10) is made. Because stimulation of the exchange controller can vary, the Human Test is optional depending on the application of the exchange controller. If the Human Test is enabled and passed by testing (824), the exchange controller sets indicators that a human is present (826) and as such may leverage those indicators in later processing during advertiser credit adjustments, publisher reward or penal actions, or surfer reward or penal actions. In an embodiment, this is done through server side cookies or by asserting control data to a database, both leveraged for later lookup during a near term content selection phase (850). It should be understood that an embodiment of the exchange controller may allow many near simultaneous and overlapping requests from many participants to be processed in parallel.
  • the content selection phase of the exchange controller (850) is described in greater detail by the flow chart presented in FIG. 8a.
  • the process continues at the entry point for content selection (N3) where a search for content meeting the criteria previously derived occurs. If the content is found at step (852), the controller continues to a Format & Respond step (854).
  • the response may vary based on the criteria arriving with the request. For example, the exchange controller may respond with a frame generation set to deliver advertising or other content, a list of advertisers in its inventory either formatted or otherwise, in-line text ads with optional graphics, or a fully formed web document with search results for later rendering in a frame originated by a Metasearch Engine.
  • the exchange controller Upon response, the exchange controller generally proceeds to adjust credits (858). To determine whether credits are adjusted or not (858), the controller may first determine whether a human is present by testing (856) for indicators previously set (FIG.8, step 826). If set, then the exchange controller may proceed to deduct or otherwise adjust credits (858) for either or both the advertisers whose content was delivered for viewing, or adjust credits of a participant for the effort or time consumed during a content or advertising presentation cycle. Upon adjustment, the exchange controller will return to a ready state (FIG.8 — entry point NO), typically waiting for the next request stimuli.
  • the content selection process becomes more interesting when content meeting the original criteria is not directly found in the exchange controller's local inventory.
  • the related test (852) for local matching content fails, it may fail for a number of reasons. These reasons may include a lack of advertising credits in an advertiser's account, lack of matching content, or lack of matching content that has or has not been shown within certain time limits.
  • the original exchange controller (14) may select an Alternate Content Acquisition Method (860) for servicing the request.
  • the alternate methods vary but may include dispatch to an alternate exchange controller (862/870), selecting non-targeted or unrelated content (864), selecting generic content or default content (868), or responding with an error, or when heavily secured, not responding with content under extreme circumstances.
  • the exchange controller may option to select from general content that does not necessarily match the request criteria but will suffice to service a non-critical request.
  • the exchange controller may format and respond (876) in some manner depending on the request type. Following the response, and with the exchange controller's knowledge of what advertisers' content was delivered for, the traditional process of adjusting credits (878) may occur.
  • a reference to the traditional process of adjusting credits refers to an analogous operation that optionally combines the test for human indicators (856) and then adjusting credits (858) accordingly for participants.
  • the process of adjusting credits for participants may further be described to involve debiting an advertiser, rewarding a publisher, rewarding a human surfer, or rewarding a referring member, via credits / points.
  • the credits noted may also be a fractional portion of a credit and vary based on request type and context of exchange controller use as is normally varied by services levied by the request type involved.
  • the invention could easily also debit credits to penalize participants for inappropriate use of the system or services without significant change to the exchange controller.
  • the exchange controller initiates a request to a remote exchange controller, it will then wait and receive the response (872), and then respond to the original request (874).
  • the exchange controller returns to ready state (FIG. 8, entry point NO) and waits for the next request, which restarts this process.
  • the exchange controller is determining content for multiple frames.
  • the content or advertising content URLs embedded in the rendering instructions delivered as the response in the form of a frame generation set by a first contacted exchange controller (14) may be partially from local advertising inventory or the remote advertising inventory of a remote controller on a per frame/per request, intermixed transparently to a network browsing (10) or other requesting device.
  • the exchange controller (14) varies the response content (FIG. 1, stream 1) and formatting of the response based on the requestor and criteria sent in the request.
  • response types the exchange controller is capable of responding with, these include a frame generation stream, a web document providing navigation information, single or multiple in-line ads with optional graphics, formatted or unformatted advertiser inventory information (where unformatted may be an ASCII equivalent list), a URL useful for filling the SRC tag of a frame within a frameset generation stream, or a more robustly formatted web document representing inventory as can be useful in a distributed Metasearch Engine model.
  • FIG. 9 is a schematic diagram of a MetaSearch system leveraging a website or equivalent as the provider of a starting web document for the web search process.
  • the Metasearch Engine (90) is embodied as a web server delivering a web page rendered initially by a URL reference in the browsing device (10).
  • the initial request for the metasearch website occurs through a normal URL reference in the network browsing device or by another URL reference.
  • the server Upon receipt of the request by the server housing the Metasearch Engine (90), the server responds to the browser and the network browsing device renders the web page that may act as a search interface for the user. This process is depicted by analogous communications (MO & Ml) that initially do not contain search criteria.
  • analogous communications MO & Ml
  • the presentation of the initial interface for search submission may be a website page on a server or a web document stored locally in the web browsing device, whereby no network communications occurs to develop the initial search interface, which may be a web document containing standard HTML level forms for filling and later posting to the Metasearch Engine (90).
  • the user may submit/transmit that criteria (MO) to the Metasearch Engine (90) whereby the Metasearch Engine (90) selects a list of remote exchange controllers (14a..l4n) and formats a web document containing frames (or iframes or their equivalent), and SRC tags for each as related to the selected exchange controllers (14a...14n).
  • the SRC URL for each frame is returned by the engine 90 and not necessarily handled or processed in any other way.
  • the SRC URLs may contain arguments or attributes representing any search criteria, compensation oriented ad or participant ID, or security credentials for later processing by an exchange controller.
  • the normal operation http equivalent requests
  • the rendering process of the network browsing device 10
  • dispatches the requests to remote exchange controllers M2a, M2b, .. M2n
  • Each of the frames (or iframes) of the browsing device receive formatted web documents (M3a, M3b, ..
  • M3n representing the content of the advertisers (34a, b,..n, 36a,b,..n, 38a,b,..n) derived from each of the exchange controllers selected by the Metasearch Engine (90).
  • No knowledge or processing of any content occurs by the Metasearch Engine (90) and the combination and final presentation of the data received from the separate exchange controllers is managed solely within the network browsing device. As such, this MetaSearch Engine (90) is considered passive.
  • the Metasearch Engine (90) delivers a web document consisting of a robust frame/iframe generation stream and the network browsing device completes acquisition of ultimate content for each frame by requests (M2a, M2b, .. M2n) and renders the responses (M3a, M3b ... M3n).
  • the exchange controller supports an active centralized metasearch engine that can actively combine the results received from separate exchange controllers.
  • the active model of metasearch engine is common to the Internet, and is not novel per se.
  • the novelty of the MetaSearch Engine (90) described herein is related to: selecting and leveraging the disjoint exchange controllers, its operation as a MetaSearch Engine (90) being effectively virtual whereby no processing of search or content is done by or within the MetaSearch Engine (90), it is effectively dataless and is wholly data optional relative to actual content, and simply forms a document containing containers and instructions for the network browsing device to actually dispatch and coordinate collection and presentation of search results implicitly, hi effect, the MetaSearch Engine (90) enables a network-browsing device to become the sole stimulus to the exchange controllers and sole processor for collecting and rendering of search results, and sole presentation mechanism for users.
  • FIG. 10 depicts an example of a resulting search encompassing one entire search, request, and rendering cycle, and notably using one type of many supported criteria.
  • the Metasearch Engine has selected an exchange controller operating under a name of Bionic 3, as shown, as well as other exchange controllers whose responses are not shown pictorially due to lack of browser window real estate, but may be displayed in this case by scrolling the window of the rendering device using its navigation features.
  • Other more ergonomic presentation layouts may include, but are not limited to, overlapping or expandable divisions containing framesets or iframes while still maintaining the overall design of an exchange controller based passive MetaSearch engine.
  • An advantage to using exchange controllers for use in a distributed Metasearch Engine (90) is that the advertising content and references to advertisers' websites is organized incrementally at each of N exchange controllers. This organization occurs by human input (manually) and by automated means, often with human review and adjustment, in an exchange controller and advertising system of this nature. This is indirectly advantageous in developing high levels of targeting related to searches for the varied content in each of the exchange controllers.
  • the advertiser's involvement by opting to enter, or further edit and maintain, ad content in the exchange controller, as currently implemented in the form of an advertising exchange provides for the highest possible search result and ad content quality as compared to content injected autonomously into databases by use of Internet "spidering", or other Internet “robot” methods.
  • Such methods are commonly used by alternate, non-advertising exchange-based, search engine architectures.
  • the methods used by alternate search engine architectures for building up a reference dataset to provide robust search are under scrutiny relative to trespass permissions, intellectual properly rights, and privacy issues.
  • the exchange controller-based implementation of a search architecture including one or more of a passive MetaSearch Engine (90) are not challenged by such problems, yielding other potentially significant legal and political advantages over prior art.
  • Another practical advantage of this metasearch system is the computing power required to gather content and to conduct robust searches globally is inherently distributed among all the exchange controller nodes, advertiser's and content provider's servers, and other components of the metasearch system.
  • the Metasearch Engine (90) and system is a robust example of leveraging the functionality of the exchange controllers and the network browsing device's ability to develop segmented portions of real estate in a window where any number of web documents from each of N exchange controllers may be rendered.
  • the document within each frame or iframe will contain clickable features and when clicked by a user, the browser will initiate a related http request containing the SRC URL of advertising content to be rendered within the current frame, or be rendered developing an entirely distinct new window for presentation of the advertiser's content.
  • the SRC URLs may be directed at the exchange controller for accounting purposes before a dispatch occurs to the advertiser's web page content/server (34a, b,..n, 36a, b,..n, 38a, b,..n) thereby potentially tracking clicks, and allowing various credits adjustments as would be normal for an advertising exchange.
  • This ultimate ability to derive advertising content indirectly and further adjust credits in a distributed fashion among any of N exchange controllers without the Metasearch Engine (90) being content-aware makes this a scaleable solution for global organization of the Internet.
  • the effective request for content by criteria is only passed along to each of the exchange controllers indirectly through the SRC URL generated for each frame/iframe on a per-controller basis.
  • the Metasearch Engine (90) also may control or limit the number of exchange controllers utilized during a search cycle, and other subtle items of lesser importance to the overall system and this disclosure. Examples of such items may be, the choice of human readable language utilized, or whether content related to search results, when clicked, remains within the portion of the browsing device window originally displayed or is displayed in a new browser window of some form.
  • FIG. 9a is a flow chart of the internal process logic of the Metasearch
  • a test for a request being present (900) is made. If a request is not present, the test results in a return to ready state (SO), thereby effectively waiting for a request indefinitely. When a request is received, the test (900) results in continued processing, imitating an optional logging of the request (902), and further a test of the request (904). If failure occurs, an error message (920) is generated as a response and the system returns to ready state (SO). If the request is valid, advanced protective tests (906) of the form of Firewall, AutoSurf, IP Blast, or Click Fraud tests, or others, previously discussed may be conducted. A test for security credentials (908) may also be conducted. If security passes, the process will proceed to the next process step (Sl). If failure occurs, an error message (920) is generated as a response and the system returns to ready state (SO).
  • the exchange controllers are selected based on a variety of criteria including but not limited to: a virtual plane, the mood of the consumer, the superstition characteristics of the consumer, the personality characteristics of the consumer, indicated preferences by the consumer or a consumer's profile, the amount of time a consumer would like to retain a set of search results before allowing the search results to change even when same criteria is applied (dataset melting), the time of last use of the exchange controller, zip code, religion, organization/club, language, galaxy, planet, hemisphere, continent, country, region, district, state, county, city, town, subdivision, building or complex, address, country code, area code, keywords, text/patterns within a description, text/patterns within a meta description field, text/patterns within the content of a website or related ad content, stock symbol, SIC (Standardized Industry Code), company revenue, company size, member rating, intended audience, performance measurements of
  • search criteria may be non- novel or commonplace on the Internet
  • novelty and uniqueness of the current invention is noted primarily by the addition of allowed criteria based on new concepts such as; the mood of the surfer, the personality of the surfer, the superstition level of the surfer, by virtual planes, and by dataset melting controls. It is also notable that pseudo-virtual criteria of galaxy and planet or the like are fully supported and also help to develop an indirect level of virtual planes for organization of the Internet in a new and novel manner.
  • a web document is formed (912) consisting partly of frames (or iframes), and the SRC URLs of the frames set to the selected exchange controllers with appropriate criteria and formatting control information to cause the remote exchange controller to conduct a search and return the formatted results to the browsing device.
  • a web document (FIG.9, message Ml) generated by the
  • Metasearch Engine (90) is communicated back (914) to the web browsing device (10) where it is rendered and alternate http requests are transmitted to the exchange controllers to conduct the search on a per-frame basis.
  • the Metasearch Engine (90) may also record the requests, request criteria, and also record what engines were last used to ensure fair and balanced dispatch of requests among the exchange nodes in the system.
  • the Metasearch Engine (90) Upon response (914) and recordation of the transaction (916), the Metasearch Engine (90) returns to a ready state (SO) and waits for a next request. It should be noted that the Metasearch Engine (90) may accept many and overlapping requests without negative impact.
  • FIG. 10 depicts output of an exchange controller in an iframe container of a centralized Metasearch website page.
  • the notable features of this page are (10a) regular advertiser content ad presentation, (10b) featured or sponsored ad content presentation, (10c) optional container to capture the results from the exchange controller specific search output, and (1Od) some form of user input to adjust search criteria and initiate the search request.
  • the system does not require the latter feature (1Od) as all criteria may be passed on the URL, or in an alternate embodiment by equivalent communications characteristics supported by an underlying networked technology such as an HTTP POST operation, and the human interface features are simply a convenience.
  • the ads that are presented in any areas may include non-paid-for ads or spider derived content as filler material to present a robust search result to users and is decided by a plan file that biases how many of each ad type are presented and the layout of the presentation.
  • FIG. 11 depicts the same exchange controller based search engine used in FIG. 10 but controlled by a different plan file.
  • (1 Ib) depicts sponsored or featured ads layed into the presentation horizontally and in a different quantity of ads
  • (Ha) depicts regular advertisers' ads.
  • this example passes all criteria on the URL only. This capacity is useful for framing search results and content generated by disparate exchange controllers coordinated by a central, local data optional, Metasearch engine intent on leveraging browser device based parallelization of the search activity for consumers via frame oriented dispatch.
  • An exemplary input file to a portion of the exchange controller that loads the input file as a template map, and layout control plan for determining the construction of, and presentation of, search results, for the results depicted in Figure 10 follows:
  • // file may be local to the exchange controller or remotely referenced // transparently for use by the exchange controller.
  • the exchange controller search engine support logic is designed to allow third parties to easily override the layout and design of the search results and is a key part of the exchange controller's use as part of the overall search engine and advertising business model and key feature of this application.
  • the easy ability for third parties to use and customize interfaces and search systems around the exchange controller promotes interest and ultimately increases advertising volumes, therefore this powerful capability of the exchange controller to digest and combine local or distributed presentation templates and parts, including style control sheets, is important.
  • the digester and formatter activities in the exchange controller combines the plan, the parts referenced in the plan, and the style sheet referenced in the plan or by override arguments in the URL, with ad inventory, to dramatically vary the entire final presentation of results.
  • the variance may include the number of and types of ads, position and direction of ads, and colors and font sizes and other cosmetic matters specific to a user community or important to the designer of the plan, templates, and choice of incremental styles applied.
  • the engine is a substantial abstraction and advancement over prior art relative to search criteria and rendering capabilities. This capacity effectively allows for any type of rendering device to be supported by any third party simply by changing a plan, the templates, and a style sheet that are supported by the device, and may be exercised without any change to the exchange controller logic. In practice, precautions and limits of the number of ads that a third party may request are implemented internally to prevent misuse of computing resources.
  • FIG. 12 is a flow chart of the logic path used by the individual exchange controllers potentially leveraged by a central Metasearch engine as demonstrated in FIG. 10, or used in a standalone mode as demonstrated in Fig. 11.
  • the local exchange entry point depicts the start of the overall process that is exercised at the local exchange controller, as compared to a metasearch engine that may directly or indirectly call upon this, or many other, exchange controller for search results. If a request is present (948) the process will continue to parse criteria (950) from the request and do basic syntax checking on the request (952). Otherwise the process returns to a wait state (LO).
  • the exchange controller Upon successful receipt and parsing of a valid request as tested (952), the exchange controller leverages its internal firewall and security tests (956) as described in previous literature, and if tested ok (958), proceeds to load and digest (960) the critical layout plan file, templates, and stylesheet involved (as indicated by the exemplary plan files set forth above).
  • in-line style sheets may be used in the templates to replace or supplement the standalone stylesheet as well.
  • the detail of the location of the stylized information applied to final layout and templates is implementation dependent. The disclosed example is operating within the domain of the Internet and web-based document stylesheets.
  • Part of the logic adjustments implicitly set by the plan file are variables that adjust the search queries (962) relative to type and quantity of ads needed.
  • paid-for advertising content is normally presented first (964) and in generally more advantageous positions in the layout results, however the layout is completely flexible regarding what ads are displayed where in the layout. That aspect is transparent to the engine, and allows the layout designer to determine that aspect.
  • the exchange controller allows for advertisers to bid enhance their positions in the layout by increasing the number of impression credits used for each presentation, within certain time constraints.
  • This business model and current implementation have a reverse date/timestamp order of last ad presentation round robin-like algorithm (ROOLAP algorithm) that guarantees all advertisers' ads matching any pattern or search criteria found within each exchange controller's inventory when compared to stored ad characteristics and ad meta-content, is ultimately presented.
  • This algorithm concept is a key business advantage to the overall application of exchange controllers as a system and as compared to keyword bidded and other systems prevalent on the Internet today.
  • the meta-content related to an ad refers to the stored searchable characteristics of the ad or its owner and a subset or modified ad content as asserted by the exchange controller or further edited by a person such as the advertiser or exchange controller administrator or their agents.
  • This same algorithm is also applied to non-paid-for advertising further enticing use of the search engine and advertiser capabilities, noting that non-paid- for content is presented only secondary to paid-for advertising content and customarily yet optionally in less advantageous positions in the layout in practice.
  • this same ROOLAP algorithm is applied at the Metasearch engine level for biasing the selection of exchange controllers utilized during search dispatch, thus providing a similar business and implementation guarantee to all advertisers within an overall network or within a sub-segment of a network of exchange controllers.
  • the algorithm and business guarantee is applicable to exchange controllers, and thus advertisers, found below any one of many possible Metasearch engines that may be implemented by repetition or duplication.
  • the exchange controller leverages the preparation of the content and causes specific URL arguments to be overridden by a referring or affiliate user, potentially an affiliate of many of the websites or ads shown in the search results, without negative impact to any remaining URL arguments.
  • the exchange controller accepts a large set of information from a referrer and prepares for the possibility of many URLs presented in the search results to allow affiliate ID overrides.
  • the override of URL arguments allows for third parties to refer users to the search engine or website with their own affiliate IDs so that the exchange controller engine may optionally override the URL arguments, or inter-stitch, the referrers' IDs so that the referrer may benefit financially or otherwise by any sales induced during the session by the referred user. This capacity helps referrers earn additional income while causing additional advertisements to be displayed to potential consumers and ergo increasing paid-for ad revenue for the exchange owner and sales for advertisers indirectly.
  • the exchange controllers have the innate ability to communicate with each other and share advertising content. This capacity is further extended and supported to search criteria passing and the exchange controller's ability to digest the criteria locally and return an immediate formatted result or relay it onto another exchange controller for remote processing or potential additional relays. This capacity helps improve search results for end users and targeting capabilities for advertisers so that their ads are displayed to the most desirable users. This relay of requests is practiced if insufficient content is found locally (968) to fulfill the request as planned.
  • the exchange controller checks for an indicator whether the request coming into it was originally relayed (970).
  • This is generally optional but provides a unique approach to thread search delegation to remote controllers by setting up a container (972) for the browsing device and dispatching an HTTP header redirect containing the search criteria to the container, in this case an iframe, although other containers can be used equally as well.
  • This approach leverages current technology of modern browsing devices that support the iframe container and HTTP header redirect but is not demanded as the exchange controller can dispatch, acquire, and format the results directly, but for performance and transparency the container base approach has been chosen. Future processor and networking speeds will approach performance where this method is insignificant, but until that date this method is efficient relative to the performance of modern technology and the Internet.
  • this approach further allows the local exchange controller to format whatever results it can from local advertising inventory and deliver the results in an expedient and dynamic manner to the end user while the browsing device triggers the next search from the inter-stitched container to an alternate exchange controller and does this in parallel with rendering of the exchange controller's local results.
  • This improves end user perception of usability, response time, usability related to search quality, and ultimately targeting by continued search and relay for better-targeted ads and better matched content that may exist on alternate controllers.
  • a counter- indicator referred to as a request hop-count is set and later adjusted at each relay or hop to the next engine and tested (974) till it reaches a predetermined limit, traditionally set to a positive number and decremented to zero, and then the transaction is no longer relayed and a default or failure response is provided.
  • a test is also made to see if the exchange controller is allowed to, and is configured to, relay requests. This process of relaying the criteria is managed (978) and as such the managing logic can dispatch and collect results, or simply format an appropriate URL with criteria and initiate the HTTP header redirect.
  • the process continues to a formatting step (980) whereby the components of the plan, header, body, footer, and the results of the queries are combined with the remote relay containers, and a full document, generally with optional navigation features added, is transmitted to the network browsing device.
  • the exchange controller Upon transmission, the exchange controller begins a process of managing a robust set of adjustments to the dataset containing ad inventory, advertiser information, end user information, and third party or affiliate information. It should be noted that these adjustments to the dataset or related credits are done specifically after transmission of the formed document to the network device to further ensure expedient response times for end users. This adjustment activity occurs as part of the recording of transactions step.
  • the recording of the transaction step (982) involves several incremental operations. Normal recording of network activity such as referring website information, IP address of the requests, and time or type of requests are generally logged for system and advertiser reference. Consumers and publishers are optionally credited with fractionable compensation credits for participating with the service, paid-for advertisers' credits are adjusted and consumed if their ad is presented within the guidelines allowing consumption of impression credits, and impression credit bidded ads are further adjusted based on the bid position and number of impression credits allocated to the bid.
  • This is traditional activity. Beyond the traditional exchange controller activity, a special operation referred to as dataset "melting" or destabilization is optionally implemented. This activity effectively refreshes the search results on a per consumer basis. To understand this, a review of traditional implementations of search engines is useful for comparative purposes.
  • the exchange controller provides this capability on a per-user basis as the recorded transactions and timestamps of presentation are tied to the remote IP address of the rendering device used by the end user for later reference. While another indicator such as a login profile and ID can easily be used to supplement or replace this, or some other network information discerning the individual user in the event of a technology change, the default application leverages the remote IP address to allow each user to determine how long a search result dataset is frozen (stable). The time delay in this model is referred to as the dataset melt delay time. Upon completion of the logging and dataset melt adjustments, the system returns to a normal wait state (LO) in preparation for a next request.
  • LO normal wait state
  • the exchange controller has an ability to allow advertisers with intelligent website programming to leverage human and environmental control characteristics passed to the exchange controller during stimulus events.
  • the value of the human characteristics and environmental controls are set by the stimulus device and may be leveraged in programming to provide the advertiser website an ability to better target or present information or advertising to the surfer.
  • the argument values passed through the exchange controller are optionally appended to the advertiser's URL during presentation of advertising.
  • the values of the arguments are transparent to the exchange controller thus allowing support for futuristic devices unknown at time of this disclosure. Examples of such futuristic devices may be environment controllers that change ambient lighting, temperature, sounds, or aromas for the surfer. While such devices may or may not exist at this time, the exchange controller is enabled to pass such control information along to the advertiser's website, enabling the advertiser to leverage this information to further enhance a surfer's experience.
  • the exchange controller While it is understood that some information of similar nature will likely be attainable through future browser and associated web server technology, the exchange controller currently provides a flexible and generic conduit for passing such information along to the advertiser website and may be leveraged by creative advertisers until such time as similar information for enhancing a surfer's experience is available through other mechanisms.
  • embodiments have been described with reference to the presentation of advertising in a browser window on a network appliance, the principles are equally applicable to the display area of any suitable HTML or XHTML-rendering device. Further, the plan digester of the exchange controller provides a robust presentation control system, that can be extended to other devices without significant change to the exchange controller logic. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive.

Abstract

An Internet-oriented advertising exchange controller presents website content in a plurality of frames as well as support search criteria and other flexible forms of inventory formatting and delivery. Applications include Internet protocol request coordination or relay, cooperative frame based or interstitial advertising, and support for a local search or dataless metasearch system. The controller operates in a cookieless environment, has logic to protect advertiser's investment from Auto Surf equivalent systems, and protects against other inappropriate stimuli including denial of service attacks, IP blasts, or Click Fraud. As such, an advertiser's credits are affected only by human stimuli. Communication with and among exchange controllers for sharing or delivering information about inventory occurs by a number of protocols with optional encryption. The controller provides a foundation for a robust, advertiser protective, web based advertising and network search system with economic support by use of unstoppable framesets, and ultimately frame-based advertising and presentation methods.

Description

DISTRIBUTED CONTENT EXCHANGE AND PRESENTATION SYSTEM
FIELD OF THE INVENTION
This specification is related to the field of coordinating and displaying information, via a network.
BACKGROUND OF THE INVENTION
The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also be inventions. For many services that deliver information to human beings, such as newspapers, magazines and broadcast television, advertising is an integral component of the business model that supports the cost of delivering the information. Similarly, advertising supports the cost of information services that are provided via the Internet. Some of the mechanisms that are employed to present advertising via the Internet include banners and pop-up windows that appear within a user's browser. Advertising service exchange technologies prevalent on the Internet often require browser-based scripting languages, browser- based cookies, or server-side cookies, which need to be enabled and available for proper ad service operation. A severe problem with prior advertising exchange system art may exist if any of the scripting language, browser-side cookies, or server-side cookies, are disabled or unavailable, resulting in spurious consumption of advertisers credits or complete malfunction. The lack of availability of any of these is becoming more prevalent on the Internet due primarily to security-oriented and privacy concerns. In addition to these technical problems, people and other computer technologies often take action with intent to falsely prosper from advertising systems, or to inappropriately attack the advertising accounts of their competition, through false stimulation of the advertising system. The invention solves this set of problems by eliminating these dependencies, as well as solves other problems such as a lack of performance of prior advertising exchanges' use of blockable ad technologies and firewalls to prevent various forms of fraud including IP blast, Auto Surf, Click Fraud, and other attacks against or misuse of an advertiser's accounts. This invention generates advertising that cannot be blocked from a practical perspective. This invention also solves the problem of limited inventory of prior stand-alone advertising exchanges by providing a communications foundation for interconnecting disparate and distinct, like, advertising exchanges. This invention provides a robust foundation and presentation platform extending normal advertising exchange capabilities with search-engine-like asynchronous query support. In addition, an advanced formatter and presentation system is provided allowing easy re-customization and configuration of search result presentation. The business model surrounding the invention is supported based on the sale and trade of impression credits for advertising and for the reward and allowed redemption of points for appropriate •participation or interaction with the exchange controller embodied by this invention. Relative to search engine support operations, the invention eliminates the need for keyword bidding models prevalent on the Internet and extends search and content management capabilities to the point where paid-for or bidded keyword oriented paradigms are ultimately meaningless.
BRIEF DESCRIPTION OF THE DRAWINGS
In the following drawings like reference numbers are used to refer to like elements. Although the following figures depict various examples of the invention, the invention is not limited to the examples depicted in the figures.
FIG. 1 is a schematic representation of a first embodiment of a network exchange for the presentation of information and related advertising in accordance with the present invention;
FIGs. 2, 2a, and 2b are illustrations of browser windows that are divided into frames to present content, navigation features, and advertising within the frames, in accordance with one implementation of the present invention; FIG. 3 is a schematic view of a second embodiment of a network exchange in accordance with the present invention;
FIG. 4 is a schematic representation of a third embodiment of a network exchange in accordance with the present invention; FIG. 5 is a block diagram of a hardware platform embodying one implementation of the exchange controller;
FIG. 6 is an image of the window area of a network browsing device that interacts with the network exchange controller and is sensitive to human stimuli;
FIG. 7 is a flow chart of a request process by a network browsing device that has been enhanced to sense human stimulus and convey related awareness during transactions with a network exchange controller;
FIG. 8 is a flow chart representing first stage and key processing steps of the exchange controller's ability to organize a lookup of content while operating in a secure and indirectly human presence aware manner; FIG. 8a is a flow chart of secondary stages of the network exchange controller regarding its ability to select content directly or indirectly and respond to stimulus;
FIG. 9 is a schematic diagram of a network appliance, or equivalent browsing device, interacting with a Metasearch Engine that is leveraging one or more exchange controllers for content selection and presentation;
FIG. 9a is a flow chart of the operating process of a Metasearch Engine designed to interact with a network browsing device and form a response that indirectly dispatches search requests to networked exchange controllers; and
FIG. 10 is an example of the results presented in the window area of a network browsing device as constructed by the Metasearch Engine and one or more of the exchange controllers the Metasearch Engine leveraged during a search process.
FIG. 11 is an example of an alternate layout, as compared to FIG. 10, and similar content presentation with alternate stylization as displayed in a web browser and as originally generated by an exchange controller that is an embodiment of this invention. FIG. 12 is a flow chart of the asynchronous content search and flexible formatting capacity of the exchange controller embodied by this invention. Notable in this diagram is also the ability for an embodiment of the present invention to relay search requests to replicated implementations of the invention for further processing.
DETAILED DESCRIPTION
Throughout this disclosure, the description text sometimes references problems or deficiencies with various Internet related technologies and related prior art as a partial basis to explain the invention herein. Although various embodiments of the invention may have been motivated by various deficiencies with the prior art, which may be discussed or alluded to in one or more place in the specification, the varied and potential embodiments of the invention may not necessarily address a specific deficiency. In other words, different embodiments of the invention may address different deficiencies that may be discussed in the specification. Some embodiments may only partially address some deficiencies or just one deficiency that may be discussed in the specification, and some embodiments may not address any of these deficiencies as each may be significant by their own merit as a unique feature or embodiment of this invention. To facilitate an understanding of the principles upon which concepts described in this specification are based, some embodiments are described hereinafter with reference to a user viewing information provided over the Internet, by means of a browser running on a network appliance, as an example. However, the practical implementations of the invention are not limited to the example of a user viewing information over the Internet via a browser running on a network appliance. For example, the technology that presents the information to the user need not be a web browser. Rather, it can be any device that has the ability to render information that is formatted according to the Extensible Hypertext Markup Language (XHTML) standard, such as a Personal Digital Assistant (PDA), cellular telephone, or the like. In an embodiment, the underlying distributed content exchange architecture organizes and links independent content exchange systems. Although not explicitly explained in the remainder of this specification, the systems that are linked may be independent websites on a computer, independent websites on separate computers, physically disjoint computers running a content exchange, or other form of distributed and networked hardware operating as an independent content exchange point in the overall network. The systems may support Hypertext Markup Language (HTML) compliant framesets as well, and accordingly HTML compliant framesets may be used in the examples discussed in this specification. Nonetheless, other types of framesets may be used in addition to, or instead of, HTML compliant framesets. In an embodiment, framesets are utilized as an underlying presentation method, because other methods of content presentation, particularly for the purposes of advertising, are more readily blocked by modern browser software, thus preventing display of some or all of the intended content or advertising to the target user. However, although advertising is used as an example, the framesets may be used for presenting other information that does not have any advertising content. Accordingly, the embodiments described hereinafter should be viewed as illustrative, and not limiting in any manner.
FIG. 1 is a schematic representation of a networked content exchange that can be employed to implement the principles of the present invention. The network exchange may be used to facilitate advertising or for other purposes, such as the dissemination of news or information related to public services. A user at a network appliance 10 that is running a browser application may enter a Uniform Resource Locator (URL) in the browser, or click on a link displayed in the browser, to request a web page. Network appliance 10 may be a personal computer, a terminal, PDA, a web enabled TV, an e-book reader, a telephone, a mobile phone, or any other network appliance. As an alternative to a user action, the request for the web page can be initiated by other stimuli. For example, an embedded script or an embedded object within a page currently being viewed can automatically initiate the request for a new web page. The request is transmitted via a network 12, such as the Internet or other network, to a server 14 (e.g., an exchange controller) associated with the URL. The transmission of the request from the network appliance 10 to the server
14, via the network 12, is represented by the arrows labeled "0." Network 12 is any group of devices that are communicatively linked to one another. For example, network 12 can be any combination of one or more of a Local Area Network (LAN), Wide Area Network (WAN)5 a telephone network, a wireless network, and/or other network. In the illustrated embodiment, the server includes at least one exchange controller. The exchange controller may be a combination of software and hardware in which the software is running on a machine (which is the hardware) that hosts a server (e.g., a web server). The controller may be a network hardware appliance running the content exchange software, or further encoded into a hardware-only network appliance. In an embodiment, the controller software runs on a computer, which is a web server. In one embodiment, the exchange system includes multiple content exchange nodes, and a controller is located at each content exchange node. The exchange system delineates different content exchange nodes by having different domain names associated with different content exchange nodes. In another embodiment, different content exchange nodes may be delineated by assigning different node IDs to each content exchange node. Alternatively, some servers may be distinguished from one another by their node IDs while other servers may be distinguished by their domain names. Using domain names, which resolve through DNS (Domain Name System) to a numeric IP (Internet Protocol) address, to identify controllers reduces the likelihood of someone duplicating the exchange system simply by eliminating the domain names and assigning a numeric network ID or networked appliance ID, because the domain is effectively the identifier that allows the distributed aspect by allowing each exchange server node to be identified. Nonetheless, in an embodiment, other identifiers maybe used to identify each individual content exchange node in the network in addition to, or instead of domain names and/or node IDs.
In response to the request from the network appliance 10, the server 14 transmits a frameset generation stream to the network appliance, as represented by the arrows "1." This frameset generation stream comprises HTML or XHTML code that causes the browser to display a window having one or more frames. An HTML or XHTML content rendering and layout construct, such as a frameset tag, with any number of subordinate frame tags, defines the layout of a browsing device window, or portion of the overall window, that allows multiple views of full XML, XHTML, or HTML documents to be concurrently presented in such a manner that the information in one view remains visible while other views are scrollable or replaceable as though they are operating in their own fully functional browser window. Further, an attribute of the frame tag is an Internet URL that indicates to a web browser where to derive content for rendering in the related frame. Combined, the frameset tag, frame tags, and related internal Internet URLs are referred to herein as the frameset generation stream. The frameset generation stream 1 indicates the structure of the frames within the display area of the browser window or equivalent device, and identifies the content that is to fill each of the frames. Examples of an XML document with XHTML Document Type
Definition (DTD) translation support for frameset generation streams are presented below. In the first example, the display area of a window is split vertically, to present frames that are arrayed across the width of the display area, as shown in
Figures 2 and 2a.
<! DOCTYPE XML PUBLIC "5//W3C//DTD XHTML 1.0//EN"
"prot://www.w3.org/TR/xhtml/DTD/frameset.dtd">
<HTML xmlns="ρrot://www.w3.org/1999/xhtml">
<BODY> <FRAMESET COLS="50%, 85,*" FRAMEBORDER="YES" BORDER=11O"
FRAMESPACING="O" ROWS=" 1">
<FRAMENAME="leftFramel 111070204" SCROLLING="YES" noresize
SRC="ρrot://siteA.com" />
<FRAME NAME="navFramel 111070204" SCROLLING="NO" noresize SRC="prot://www.Sitel4.net/popsitenavscrn2.php?website=prot://www.siteB.info&o riginal=prot://siteA.com" />
<FRAME NAME="rightFramel 111070204" SCROLLING="YES" noresize
SRC="prot://www.siteB.info" />
</FRAMESET> </BODY>
</HTML> In the second example, the display area is split horizontally, to present vertically stacked frames as shown in FIG. 2b.
<! DOCTYPE XML PUBLIC "5//W3C//DTD XHTML 1.0//EN" "ρrot://www.w3.org/TR/xhtml/DTD/frameset.dtd"> <HTML xmlns="prot://www.w3.org/1999/xhtml"> <BODY>
<FRAMESET ROWS="50%, 48,*" BORDER=11O" FRAMEBORDER="YES" BORDER=11I" FRAMESPACING='O"> <FRAME SRC="prot://siteA.com/" NAME="topFramel 111070160" SCROLLING="YES" NORESIZE />
<FRAME NAME="navFramel 11070160" SCROLLING="NO" NORESIZ SRC="prot://www.Sitel4.ne1^navscreenf^navfxh0.php?original=prot://siteA.com/&fl =toρFramel 111070160&f2=botFramel 111070160&website=prot://siteB.net" /> <FRAME SRC="prot://siteB.net" NAME"botFramel 111070160" SCROLLING="YES" noresize /> </FRAMESET> </BODY> </HTML>
In the foregoing examples, the term "prof represents the protocol that is used for the communications, e.g. hypertext transfer protocol (http) or hypertext transfer protocol secure (https), and the .php extension represents only one of many common implementations of a programming language that can be varied substantially for use as handlers for processing the URLs and arguments for the Source, System Resource Controller (SRC), and URLs of each frame within the exchange controller generated frameset (PHP is a recursive acronym that stands for PHP Hypertext Preprocessor, and the inner PHP stands for Personal Home Page). The header line containing DOCTYPE helps define Extensible Markup Language (XML) methods referring to the DTD, which may participate in the
XML document transformation process often referred to as Extensible Style Sheet Language Transformation (XSLT) transformation. This transformation process optionally results in a frameset tag set understood by many DTD targeted rendering devices such as can be reduced often to native XHTML or HTML frameset and frame tags. The xmlns specifier refers to the XML namespace required to properly render the content as well. However, the xmlns specifier and the tag set rendering transformation process overview is only an example. This implementation of the exchange controller's output and handling of documents from both an input and output perspective is however XML/XHTML/HTML capable and compliant. The tagset given is an example of an XML compliant set of tags. This tag set is only an example and it should be noted that the disclosed embodiment of this invention in the form of an advertising and content exchange controller is not limited to application of any markup language; and further that quick substitution of layout plans and templates will allow the exchange controller to digest and produce alternately formed content without any significant change to the embodiment. These specific examples may contain unimportant syntax peculiarities, and are only given as examples. The tagset includes fictitious URLs, which are given only for realistic illustrative purposes.
FIG. 2a illustrates an example of a vertically split window that might be displayed in response to the first example of a XHTML frameset generation stream presented above. As is conventional, the window optionally includes a title bar 16, as well as one or more menu bars 18, tool bars 20, and/or status bars 22, which might be selectively enabled or disabled by the user or through programming. The remainder of the window constitutes the display area. In the example of FIG. 2a, the display area is divided into three frames that are oriented in a columnar format. The left frame 24 displays primary content associated with the web page that was requested by the user or one of the other stimuli described previously. In the first example of the frameset generation stream presented above, the URL for this page is identified by the "SRC" tag. In the example, the content of the frame 24 is associated with the domain "SiteA.com".
The request for the desired content, or the subsequent display thereof, induces concurrent display of advertising or other secondary content, pursuant to an arrangement with the owner of the primary content page or via an arrangement with the exchange operator. Depending upon the business model, the stimuli to present the advertising or other secondary content can be applied by the primary content page, or it can be authorized by the primary content page owner allowing third party stimuli to trigger the generation of the frames. Throughout this specification, although advertising is used an example, any other secondary content may be substituted. For example, the second frame and/or other frames can be filled with information provided by one or more subscription services. As an example of a subscription service, perhaps the user subscribes to a service that sends the user one or more vocabulary words, news stories, and/or educational articles that are presented to the user in one or more of the plurality of framesets while the user is searching for other information. For example, the plurality of frames may be populated with any information that was not explicitly requested by the user's search query. Another example of an application for multiple framesets is for sending an unstoppable emergency broadcast, which may be used by government agencies. In an embodiment, major content providers that are over a certain size may be granted or required to have the ability to redirect information through an exchange controller, which splits the browsing device. The primary content that was requested may be provided in one frame, and the emergency information may be provided in an alternate frame. Using multiple frames via framesets, emergency broadcasts may be provided that do not inhibit anyone from using the primary content requested. Depending on the severity of the emergency, the primary content requested may be blocked or displayed along side the emergency broadcast. In traditional non-emergency use, the subject matter, or other non-requested information, appearing in the advertising frame can be related to the information in the primary content page, or it can be entirely distinct, such as emergency broadcast information transmitted by a government agency.
The reaction of the exchange controller to stimuli by a network browsing device or alternate exchange controller is to select content based on the desired stimuli and then to respond. The selection of content is induced by a string pattern and/or by one or more stimuli, for example. The string pattern may represent a category ID, consumer ID, advertiser ID, publisher ID, website ID, or targeting criteria used for content biasing. The string pattern may be located in the initiating code and/or may part of a related generated URL request to the exchange controller. The stimuli may be already formatted in an appropriate URL that includes content biasing identifiers, or a content selective communications request that selects one or more exchange controllers. The content selective requests may be in the form of arguments associated with a URL (using HTTP, sockets, or UDP level protocols, for example).
When a stimulus biases the content, the content that will be identified by the exchange controller for possible presentation may be only biased towards a set of information or advertisers, but is not fully determined by that stimulus. From this set of possibilities, the exchange controller selects a content provider, set of providers, or alternate content source (depending on the context and type of request made to the exchange controller). The final selection from local content and advertising inventory is based on other internal policies or criteria that extend beyond the original biasing criteria. Upon selection, the exchange controller then formats a response and responds to the stimulus, or in turn may relay a request to an alternate content exchange controller, which then repeats this selection process until the original request is ultimately fulfilled in a meaningful manner. For example, if an advertiser's site or other network browsing device generates a request to the exchange controller that then triggers the frame based presentation of both primary content and a secondary form of advertising content, the biasing criteria for determining the second content may be the category setting of the advertiser's site or browsing device that triggered the request.
When content specific criteria is contained in the URLs as ID numbers or strings, the exchange controller does a database lookup according to the member ID5 advertiser ID, or even category ID, other ID and/or other information to ultimately derive alternate required forms of the requested content used to select content or relay to alternate controllers. The conversion of the IDs or other information enables symbolic content selection criteria. The numeric values associated with the content in each exchange controller may vary substantially making it potentially ineffective to use local strings or number strings only known to an individual controller. Once content is identified, it is rendered directly or indirectly within one of the frames. Identifying appropriate content indirectly may involve determining that the content cannot be provided by a local exchange controller (e.g., server 14), and results in relaying the content request and related criteria to another server and/or another exchange controller for request fulfillment. Related to, and for purposes of, advertising content and inventory sharing among exchange controllers, an exchange controller may relay a request and its related criteria to an alternate exchange controller even if it can fulfill the request.
The right frame 26 displays the advertising that is authorized by, or induced by, the content page or equivalent stimulus, as provided from the domain "SiteB.info." The middle frame 28 in the illustrated example comprises a navigation frame, provided from a third domain, "Sitel4.net." This navigation frame includes control buttons or hypertext links 30 that can be clicked by the user to cause the content displayed in the left frame 24 or the right frame 26 to appear in a separate window or replace the content in the overall browsing device window depending on the rendering target of the navigation buttons in the middle frame 28. The middle frame 28 also provides an area 32 that can be used to display additional advertising or multimedia entertainment, such as banners or videos.
It will be appreciated, of course, that the navigation frame 28 is optional. Depending upon the particular application, one or more of the advertising frames, any first content frames, and/or the other information frames can be eliminated as well. The function of the first content frames, advertising frames, and/or other frames is unaffected by the presence or absence of one another and/or the navigation frame, because they are logically independent of each other. While application and use of an empty frameset, or in other words a frameset lacking meaningful Internet URLs for presentation of some content in at least one frame, is impractical, the exchange controller has the capacity to provide such a frameset generation stream that is properly interpreted by a network browsing device and may show no errors but only an empty or meaningless window. From a practical use perspective, at least one frame within the frameset must be dimensioned to some or the entire portion of the display window and should contain an Internet URL referencing properly formatted and available content for presentation.
Various browser devices may allow for post-rendering resize of the various frames, or a future markup language may provide an option to allow post- rendering resize of the frames, and therefore varying the frame sizes to tightly collapse upon one another while still rendering the content, however by default not initially viewable, may be useful in some applications. An example of such might be presenting multiple web documents containing intended and alternate advertising content in frames on devices where limited or exceptionally small amounts of browser window real estate is present. Examples of such devices might include cell phones, PDAs, or portable gaming devices. A practical consideration for use of the frame oriented aspect of this invention for advertising and content delivery, whereby the user anticipates or is directed to resize the frames by training, common knowledge, curiosity, or traditional use.
Related to potential use, the minimum visual presentation would be an advertiser's website or equivalent content, or an emergency broadcast web page or equivalent content provided by an appropriate and authorized source. The concurrent display of content, advertising, and/or other information in a single window can be implemented for the purposes of advertising or other purposes with as few as two frames, one of which displays the requested content and the other of which displays the advertising or other content, and/or one of which displays navigation or advertising for self-promotion of the ad service. Furthermore, the locations of the primary content frame and the primary advertising frame and/or any other frames can be swapped without impact to any of the frames' functions or usefulness. Likewise, the relative sizes, styles, and shapes of the frames can be varied to any extent supported by the modern markup language specification. For example, the frames may be round, ellipsoidal, triangular, hexagonal, polygonal, trapezoidal, in the shape of a rhombus, diamond, star, or any other supported shape. No matter the frame shape, there would be no change, or substantially no change, to the controllers' methods of providing ad content to, or multiple frames simultaneously within, a capable browser.
References herein to XML, XHTML, HTML, or any equivalent markup language, are ultimately considered exemplary and virtually identical with respect to implementation in the disclosed embodiments of the invention as long as the markup or programming language provides the underlying frames, or equivalent containers for complete documents, and the overall technology provides an equivalent browser device rendering capability supporting the formed output. The markup language, while implemented for the common Internet and web browsers in the disclosed embodiment, is irrelevant in general. An example showing a clear divergence from the listed and currently supported markup languages can be a private or specialized implementation of this invention in an alternate customized embodiment such as a Flash or Java applet based plug-in browser equivalent, or an SGML equivalent with use of an SGML browser as the rendering device. Such an implementation would result in no significant change to the principles of the invention. Returning to FIG. 1, the illustrated embodiment depicts one approach for retrieving the content that is to appear in each of the respective frames 24, 26 and 28. In this embodiment, the information that is displayed in the frames is provided by three respective network resources, such as servers. For ease of understanding, the three servers are illustrated in the figures as being implemented on three different physical devices, respectively. It will be appreciated, however, that any two or more of the servers can be resident on the same machine. In this specification, the term "server" refers to a process running on a machine, as opposed to the machine itself. The separation between servers is a logical one. For example, each server may be associated with a different domain name, or numeric or textual content exchange network node identifier, and there may or may not be physical separation as well between each server.
The features of the navigation frame 28 might be provided by a server at the same server 14 that returned the frameset generation stream. For this case, upon receipt of the frameset generation stream, the network appliance 10 sends a first request 2a to the server 14. This request may comprise the URL associated with the appearance of the navigation frame 28. In response, the server 14 returns the appropriate XHTML code in a message 3 a, to generate the appropriate display of the navigation frame 28 within the window. Of course, the information pertaining to the navigation frame can be provided by a server that is not executing on the server 14.
The information for the content frame 24 is provided by a content server 34 that is associated with the website requested by the user. In response to receiving the request (e.g., the URL for this website) in the frameset generation stream 1, network appliance 10 sends a request 2b, which may contain the URL, to the server 34. In a similar manner, the network appliance 10 sends a request 2c to an advertising server 36 that provides the advertising information that appears in the advertising frame 26. In response to requests 2b and 2c, content server 34 sends a message 3b which may contain the XHTML or HTML code for the content to appear in the frame 24, and the advertising server 36 transmits a message 3 c, which may contain the XHTML or HTML code for the advertisement appearing in the frame 26. While the example of FIG. 2a employs three frames, it will be appreciated that the display area can be divided into any desirable number of frames. For example, the owner of the website that provides the content appearing in the frame 24 may have agreements with three different advertisers. In such a case, the right portion of the display area might be divided into three, vertically stacked frames, each of which displays a separate advertisement. In this case, the advertisement in each of the three frames might be provided by a single advertising server 36, or multiple respective advertising servers 36, 38, etc.
The use of a frameset to present advertising provides a number of advantages. As discussed previously, prior techniques for displaying advertising typically employed browser-based scripting language to generate new logical layers for the ad space, e.g., items with new windows or stacking order considerations, pop-up windows, or XHTML divisions, layers, or other more susceptible tags or constructs. As a result, it became easy to separately identify and intercept the scripting or layers associated with various forms of web-oriented advertisement, and block them from being displayed. In contrast, by using a frame to display the advertising, the code that is sent to the rendering device, such as a browser, is native to the XHTML and HTML core language specification at a most granular and atomic level, and operates without developing a new primary layer or window. As such, it becomes significantly more difficult to determine advertising streams and thus more difficult to prevent the display of the intended website or equivalently formatted advertising. In order to do so, it would become necessary to change the international language specification for XHTML and HTML, to support disabling the display of frames, which is highly unlikely, as it would negatively impact the entire World Wide Web.
The frame-based advertising allows for display of multiple full XHTML or HTML document content in simultaneously presented frames and is not limited to rendering a single complete document. This form of advertising is not limited to display of specific incremental entities, such as images or custom multimedia objects, as found in the other traditional forms of Internet advertising. The approach described herein displays any properly formatted XHTML or HTML content document in total in each frame, which can include any number of device- supported incremental entities. Advertising by frames provides complete transparency to the content that is actually rendered inside each of the frames. In addition, there is no special programming required to support the presentation of full XHTML or HTML documents in each frame, since framesets are part of the core XHTML and HTML language specifications and supported widely by browsing technologies. Utilizing the techniques of the present invention, browser- based scripting is not necessary to induce the display of advertising. In fact, a web browser scripting interpreter/processor can be disabled, and the advertising will still appear.
Since the advertising frame appears at the same logical and visual layer as the web page that originally induced the advertising, the display of the advertisement is more persistent. As a result, the user is likely to spend more time looking at the original website and the advertisement, both consciously and subconsciously, in conjunction, because of the manner in which they are presented. To illustrate the generic application of the advertising approach contained in this invention, it must be noted that the use of iframe tags, often referred to as floating frames, can be used to mimic this form of advertising. However, it is already known that software designed to focus on blocking iframes exists. Iframes are inline frames, which can be used as a target. Iframes are logically at a different logical layer in most modern rendering devices, whereas in contrast the choice of framesets and frame tags is more atomic and rudimentary and no blocking technology is currently known to exist. Consequently, advertising and self- promotion leveraging frame sets may be a more reliable form of advertising than iframe tags. Because of the blocking technologies that are evolving, it is anticipated that other technologies, such as Java or Flash applets, may be leveraged to mimic a web browser capable of mimicking this form of advertising as part of an advertising business model. In the example of FIG. 1, once the frameset generation stream is received from the server 14, the browser or other XHTML-rendering device directly transmits requests to the respective servers that provide the content that appears in each of the frames. It has been found that certain implementations of XHTML rendering technologies are not well suited to perform this operation in a robust manner. To circumvent technical difficulties presented by these types of technologies, an indirect approach can be employed to obtain the appropriate content. An example of this approach is illustrated in FIG. 3. In the indirect approach, the initiation of the process begins in the same manner, with the transmission of a request "0" from the network appliance 10 to the server 14, and the return of a frameset generation stream from the server 14 to the network appliance 10. In FIG. 3, however, the XHTML code of the frameset generation stream does not contain the URLs that are directly associated with the content server 34 and advertising server 36. Rather, in the embodiment of FIG. 3 the URLs that pertain to the content of the frames are each associated with the server 14. Thus, for instance the SRC tag for the left frame 24 in the example of FIG. 2 might appear as "prot://www.Sitel4.net/popsite.php?website = prot://SiteA.com/", where Sitel4.net is a domain associated with the server 14 and prot is the protocol specifier, which is common on the Internet as http or https. A similar type of tag can be employed for the right frame 26. In the example of FIG. 3, therefore, each of the messages 2a, 2b and 2c is transmitted to the server 14. As in the example of FIG. 1, if the server 14 is the provider of the content for the navigation frame 28, this content can be directly returned to the network appliance 10, in the form of message 3a. In response to requests 2b and 2c, the server 14 transmits HTTP Location header redirect requests to the browser on the network appliance 10. These header redirect requests are represented as messages 3b and 3 c in the example of FIG. 3. Briefly, the "redirect" feature of the HTTP protocol provides redirection status codes that a server can employ to indicate to a browser device that it should look for a desired page at another URL. This other URL is specified in the Location" HTTP header. Therefore, in the example of FIG. 3, messages 3b and 3c contain redirection status codes and Location headers that identify the URLs associated with the content server 34 and advertising server 36. Upon receiving these header redirect messages, the browser on the network appliance 10 sends new requests 4a and 4b to the content server 34 and advertising server 36, in accordance with the URLs in the Location headers of the messages 3b and 3 c, respectively. In response, the servers 34 and 36 return the desired content 5a for the content frame 24, and the advertisement data 5b for the advertising frame 26, respectively. Thus, as long as the browser, or other XHTML-rendering module, supports HTTP header redirects, the appropriate information will appear in the respective frames of the display area. The URLs associated with the server 14 can be directed to multiple parallel exchange controllers for scalability, reliability, and performance. Examples of such an implementation would be to workload balance the server 14 through available and current technologies or methods such as High- Availability Clustered Multiprocessor (HACMP) solutions or simple DNS rotation appliances, or other workload balancing schemes and devices currently available. In a more direct manner, the initial exchange controller can programmatically direct the base URLs in the frameset generation stream 1 to alternate known exchange servers at the time of generation.
Of course, it is possible to use techniques oilier than HTTP Location header based redirection to implement the indirect approach. For instance, browser side scripting might be employed. In such a case, a script can be employed to initiate the construction of the frames locally at the browser. It then becomes possible to initiate a "window.location=" construct in the script, to perform the redirection instead of an HTTP header redirect. In this situation, however, a scripting language must be enabled. The exchange controller presented supports both of these methods of redirection. The embodiments of FIGs. 1 and 3 utilize http or https as the protocol for communications with the content delivery servers. Another indirect approach that supports other protocols is illustrated in FIG. 4. In this embodiment, server 14 plays an active role in retrieving and providing the content to the browser running on the network appliance 10. As in the example of FIG. 3, when the browser receives the frameset generation stream in the message 1, it sends three requests 2a, 2b and 2c to the server 14. In response to request 2a, the exchange controller supplies the content for the navigation frame directly to the browser, via the message 3. In response to requests 2b and 2c, the server 14 sends requests 4a and 4b to the web server 34 and advertising server 36, respectively. These two servers return the appropriate content for the respective frames to the server 14, by way of messages 5a and 5b. Upon receipt of these messages, the exchange controller then provides the content to the browser on the network appliance 10, via messages 6a and 6b. In the embodiment of FIG. 4, the server 14 is of a type that can use an alternative protocol, such as UDP, and TCP socket level communication to retrieve the desired content and advertisements from other like exchange servers. The servers that it connects to can be the endpoint content delivery servers, or intermediate exchange servers. Once the server 14 receives the requested XHTML or XML streams from the other servers via any of a suitable number of supported protocols, it then forwards the entire stream to the browser on the network appliance 10 by means of the open http connection between them.
One of the optional attributes for a frame contained in a frameset is "name". In the examples of XHTML codes for frameset generation streams given previously, the content frame 24, navigation frame 28 and advertising frame 26 are given the names "leftFramel 111070204", "navFramel 111070204" and "rightFramel 111070204", respectively. In each of these frame names, the value "1111070204" is a randomly generated number. The number can vary across each of these three names as well, as it is not important for them to be synchronized but is simplified here for illustrative purposes. A new random number is produced each time a frameset generation stream is transmitted. The use of a randomly generated number for the frame name further thwarts efforts to block advertisements. For instance, once the use of frames to present advertising becomes known, some tools may attempt to block frames having a name or URL associated with an advertiser's website or content intended for presentation in the respective frame. By changing the names of the frames with random numbers or other forms of randomized text strings, such blocking efforts are rendered ineffective. The textual portion of each frame name, e.g. "leftFrame", can be static, or it can also be randomly varied with each new frameset generation stream. From the foregoing, therefore, it can be seen that providing advertisements via frame sets provides a unique mechanism and system for presenting advertising over the Internet and other network-based computer systems that is expected to be less susceptible to being blocked than other known techniques for doing so. Displaying advertisements in frames that are at the same effective layer, relative to the browsing device's window, as the original web page or human stimuli that induced the system to display the advertising, has the effect that the native XHTML equivalent core language specification contains the advertisement and not a composite function or object that can be more easily identified during processing and sensed. Having the advertisement contained in the XHTML equivalent core language is expected to make it more difficult to separate the advertisement display mechanism, and thus the advertisement, from other associated or desired content. In addition, or alternatively, the exchange controller communicates with other exchange controllers in an intelligent manner in that, if appropriate content is not found at one of the exchange controllers, or if one or more or the exchange controllers is configured to directly route requests to other exchange controllers, stimuli is passed to alternate exchange controllers when required. Communicating with other exchange controllers effectively increases the local exchange controller's virtual content inventory of appropriately selectable content. This intelligent sharing of content among these intelligent exchange controllers produces a transparency of location of the content to the original human surfer or other machine-oriented stimuli. The presentation of advertising using this method and/or intelligent exchange controller may have another unique advantage to Internet website owners that is non-obvious even after review of the core methods and exchange controller system. The business benefit is that website owners can participate in a cooperative advertising solution that allows them to eliminate all advertising content from their website, reserving full display area for their real business content. Utilizing the entire display and web page space for primary content while still periodically displaying advertisements may be accomplished by the exchange controller's use of time based control of the periodicity related to the production of the frameset generation streams as released by the exchange controller.
To prevent inappropriately spurious or annoying advertising, the exchange controller is adjustable by the exchange administrator to periodically ignore stimuli for a period of time just after an ad has been generated by stimuli from a particular IP address. There may be a time delay variable associated with the period of time during which stimuli are ignored. Changing the value of the time delay variable may change the time period during which the stimulus is ignored. The value of the time delay variable, which stimuli are ignored, and/or which exchange controllers are ignored may be different for different users. The time delay value may be adjusted by the exchange controller administrator and/or user if allowed by the exchange administrator or the business operator's respective policies, the advertiser or other provider of secondary content may adjust how often ads or other secondary content are presented. Adjusting the timing delay value, thereby leveraging the periodic display of secondary content, gives advertisers and others an advantage in eliminating web advertising content directly from their web pages.
Additionally, adjusting the timing delays makes their web page, sometimes implemented as what is known as a doorway page, the content provider's own advertising content for use as an advertisement as displayed by other content providers (e.g., advertisers) that reciprocate with one another (which could be referred to as reciprocal content providers or reciprocal exchange controllers) by providing content to one another within a network of Internet advertising exchange controllers. Controlling the reciprocal exchange of advertising content in this manner has business value since special formatted advertising content is no longer required, because the entire web page document becomes the advertisement displayed in the alternate frame. Consequently, no custom ads, banners, flash, etc, are needed. Additionally, advertising by use of frames for displaying primary content, and secondary advertiser's content, in this reciprocal manner may allow some website advertisers to advertise even though they cannot modify or add advertising content to their web page. For example, when the advertiser advertises by using a replicated affiliate website page, the same web page is displayed by the competing affiliate advertisers. An affiliate ID is passed within the URL5 which is the only way to discern one affiliate from the other affiliates that use the same page. The replicated affiliate page is generated and modifiable only by the affiliate system owner. By presenting replicate affiliate websites to users via exchange controllers, and consequently within a frame of a frameset, replicate affiliate websites can participate cooperatively in a reciprocal advertising cooperative exchange network, which could not be done previously.
Using time delays is an optional feature of the frame based advertising exchange controller and system that further entices advertisers that are leveraging replicated advertising sites and the like to participate in this model of cooperative and reciprocal advertising. Simultaneous advertising and participation in the reciprocal advertising system is accomplished by the display of the replicated affiliate site in the primary content frame produced by this system, and by displaying alternate advertising content (which may be a reciprocal advertiser's website content or doorway page) in the secondary frame. The primary and secondary content are complete web documents originally provided by the advertiser and the secondary reciprocating advertiser indirectly through the system, which is centered on the exchange controller. By varying the frequency of these presentations, a primary advertiser, or advertiser using the replicated affiliate website, can control the frequency of participation in the reciprocal exchange system. This is advantageous in reducing the cost of advertising whereby participating in a reciprocal exchange program commonly derives free advertising credits or reduces the cost of advertising credits, as can be done through the exchange controller presented.
In addition to time delays between the generation of frameset streams, or as another alternative, a cookieless latch is facilitated. Many consumers disable cookies on their browsing devices. The cookieless latch implements a memory queue related to recent stimuli, types of stimuli, and mapped in particular to network browsing devices based on the IP address of each device originating a request. The cookieless latch caches the required data in memory for a period of time as determined by the system administrator. It therefore delays/controls the transmission of frame generation streams to any network device. For example, if the same request from the same origin identified by IP address and stimulus type, representing a particular type of ad, exists in the memory of the cache, the system will not respond with a frame generation stream. The cookieless latch thereby helps control the periodicity of ad presentation, as well as eliminates the common problem of spurious ad generation upon uncontrolled repeated stimuli by a network-browsing device caused when its cookies are disabled. It should be noted that the cookieless latch mechanism and functionality in the disclosed embodiment of the invention is not limited to frame-based forms of advertising exchange controllers only and application to other advertising exchange systems would be highly useful.
The business of advertising on the Internet often involves an advertiser's purchase of ad credits representing a display of their website or ad to a surfer on the Internet. Without the cookieless latch, spurious presentation of the ad or website occurs and inappropriately consumes advertiser's purchased advertising. Another problem that plagues the Internet is exchange mechanisms or stimulus devices often embodied as a computer program known as hit generators or AutoSurf exchanges. These devices are intent on stimulating advertisers' websites mechanically and automatically without a human being involved, and are often used to improperly inflate a website's traffic oriented ratings, or other nefarious activities with one type being Click Fraud, while inappropriately consuming advertisers' dollars indirectly by consumption of the ad credits. As such an advertiser's credits are consumed without actual human beings seeing the website. The result of this is exceptionally poor sales conversion ratios for the amount of advertising dollars and volume of advertising implemented during a marketing effort.
A logic and protection system may be included in an exchange server that optionally works in conjunction with properly programmed stimuli devices and reduces the likelihood of inappropriate consumption of advertising credits. The browsing device is enabled to indicate to the exchange controller when it is appropriate to deduct a credit based on human stimulus only and further makes provisions so that advertising can still be presented autonomously without indicating credits may be deducted. An exchange controller may have logic embedded with appropriate communication protocols in place so that browser devices can be trusted to trigger credit deductions only when it is expected that a human being is actually present and interacting with the web browser. The browsing device runs both autonomously or manually, but only signals the exchange controller to deduct credits when an interaction occurs that is expected to be a uniquely human interaction with the device. For example, stimuli may be triggered when a field associated with the GUI of the browsing device is filled in. Alternatively, a deduction in credits of an advertiser's account by the exchange controller may not be triggered unless a message is received from the browser explicitly indicating that the browser is controlled by a human. For example, the message may be encrypted and may be nothing more than "this message is to confirm that the preceding interaction was triggered by a human," or the message may be a series of signals that have no meaning, but that match a special message stored or encoded within the content exchange controller, and the content exchange controller checks for the match prior to deducting a credit (and no credit is deducted if there is no match). After stimulus that is expected to be human in origin is received, messages (which are optionally encrypted) are passed to the content exchange controller indicating a credit should be deducted. The default is to not deduct, and proof must be authenticated and provided by the browsing device that the interaction is human in origin prior to stimulating the exchange controller causing a deduction a credit from an advertiser's account or reward of analogous points to a surfers account (noting that credits and points are interchangeable terms pragmatically and optionally used to delineate the different contexts of advertiser verses surfer or publisher accounts respectively). An exchange controller may include a facility to export a formatted and raw list of advertisers. Exporting the inventory list of advertisers has an advantage for increasing generic link ratings, and targeted link ratings, for advertisers. Link ratings are a measurement commonly used by search engines and potential advertisers to determine the value and usefulness of a site. Link ratings are ratings assigned to web entities (e.g., websites or web pages) that characterize the link counts associated with that web entity. Link counts are how many other sites reference a particular site. Generic link ratings refer to all sites that reference a particular site, where as targeted link ratings refer to how many similar content sites reference a particular site. When a particular site also references all other sites that refer to it, it is then considered perfectly cross-linked with all of the other sites. The exchange controller provides software or scripting that a website owner may leverage to trigger the cross-linkage. This is managed by a centralized device or server collecting and constructing a composite list of all appropriate advertisers within the distributed network of content prevalent exchange controllers and then allowing individual advertisers to use the centralized information by referencing the entire list of advertisers by various means. Link enhancement (which is enhancing the link ratings) of the advertiser's website is accomplished by inserting scripting into a searchable page on the website or by embedding a link to the composite list onto a web page of their site, or by other similar means.
An alternate method of implementation is by publishing a valid web document that contains all of the other appropriate advertisers' website URLs and can be relocated to the advertiser's website and integrated by a normal HTML URL reference. By doing so, the rating engines on the Internet see each advertiser's site that participate in this solution as grossly cross-linked either indirectly or directly thereby increasing the individual website's link rating substantially.
FIG. 5 shows a block diagram of a computer 500, which may be used as network appliance 10, or may host an exchange controller 14, content server 34 and/or advertising server 36. The computer 500 may include output system 502, input system 504, memory system 506, processor system 508, communications system 512, and input/output device 514.
Output system 502 may include any one of, some of, any combination of, or all of a monitor system, a handheld display system, a printer system, a speaker system, a connection or interface system to a sound system, an interface system to peripheral devices and/or a connection and/or interface system to a computer system, intranet, and/or internet, for example.
Input system 504 may include any one of, some of, any combination of, or all of a keyboard system, a mouse system, a track ball system, a track pad system, buttons on a handheld system, a scanner system, a microphone system, a connection to a sound system, and/or a connection and/or interface system to a computer system, intranet, and/or internet (e.g., IrDA, USB), for example.
Memory system 506 may include, for example, any one of, some of, any combination of, or all of a long term storage system, such as a hard drive, a database system, a short term storage system, such as random access memory, a removable storage system, such as a floppy drive or a removable drive, and/or flash memory. Memory system 506 may include one or more machine-readable media that may store a variety of different types of information. The terms machine-readable media, or machine-readable medium, are used to refer to any medium capable of carrying information readable by a machine. One example of a machine-readable media is a computer-readable medium. Another example of a machine-readable medium is paper having holes that are detected that trigger different mechanical, electrical, and/or logic responses. The term machine-readable medium also includes media that carry information while the information that is in transit from one location to another, such as copper wire and/or optical fiber. Memory system 506 may store one or more computer instructions that cause a processor to carry out steps that implement a browser, server 14, content server 34, and/or advertising server 36.
Processor system 508 may include any one of, some of, any combination of, or all of multiple parallel processors, a single processor, a system of processors having one or more central processors and/or one or more specialized processors dedicated to specific tasks. Processor system 508 carries out the instructions stored on memory system 506.
Communications system 512 communicatively links output system 502, input system 504, memory system 506, processor system 508, and/or input/output system 514 to each other. Communications system 512 may include any one of, some of, any combination of, or all of electrical cables, fiber optic cables, and/or means of sending signals through air or water (e.g. wireless communications), or the like. Some examples of means of sending signals through air and/or water include systems for transmitting electromagnetic waves such as infrared and/or radio waves and/or systems for sending sound waves.
Input/output system 514 may include devices that have the dual function as input and output devices. For example, input/output system 514 may include one or more touch sensitive screens, which display an image and therefore are an output device and accept input when the screens are pressed by a finger or stylus, for example. The touch sensitive screens may be sensitive to heat and/or pressure. One or more of the input/output devices may be sensitive to a voltage or current produced by a stylus, for example. Input/output system 514 is optional, and may be used in addition to or in place of output system 502 and/or input device 504.
FIG. 6 depicts a window displayed by a network browsing device that has rendered three separate HTML/XHTML documents in three separate frames within the overall screen real estate used for presentation (browser window). This browsing device interacts with the content exchange controller by signaling the controller when a human is expected to be interacting with the browsing device as compared to when a human is not interacting with the browsing device. Key aspects of this figure indicate that entire web documents (website pages) are rendered in each of three frames, with the left frame scrolling enabled, center frame scrolling disabled, and right frame scrolling enabled. In addition, the center frame and document rendered within it is referred to as navigation. The left frame will be referred to as primary content, and right frame be referred to as secondary or advertising content. The size and position, and scrollable aspect, of these frames may be varied as previously shown in FIG. 2, 2a, and 2b, and are not key features of this figure. A special attribute of the network browsing device that interacts with the exchange control is its ability to detect the presence of a human and transmit credentials to the exchange controller that allow the exchange controller to understand when a human is expected to be present and not present. Because of this facility inherent to this device, it is referred to as human sensitized network browsing device, and an optional key capability of an advertising system enabled by an embodiment of the controller presented.
FIG. 6 details several exemplary features of a human sensitized network browsing device for use in this application. The title bar (16) and status bar (22) are combined in functionality within this device. The menu area (18) and tool bar area (20) assist the user to select and stimulate content presentation. The presentation areas of the left frame for primary content (24), the middle frame for navigation content (28), and the right frame for secondary or advertising content (26) each render entire valid HTML/XHTML/XML documents within them. Several features of this device are generally considered to form a GUI (Graphical User Interface) for a human to interact with. However the graphical features of the navigation or control of the device are unimportant. A significant aspect of the human interface features is the device is sensitized to transmit appropriate signal information to the exchange controller when a human directly interacts with the device. In this embodiment, the scan button (40), the window (44), the tool bars (20) and menu(s) (18) are predetermined to transmit special signals when interacted with. However, other areas and features of a different embodiment of a human sensitized network browsing device may also be designed to transmit analogous signal information to the exchange controller. In addition, there are internal timing mechanisms that allow this device to interact autonomously with the exchange controller to acquire and display content much like a television would do for entertainment purposes. During a period when automated operation occurs, for example for the purposes of general network observation, research, monitoring, entertainment, or other similarly passive activity occurs, the device does not convey information to the controller that a human (user) is present, but may convey information such as IP addresses, source location information, demographic information, or channel selection as can be seen in the upper right portion of the tool bar (20) above the right frame (26). Further, it can be anticipated that an embodiment of such a device can convey environmental information to the exchange controller such as device temperature, source location environment characteristics, or the geographic position of the browsing device for consumption by the exchange controller in determining content, for example.
An example of the economic benefit of this function of the sensitized network browsing device may be to stimulate the exchange controller to dispatch content and advertisements to the user that would help the user improve environmental conditions. In this example, because of the implied potential benefit and relevance to the user, both the content and advertising may be considered targeted. This aspect of the extensibility of the network browsing device and its composite interaction with the exchange controller to improve the targeting of content and advertising is only limited by input mechanisms inherent in a physical manifestation of such device. Other embodiments may be extended to leverage any new I/O (Input/Output) made available to the device. In this manner, the exchange controller can enhance targeting of the content and advertising, as well as textual messages or imagery in the navigation or other documents presented in the frames displayed in the device window. As previously noted, the number of frames for untargeted and targeted content and advertising may be increased or reduced without impact to the function of each frame or the overall device. FIG. 7 is a flow chart of the general processing of the network browsing device (10). At start (BO) the device may wait on stimulation (700) from a human or timers. The test for stimulation present (702) may be complex and parallel in nature, testing several inputs such as the GUI features or internal I/O or timers. Upon presence of stimuli, an inherent test for human presence (708) may occur and result in the addition of indicators (710) to the request (712) the network browsing device may make to the networked exchange controller. After forming the request (712), the network browsing device transmits the request (714) to the network exchange controller by whatever means the natural communication between the device and exchange controller is embodied by. In the general case, an Internet level request is made through one of several supported protocols. The composite process of transmitting and rendering (714) encompasses the request conveyed to the network exchange controller, the response of content from the controller, and the rendering of the content traditionally in the frames asserted by the frame generation stream returned by the controller. Upon receipt and rendering, the network browsing device may start or reset timers (716) to enable automated stimulation upon timeout for the next request-response-rendering transaction cycle. The value of the timers that is used may be relative to the GUI controls (46) of network browsing device interface as depicted in FIG. 6 or by predetermined values based on implementation, adjustments for embodiment technology, or intended usage.
The next cycle repeats at an initial state represented by a wait for next stimuli (700) by returning to an initial or adjusted starting condition (BO). During this or the preceding cycle, if the device is not interacted with through any of the several human sensitized triggers (GUI, buttons, menus, window resizing, or other), timers are started (704) to provide automated stimulation. A test (706) to see if the wait timers that control automated operation have timed out occurs, and iterates until the timers reach a predetermined threshold when stimulation is acknowledged and allowed, thus inducing non-human stimulation.
In the disclosed embodiment, separate timers are used to indicate the time to wait for rendering of content, and then the time to wait after rendering of content. While these are effective and useful, other timers may be introduced, for example, on a per frame basis. While the disclosed embodiment allows the timers to apply to all frames, this is not a limitation of the overall processes and content delivery and advertising system.
Upon stimulation by a compatible network browsing device, the exchange controller request-response cycle is initiated. The browsing device can be enabled to maintain state with the network exchange controller, or to operate in a stateless environment such as the Internet via http/https protocols, without diverging from the spirit of the application and system. In fact, the disclosed embodiment may operate in either a state-free or semi-stated (use of browser or server cookies as is optional or for convenience in specific implementation) environment for support of various features of the overall content presentation system. For illustration, the content presentation system refers to the combined embodiment and function of the network browsing device, the exchange controller(s), and the optionally distributed content and advertising servers. The network or equivalent communication conduit among the components of the content presentation system is assumed to exist and interact appropriately with the various components considered in this application, but the network, analogous communication conduit, and network or wiring level communication protocols that operate within such conduit, are not considered to be part of this application. In an embodiment, application may be based on the Internet as a communication conduit. FIG. 8 is a flow chart of the exchange controller's request-response cycle of the overall content presentation system. This diagram assumes a network device has in some form transmitted a request for content to the exchange controller. The initial state of the exchange controller is depicted as an entry point or ready state (NO) in the diagram. At entry, attempted receipt of the request occurs (802), a test is made to see if a request exists (804), and if not, the cycle repeats. In this representation, it is a polling model whereby in the traditional embodiment the exchange controller waits at state (804) for interrupt driven stimulation (request ready notification). In any event, no additional processing generally occurs until a request is present (stimulation of the exchange), and an iteration of some form among entry point (NO), the attempted inspection or receipt of a request (802), and the test for readiness of the receipt (804) occurs until a request is ready for further processing.
Upon stimulation, the exchange proceeds to process the stimulus by initiating a Firewall Test (806). The Firewall Test is a network request blocking consideration and in an embodiment uses the IP address of the requesting device and locally stored IP addresses as a basis for testing if a request should be allowed. In an embodiment, the Firewall may be enabled or disabled. If the requestor is not blocked from submitting requests to the exchange controller as answered by testing (808), the system process continues to the logical point (Nl) in the process.
The exchange controller initiates additional protective tests referred to as AutoSurf, IP Blast, and Click Fraud tests, and (812) that determine if the requestor is proceeding to repeat requests too quickly or generate nefarious requests to the exchange controller. The period between requests, tracked by IP address, optionally combined with an ad or website id, member/surfer id, member/publisher id, or member/advertiser id, (participants) is generally the basis for these tests. However the basis for any test may be varied to eliminate the IP address or to base it upon a time period and alternate data arriving directly or indirectly as part of the request stimuli. Upon summarization of the test results determining if the requestor is too fast (814) the system will proceed to parse the request (816) or reject the request and optionally respond with an error message (820). In an embodiment sensitive to strict security, the response on error may be null as to not give the stimulating device or user any information. This is particularly the case when the user is considered an attacker, a user who intends to do harm to the exchange system. The built-in Firewall, AutoSurf, IP Blast, and Click Fraud tests are preferable features of this application, related to a content exchange controller; however each or all may be excluded or separated within alternate embodiments without impacting the frame-based content presentation methods or other aspects of the content exchange controller and this application. The parsing of the request may be intent upon determining the type of request, the requestor, the participants, the desired content or other targeting or biasing criteria, the network browsing device features, or a signal that a human is present or not. In addition, when security is enabled, a general security check (818) occurs to validate the request as from an authenticated or allowed network browsing device or other source of stimulus, such as an alternate exchange controller that has relayed a request or made an independent request. Upon passing the security test, the process moves to the next logical point in the process (N2). Upon failure, the error response process (820) occurs.
After the security test occurs, a Human Test (822) for the "human is present" criteria passed to the exchange controller (14) when stimuli from a human sensitized network browsing device (10) is made. Because stimulation of the exchange controller can vary, the Human Test is optional depending on the application of the exchange controller. If the Human Test is enabled and passed by testing (824), the exchange controller sets indicators that a human is present (826) and as such may leverage those indicators in later processing during advertiser credit adjustments, publisher reward or penal actions, or surfer reward or penal actions. In an embodiment, this is done through server side cookies or by asserting control data to a database, both leveraged for later lookup during a near term content selection phase (850). It should be understood that an embodiment of the exchange controller may allow many near simultaneous and overlapping requests from many participants to be processed in parallel.
The content selection phase of the exchange controller (850) is described in greater detail by the flow chart presented in FIG. 8a. The process continues at the entry point for content selection (N3) where a search for content meeting the criteria previously derived occurs. If the content is found at step (852), the controller continues to a Format & Respond step (854). During the Format & Respond step, the response may vary based on the criteria arriving with the request. For example, the exchange controller may respond with a frame generation set to deliver advertising or other content, a list of advertisers in its inventory either formatted or otherwise, in-line text ads with optional graphics, or a fully formed web document with search results for later rendering in a frame originated by a Metasearch Engine. While these examples are explicit relative to an embodiment of an exchange controller, they should not be considered as limitations of the exchange controller or this application. Upon response, the exchange controller generally proceeds to adjust credits (858). To determine whether credits are adjusted or not (858), the controller may first determine whether a human is present by testing (856) for indicators previously set (FIG.8, step 826). If set, then the exchange controller may proceed to deduct or otherwise adjust credits (858) for either or both the advertisers whose content was delivered for viewing, or adjust credits of a participant for the effort or time consumed during a content or advertising presentation cycle. Upon adjustment, the exchange controller will return to a ready state (FIG.8 — entry point NO), typically waiting for the next request stimuli.
As can be seen in FIG.8a, the content selection process becomes more interesting when content meeting the original criteria is not directly found in the exchange controller's local inventory. When the related test (852) for local matching content fails, it may fail for a number of reasons. These reasons may include a lack of advertising credits in an advertiser's account, lack of matching content, or lack of matching content that has or has not been shown within certain time limits. Regardless, when content fails to meet matching criteria and passing policy based tests, the original exchange controller (14) may select an Alternate Content Acquisition Method (860) for servicing the request. The alternate methods vary but may include dispatch to an alternate exchange controller (862/870), selecting non-targeted or unrelated content (864), selecting generic content or default content (868), or responding with an error, or when heavily secured, not responding with content under extreme circumstances. If the test for an alternate controller (862) fails, the exchange controller may option to select from general content that does not necessarily match the request criteria but will suffice to service a non-critical request. If the test for general content availability (864) passes, the exchange controller may format and respond (876) in some manner depending on the request type. Following the response, and with the exchange controller's knowledge of what advertisers' content was delivered for, the traditional process of adjusting credits (878) may occur. A reference to the traditional process of adjusting credits refers to an analogous operation that optionally combines the test for human indicators (856) and then adjusting credits (858) accordingly for participants. The process of adjusting credits for participants may further be described to involve debiting an advertiser, rewarding a publisher, rewarding a human surfer, or rewarding a referring member, via credits / points. The credits noted may also be a fractional portion of a credit and vary based on request type and context of exchange controller use as is normally varied by services levied by the request type involved. The invention could easily also debit credits to penalize participants for inappropriate use of the system or services without significant change to the exchange controller. In review, the selection for Alternate Content and the Acquisition Method
(860) had the option of immediately transmitting / relaying the request to an alternate controller. If this option is accepted by the test logic (862) then the request is transmitted through a predetermined and cooperative communications process (870). This process (870) may consist of reformatting or adding to a response, and in particular adding security credentials that are optionally encrypted for consumption and test by the selected remote controller's security test (818). When the exchange controller initiates a request to a remote exchange controller, it will then wait and receive the response (872), and then respond to the original request (874). When the request is processed to this level, the exchange controller returns to ready state (FIG. 8, entry point NO) and waits for the next request, which restarts this process. It is to be noted that this process is generally repeated for content and sometimes occurs simultaneously when the exchange controller is determining content for multiple frames. Also, of interest, is the fact that the content or advertising content URLs embedded in the rendering instructions delivered as the response in the form of a frame generation set by a first contacted exchange controller (14) may be partially from local advertising inventory or the remote advertising inventory of a remote controller on a per frame/per request, intermixed transparently to a network browsing (10) or other requesting device.
As stated, the exchange controller (14) varies the response content (FIG. 1, stream 1) and formatting of the response based on the requestor and criteria sent in the request. Of the response types the exchange controller is capable of responding with, these include a frame generation stream, a web document providing navigation information, single or multiple in-line ads with optional graphics, formatted or unformatted advertiser inventory information (where unformatted may be an ASCII equivalent list), a URL useful for filling the SRC tag of a frame within a frameset generation stream, or a more robustly formatted web document representing inventory as can be useful in a distributed Metasearch Engine model.
FIG. 9 is a schematic diagram of a MetaSearch system leveraging a website or equivalent as the provider of a starting web document for the web search process. The Metasearch Engine (90) is embodied as a web server delivering a web page rendered initially by a URL reference in the browsing device (10). The initial request for the metasearch website occurs through a normal URL reference in the network browsing device or by another URL reference. Upon receipt of the request by the server housing the Metasearch Engine (90), the server responds to the browser and the network browsing device renders the web page that may act as a search interface for the user. This process is depicted by analogous communications (MO & Ml) that initially do not contain search criteria. It should be noted that the details of the process of rendering the initial web document (interface) that allows submission of search criteria to the Metasearch Engine (90) by the browsing device are not necessary to an understanding of the concepts described herein. The presentation of the initial interface for search submission may be a website page on a server or a web document stored locally in the web browsing device, whereby no network communications occurs to develop the initial search interface, which may be a web document containing standard HTML level forms for filling and later posting to the Metasearch Engine (90). Once the interface is presented, upon adjustment of the search criteria within the web browsing device, the user may submit/transmit that criteria (MO) to the Metasearch Engine (90) whereby the Metasearch Engine (90) selects a list of remote exchange controllers (14a..l4n) and formats a web document containing frames (or iframes or their equivalent), and SRC tags for each as related to the selected exchange controllers (14a...14n). The SRC URL for each frame is returned by the engine 90 and not necessarily handled or processed in any other way. This feature of the system provides the responsiveness of the exchange controller for use in searching local adverting content and other information about its advertisers' websites and their websites' content. The SRC URLs may contain arguments or attributes representing any search criteria, compensation oriented ad or participant ID, or security credentials for later processing by an exchange controller. Upon receipt of the web document (Ml) from the Metasearch Engine (90), the normal operation (http equivalent requests) of the rendering process of the network browsing device (10) dispatches the requests to remote exchange controllers (M2a, M2b, .. M2n) and waits for content to be returned and rendered by each frame. Each of the frames (or iframes) of the browsing device receive formatted web documents (M3a, M3b, .. M3n) representing the content of the advertisers (34a, b,..n, 36a,b,..n, 38a,b,..n) derived from each of the exchange controllers selected by the Metasearch Engine (90). No knowledge or processing of any content occurs by the Metasearch Engine (90) and the combination and final presentation of the data received from the separate exchange controllers is managed solely within the network browsing device. As such, this MetaSearch Engine (90) is considered passive. The Metasearch Engine (90) delivers a web document consisting of a robust frame/iframe generation stream and the network browsing device completes acquisition of ultimate content for each frame by requests (M2a, M2b, .. M2n) and renders the responses (M3a, M3b ... M3n).
In the disclosed embodiment, the exchange controller supports an active centralized metasearch engine that can actively combine the results received from separate exchange controllers. However the active model of metasearch engine is common to the Internet, and is not novel per se. The novelty of the MetaSearch Engine (90) described herein is related to: selecting and leveraging the disjoint exchange controllers, its operation as a MetaSearch Engine (90) being effectively virtual whereby no processing of search or content is done by or within the MetaSearch Engine (90), it is effectively dataless and is wholly data optional relative to actual content, and simply forms a document containing containers and instructions for the network browsing device to actually dispatch and coordinate collection and presentation of search results implicitly, hi effect, the MetaSearch Engine (90) enables a network-browsing device to become the sole stimulus to the exchange controllers and sole processor for collecting and rendering of search results, and sole presentation mechanism for users. Once the initial document containing frames or equivalent containers including the source URL for each frame that further stimulate the respective exchange controllers is delivered to the network-browsing device, the entire process of search result acquisition and rendering is completely transparent to the MetaSearch Engine (90). It should be noted that this is also completed without the need for browser-based scripting languages or cookies of any kind. The document generated by the Metasearch Engine (90) may inter-stitch other advertisements, such as banners, between the framed sections. FIG. 10 depicts an example of a resulting search encompassing one entire search, request, and rendering cycle, and notably using one type of many supported criteria. In this example, the Metasearch Engine has selected an exchange controller operating under a name of Bionic 3, as shown, as well as other exchange controllers whose responses are not shown pictorially due to lack of browser window real estate, but may be displayed in this case by scrolling the window of the rendering device using its navigation features. Other more ergonomic presentation layouts may include, but are not limited to, overlapping or expandable divisions containing framesets or iframes while still maintaining the overall design of an exchange controller based passive MetaSearch engine.
An advantage to using exchange controllers for use in a distributed Metasearch Engine (90) is that the advertising content and references to advertisers' websites is organized incrementally at each of N exchange controllers. This organization occurs by human input (manually) and by automated means, often with human review and adjustment, in an exchange controller and advertising system of this nature. This is indirectly advantageous in developing high levels of targeting related to searches for the varied content in each of the exchange controllers. The advertiser's involvement by opting to enter, or further edit and maintain, ad content in the exchange controller, as currently implemented in the form of an advertising exchange, provides for the highest possible search result and ad content quality as compared to content injected autonomously into databases by use of Internet "spidering", or other Internet "robot" methods. Such methods are commonly used by alternate, non-advertising exchange-based, search engine architectures. The methods used by alternate search engine architectures for building up a reference dataset to provide robust search are under scrutiny relative to trespass permissions, intellectual properly rights, and privacy issues. The exchange controller-based implementation of a search architecture including one or more of a passive MetaSearch Engine (90) are not challenged by such problems, yielding other potentially significant legal and political advantages over prior art. Another practical advantage of this metasearch system is the computing power required to gather content and to conduct robust searches globally is inherently distributed among all the exchange controller nodes, advertiser's and content provider's servers, and other components of the metasearch system. The Metasearch Engine (90) and system is a robust example of leveraging the functionality of the exchange controllers and the network browsing device's ability to develop segmented portions of real estate in a window where any number of web documents from each of N exchange controllers may be rendered. Upon rendering, the document within each frame or iframe will contain clickable features and when clicked by a user, the browser will initiate a related http request containing the SRC URL of advertising content to be rendered within the current frame, or be rendered developing an entirely distinct new window for presentation of the advertiser's content. It should be noted that the SRC URLs may be directed at the exchange controller for accounting purposes before a dispatch occurs to the advertiser's web page content/server (34a, b,..n, 36a, b,..n, 38a, b,..n) thereby potentially tracking clicks, and allowing various credits adjustments as would be normal for an advertising exchange. This ultimate ability to derive advertising content indirectly and further adjust credits in a distributed fashion among any of N exchange controllers without the Metasearch Engine (90) being content-aware makes this a scaleable solution for global organization of the Internet. While some general information about the available exchange controllers may be maintained by a Metasearch Engine (90) for purposes of selecting exchange controllers, the effective request for content by criteria is only passed along to each of the exchange controllers indirectly through the SRC URL generated for each frame/iframe on a per-controller basis.
The Metasearch Engine (90) also may control or limit the number of exchange controllers utilized during a search cycle, and other subtle items of lesser importance to the overall system and this disclosure. Examples of such items may be, the choice of human readable language utilized, or whether content related to search results, when clicked, remains within the portion of the browsing device window originally displayed or is displayed in a new browser window of some form. FIG. 9a is a flow chart of the internal process logic of the Metasearch
Engine (90). Immediately following the ready state (SO), a test for a request being present (900) is made. If a request is not present, the test results in a return to ready state (SO), thereby effectively waiting for a request indefinitely. When a request is received, the test (900) results in continued processing, imitating an optional logging of the request (902), and further a test of the request (904). If failure occurs, an error message (920) is generated as a response and the system returns to ready state (SO). If the request is valid, advanced protective tests (906) of the form of Firewall, AutoSurf, IP Blast, or Click Fraud tests, or others, previously discussed may be conducted. A test for security credentials (908) may also be conducted. If security passes, the process will proceed to the next process step (Sl). If failure occurs, an error message (920) is generated as a response and the system returns to ready state (SO).
The process continues with a selection of exchange controllers (910) to derive search engine results from. In the disclosed embodiment, the exchange controllers are selected based on a variety of criteria including but not limited to: a virtual plane, the mood of the consumer, the superstition characteristics of the consumer, the personality characteristics of the consumer, indicated preferences by the consumer or a consumer's profile, the amount of time a consumer would like to retain a set of search results before allowing the search results to change even when same criteria is applied (dataset melting), the time of last use of the exchange controller, zip code, religion, organization/club, language, galaxy, planet, hemisphere, continent, country, region, district, state, county, city, town, subdivision, building or complex, address, country code, area code, keywords, text/patterns within a description, text/patterns within a meta description field, text/patterns within the content of a website or related ad content, stock symbol, SIC (Standardized Industry Code), company revenue, company size, member rating, intended audience, performance measurements of response time and reliability ratings, geographic longitude, geographic latitude, time delta from GMT, and by various category. While some of these search criteria may be non- novel or commonplace on the Internet, the novelty and uniqueness of the current invention is noted primarily by the addition of allowed criteria based on new concepts such as; the mood of the surfer, the personality of the surfer, the superstition level of the surfer, by virtual planes, and by dataset melting controls. It is also notable that pseudo-virtual criteria of galaxy and planet or the like are fully supported and also help to develop an indirect level of virtual planes for organization of the Internet in a new and novel manner. Upon selection of the exchange controllers to leverage for this request, a web document is formed (912) consisting partly of frames (or iframes), and the SRC URLs of the frames set to the selected exchange controllers with appropriate criteria and formatting control information to cause the remote exchange controller to conduct a search and return the formatted results to the browsing device. In an embodiment, a web document (FIG.9, message Ml) generated by the
Metasearch Engine (90) is communicated back (914) to the web browsing device (10) where it is rendered and alternate http requests are transmitted to the exchange controllers to conduct the search on a per-frame basis. The Metasearch Engine (90) may also record the requests, request criteria, and also record what engines were last used to ensure fair and balanced dispatch of requests among the exchange nodes in the system. Upon response (914) and recordation of the transaction (916), the Metasearch Engine (90) returns to a ready state (SO) and waits for a next request. It should be noted that the Metasearch Engine (90) may accept many and overlapping requests without negative impact.
FIG. 10 depicts output of an exchange controller in an iframe container of a centralized Metasearch website page. The notable features of this page are (10a) regular advertiser content ad presentation, (10b) featured or sponsored ad content presentation, (10c) optional container to capture the results from the exchange controller specific search output, and (1Od) some form of user input to adjust search criteria and initiate the search request. The system does not require the latter feature (1Od) as all criteria may be passed on the URL, or in an alternate embodiment by equivalent communications characteristics supported by an underlying networked technology such as an HTTP POST operation, and the human interface features are simply a convenience. The ads that are presented in any areas may include non-paid-for ads or spider derived content as filler material to present a robust search result to users and is decided by a plan file that biases how many of each ad type are presented and the layout of the presentation.
FIG. 11 depicts the same exchange controller based search engine used in FIG. 10 but controlled by a different plan file. In this example layout, (1 Ib) depicts sponsored or featured ads layed into the presentation horizontally and in a different quantity of ads, and (Ha) depicts regular advertisers' ads. To demonstrate the lack of need for the human optional interface, this example passes all criteria on the URL only. This capacity is useful for framing search results and content generated by disparate exchange controllers coordinated by a central, local data optional, Metasearch engine intent on leveraging browser device based parallelization of the search activity for consumers via frame oriented dispatch. An exemplary input file to a portion of the exchange controller that loads the input file as a template map, and layout control plan for determining the construction of, and presentation of, search results, for the results depicted in Figure 10 follows:
# Default controller plan file for SE templates with vertical featured ads rpp 8 setp 2 set 3 ser 3 serm 2 fpp 7 seftp 2 seft 2 sefr 3 body /templates/s/O/searchbody.html header prot://optionalbydomain.com/templates/s/0/searcnheader.html footer /templates/s/O/searchfooter.html rad /templates/s/O/searchline.html fad /templates/s/O/feature.html ess http://www.bionictraffic.net/templates/s/0/style.css fmode v radurllen 35 radtitlen 75 raddesclen 175 radcontlen 200 fadurllen 50 fadtitlen 58 faddesclen 150 fadcontlen 200
// End of plan 10
//
// Special note: Plan parts loaded by system and the ess (stylesheet)
// is applied noting that the stylesheet matches the components of // this plan (body, header, footer, rad, fad). Both ess and this plan
// file may be local to the exchange controller or remotely referenced
// transparently for use by the exchange controller.
// Lines in this control file beginning with double slashes or the
// octothorp (#) symbol are considered comments and ignored by // the machine processing this file.
An exemplary input file and layout control plan for the search results illustrated in Figure 11 follows: # Alternate controller plan file for SE templates with horizontal featured ads rpp 4 setp 2 set 3 ser 3 serm 2 fpp 3 seftp 2 seft 2 sefr 3 body prot://optionalviadomain.com/templates/s/redO/searchbody.html header /templates/s/redO/searchheader.html footer /templates/s/redO/searchfooter.html rad /templates/s/redO/searchline .html fad /templates/s/redO/feature.html css http://www.bionictraffϊc.net/templates/s/redO/style.css fmode h radurllen 35 radtitlen 75 raddesclen 175 radcontlen 200 fadurllen 50 fadtitlen 58 faddesclen 150 fadcontlen 200
// End of plan 11 //
// Special note: Plan parts loaded by system and the ess (stylesheet)
// is applied noting that the stylesheet matches the components of
// this plan (body, header, footer, rad, fad). Both ess and this plan
// file may be local to the exchange controller or remotely referenced // transparently for use by the exchange controller.
// Lines in this control file beginning with double slashes or the
// octothorp (#) symbol are considered comments and ignored by
// the machine processing this file.
As a significant business stimulus and motivator, the exchange controller search engine support logic is designed to allow third parties to easily override the layout and design of the search results and is a key part of the exchange controller's use as part of the overall search engine and advertising business model and key feature of this application. The easy ability for third parties to use and customize interfaces and search systems around the exchange controller promotes interest and ultimately increases advertising volumes, therefore this powerful capability of the exchange controller to digest and combine local or distributed presentation templates and parts, including style control sheets, is important. The digester and formatter activities in the exchange controller combines the plan, the parts referenced in the plan, and the style sheet referenced in the plan or by override arguments in the URL, with ad inventory, to dramatically vary the entire final presentation of results. The variance may include the number of and types of ads, position and direction of ads, and colors and font sizes and other cosmetic matters specific to a user community or important to the designer of the plan, templates, and choice of incremental styles applied. The engine is a substantial abstraction and advancement over prior art relative to search criteria and rendering capabilities. This capacity effectively allows for any type of rendering device to be supported by any third party simply by changing a plan, the templates, and a style sheet that are supported by the device, and may be exercised without any change to the exchange controller logic. In practice, precautions and limits of the number of ads that a third party may request are implemented internally to prevent misuse of computing resources. An example of the controller's capabilities include, but are not limited to, the generation of in-line text ads with optional graphics, DHTML layer based ads, or other types, simply by changing the plan and template files associated with the desired ad type. No changes to the exchange controller are required to generate other ad types contingent on the ad type's capacity to be segmented into a plan and the template component files digestible by the controller and understood by the intended browser device technology. FIG. 12 is a flow chart of the logic path used by the individual exchange controllers potentially leveraged by a central Metasearch engine as demonstrated in FIG. 10, or used in a standalone mode as demonstrated in Fig. 11. Each controller is designed to be interrupt-driven by HTTP requests but as specified can be either a polling model or interrupt-driven and this aspect is unimportant. The local exchange entry point (LO) depicts the start of the overall process that is exercised at the local exchange controller, as compared to a metasearch engine that may directly or indirectly call upon this, or many other, exchange controller for search results. If a request is present (948) the process will continue to parse criteria (950) from the request and do basic syntax checking on the request (952). Otherwise the process returns to a wait state (LO). Upon successful receipt and parsing of a valid request as tested (952), the exchange controller leverages its internal firewall and security tests (956) as described in previous literature, and if tested ok (958), proceeds to load and digest (960) the critical layout plan file, templates, and stylesheet involved (as indicated by the exemplary plan files set forth above). It should be noted that in-line style sheets may be used in the templates to replace or supplement the standalone stylesheet as well. The detail of the location of the stylized information applied to final layout and templates is implementation dependent. The disclosed example is operating within the domain of the Internet and web-based document stylesheets. The plan file and templates referenced in the plan file, combined with the styles applied to the templates as referenced in the plan file, determines the structures and all details for laying out the search results. Part of the logic adjustments implicitly set by the plan file are variables that adjust the search queries (962) relative to type and quantity of ads needed. Generally, however optionable by the plan, paid-for advertising content is normally presented first (964) and in generally more advantageous positions in the layout results, however the layout is completely flexible regarding what ads are displayed where in the layout. That aspect is transparent to the engine, and allows the layout designer to determine that aspect. The exchange controller allows for advertisers to bid enhance their positions in the layout by increasing the number of impression credits used for each presentation, within certain time constraints. This business model and current implementation have a reverse date/timestamp order of last ad presentation round robin-like algorithm (ROOLAP algorithm) that guarantees all advertisers' ads matching any pattern or search criteria found within each exchange controller's inventory when compared to stored ad characteristics and ad meta-content, is ultimately presented. This algorithm concept is a key business advantage to the overall application of exchange controllers as a system and as compared to keyword bidded and other systems prevalent on the Internet today. The meta-content related to an ad refers to the stored searchable characteristics of the ad or its owner and a subset or modified ad content as asserted by the exchange controller or further edited by a person such as the advertiser or exchange controller administrator or their agents. This same algorithm is also applied to non-paid-for advertising further enticing use of the search engine and advertiser capabilities, noting that non-paid- for content is presented only secondary to paid-for advertising content and customarily yet optionally in less advantageous positions in the layout in practice. To complete the business model, this same ROOLAP algorithm is applied at the Metasearch engine level for biasing the selection of exchange controllers utilized during search dispatch, thus providing a similar business and implementation guarantee to all advertisers within an overall network or within a sub-segment of a network of exchange controllers. The algorithm and business guarantee is applicable to exchange controllers, and thus advertisers, found below any one of many possible Metasearch engines that may be implemented by repetition or duplication. When non-paid-for content is found, the exchange controller leverages the preparation of the content and causes specific URL arguments to be overridden by a referring or affiliate user, potentially an affiliate of many of the websites or ads shown in the search results, without negative impact to any remaining URL arguments. The exchange controller accepts a large set of information from a referrer and prepares for the possibility of many URLs presented in the search results to allow affiliate ID overrides. The override of URL arguments allows for third parties to refer users to the search engine or website with their own affiliate IDs so that the exchange controller engine may optionally override the URL arguments, or inter-stitch, the referrers' IDs so that the referrer may benefit financially or otherwise by any sales induced during the session by the referred user. This capacity helps referrers earn additional income while causing additional advertisements to be displayed to potential consumers and ergo increasing paid-for ad revenue for the exchange owner and sales for advertisers indirectly.
As part of the core capacities of the exchange controller architecture, the exchange controllers have the innate ability to communicate with each other and share advertising content. This capacity is further extended and supported to search criteria passing and the exchange controller's ability to digest the criteria locally and return an immediate formatted result or relay it onto another exchange controller for remote processing or potential additional relays. This capacity helps improve search results for end users and targeting capabilities for advertisers so that their ads are displayed to the most desirable users. This relay of requests is practiced if insufficient content is found locally (968) to fulfill the request as planned.
In the disclosed implementation, the exchange controller checks for an indicator whether the request coming into it was originally relayed (970). This is generally optional but provides a unique approach to thread search delegation to remote controllers by setting up a container (972) for the browsing device and dispatching an HTTP header redirect containing the search criteria to the container, in this case an iframe, although other containers can be used equally as well. This approach leverages current technology of modern browsing devices that support the iframe container and HTTP header redirect but is not demanded as the exchange controller can dispatch, acquire, and format the results directly, but for performance and transparency the container base approach has been chosen. Future processor and networking speeds will approach performance where this method is insignificant, but until that date this method is efficient relative to the performance of modern technology and the Internet. As such, this approach further allows the local exchange controller to format whatever results it can from local advertising inventory and deliver the results in an expedient and dynamic manner to the end user while the browsing device triggers the next search from the inter-stitched container to an alternate exchange controller and does this in parallel with rendering of the exchange controller's local results. This improves end user perception of usability, response time, usability related to search quality, and ultimately targeting by continued search and relay for better-targeted ads and better matched content that may exist on alternate controllers.
In order to ensure that requests do not propagate forever, or an exchange accidentally is configured to send requests to itself, or a group of exchange controllers are configured to relay requests back and forth indefinitely, a counter- indicator referred to as a request hop-count is set and later adjusted at each relay or hop to the next engine and tested (974) till it reaches a predetermined limit, traditionally set to a positive number and decremented to zero, and then the transaction is no longer relayed and a default or failure response is provided. Of course, a test (976) is also made to see if the exchange controller is allowed to, and is configured to, relay requests. This process of relaying the criteria is managed (978) and as such the managing logic can dispatch and collect results, or simply format an appropriate URL with criteria and initiate the HTTP header redirect. After content or remote requests are formed, the process continues to a formatting step (980) whereby the components of the plan, header, body, footer, and the results of the queries are combined with the remote relay containers, and a full document, generally with optional navigation features added, is transmitted to the network browsing device. Upon transmission, the exchange controller begins a process of managing a robust set of adjustments to the dataset containing ad inventory, advertiser information, end user information, and third party or affiliate information. It should be noted that these adjustments to the dataset or related credits are done specifically after transmission of the formed document to the network device to further ensure expedient response times for end users. This adjustment activity occurs as part of the recording of transactions step.
The recording of the transaction step (982) involves several incremental operations. Normal recording of network activity such as referring website information, IP address of the requests, and time or type of requests are generally logged for system and advertiser reference. Consumers and publishers are optionally credited with fractionable compensation credits for participating with the service, paid-for advertisers' credits are adjusted and consumed if their ad is presented within the guidelines allowing consumption of impression credits, and impression credit bidded ads are further adjusted based on the bid position and number of impression credits allocated to the bid. This is traditional activity. Beyond the traditional exchange controller activity, a special operation referred to as dataset "melting" or destabilization is optionally implemented. This activity effectively refreshes the search results on a per consumer basis. To understand this, a review of traditional implementations of search engines is useful for comparative purposes.
In traditional technology, data presented from search engines is highly static over short, or sometimes even long, periods of time. This is somewhat problematic for searchers who return to similar search results and still cannot find desired content because the search engine does not know the searcher has already reviewed the same search results shown, ergo frustrating users. In a "meltable" dataset model, as implemented by this invention, the dataset and search results change after some controlled period of time. The time period is adjustable by the system administrator and end user (the searcher) in this model. This capability provides a more dynamic search result to end users, and increases advertiser rotation and ad volume, ergo ad revenue for the exchange controller operators. The exchange controller provides this capability on a per-user basis as the recorded transactions and timestamps of presentation are tied to the remote IP address of the rendering device used by the end user for later reference. While another indicator such as a login profile and ID can easily be used to supplement or replace this, or some other network information discerning the individual user in the event of a technology change, the default application leverages the remote IP address to allow each user to determine how long a search result dataset is frozen (stable). The time delay in this model is referred to as the dataset melt delay time. Upon completion of the logging and dataset melt adjustments, the system returns to a normal wait state (LO) in preparation for a next request. The exchange controller has an ability to allow advertisers with intelligent website programming to leverage human and environmental control characteristics passed to the exchange controller during stimulus events. The value of the human characteristics and environmental controls are set by the stimulus device and may be leveraged in programming to provide the advertiser website an ability to better target or present information or advertising to the surfer. The argument values passed through the exchange controller are optionally appended to the advertiser's URL during presentation of advertising. The values of the arguments are transparent to the exchange controller thus allowing support for futuristic devices unknown at time of this disclosure. Examples of such futuristic devices may be environment controllers that change ambient lighting, temperature, sounds, or aromas for the surfer. While such devices may or may not exist at this time, the exchange controller is enabled to pass such control information along to the advertiser's website, enabling the advertiser to leverage this information to further enhance a surfer's experience. While it is understood that some information of similar nature will likely be attainable through future browser and associated web server technology, the exchange controller currently provides a flexible and generic conduit for passing such information along to the advertiser website and may be leveraged by creative advertisers until such time as similar information for enhancing a surfer's experience is available through other mechanisms. ) Although embodiments have been described with reference to the presentation of advertising in a browser window on a network appliance, the principles are equally applicable to the display area of any suitable HTML or XHTML-rendering device. Further, the plan digester of the exchange controller provides a robust presentation control system, that can be extended to other devices without significant change to the exchange controller logic. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive.
Although the invention has been described with reference to specific embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the true spirit and scope of the invention. In addition, modifications may be made without departing from the essential teachings of the invention. Formally, the scope of the invention is indicated by the appended claims rather than the foregoing description, and all changes that come within the meaning and range and equivalents thereof are intended to be embraced therein.

Claims

WHAT IS CLAIMED IS:
1. A method for advertising via the Internet or an equivalent private network on a browsing device in conjunction with requested data, comprising: in response to a request to display said data, delivering a frameset stream to a receptive rendering device to thereby divide a display area on said device into a plurality of frames; retrieving the requested data from a network resource and displaying said data in one of said frames; and retrieving advertising from an advertising server and displaying said advertising in another one of said frames.
2. The method of claim I5 wherein said browsing device is an HTML5 or XHMTL, or XML presentation descriptive language capable rendering device that has a display area and supports rendering of web documents containing language equivalent frameset and frame tags.
3. The method of claim 2, wherein said display area comprises a window generated by a browser application.
4. The method of claim 1, wherein said network resource comprises a server that is distinct from said advertising server.
5. The method of claim 4, wherein each of said servers are respectively associated with different IP addresses as determined by DNS resolution of unique, symbolic, domain names on the network.
6. The method of claim 5, wherein said servers comprise processes that execute on the same physical machine.
7. The method of claim 5, wherein said servers comprise processes that execute on different respective machines.
8. The method of claim 1, wherein said display area is divided into three frames, in which said requested data is displayed in a first one of said frames, said advertising is displayed in a second one of said frames, and a third one of said frames comprises a navigation frame that enables a user to selectively display the data in said first frame or the advertising in said second frame.
9. The method of claim 8 wherein said data, when selected by the user via stimulus to features within the navigation frame, is displayed in a window that is distinct from said display area.
10. The method of claim 8 wherein said advertising, when selected by the user via stimulus to features within the navigation frame, is displayed in a window that is distinct from said display area.
11. The method of claim 8 wherein said advertising, when selected by the user via stimulus to the features within the navigation frame, replaces the display of the frames and their contents on said display area.
12. The method of claim 8 wherein said requested data, when selected by the user via stimulus to features within the navigation frame, replaces the display of the frames and their contents on said display area.
13. The method of claim 1 , wherein each of said plurality of frames has the ability to display an entire document or entire properly formatted web page.
14. An exchange controller comprising a processor that is accessible via a network, retains data and metadata about websites and their respective owner advertisers, and is configured to generate a response to a stimulus that includes a request for desired information about said websites and their owner advertisers.
15. The exchange controller of claim 14 wherein the response includes at least a transmission of information to a requesting device.
16. The exchange controller of claim 15 wherein the information contained in the response from the exchange controller is a frameset generation stream that causes a display area on the requesting device to be divided into a plurality of frames, said information including; first data that references desired content and enables said requesting device to retrieve the desired content from a first resource on said network for display second data that references advertising content and enables said device to retrieve said advertising content from a second resource on said network for display.
17. The exchange controller of claim 16 wherein said desired content is displayed in a frame distinct from said advertising content.
18. The exchange controller of claim 16 wherein said desired content and said advertising content share requesting device window real estate and are viewable at the same time.
19. The exchange controller of claim 16 wherein said desired content or said advertising content can be replaced by information that causes the rendering of navigation features.
20. The exchange controller of claim 16 wherein each frame can be further split into a plurality of frames.
21. The exchange controller of claim 14, wherein said exchange controller is comprised of multiple parallel exchange controllers.
22. The exchange controller of claim 16, wherein said first data and said second data each comprise a direct link to said first resource and said second resource, respectively.
23. The exchange controller of claim 16 wherein said first data and said second data each comprise at least one reference back to an exchange controller.
24. The exchange controller of claim 16 wherein, in response to requests containing at least one reference, said exchange controller causes a transmission, to said requesting device, of redirect information that causes said requesting device to transmit requests to said first resource and said second resource for said desired content and said advertising content, respectively.
25. The exchange controller of claim 16 wherein said first and second data comprise references back to said exchange controller, and wherein, in response to requests containing said references, said exchange controller transmits requests to said first resource and said second resources to obtain said desired content and said advertising content, respectively, and in response to receipt thereof from said first resource and second resource, forwards said desired content and said advertising content to said requesting device for display in said plurality of frames.
26. The exchange controller of claim 14, wherein said exchange controller supports generation of the information in the form of an XHTML document.
27. The exchange controller of claim 14, wherein said exchange controller supports generation of the information in the form of an HTML document.
28. The exchange controller of claim 14 wherein said exchange controller supports generation of the information in the form of an XML document.
29. The exchange controller of claim 14 wherein said exchange controller is configured to generate the response information by: generating said information in the form of a document, including at least a frameset defining a plurality of frames to be rendered within a requesting device's display area; causing the requesting device to retrieve an advertisement from a resource that is accessible via the Internet; and causing the requesting device to display said advertisement within a frame in the frameset.
30. The exchange controller of claim 29 wherein said document is generated in response to data provided by a resource over the Internet via an exchange controller, and said resource is a computing device that is different from said exchange controller.
31. The exchange controller of claim 14, wherein the controller comprises a computer readable medium storing instructions for at least generating a response in the form of a document containing a frameset that defines a plurality of frames and induces a requesting device to at least digest said frameset, divide its display area into a plurality of frames, and display a complete web document in each frame.
32. The exchange controller of claim 14, wherein the exchange controller comprises a computer readable medium storing instructions for interpreting a set of content selection stimuli including at least one or more of real or virtual: ad type or class, topics of interest, anticipated mood of a surfer that would be serviced by the website or its related content, superstition characteristics of the surfer, personality characteristics of the surfer, language, religion, organization, virtual plane, galaxy, planet, hemisphere, continent, country, region, district, state, county, city, town, subdivision or neighborhood, complex or building, address, telephone calling code for country, area code within the country, postal code, phone number, keywords or random string patterns, string patterns within the description, string patterns within the content, string patterns within the metadata, string patterns within the URL, string patterns within the title, latitude, longitude, stock market symbol, company size, company revenue, company standardized industry code, desired audience, time delta from GMT, website hosting server performance and reliability characteristics, global ranking or member rating, and/or which has one or more blogs, has one or more forums, has one or more RSS feeds, has one or more applications available, has video, has audio, has multimedia, has public domain content or rights, has noise, has disconnected or alternate ads, has virtual reality capabilities or controls, has 3D visualizations, by resale rights or other shared or transferable or conveyable rights, is dynamic or static, is non-adult safe or not, by minimum age, by maximum age, by intended audience, string patterns within captured blog or forum data.
33. The exchange controller of claim 14, wherein the exchange controller comprises a computer readable medium storing instructions for causing stimuli to be transmitted to an alternate exchange controller when appropriate content is not found on the exchange controller.
34. The exchange controller of claim 14, wherein the exchange controller comprises a computer readable medium storing instructions for transmitting and reading cryptographically protected communication among like exchange controllers.
35. The exchange controller of claim 14, wherein the exchange controller comprises a computer readable medium storing instructions for blocking stimuli that stimulates the exchange server at a rate greater than a predetermined threshold.
36. The exchange controller of claim 14, wherein the exchange controller comprises a computer readable medium storing instructions for managing communications among like exchange controllers.
37. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for generating an alternate number of frames within a frameset generation stream and varying the dimensions of each frame dynamically based upon a percentage of a device display area determined to be usable for advertising or navigation content.
38. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for directing said desired content into one of the plurality of frames while directing navigation content into another of the plurality of frames.
39. The exchange controller of claim 38 wherein said desired content and navigation content each comprise a complete web page equivalent document and are each rendered separately and independently in a respective frame.
40. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for directing said advertising content into one of the plurality of frames while directing navigation content into another of the plurality of frames.
41. The exchange controller of claim 40 wherein said advertising content and navigation content each comprise a complete web page equivalent document and are each rendered separately and independently in a respective frame.
42. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for adjusting the frequency of responses that include a frameset generation stream.
43. The exchange controller of claim 42 wherein a frameset generation stream is periodically not returned as a response.
44. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for controlling a frequency of dispatch of frameset generation streams by implementing an internal caching of requesting device information and time of dispatch of last frameset generation stream to said device.
45. The exchange controller of claim 44 wherein frequency of dispatch is controlled without requiring an enabling of device oriented browser cookies.
46. The exchange controller of claim 44 wherein frequency of dispatch is controlled without requiring an enabling of server-side cookies.
47. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for preventing the charging of, or deduction of credits of, an advertiser, unless having received a request containing proper credentials.
48. The exchange controller of claim 47 whereby proper credentials are provided when the root source of stimuli is indicated to be a human being.
49. The exchange controller of claim 48 whereby a human being is indicated to be the root stimulus upon manipulating the network browsing device within a predetermined time period prior to the request emitted from the browsing device to the exchange controller.
50. The exchange controller of claim 48 wherein verification of a human being occurs by a form of Turing test.
51. The exchange controller of claim 50 wherein the Turing test is based on human manipulation of a feature of the network browsing device.
52. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for responding with at least one of detail, summary, or metadata, representing exchange controller advertising inventory.
53. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for charging advertisers in response to detecting a stimuli that is expected to have resulted from a human action.
54. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for charging advertisers, except in cases where a stimulus is detected that is expected to have resulted from a non-human source.
55. The exchange controller of claim 38 wherein the exchange controller comprises a computer readable medium storing instructions for enabling features of the content displayed in the navigation frame to cause a stimulus.
56. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for adjusting a style of presentation of the desired content and the advertising content.
57. The exchange controller of claim 49 wherein indicated human stimulus is derived indirectly through a cooperative human-sensitized network browsing device when a human stimulates said device physically or electro-mechanically by manipulation of the device interface.
58. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for responding to a non- human stimulus.
59. The exchange controller of claim 16 wherein the exchange controller comprises a computer readable medium storing instructions for generating a frameset designed to produce at least two independent frames within one browser window.
60. The method of claim 59, wherein said instructions further cause a requesting device to display content or navigation features within one of the two independent frames, and display content or advertising within a second one of the two independent frames.
61. The method of claim 59, further comprising a requesting device storing instructions for executing the following steps: receiving a first set of information from a first server; displaying the first set of information in a first one of the two independent frames; receiving a second set of information from a second server; and displaying the second set of information in a second one of the two independent frames.
62. The method of claim 59, further comprising a requesting device storing instructions for executing the following steps: displaying information requested by a network browsing device in one of the two frames; and displaying information that was not requested in the second frame.
63. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for responding to stimulus by forming a complete and formatted web document presenting information about selected advertisers as derived from the exchange controller's inventory.
64. The exchange controller of claim 63 wherein the advertisers are selected on the basis of criteria received with a request associated with the stimulus.
65. The exchange controller of claim 63 wherein information about advertisers and the associated websites owned by said advertisers is recorded in a machine readable medium of the exchange controller and constitutes the exchange controller's inventory of advertisers.
66. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for allowing advertisers to specify the content displayed in the first of said frames.
61. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for allowing advertisers to specify the content displayed in second of said frames.
68. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for allowing advertisers to specify the content to display in a third of three frames.
69. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for allowing an advertiser to specify first data in one frame while alternately displaying content consisting of a portion of the remainder of said advertiser's inventory in an alternate frame.
70. The exchange controller of claim 61 wherein the exchange controller comprises a computer readable medium storing instructions for allowing an advertiser to specify first data in one frame while transparently deriving second data from an alternate exchange controller.
71. The exchange controller of claim 70 wherein the exchange controller comprises a computer readable medium storing instructions for allowing an advertiser to gain credit for presenting other advertiser's content as second data.
72. The exchange controller of claim 66 wherein the exchange controller comprises a computer readable medium storing instructions for charging an advertiser for presenting said advertiser's advertising inventory.
73. The exchange controller of claim 72 wherein an advertiser's inventory consists of data describing the advertiser's website and business that is required to satisfy content selection criteria supported by the exchange controller.
74. The exchange controller of claim 73 wherein said data is input into the exchange controller by the advertiser, or representative of the advertiser, through an interface.
75. The exchange controller of claim 74 wherein the input through said interface is at least partially automated by use of software external to the exchange controller.
76. The exchange controller of claim 14 wherein a response to stimuli is delivered in the form of a URL representing an advertiser's website.
77. The method of claim 2 wherein the presentation descriptive language includes at least a tag construct to support the division of a rendering device display area into multiple controllable areas, each capable of digesting and rendering a complete document.
78. The method of claim 1, wherein the display area is divided by a frameset including at least a frame dimensioned so that the frame is viewable in the browser window.
79. The exchange controller of claim 14, wherein said exchange controller has the ability to adjust the credit balances of participants based on usage of the services provided or activated by the participant interacting with the exchange controller.
80. The exchange controller of claim 79, wherein said participants are advertisers, publishers, consumers, or third party referrers.
81. The exchange controller of claim 14, wherein said exchange controller has the ability to select and improve the placement of ads to advertisers that allow consumption of additional credits for the benefit of enhanced ad presentation.
82. The exchange controller of claim 14, wherein said exchange controller allows for a process of stabilization or de-stabilization of the dataset used for deriving search results based on a time-based delay, and said process is enabled on a per-user basis whereby the dataset is periodically de-stabilized and re-stabilized causing a controlled dynamic change to search results on a controlled periodic basis per user.
83. The exchange controller of claim 14, wherein said exchange controller allows for redefinition of search result output and layout by use of digest and processing of local or remote input control files to vary the type and quantity of ads presented as well as overall cosmetic details of the presentation.
84. The exchange controller of claim 83, wherein said input control files and all related components of the presentation of search results are located on an Internet host or domain and referenced remotely by use of a standard URL for digest by the exchange controller allowing third party reprogramming and customization of user search interfaces and search results presentation.
85. The exchange controller of claim 14, wherein said exchange controller has the ability to accept initial arguments from a referrer that determine the referrer's affiliate IDs at any Internet domain and allows the exchange controller to override and inter-stitch the referrers' IDs into previously existing ID strings of non-paid-for advertising, affiliates, or other content found in search results.
86. The exchange controller of claim 14, wherein said exchange controller has the ability to relay search criteria to alternate controllers when content matching search criteria is not found in local advertising inventory.
87. The exchange controller of claim 86, wherein said the exchange controller generates inter-stitched containers into initial search results enabling HTTP redirected relay of requests to alternate exchange controllers for improved presentation of results within the container.
88. The exchange controller of claim 14, wherein said exchange controller has the ability to sense, control, and limit, how many relays are involved related to a relayed request among a set of exchange controllers.
89. The exchange controller of claim 14, wherein said exchange controller accepts arguments in a URL that determine whether it will format a search result presentation for standalone use or for use as framed by a central Metasearch engine.
90. The exchange controller of claim 89, wherein said Metasearch engine interacts with any number of exchange controllers in a completely dataless manner relative to advertiser content.
91. The exchange controller of claim 16, wherein when a user clicks search results, the exchange controller responds by simultaneously displaying the intended first data and also displaying unintended alternate second data, advertising content, in a frameset to the user.
92. The exchange controller of claim 91 , wherein upon presenting the alternate second data, advertising content, the exchange controller charges the advertiser who owns said advertising content by deducting a certain number, or partial number, of impression credits from the advertiser's account.
93. The exchange controller of claim 92, wherein said charges made to an advertiser occur if the advertisement is displayed to unique users and varies depending on time of last presentation to said user.
94. The exchange controller of claim 14, wherein said exchange controller has a system whereby consumers assert a rating and comments relative to an advertiser or its advertising content as displayed in the search engine and whereby a rating and ranking of the advertising content is recomputed by the exchange controller for use in protecting consumers and purging inappropriate advertising from inventory.
95. The exchange controller of claim 14 wherein the exchange controller comprises a computer readable medium storing instructions for allowing advertisers to specify the content to display as part of search results output.
96. The exchange controller of claim 14, wherein said exchange controller contains an ad distribution algorithm that operates in a reverse order of last content presented when making a selection for content for next presentation and thereby ensures that all advertisers are eventually displayed.
97. The exchange controller of claim 14, wherein said exchange controller prepares the output of formatted search results that includes modification to the original ad content by wrapping the matched string patterns found in the ad content with a parseable tag construct that contains a uniquely identifiable class name.
98. The exchange controller of claim 97, whereby the unique class name is generated by the exchange controller causes it to be distinct from other tag constructs in the native markup languages being used to ensure later parsability.
99. The exchange controller of Claim 14, wherein said exchange controller has an ability to sense and measure an advertiser's website hosting response time to determine if the website is anticipated to be responsive during future advertisement presentation and disable it from further presentations if a predetermined threshold is breached.
100. The exchange controller of Claim 14, wherein said exchange controller has a method to support determination of whether a web page or equivalent content to be presented within a frame has an ability to disrupt frame based presentation and further a mechanism to prevent problematic web pages from being displayed until the problem is corrected.
5 101. The exchange controller of Claim 14, wherein said exchange controller has an ability to eliminate redundant simultaneous display of duplicated replicated affiliate sites by storing a normalized base domain name for each website in a separate field of a lookup table for later processing whereby the solution set for ads to be presented is expected to contain distinctly unique normalized base domain 10 names and thus causes unique ads to be presented within the overall solution dataset.
102. The exchange controller of claim 14, wherein said exchange , controller supports delineation of various quality grades of ad impression credits, and these quality grades are saleable at different price points.
15
103. The exchange controller of claim 102, wherein said exchange controller makes use of the quality grades of ad impression credits purchased or available to the advertiser to determine placement and type of ads in ad layouts.
20 104. The exchange controller of claim 102, wherein said exchange controller has a content selector that makes use of the quality grades of ad impression credits purchased or available to the advertiser for selection of what ad content is passed to the formatter.
25 105. The exchange controller of claim 14, wherein said exchange controller allows for searching of data to be subsected by a virtual named plane that allows selection of content only for those content sources indicating they exist within the virtual named plane.
30 106. The exchange controller of claim 105, wherein said exchange controller allows the virtual named plane to be identified by name, number, or other means so that it is unique within a single exchange controller yet understood to be identical between or among any number of exchange controllers so that a requesting source interacting with any single exchange controller may obtain appropriate content intended to only exist within the collective virtual named plane from any of the intended content that may reside on any exchange controller.
107. The exchange controller of claim 105, wherein said exchange controller enables both private or local virtual named planes and distributed collective virtual named planes to contain any number of advertisers or content sources, on a per named plane basis, to be sold or leased as part of a business model.
108. The exchange controller of claim 14, wherein said exchange controller provides a mechanism to protect entered or adjusted content by allowing the advertiser or its agent to set a locking mechanism to prevent future autonomous changes to the content.
109. The exchange controller of claim 14, wherein said exchange controller provides a mechanism to periodically update content of ads in the exchange controller by reading, scraping, and filtering, content derived from a URL set entered by the advertiser.
110. The exchange controller of claim 14, wherein said exchange controller provides a mechanism to allow URL override of a base target URL intended as target of searcher interaction for the special purpose of indicating the location of where to derive initial content or future scraped content during automated periodic updates.
111. The exchange controller of claim 110, wherein said mechanism provides content scraping support for frame-based websites by allowing frame creation page circumvention.
112. The exchange controller of claim 14, whereby similar affiliate websites are not presented in the same dataset by selecting content based on a distinct normalized base domain name associated with the multiple affiliate sites and as derived from the URLs of any number of replicated affiliate sites.
113. The exchange controller of claim 112 whereby the normalized base domain name is minimized and stored in a separate field in an accessible repository as to eliminate repetitive normalization during search operations intent on promoting speed during search processes.
114. The exchange controller of claim 14, further including a formatter that prepares the output of search results that includes a modification to the original or stored ad content by wrapping the matched string patterns found within the ad content with a parseable tag construct that contains a uniquely identifiable class name.
115. The exchange controller of claim 114, wherein the formatter wraps matching search patterns with said tags before transmitting to a requesting process or rendering device such as a network browser.
116. The exchange controller of claim 114, wherein the unique class name is generated by the exchange controller and causes it to be distinct from other tag constructs in the native markup languages being used to ensure later parsability.
117. The exchange controller of claim 114, wherein the parsability aspect of searched for patterns provides the capability for post formatting processes to count, dissect, and manipulate or replace the matched search patterns with any text or object required for the intended final application and does so without requiring any knowledge of the search pattern itself and further eliminates the need for post formatter processes to analyze for the search patterns, to facilitate fast or repetitive processing by eliminating redundant computational pattern matching processes.
118. The exchange controller of claim 14, wherein said exchange controller contains instructions to support a membership system whereby a fee may be assessed to a participant to allow inclusion of the participant's ad content in generated advertising.
119. The exchange controller of claim 14, wherein said exchange controller contains instruction to support a membership system whereby a variable fee may be assessed to a participant to respectively vary the participant's access level to services provided by the exchange controller.
120. The exchange controller of claim 14, further containing instructions wherein fees may be assessed or managed on a per participant basis in either form of a onetime fee or repetitive periodic fees.
121. The exchange controller of claim 14, further containing instructions enabling an ability to append human characteristic and environmental control arguments with related values to the URLs of advertisers during ad formatting.
122. The exchange controller of claim 14, further containing instructions to implement a ROOLAP algorithm for direct support of content selection and for indirect content selection as may be triggered by remote stimulus or devices such as a Metasearch engine or a network browsing device.
123. The exchange controller of claim 14, further containing instructions to sense and protect against IP Blast attacks, Auto Surf stimuli, and Click Fraud activity.
124. The exchange controller of claim 14, further containing instructions to coordinate redemption of points rewarded to participants.
PCT/US2006/045039 2005-11-23 2006-11-21 Distributed content exchange and presentation system WO2007062026A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US73900605P 2005-11-23 2005-11-23
US60/739,006 2005-11-23

Publications (2)

Publication Number Publication Date
WO2007062026A2 true WO2007062026A2 (en) 2007-05-31
WO2007062026A3 WO2007062026A3 (en) 2009-04-30

Family

ID=38067853

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/045039 WO2007062026A2 (en) 2005-11-23 2006-11-21 Distributed content exchange and presentation system

Country Status (1)

Country Link
WO (1) WO2007062026A2 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7870024B2 (en) 2006-02-17 2011-01-11 Coon Jonathan C Systems and methods for electronic marketing
US7983948B2 (en) 2006-03-02 2011-07-19 Coon Jonathan C Systems and methods for electronic marketing
US8645206B2 (en) 2006-02-17 2014-02-04 Jonathan C. Coon Systems and methods for electronic marketing
WO2014179402A3 (en) * 2013-04-30 2015-03-19 AppNexus Inc. Methods and systems for tracking consumers without server-side profiling
US9324085B2 (en) 2009-09-15 2016-04-26 International Business Machines Corporation Method and system of generating digital content on a user interface
US10049168B2 (en) 2012-01-31 2018-08-14 Openwave Mobility, Inc. Systems and methods for modifying webpage data
US10148790B2 (en) 2016-03-04 2018-12-04 Bank Of America Corporation Deployment of integrative HTML-based engine from an edge server
US10853843B2 (en) * 2014-10-14 2020-12-01 Postalytics, Inc. Pay as you go marketing campaign
US10880261B2 (en) 2017-04-11 2020-12-29 Postalytics, Inc. Personal web address management system
US20220261842A1 (en) * 2008-01-08 2022-08-18 Iheartmedia Management Services, Inc. Selective transmission of media feedback
US11544736B2 (en) 2014-10-14 2023-01-03 Postalytics, Inc. Pay as you go marketing campaign

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848396A (en) * 1996-04-26 1998-12-08 Freedom Of Information, Inc. Method and apparatus for determining behavioral profile of a computer user
US20040163101A1 (en) * 1997-01-06 2004-08-19 Swix Scott R. Method and system for providing targeted advertisements

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848396A (en) * 1996-04-26 1998-12-08 Freedom Of Information, Inc. Method and apparatus for determining behavioral profile of a computer user
US20040163101A1 (en) * 1997-01-06 2004-08-19 Swix Scott R. Method and system for providing targeted advertisements

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7870024B2 (en) 2006-02-17 2011-01-11 Coon Jonathan C Systems and methods for electronic marketing
US8484082B2 (en) 2006-02-17 2013-07-09 Jonathan C. Coon Systems and methods for electronic marketing
US8645206B2 (en) 2006-02-17 2014-02-04 Jonathan C. Coon Systems and methods for electronic marketing
US7983948B2 (en) 2006-03-02 2011-07-19 Coon Jonathan C Systems and methods for electronic marketing
US20220261842A1 (en) * 2008-01-08 2022-08-18 Iheartmedia Management Services, Inc. Selective transmission of media feedback
US9324085B2 (en) 2009-09-15 2016-04-26 International Business Machines Corporation Method and system of generating digital content on a user interface
US10049168B2 (en) 2012-01-31 2018-08-14 Openwave Mobility, Inc. Systems and methods for modifying webpage data
WO2014179402A3 (en) * 2013-04-30 2015-03-19 AppNexus Inc. Methods and systems for tracking consumers without server-side profiling
US10853843B2 (en) * 2014-10-14 2020-12-01 Postalytics, Inc. Pay as you go marketing campaign
US11544736B2 (en) 2014-10-14 2023-01-03 Postalytics, Inc. Pay as you go marketing campaign
US10148790B2 (en) 2016-03-04 2018-12-04 Bank Of America Corporation Deployment of integrative HTML-based engine from an edge server
US10880261B2 (en) 2017-04-11 2020-12-29 Postalytics, Inc. Personal web address management system

Also Published As

Publication number Publication date
WO2007062026A3 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
EP1872314B1 (en) Distributed content exchange and presentation system
US8930239B2 (en) Distributed content exchange and presentation system
US9996616B2 (en) Methods and systems for searching, selecting, and displaying content
EP2433258B1 (en) Protected serving of electronic content
WO2007062026A2 (en) Distributed content exchange and presentation system
US20150012363A1 (en) Methods and systems for processing and displaying content
US7725530B2 (en) Proxy server collection of data for module incorporation into a container document
US7233973B2 (en) Evolving interactive dialog box for an internet web page
US20070136201A1 (en) Customized container document modules using preferences
WO2007070403A2 (en) Module specification for a module to be incorporated into a container document
WO2014150073A2 (en) Methods and systems for requesting, processing, and displaying content
US20160098765A1 (en) Information Processing System and Information Processing Method
CN106796695A (en) Using the conversion and identification installed
US10679244B1 (en) Publisher identity verification through cross-domain barrier

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06838168

Country of ref document: EP

Kind code of ref document: A2