Server-Side Response Identification for Client Navigation Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current stateless HTTP protocols struggle with managing complex transactions across multiple web pages, particularly in scenarios involving backward navigation, multiple browser windows, and bandwidth limitations, as they lack robust mechanisms for tracking client navigation and maintaining state information.

Innovation Solution

A method and apparatus for tracking client navigation using a unique response identification (RID) system, where each response generated during a communication session is uniquely identified, allowing state information to be stored locally on the server and passed efficiently through cookies or URL-encoding, thereby avoiding bandwidth issues and size limitations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If URL encoding is used to pass state information, then state information can be transmitted to the server, but the URL field character limit prevents substantial state information from being included

Engineering Contradiction:
Improveamount of state informationVSAvoidURL field character limit
Core Design Contradiction:
Quantity of substanceVSLength of moving object

Solution Approach 1:

The patent introduces cookies as an intermediary mechanism to store state information on the client side. Instead of embedding all state information directly in the URL, the server writes state information to a cookie file on the client's file system, and the browser automatically includes this cookie information in subsequent requests to the same server, effectively bypassing the URL character limit

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent moves state information storage from the URL dimension (which has character limits) to the client file system dimension through cookies. This dimensional shift allows substantially more state information to be stored and transmitted without being constrained by URL field length limitations

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Quantity of substance

If cookies are used to store state information, then more state information can be stored, but each new cookie overwrites previous cookies for the same server

Engineering Contradiction:
Improvestate information storage capacityVSAvoidloss of previous cookie information
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent merges multiple pieces of state information into a single cookie by accumulating data in a hash table structure on the server side. When state information needs to be stored, the server checks if a cookie already exists for that server, retrieves the existing information, combines it with new information, and writes the merged result back to the cookie, preventing overwriting and preserving all state information

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements a feedback mechanism where the server checks the contents of an existing cookie before writing new state information. The server reads the current cookie data, accumulates the new information with the existing information in a hash table, and then writes the combined result back to the cookie, creating a feedback loop that preserves information rather than overwriting it

Inventive Principle:
Principle #23Feedback

3Ease of operation

If a stateless HTTP protocol is used, then programming is simplified and computational demands are reduced, but complex transactions across multiple web pages cannot be supported

Engineering Contradiction:
Improvebrowser programming simplicityVSAvoidsupport for complex transactions
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent implements preliminary action by having the server proactively write state information to cookies during the HTTP response phase, before the client needs to make subsequent requests. This preliminary storage of state information on the client side enables complex multi-page transactions to proceed smoothly without requiring the server to maintain state in memory, thus preserving the stateless nature of HTTP while supporting complex workflows

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8412766B1Method and apparatus for tracking client navigation among multiple resources in communication session information saved by a server
Publication Date: 2013.04.02 CISCO TECHNOLOGY INC
  • US8412766B1 patent drawing
  • US8412766B1 patent drawing
  • US8412766B1 patent drawing

AI summary

Techniques for tracking navigation by a client among multiple content provided by servers include receiving from the client a first request for first content. In response to receiving the first request, a first response identification is generated that is unique among all responses during a communication session. Information associated with the first request is stored in a data structure in a first record associated with the first response identification. A linking element in the first content is determined. Selection of the linking element causes the client to generate a second request for second content. The first response identification is associated with the linking element in a first response such that the second request includes the first response identification. The first response is sent to the client. The tracking succeeds with multiple windows and limitations on state information passed by a client.