MXPA99006425A - Supervision de acceso a archivos remotos en unared de computadoras publica - Google Patents
Supervision de acceso a archivos remotos en unared de computadoras publicaInfo
- Publication number
- MXPA99006425A MXPA99006425A MXPA/A/1999/006425A MX9906425A MXPA99006425A MX PA99006425 A MXPA99006425 A MX PA99006425A MX 9906425 A MX9906425 A MX 9906425A MX PA99006425 A MXPA99006425 A MX PA99006425A
- Authority
- MX
- Mexico
- Prior art keywords
- message
- data
- user
- network
- information
- Prior art date
Links
Abstract
En una red de datos, el uso de recursos de datos remotos por los usuarios es supervisado reencaminando un mensaje de solicitud de acceso al recurso, generado en un sistema de cliente, a través de un módulo de registro, recolectar información acerca del mensaje, y transmitir el mensaje a un servidor de recursos de datos remoto. La figura más representativa de la invención es la número 7.
Description
SUPERVISIÓN DE ACCESO A ARCHIVOS REMOTOS EN UNA RED DE COMPUTADORAS PUBLICA
Antecedentes de' la Invención La invención se relaciona con la medición de visitas a un sitio de la red y a las características personales de los visitantes. La Internet es una conexión mundial de redes de computadoras interconectadas. A cada computadora conectada a la Internet se le asigna una única dirección numérica (conocida como la "dirección IP") la cual permite que los datos se transmitan de una manera punto a punto entre cualesquiera de dos computadoras. Además, cada computadora puede tener asignado un "nombre de unidad central" el cual es una cadena alfanumérica que corresponde a una dirección IP. Un uso rápidamente creciente de la Internet es la visualización de las páginas de la red. Las páginas de la red son archivos de datos que contienen información audiovisual codificada, instrucciones de programas, y enlaces de hipertexto. Un enlace de hipertexto es información acerca de la localización de una página de la red en un sitio de la red. Los datos de la página de la red típicamente se codifican en un formato conocido como lenguaje de marca de hipertexto (LMHT) . Un sitio de la red es un sistema de computadoras que se conecta a la Internet, el cual tiene una o más páginas de la red almacenadas en su memoria, y el cual tiene la capacidad de transmitir estas páginas de la red a otras computadoras como respuesta a una solicitud recibida de esa computadora vía la Internet. Una computadora de cliente es un sistema de computadora que se conecta a la Internet y la cual tiene la capacidad de desplegar información audiovisual codificada en una página de la red. Un usuario puede tener acceso a las páginas de la red usando una pieza de software en la computadora de cliente llamado un buscador. Un buscador se comunica sobre la Internet con otro programa llamado un servidor de la red que se ejecuta sobre un sitio de la red. Como respuesta a las instrucciones recibidas del usuario, el buscador envía una solicitud al servidor de la red para transmitir una página de la red específica desde el sitio de la red en el cual el servidor de la red reside hasta la computadora de cliente. El servidor de la red responde transmitiendo la página de la red a la computadora del cliente. Cuando el contenido de una página de la red es recibido en la computadora de cliente, el buscador la traduce a un formato audiovisual y lo exhibe para el usuario. Si la página de la red que se está exhibiendo contiene enlaces de hipertexto a otras páginas de la red, el buscador también puede recuperar estas páginas de la red y exhibirlas como elementos de la primera página. Si la página de la red contiene instrucciones de programas, el buscador puede ejecutar estas instrucciones . Típicamente, un buscador permite que un usuario solicite que se despliegue una página de la red particular vía la Internet especificando el localizador de recursos universales (LRU) de la página de la red. El localizador de recursos universales es una cadena de caracteres que identifica un lugar lógico único de la página de la red en la Internet. Un buscador también permite típicamente que un usuario recupere y exhiba una página de la red usando un dispositivo señalador (por ejemplo un ratón) para señalar un lugar sobre un despliegue de video correspondiente a un enlace de hipertexto en una página de la red ya recuperada. Mediante este método, un usuario que solamente conozca un localizador de recursos universales puede sin embargo tener acceso a una sucesión de páginas de la red siguiendo los enlaces de hipertexto contenidos en cada página. El conjunto de todas estas páginas enlazadas en la Internet se ha llegado a conocer como la World Wide Web. Además de exhibir información contenida en las páginas de la red, los buscadores típicamente, como respuesta a instrucciones codificadas en la página de la red, permitirán
-gue un usuario introduzca información vía un teclado y que transmita esa información a un sitio de la red vía la Internet. Esta funcionalidad permite que las página de la red actúen como "formularios", los cuales pueden ser llenados por los usuarios y regresados a los sitios de la red. Además del escenario del buscador "en línea" explicado anteriormente, ciertos buscadores también soportan buscadores fuera de línea a través de un mecanismo conocido hasta ahora como "mecanismo de canal". Este mecanismo permite que ciertos localizadores de recursos universales se identifiquen como "canales" y permite que el buscador se "suscriba" a ellos. Cuando el buscador se suscribe a un canal, esto causa que el buscador de la red recupere regularmente (por hora, por ejemplo) información del sitio de la red identificado por el localizador de recursos universales asociado con el canal, y almacene la información en una memoria inmediata localizada en la computadora del cliente. Cuando el usuario instruye al buscador para ver un canal particular, la información almacenada en la memoria inmediata se despliega para el usuario. Ya gue nueva información de canal se recupera por el buscador en una base regular, un mecanismo de canal proporciona una manera útil para el usuario de mantener un seguimiento de información dinámica, tal como indicador de cotizaciones o una línea de noticias. Los buscadores de la red que proporcionan un mecanismo de canal también son capaces de mantener un seguimiento del acceso de un usuario al canal de información almacenado en la memoria inmediata. Por ejemplo, el Netcaster conectado en el buscador Netscape Navigator incluye una capacidad conocida como registro de datos de canal fuera de línea (RDCF) . Cuando se activa el registro de datos en canal fuera de línea, el Netcaster registrará cada vez en la cual un usuario introduce datos localizados en la memoria inmediata, incluyendo la hora del acceso y la ubicación desde donde la información se recuperó originalmente en la memoria inmediata. El elemento de registro del formulario de definición de canal para el explorador de Internet de Microsoft proporciona una capacidad similar para rastrear los accesos del usuario a la información almacenada en la memoria inmediata. Toda la comunicación entre los buscadores y los servidores de la red en la Internet se lleva a cabo por medio de una sucesión de protocolos de cambios de paquetes conocido como protocolo de control de transporte/protocolo de Internet o PCT/PI. El protocolo de control de transporte/protocolo de Internet permite que dos computadoras de la Internet establezcan uno o más circuitos de comunicación virtual entre ellas, conocidas como "conectores". Debido a que existen varios mecanismos físicos diferentes mediante los cuales las computadoras se pueden conectar a la Internet (por ejemplo, línea telefónica, ISDN, líneas dedicadas de alta velocidad, ethernet) , los programas de aplicaciones tales como los buscadores de la red típicamente no implementan directamente el protocolo de control de transporte/protocolo de Internet, sino en lugar de eso se basan en un "módulo de interfase de la red", una biblioteca de software específico de plataforma estándar la cual implementa un conjunto de plataformas y de funciones de comunicación de la red independientes del medio. De este modo, cada vez que un buscador de la red envía o recibe datos a o desde un sitio de la red, lo hace a través de una serie de llamadas de funciones a la interfase de la red. Los buscadores de la red se comunican con los servidores de la red mediante mensajes intercambiados en un lenguaje conocido como protocolo de transporte de hipertexto (PTHT) , o HTTP (por sus siglas en inglés) . Los mensajes del protocolo de transporte de hipertexto se pueden usar por un buscador para enviar datos o solicitar datos de un sitio de la red. Con el fin de recuperar información sobre una página de la red particular, un buscador generará un mensaje de obtener protocolo de transporte de hipertexto. Con el fin de transmitir información a un sitio de la red (por ejemplo entradas del usuario en un formulario) , un buscador generará un mensaje de colocar protocolo de transporte de hipertexto. Los mensajes de obtener y de colocar protocolo de hipertexto incluyen dentro de ellos (explícitamente o implícitamente) el localizador de recursos universales de la página a la que se está teniendo acceso. La World Wide Web tiene ciertas características exclusivas que le dan el potencial para revolucionar la manera en la cual los anunciantes alcanzan a su auditorio deseado. A diferencia de cualquier otro medio de anuncio, la World Wide Web permite la creación de mensajes de anuncios los cuales son permanentes (es decir que están disponibles las 24 horas del día y no son pasajeros como los mensajes transmitidos) , y al mismo tiempo son infinitamente revisables (es decir se pueden actualizar en cosa de segundos a un costo despreciable, a diferencia de los mensajes en los medios impresos) . La World Wide Web también es exclusiva en su capacidad para alcanzar auditorio internacional sin ningún costo adicional y, a través de su funcionalidad interactiva, proporcionar mensajes que son integrados a los intereses específicos expresados por usuarios individuales en tiempo real. Un obstáculo para el uso más amplio de los anuncios en la World Wide Web es la falta de cualquier medio confiable de gue los anunciantes determinen qué tan efectivamente un mensaje está alcanzando a su auditorio de destino. Los medios de anuncios tradicionales venden espacio a los anunciantes basándose en encuestas de lectores o de observadores. Estas encuestas de medios permiten a los anunciantes estimar tanto el tamaño del auditorio del medio, como sus características demográficas y psicográficas. Las encuestas de los medios también son esenciales para contener proveedores (v.gr. editores de revistas y redes de televisión) . Un proveedor de contenido vende espacio a un anunciante basándose en su capacidad para atraer el auditorio el cual el anunciante desea alcanzar. Un proveedor de contenido puede gastar recursos significativos en nuevo contenido con la espera de que atraerá a un auditorio mayor o mejor (demográficamente) . Pero este gasto sólo puede ser redituable al proveedor de contenido si el proveedor puede probar a los anunciantes que el contenido está teniendo el efecto deseado. Sin estos elementos, los proveedores de contenido tendrán poco incentivo para mejorar la calidad de su contenido. Aunque las cifras de circulación y las encuestas de los medios se usan ampliamente para medir la efectividad de los medios impresos y transmitidos, son menos prácticos para medir los patrones de observación en la World Wide Web. Los usuarios que ven las páginas de la red son, para todos los propósitos prácticos, anónimos. Los buscadores normalmente no transmiten información a los servidores de la red que identificarían confiablemente el nombre o hasta la localización de un usuario particular. De este modo, los operadores de los servidores de la red no tienen nada equivalente a una lista de suscriptores de una revista en la cual basar reclamaciones demográficas o psicográficas o basar una encuesta. Más aún debido a que la multitud de las páginas de la red y a la naturaleza transitoria y de ocurrencia improvisada de la interacción de un usuario con cualquier página dada, las encuestas aleatorias telefónicas o por correo electrónico es poco probable que produzcan información precisa y detallada de los patrones de observación de la World Wide Web. Las técnicas conocidas actualmente para medir la cualidad de espectadores de los sitios de la red tiene desventajas debido a que no puede proporcionar ninguna información demográfica o psicográfica acerca de los espectadores y no siempre determina con precisión el número de mensajes de anuncios a los cuales ha estado expuesto el espectador. Por ejemplo, una técnica conocida para medir la popularidad del sitio de la red ha sido simplemente contar el número de veces que el sitio de la red ha sido "elegido" por una solicitud externa para transmitir datos de la página de la red. La medición resultante de esta técnica puede sin embargo ser errónea, debido a que frecuentemente es necesario que un solo sitio de la red sea "elegido" múltiples veces con el fin de desplegar una sola pantalla de los datos de la página de la red. Una técnica de medición mejorada cuenta el número de "impresiones" hechas por una página de la red determinando cuántas veces una página de la red ha exhibido mensajes de anuncios a un usuario. Esta medida todavía es insatisfactoria. No produce ningún dato demográfico o psicográfico acerca de los usuarios que están viendo la página de la red en cuestión. Más aún, este método no puede distinguir entre una sola persona (o hasta un programa de computadora automático) teniendo acceso a la misma página numerosas veces, y numerosos usuarios teniendo acceso a la página en un mismo momento. De esta forma, es incapaz de determinar el número de distintos usuarios que tienen acceso a la página y también se someten a la manipulación por personas con intenciones fraudulentas o maliciosas. Más aún, ninguno de estos métodos permite la supervisión de un patrón dado de un usuario de un acceso de sitio de la red. No puede, por ejemplo, mostrar el orden en el cual un usuario tiene acceso a una serie de sitios de la red, ni puede determinar el intervalo entre el momento en que un usuario tiene acceso a un primer sitio de la red dado, y el momento en el que el usuario tiene acceso al siguiente sitio de la red. Otra técnica conocida supervisa los patrones de uso de la computadora instalando software en una computadora del usuario el cual registra todas las operaciones realizadas por el usuario, y guarda esta información en la memoria permanente de la computadora. En intervalos específicos, el usuario guarda esta información en un disco flexible que se envía por correo a un lugar centralizado en donde se compilan los datos.
Sumario de la invención La presente invención proporciona un método para supervisar el uso de recursos de datos remotos por usuarios en una red de datos. Un mensaje de solicitud de acceso de recurso generado en un sistema del cliente (v.gr., un mensaje de obtener o de colocar un protocolo de hipertexto) se vuelve a encaminar a través del módulo de registro, información acerca del mensaje se recolecta, y el mensaje se transmite sobre la red de datos a un servidor de recursos de datos remoto. Las implementaciones preferidas pueden incluir una o más de las siguientes características. El mensaje puede volver a ser encaminado atrapando una llamada a un módulo de interfase de la red y transfiriendo el control al módulo de registro. El mensaje puede volver a ser encaminado mediante el encaminamiento del mensaje a un servidor representante. El recurso de datos remotos puede ser una página de la red. El mensaje puede ser generado mediante un buscador de la red. Los datos de identificación del usuario se pueden registrar en un servidor de registro. Los datos de identificación del usuario se pueden registrar en un servidor de registro transmitiendo un formulario de registro desde un servidor de registro al sistema del cliente, incitando al usuario a completar el formulario de registro, y transmitiendo los datos del formulario de registro desde el sistema del cliente al servidor de registro. Los datos del formulario de registro pueden incluir información demográfica acerca del usuario. Los datos de identificación del usuario pueden incluirse en información demográfica acerca del usuario. La información demográfica para el usuario puede combinarse con información recolectada acerca de mensajes vueltos a encaminar. Se pueden generar informes a partir del resultado de combinar la información demográfica y la información recolectada acerca de los mensajes vueltos a encaminar. La información acerca del mensaje se puede enviar al servidor de recolección de datos. La información acerca del mensaje se puede enviar al servidor de recolección de datos poco después de que el mensaje se vuelva a encaminar. La información acerca del mensaje se puede almacenar temporalmente y transmitir al servidor de recolección de datos en un tiempo posterior. Se pueden compilar uno o más informes de la información recibida por el servidor de recolección de datos. Uno o más de los informes pueden ponerse a disposición en el servidor. Los informes se pueden poner a disposición en un servidor solicitando una identificación de usuario a partir del solicitante y transmitiendo un informe asociado con la identificación del usuario desde el sitio de la red al solicitante. El servidor puede ser un sitio de la red. La estampa de tiempo de un archivo de registro en el sistema del cliente se puede comparar con el tiempo específico y si el archivo de registro se modificó desde el tiempo específico, la información del archivo de registro se transmite al servidor de recolección de datos. El archivo de registro puede contener información acerca del uso de datos almacenados en la memoria inmediata por un usuario. La información acerca del mensaje puede incluir información que identifique al usuario. Se puede determinar el intervalo de tiempo desde la última vez en que se recolectó la información acerca de un mensaje que volvió a ser encaminado y, si es mayor de un tamaño dado, se puede solicitar al usuario que se identifique antes de transmitir el mensaje sobre la red de datos al servidor de recursos de datos remotos. La red puede ser la Internet. Entre las ventajas de esta invención están que permite que los datos se recolecten sin la intervención del usuario, y que permite que los datos de acceso al sitio de la red se recolecten conforme se tiene acceso al sitio, permitiendo de este modo la supervisión en tiempo real de los patrones de acceso al sitio de la red. Otra ventaja de este método es que permite que los datos acerca de los patrones de acceso al sitio de la red se correlacionen con información demográfica acerca de los usuarios, de manera que se pueden generar informes estadísticos acerca del comportamiento de diferentes grupos demográficos. La invención también tiene la ventaja de que el registro inicial y el establecimiento de usuarios participantes se puede hacer de manera poco cara y de una manera mayormente automática sobre la Internet.
Otra ventaja de la invención es que los informes de clientes generados de los datos recolectados se pueden distribuir sobre la Internet a costo muy bajo, y los informes se pueden hacer a la medida según las necesidades y la autorización de los clientes particulares. La invención se puede implementar en hardware o software, o una combinación de ambos. De preferencia, la técnica se implementa en programas de computadora que se ejecutan en computadoras programables que cada una incluye un procesador, un medio de almacenamiento legible mediante el procesador (que incluye memoria volátil y no volátil y/o elementos de almacenamiento) , cuando menos un dispositivo de entrada, y cuando menos un dispositivo de salida. Se aplican códigos de programa a los datos introducidos usando el dispositivo de entrada para realizar las funciones descritas anteriormente y para generar información de salida. La información de salida se aplica a uno o más de los dispositivos de salida. Cada programa preferiblemente se implementa en un alto nivel de procedimiento o lenguaje de programación orientado al objeto para comunicarse con un sistema de computadora. Sin embargo, los programas se pueden implementar en lenguaje ensamblador o lenguaje máquina, si se desea. En cualquier caso, el lenguaje puede ser un lenguaje compilado o interpretado.
Cada uno de estos programas de computadora preferiblemente se almacena en un medio de almacenamiento o dispositivo (v.gr., memoria de sólo lectura o disco magnético) que pueda ser leído por una computadora programable de propósitos generales o propósito especial para configurar y operar la computadora cuando el medio de almacenamiento o dispositivo es leído por la computadora para realizar los procedimientos descritos en este documento. El sistema también se puede considerar que se implemente como un medio de almacenamiento legible por computadora configurado con un programa de computadora, en donde el medio de almacenamiento así configurado causa que una computadora opere de una manera específica y previamente definida. Otras características y ventajas de la invención se harán aparentes a partir de la siguiente descripción de las modalidades preferidas, incluyendo los dibujos, y de las reivindicaciones . Breve descripción de los dibujos La Figura 1 es un diagrama en bloques que muestra un sistema de computadoras en la red que incluyen computadoras de clientes, sitios de la red, y servidor de registro. La Figura 2 es un diagrama en bloques de una computadora de cliente típica que contiene un buscador y un módulo de interfase de la red. La Figura 3 es un diagrama en bloques del sitio de registro, incluyendo un módulo de interfase de la red, un servidor de registro, y una base de datos. La Figura 4 es un diagrama de flujo que muestra la técnica mediante la cual un usuario se registra con el servidor de registro usando un buscador en una computadora del cliente. La Figura 4a es una lista de la información solicitada de nuevos usuarios por el servidor de registro. La Figura 5 es un diagrama de flujo que muestra la técnica usada por el módulo de inicialización de trampa de datos. La Figura 5a es un diagrama de flujo gue muestra la técnica usada por FakeGetProcAddress en la implementación de Windows 95. La Figura 6 es un diagrama de flujo que muestra la técnica usada por la rutina enviar_trampa en el módulo trampa de datos. La Figura 7 es un diagrama en bloques de una computadora de cliente después de que se ha instalado el módulo trampa de datos . La Figura 8 es un diagrama de flujo que muestra la técnica usada por cliente_fijar_sesión del módulo trampa de datos. La Figura 8a es un diagrama en bloques de un registro de sesión_info. La Figura 8b es un diagrama en bloques de un mensaje de NUEVA_SESION. La Figura 8c es un diagrama en bloques de un mensaje de NUEVA_SESION_CONFIRMADA. La Figura 9 es un diagrama de flujo que muestra la técnica usada por la rutina de registro_fijar_sesión del servidor de registro. La Figura 9a es un diagrama en bloques de un registro en la tabla de conexiones mantenida por el servidor de registro. La Figura 10 es un diagrama de flujo que muestra la técnica usada por la rutina de cliente_registro_obtener del módulo trampa de datos. La Figura 10a es un diagrama en bloque de un mensaje de REGISTRO. La Figura 10b es un diagrama en bloque de un registro de elección_dato. La Figura 11 es un diagrama de flujo que muestra la técnica usada por la rutina de registrar_registro_elección. La Figura 12 es un diagrama de flujo que muestra una técnica alternativa usada por enviar_trampa para supervisar los patrones de observación de la página de la red del usuario. La Figura 13 es un diagrama de flujo que muestra la técnica usada por la rutina cliente_registro_canal_obtener. La Figura 14 es un diagrama de flujo que muestra la técnica usada por la rutina cliente_registro_canal_actividad.
Descripción de las modalidades preferidas En la Figura 1 se muestra un diagrama simplificado del Internet. Una pluralidad de computadoras de cliente 1 se conectan vía una red 4 a una pluralidad de sitios de la red 2 y a un sitio de registro 3. En la Figura 2 se muestra un diagrama simplificado de una computadora de cliente. Contiene una aplicación de buscador de red 5 gue puede enviar y recibir mensajes a y desde una red 4 llamando funciones en un módulo de interfase de red 6 (v.gr. la biblioteca de interfase de red Winsock que se ejecuta bajo Windows 95) . En particular, la aplicación de buscador de red puede enviar y recibir mensajes en protocolo de hipertexto. En la Figura 3 se muestra un diagrama simplificado de un sitio de registro. Contiene un programa de servidor de registro 10 que puede enviar y recibir mensajes a y desde una red llamando funciones en un módulo de interfase de red 11. El programa de servidor de registro también puede escribir registros en la base de datos 12. Con el fin de que una búsqueda en la red de un usuario sea supervisada, el usuario debe registrarse en el servidor de registro. El proceso de registrar un nuevo usuario se muestra en la Figura 4. El usuario primero tiene acceso a la página de la red del servidor de registro usando el buscador de la red localizado en la computadora de cliente del usuario (paso 30) . El servidor de registro transmite entonces a la computadora de cliente del usuario un formulario de registro en formato de lenguaje de marcado de hipertexto (paso 31) . Este formulario es exhibido por el buscador de la red del usuario (paso 31a) . El formulario instruye al usuario para que proporcione datos acerca de sí mismo. Una lista de la información solicitada se ilustra en la Figura 4a. El usuario llena el formulario usando el buscador de la red, y transmite los datos resultantes de nuevo al servidor de registro (paso 32) . Se verifican los datos para que estén completos (paso 33). Si los datos no están completos, el servidor de registro transmite un nuevo formulario para que se complete (paso 31) . Si los datos están completos, el servidor de registro fija la variable usuario_id en un valor único (paso 34) y crea un registro en la base de datos que consiste en el usuario_id y los datos obtenidos del formulario de registro (paso 35) . El servidor de registro crea entonces una copia del módulo de trampa de datos (descrito en la presente) con el valor del usuario__id incluido dentro de él, y transmite esta copia a la computadora de cliente del usuario (paso 36) . También incluido dentro del módulo trampa de datos están uno o más miembro_ids. El usuario_id sirve para identificar el domicilio o la oficina en la cual se localiza el sistema del cliente, y el miembro_ids sirve para identificar a los usuarios individuales particulares dentro del domicilio u oficina. En cuanto el usuario instala el módulo trampa de datos en su máquina (paso 37) , la supervisión comenzará después de la siguiente vez que se encienda la computadora del cliente. Los pasos precisos involucrados en instalar el módulo trampa de datos en la computadora de cliente del usuario dependerá de qué tipo de servicio de sistema operativo soporta la computadora del cliente. En todos los casos, el principio es el mismo. El módulo trampa de datos se almacena en la unidad de disco duro de la computadora del cliente. La rutina de autocargar de la computadora del cliente, la cual contiene todos los comandos que se ejecutan cuando la computadora del cliente se enciende o se restablece, se modifica para incluir un comando que ejecute el sub ódulo de inicialización del módulo trampa de datos. La Figura 5 muestra la técnica usada por el submódulo de inicialización de trmpa de datos. Primero, la variable estática Ultimoclick se fija en cero (paso 40) . Enseguida, el mapa de la memoria del sistema operativo se modifica de manera que todos los intentos de programas de aplicación para llamar a la rutina de enviar de la interfase de la red se vuelven a dirigir a la rutina enviar__trampa del módulo trampa de datos en vez de eso, y la dirección marginal de enviar se almacena en la variable estática *enviar (paso 41) . La manera en la cual se lleva a cabo esta redirección dependerá de la estructura del sistema operativo. Por ejemplo, en Windows 95, la dirección de la memoria que normalmente apunta a la función KERNEL32.DLL GetProcAddress se fija en un punto en vez de en una función dentro del módulo trampa de datos llamado FakeGetProcAddress . La función GetProcAddress ordinariamente es llamada por los procesos de programas de aplicación para obtener los puntos de entrada para la biblioteca de enlace dinámico (BED) . Con este cambio, estos procesos en lugar de eso llamarán FakeGetProcAddress. Como se ilustra en la Figura 5a, FakeGetProcAddress examina la función para la cual el proceso de llamado busca el punto de entrada (paso 50) . Si la función es la función WINSOCK enviar, la dirección regresada es la dirección para enviar_trampa (causando de este modo que el programa de aplicación llame enviar_trampa cuando está intentando llamar enviar) (paso 52) . Si la función es cualquier otra función, FakeGetProcAddress simplemente llama GetProcAddress la cual regresa la dirección de la función real buscada por el proceso de llamado (paso 51) . La Figura 6 muestra la técnica usada por enviar_trampa al monitor los patrones de observación de la página de red del usuario. Cuando se llama enviar_trampa, primero determina si los datos que el programa de aplicación está intentando enviar es un mensaje de obtener (GET) o de colocar (POST) protocolo de transporte de hipertexto (paso 70) . Si no es un mensaje de obtener o colocar un protocolo de transporte de hipertexto, enviar-trampa inmediatamente llama a *enviar y sale (paso 74) . Si el mensaje es un mensaje de obtener o colocar de protocolo de transporte de hipertexto, entonces la variable Ultimoclick se compara con el tiempo actual (paso 71) . Si Ultimoclick es más de 15 minutos antes del tiempo actual (lo que indica que ningún mensaje de obtener o colocar se ha iniciado en los últimos 15 minutos) , entonces se ejecuta la rutina cliente_fijar_sesión (paso 73) . Después de gue se ha ejecutado cliente_fijar_sesión, o si Ultimoclick es menos de quince minutos antes de tiempo actual, se ejecuta la rutina cliente_registro_elección (paso 72) . Después, se ejecuta *enviar y sale enviar_trampa (paso 74) . La Figura 7 muestra conceptualmente cambio en la configuración del sistema de la computadora de cliente después de que se ha instalado trampa de datos. El buscador 5 todavía tiene acceso a la red a través del módulo de interfase de red 7, excepto porque las llamadas a la rutina enviar del módulo primero se procesan a través del módulo enviar_trampa antes de ser pasadas en enviar. La Figura 8 muestra la técnica usada por cliente_fijar_sesión. Primero, al usuario se le pide que se identifique seleccionando de uno de una lista de miembro_ids que ha sido integrado en el módulo de trampa de datos (paso 88) . Después, se crea un registro de sesión_info (paso 90) . Como se ilustra en la Figura 8a, sesión_info contiene la sesión_id (un número único generado por el módulo trampa de datos) , el usuario_id (que identifica el domicilio y se integra permanentemente en el módulo trampa de datos) , el miembro_id (el cual identifica al miembro del domicilio) , el tiempo y la fecha actuales, el sistema operativo de la computadora del cliente, la versión del módulo de trampa de datos que se está ejecutando, la dirección de protocolo de Internet de computadora de cliente, y la computadora_id (que identifica la computadora en el domicilio y permanentemente se integra en el módulo trampa de datos) . Después, el módulo de interfase de red se usa para abrir un conector de red entre la computadora de cliente y el sitio de registro (paso 91) . En cuanto el conector se ha establecido, se envía un mensaje de NUEVA_SESION al sitio de registro (paso 92) . Como se muestra en la Figura 8b, el mensaje NUEVA_SESION contiene una ficha "NUEVA_SESION" y el registro sesión_info. En una modalidad, cliente_fijar_sesión luego espera hasta gue es recibido el mensaje NUEVA_SESION_CONFIRMADA del sitio de registro hasta proceder. Esta modalidad se conoce como la "modalidad del saludo". En una modalidad alternativa, el recibo del mensaje NUEVA_SESION por el sitio de registro se asume, y el sitio de registro no transmite un mensaje NUEVA_SESION_CONFIRMADA para acusar el recibo. Esta modalidad se conoce como la "modalidad sin saludo". Como se muestra en la Figura 8c, en la modalidad del saludo, el mensaje NUEVA_SESION_CONFIRMADA contiene una ficha "NUEVA_SESION_CONFIRMADA", y el valor sesión_id. Cuando se recibe este mensaje, sale cliente_fijar_sesión. La Figura 9 muestra la técnica usada, en la modalidad del saludo por el servidor de registro para procesar mensajes de NUEVA_SESION de las computadores de cliente. Primero, se crea un registro de datos de conexión en una tabla estática conexiones, que tiene como un campo el valor de sesión_id contenido en el registro sesión_info transmitido por el mensaje NUEVA_SESION como un segundo campo el valor de la variable local conexión_id (la cual se crea con la interfase de la red e identifica el conector de red entre el servidor de registro y la computadora del cliente) , y que tiene en sus campos' restantes los valores de campo restantes del registro sesión_info que fueron transmitidas por la computadora del cliente (paso 111) . La estructura de un registro de datos de conexión se ilustra en la Figura 9a. Enseguida se envía un mensaje de NUEVA_SESION_CONFIRMADA a la computadora de cliente, que contiene el valor de sesión_id como su contenido (paso 112) . La Figura 10 muestra la técnica usada por cliente_registro_elección para registrar los mensajes de obtener y colocar en el servidor de registro. Se crea un registro elección_dato (paso 130) . Como se ilustra en la Figura 10b, este registro consiste en el valor actual de sesión_id, la fecha y la hora, el localizador de recursos universales al cual el mensaje de obtener o de colocar que se está procesando busca tener acceso, y una ficha que identifica el tipo de buscador que se está usando. Luego, se envía un mensaje de REGISTRO al servidor de registro usando *enviar (paso 131) . Como se muestra en la Figura 10a, un mensaje de REGISTRO consiste en la ficha "REGISTRO" y el contenido de elección_dato. Después, la variable Ultimoclick se pone igual al tiempo actual. La Figura 11 muestra la técnica usada por el servidor de registro para procesar mensajes de REGISTRO entrante. Primero, el registro de conexión en conexiones correspondiente al valor de sesión_id en el mensaje REGISTRO se recupera (paso 150) . Luego, se crea un registro en la base de datos que asocia los datos contenidos en el mensaje REGISTRO con la sesión_id (paso 151) . El servidor de registro continuamente recolecta datos de las computadoras de cliente en los cuales el módulo trampa de datos ha sido instalado. De cuando en cuando, se puede tomar una instantánea de estos datos (que consiste, v.gr. , en todas las transacciones registradas dentro de un período de tiempo dado) , y se pueden generar informes estadisticos, que muestran patrones de acceso a las páginas de la red por usuarios dentro de grupos demográficos relevantes (v.gr. frecuencia de acceso a una página por miembros de un grupo dado) así como patrones de acceso secuencial a la página de la red (v.gr. estadísticas que indican qué tan frecuentemente un usuario que tiene acceso a una primera página de la red dada seguirá un enlace de hipertexto en esa página hacia una segunda página dada) . Los terceros (v.gr. clientes del operador del servidor de registro) pueden tener acceso a los reportes estadísticos generados por el servidor de registro mediante el acceso vía la Internet, usando una página de la red "de informe" en el sitio de registro. Esta página de la red requiere que el tercero introduzca una contraseña (y la transmita de nuevo al sitio de registro) antes de tener acceso permitido a los informes solicitados. Las contraseñas son suministradas a los terceros autorizados por el operador del sitio de registro. En cuanto el tercero ha introducido una contraseña válida, se le proporciona un menú de informes posibles en formato de lenguaje de marcado de hipertexto. Los tipos de informes disponibles pueden variar dependiendo del nivel del servicio al cual se ha suscrito el usuario. En un buscador con un mecanismo de canal, la técnica usada por enviar_trampa para supervisar los patrones de observación de la página de la red del usuario se modifica como sigue. Haciendo referencia a la Figura 12, cuando se llama primero enviar_trampa, se determina si los datos que el programa de aplicación está intentando enviar son un mensaje de obtener o colocar protocolo de transporte de hipertexto (paso 200) . Si no es un mensaje de obtener o colocar protocolo de transporte de hipertexto, enviar_trampa inmediatamente llama *enviar (paso 210) y sale. Si es un mensaje de obtener o colocar protocolo de transporte de hipertexto, entonces la variable Ultimoclick se compara al tiempo actual (paso 220) . Si el tiempo actual es más de 15 minutos mayor que Ultimoclick, entonces se ejecuta la rutina cliente_fijar_sesión (paso 230) . Después de que se ha ejecutado cliente_fijar_sesión, o si el tiempo actual no es más de 15 minutos mayor que Ultimoclick, entonces el mensaje se verifica para determinar si el mensaje es un mensaje iniciado por el usuario (es decir uno generado como respuesta a un usuario que busca tener acceso a un recurso de datos) o si es generado por un mecanismo de canal para actualizar la información del canal en una memoria inmediata (paso 240) . Los pasos tomados por la rutina enviar_trampa para determinar si el mensaje es un mensaje iniciado por el usuario o no pueden variar dependiendo de la implementación del mecanismo de canal en el buscador, pero se puede usar una de las tres siguientes técnicas. La rutina enviar_trampa puede mantener una lista maestra de localizadores de recursos universales asociados con canales (ya sea generados por el usuario o derivados de archivos de configuración de mecanismos de canales) , y pueden considerar todos los mensajes dirigidos a estos localizadores de recursos universales como mensajes generados por un mecanismo de canal. De manera alternativa, los mensajes de obtener y colocar generados por un mecanismo de canal pueden contener información que los identifica especialmente como mensajes generados por un mecanismo de canal. Por ejemplo, pueden contener un valor de campo de encabezado "agente de usuarios" que es único para un mecanismo de canal. En este caso, enviar_trampa exploraría el contenido de los mensajes para determinar si esta información de identificación está presente. De manera alternativa, enviar-trampa puede mantener un registro funcionando de las veces cuando se envían mensajes a un localizador de registro universal particular. Cada vez que enviar_trampa recibe un mensaje de obtener o colocar, determina la cantidad de tiempo entre el mensaje actual y cualquier mensaje anterior al mismo localizador de recursos universales. Si enviar_trampa determina que hay una regularidad suficiente en los mensajes que se están dirigiendo a un localizador de recursos universales dado (por ejemplo, si tres de estos mensajes han sido enviados a intervalos precisamente de una hora) , determina que estos mensajes están siendo generados por un mecanismo de canal, y coloca el localizador de recursos universales en una lista de localizadores de recursos universales del mecanismo de canal. Los mensajes futuros dirigidos a ese localizador de recursos universales se consideran entonces que están siendo generados por un mecanismo de canal. Haciendo de nuevo referencia a la Figura 12, si enviar_trampa determina que el mensaje fue generado por el usuario, se ejecuta la rutina cliente_registro_elección (paso 250) , de otro modo, se ejecuta la rutina cliente_registro_canal_obtener (paso 260) . Enseguida, se verifica la estampa de fecha del archivo de registro mantenida por el mecanismo de canal (paso 270) . Si la estampa de fecha indica que el archivo de registro ha sido cambiado desde la última vez gue se llamó enviar_trampa , la rutina se ejecuta cliente_registro_canal_actividad (paso 280) . Enseguida, se ejecuta *enviar (paso 210) y sale enviar_trampa. La Figura 13 muestra los pasos tomados por la rutina cl iente_registro__canal_obtener . Un registro de canal_obtener_datos se crea (paso 300) . El registro incluye el valor actual de sesión-Id, la fecha, y el localizador de recursos universales al cual el mensaje obtener o colocar que se está procesando busca tener acceso. Luego se envía un mensaje de REGISTRO_CANAL_OBTENER al servidor de registro usando *enviar, el cual incluye la ficha "REGISTRO_CANAL_OBTENER" junto con el contenido del registro canal_obtener_datos (paso 310) . Cuando son recibidos los mensaje de REGISTRO_CANAL_OBTENER por el servidor de registro se procesan de la misma manera que los mensajes de REGISTRO. La Figura 14 muestra los pasos tomados por la rutina cliente_registro_canal_actividad. Se crea un registro canal_actividad_datos (paso 320) . El registro incluye el valor actual de sesión_id, la fecha, y el contenido actual del archivo de registro de mecanismo de canal . Entonces se envía un mensaje de REGISTRO_CANAL_ACTIVIDAD al servidor de registro usando *enviar, el cual incluye la ficha "REGISTRO_CANAL_ACTIVIDAD" junto con el contenido del registro canal_actividad_datos (paso 330) . Cuando se reciben mensajes de REGISTRO_CANAL_ACTIVIDAD por el servidor de registro, se procesan de una manera que los mensajes de REGISTRO. Otras modalidades de la invención están dentro de las siguientes reivindicaciones. Por ejemplo, el registro del usuario puede llevarse a cabo por correo, o a través de una conexión directa de marcación, en vez de a través del mecanismo en línea descrito anteriormente. En lugar de transmitir instantáneamente un mensaje de REGISTRO al servidor de registro cada vez gue el usuario tiene acceso a una página de la red, el módulo trampa de datos podría acumular varios de los "datos de elección" y transmitirlos al servidor de registro en intervalos de tiempo o después de un número fijo de "datos de elección". Las funciones del sitio de registro podrían llevarse a cabo a partir de varios servidores de la red físicos diferentes (v.gr., registros en uno o más servidores de registro, recolección de datos en uno o más servidores de recolección de datos, y despliegue de informes en uno o más servidores de informes) . En otra modalidad, las llamadas a la interfase de red que no se atrapan. En vez de esto, el buscador de la red se instruye para usar un "servidor representante". Un servidor representante es un software que se ejecuta en una computadora conectada a la Internet que acepta mensajes de protocolo de transporte de hipertexto de una computadora de cliente, y simplemente vuelve a emitirlos sobre la Internet. En esta modalidad, se instala software en la computadora de cliente que actúa como un servidor representante para la computadora del cliente, pero que también tiene la capacidad de registrar mensajes de obtener y colocar del protocolo de transporte de hipertexto de la trampa de datos descrita anteriormente. Todos los mensajes de protocolo de transporte de hipertexto enviados por la computadora de cliente se vuelven a encaminar a través del servidor representante, el cual emite mensajes de REGISTRO al servidor de recolección de datos antes de pasar el mensaje a la Internet . De manera alternativa, el software del servidor representante se puede instalar en un sistema remoto. Ya que un servidor representante remoto no tiene acceso directo a los archivos en el sistema del cliente, se instala un módulo de software "mini-servidor" en el sistema del cliente. Este "mini-servidor" responde a solicitudes "de búsqueda" del protocolo de transferencia de archivos (FTP) del servidor representante, permitiendo así que el servidor representante recupere un archivo de registro de mecanismo de canal para su transmisión al servidor de registro. Deberá notarse que en esta modalidad alternativa, una instancia de un programa de servidor representante debe ejecutarse para soportar a cada computadora que esté siendo supervisada. Esto se puede llevar a cabo, por ejemplo, ejecutando múltiples instancias del programa del servidor representante sobre un solo sistema servidor representante, y teniendo cada instancia asociada con un puerto de red particular en el sistema. Cada computadora gue se va a supervisar se programa para usar un puerto específico para comunicarse con el servidor representante. Debido a que un módulo de trampa de datos en un programa de servidor representante remoto no puede directamente tener acceso al sistema operativo del sistema del cliente, no puede realizar directamente el paso de solicitar al usuario que se identifique, indicado como paso 88 anterior. En vez de eso, el módulo trampa de datos obtiene esta información transmitiendo un formulario en lenguaje de marcado de hipertexto que solicita esta información al servidor del cliente. (El formulario en lenguaje de marcado de hipertexto se envía como respuesta a un mensaje de obtener o colocar que causa que se llame cliente_fijar_sesión) . El usuario introduce la información en el formulario y oprime un botón de "someter", el cual causa que la información del formulario se transfiera de nuevo al servidor representante. La computadora del cliente puede ser de un solo usuario o una plataforma de usuarios múltiples, o puede ser una computadora integrada, tal como en una televisión de consumidor, asistente digital personal, navegación por Internet, o producto de aparato de propósitos especiales. Las páginas de la web pueden residir en una red de área amplia, una red de área local, o sobre un solo sistema de archivo.
Claims (24)
- NOVEDAD DE LA INVENCIÓN Habiendo descrito la invención que antecede, se considera como una novedad y, por lo tanto, se reclama como propiedad lo contenido en las siguientes REIVINDICACIONES 1. En una red de datos, a la cual se conecta una pluralidad de sistemas de clientes y una pluralidad de servidores de recursos de datos remotos, en donde los sistemas del cliente tienen acceso a los recursos de datos remotos en los. servidores de recursos de datos remotos emitiendo mensajes de solicitud de acceso a recursos, un método para supervisar el uso de los recursos de datos remotos por los usuarios de los sistemas de clientes, comprendiendo el método: reencaminar un mensaje de solicitud de acceso a un recurso, generado en un sistema de cliente, a un módulo de registro; haciendo que el módulo de registro recolecte información acerca del mensaje reencaminado; y transmitir el mensaje sobre la red de datos a un servidor de recursos de datos remoto.
- 2. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque el reencaminamiento del mensaje comprende: atrapar una llamada a un módulo de interfase de la red y transferir control al módulo de registro.
- 3. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque el reencaminamiento del mensaje comprende: encaminar el mensaje hacia un servidor representante.
- 4. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque el recurso de datos remotos es una página de la red.
- 5. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque el mensaje es generado por un buscador de la red.
- 6. El método de conformidad con lo reclamado en la reivindicación 1, en donde el módulo de registro identifica al usuario gue emite el mensaje reencaminado.
- 7. El método de conformidad con lo reclamado en la reivindicación 6, que además comprende: registrar datos de identificación del usuario en un servidor de registro.
- 8. El método de conformidad con lo reclamado en la reivindicación 7, caracterizado porque registrar los datos de identificación del usuario en un servidor de registro comprende: transmitir un formulario de registro desde un servidor de registro al sistema del cliente; incitar al usuario para que llene la forma de registro; y transmitir los datos del formulario de registro desde el sistema del cliente hasta el servidor del registro.
- 9. El método de conformidad con lo reclamado en la reivindicación 8, caracterizado porque los datos del formulario de registro incluyen información demográfica acerca del usuario.
- 10. El método de conformidad con lo reclamado en la reivindicación 7, caracterizado porque los datos de identificación del usuario incluyen información demográfica acerca del usuario.
- 11. El método de conformidad con lo reclamado en la reivindicación 10, que además comprende combinar la información demográfica para los usuarios con información recolectada acerca de los mensajes reencaminados.
- 12. El método de conformidad con lo reclamado en la reivindicación 11, que además comprende generar informes del resultado de combinar la información demográfica y la información recolectada acerca de los mensajes reencaminados.
- 13. El método de conformidad con lo reclamado en la reivindicación 1, que además comprende enviar la información recolectada a un servidor de recolección de datos.
- 14. El método de conformidad con lo reclamado en la reivindicación 13, caracterizado porgue la información acerca del mensaje se envía al servidor de recolección de datos poco después de que el mensaje se reencamina.
- 15. El método de conformidad con lo reclamado en la reivindicación 13 , caracterizado porque la información acerca del mensaje se almacena temporalmente y se transmite a un servidor de recolección de datos en un tiempo posterior.
- 16. El método de conformidad con lo reclamado en la reivindicación 1, que además comprende compilar uno o más informes de la información recibida por el servidor de recolección de datos.
- 17. El método de conformidad con lo reclamado en la reivindicación 16, que además comprende poner uno o más de los informes a disposición en un servidor.
- 18. El método de conformidad con lo reclamado en la reivindicación 17, que además comprende: solicitar la identificación de usuario de un solicitante; transmitir un informe asociado con la identificación del usuario desde el sitio de la red al solicitante.
- 19. El método de conformidad con lo reclamado en la reivindicación 17, caracterizado porque el servidor es un sitio de la red.
- 20. El método de conformidad con lo reclamado en la reivindicación 13, que además comprende: compartir la estampa de fecha de un archivo de registro en el sistema del cliente con la última vez que el módulo de registro recolectó datos acerca de un mensaje reencaminado; y si el archivo de registro se modificó desde la última vez que el módulo de registro recolectó datos acerca del mensaje reencaminado, transmitir información desde el archivo de registro al servidor de recolección de datos.
- 21. El método de conformidad con lo reclamado en la reivindicación 20, en donde el archivo de registro contiene información acerca del uso de datos almacenados en la memoria inmediata por un usuario.
- 22. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque la información acerca del mensaje incluye información que identifica al usuario.
- 23. El método de conformidad con lo reclamado en la reivindicación 22, que además comprende los pasos de: determinar si el intervalo de tiempo desde que se recolectó la información por última vez acerca del mensaje reencaminado es mayor que un tamaño dado; y si el intervalo de tiempo es mayor que un tamaño dado, solicitar al usuario que se identifique antes de transmitir el mensaje sobre la red de datos al servidor de recursos de datos remoto.
- 24. El método de conformidad con lo reclamado en la reivindicación 1, caracterizado porque la red es la Internet.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US781087 | 1997-01-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA99006425A true MXPA99006425A (es) | 2000-09-04 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU725748B2 (en) | Monitoring of remote file access on a public computer network | |
US6256739B1 (en) | Method and apparatus to determine user identity and limit access to a communications network | |
US7257546B2 (en) | System and method for correlating user data from a content provider and user data from an advertising provider that is stored on autonomous systems | |
US7676574B2 (en) | Internet website traffic flow analysis | |
US8583775B2 (en) | System and method for generating and reporting cookie values at a client node | |
US5960409A (en) | Third-party on-line accounting system and method therefor | |
US6460084B1 (en) | Forced network portal | |
US6763386B2 (en) | Method and apparatus for tracking client interaction with a network resource downloaded from a server | |
JP4851636B2 (ja) | 外部サーバへのハイパーリンク参照をリダイレクトする方法及び装置 | |
US7406516B2 (en) | System and method for monitoring the use of a resource by a client connected to a computer network having one or more servers in communication with one or more clients | |
US20150356165A1 (en) | Method and system for providing content to users based on frequency of interaction | |
US20120185588A1 (en) | Distributed Data Collection and Aggregation | |
US20090019148A1 (en) | Method and apparatus for internet traffic monitoring by third parties using monitoring implements | |
US6883032B1 (en) | Method and system for collecting data on the internet | |
EP3023927A1 (en) | Service platform suite management system | |
CN101540734A (zh) | 一种跨域名Cookie访问方法、系统及设备 | |
KR20080107318A (ko) | 광고를 교체하는 네트웍장치 및 방법 | |
MXPA99006425A (es) | Supervision de acceso a archivos remotos en unared de computadoras publica | |
KR20000036686A (ko) | 웹호스팅서버에서의 중앙집중식 광고방법 | |
KR100401307B1 (ko) | 인터넷상에서의 실시간 광고방법 | |
JP2001195506A (ja) | 参照状況出力システム、参照状況出力方法及び参照状況出力プログラムを記録した記録媒体 |