Method and apparatus for tagging network traffic using extensible fields in message headers
DC CAFCFirst Claim
1. A method of processing data sent from a user of a client computer over a network, comprising:
- intercepting a request that is in a hypertext transport protocol (HTTP) format from the client computer to a server computer over the network at a routing device within the network and coupled between the client and server computers, and prior to receipt by the server computer, wherein the network is the World Wide Web portion of the Internet, and further wherein the client computer is selected from the group consisting of;
a personal computer, a mobile computing device, a cellular phone, a personal digital assistant, a media playback device, and a gaming device;
extracting non-personal information about the user during a Media Access Control (MAC) layer process, wherein the non-personal information includes one or more of data related to the client computer, software on the client computer, information stored on the client computer regarding use of the client computer, and non-personal data associated with the user;
creating a unique device identifier associated with hardware and corresponding to the client computer from the non-personal information, wherein the unique identifier is based directly on at least one of a MAC address, port identifier, or hardcoded identifier embodied in software or hardware and assigned to the client computer;
generating a local user identifier for the client computer by performing a one-way hashing operation on the unique device identifier;
deriving instance information based on request timing information provided by the client computer, and geographic location and demographic information for the client computer from information provided by a remote authentication server on the network;
generating a request identifier associated with the intercepted request by combining and encrypting, in a tag process executed on the routing device, the local user identifier, instance information, and geographic location and demographic information in an alphanumeric string;
embedding the alphanumeric string in an extensible field of a packet within the request to generate a tagged request, wherein the extensible field comprises a portion of an HTTP header field of the packet that is normally unused or essentially left blank;
transmitting the tagged request to the server computer;
providing appropriate decoding tools to the server computer to perform a decoding operation on the tagged request to decode the request identifier embedded in the HTTP extensible field; and
receiving a request to decode the tagged request from the server computer.
2 Assignments
Litigations
2 Petitions
Accused Products
Abstract
Embodiments of a system and method of tagging network traffic with relevant user demographic and location information for facilitating the delivery of directed media are described. A tag processing module within a router device coupling a client computer to a destination site served by a server computer intercepts a request from a client computer to a server computer over a network. The tag processing module determines a unique device identifier corresponding to the client computer, generates a local user identifier for the client computer by performing a one-way hashing operation on the unique device identifier, derives demographic and location information for a user of the client computer, generates a request identifier associated with the intercepted request by encrypting the local user identifier, demographic information and geographic location information in an alphanumeric string, and embeds the alphanumeric string in an extensible field of a packet within the request to generate a tagged request identifier.
24 Citations
17 Claims
-
1. A method of processing data sent from a user of a client computer over a network, comprising:
-
intercepting a request that is in a hypertext transport protocol (HTTP) format from the client computer to a server computer over the network at a routing device within the network and coupled between the client and server computers, and prior to receipt by the server computer, wherein the network is the World Wide Web portion of the Internet, and further wherein the client computer is selected from the group consisting of;
a personal computer, a mobile computing device, a cellular phone, a personal digital assistant, a media playback device, and a gaming device;extracting non-personal information about the user during a Media Access Control (MAC) layer process, wherein the non-personal information includes one or more of data related to the client computer, software on the client computer, information stored on the client computer regarding use of the client computer, and non-personal data associated with the user; creating a unique device identifier associated with hardware and corresponding to the client computer from the non-personal information, wherein the unique identifier is based directly on at least one of a MAC address, port identifier, or hardcoded identifier embodied in software or hardware and assigned to the client computer; generating a local user identifier for the client computer by performing a one-way hashing operation on the unique device identifier; deriving instance information based on request timing information provided by the client computer, and geographic location and demographic information for the client computer from information provided by a remote authentication server on the network; generating a request identifier associated with the intercepted request by combining and encrypting, in a tag process executed on the routing device, the local user identifier, instance information, and geographic location and demographic information in an alphanumeric string; embedding the alphanumeric string in an extensible field of a packet within the request to generate a tagged request, wherein the extensible field comprises a portion of an HTTP header field of the packet that is normally unused or essentially left blank; transmitting the tagged request to the server computer; providing appropriate decoding tools to the server computer to perform a decoding operation on the tagged request to decode the request identifier embedded in the HTTP extensible field; and receiving a request to decode the tagged request from the server computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for processing network traffic transmitted between a client computer and a server computer over a network, comprising:
-
a router device coupled to the network between the client computer and the server computer, wherein the network is the World Wide Web portion of the Internet, the router device intercepting request and response messages transmitted between the client computer and server computer, wherein the client computer is selected from the group consisting of;
a personal computer, a mobile computing device, a cellular phone, a personal digital assistant, a media playback device and a gaming device;an authentication server coupled to the router device through a gateway, and providing information related to the client computer; a tag processor component closely coupled to the router device located within the network and configured to intercept a request message from the client computer to the server computer over the network, wherein the request is in a hypertext transport protocol (HTTP) format, determine a unique device identifier corresponding to the client computer, extract non-personal information about the user during a Media Access Control (MAC) layer process, wherein the non-personal information includes one or more of data related to the client computer, software on the client computer, information associated with the client computer regarding use of the client computer, and non-personal data associated with the user;
generate a local user identifier for the client computer based on the unique device identifier, derive instance information regarding timing of the request provided by the client computer, and geographic location and demographic information from the information provided by the authentication server of the client computer, generate a request identifier associated with the intercepted request by encrypting and embedding the local user identifier and geographic location and demographic information in an extensible field of a packet within the request to generate a tagged request identifier from the non-personal information, wherein the unique identifier is based directly on at least one of a MAC address, port identifier, or hardcoded identifier in software or hardware and assigned to the client computer, and wherein the extensible field comprises a portion of an HTTP header field of the packet that is normally unused or essentially left blank; anda tag-related processor component coupled to the server computer and configured to receive a decode request from the server computer upon interception of the tagged request identifier by the server computer. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification