ES2326560T3 - Metodo, aparato y sistema para la gestion de la movilidad y la eficiente recuperacion de informacion en una red de comunicaciones. - Google Patents

Metodo, aparato y sistema para la gestion de la movilidad y la eficiente recuperacion de informacion en una red de comunicaciones. Download PDF

Info

Publication number
ES2326560T3
ES2326560T3 ES07111884T ES07111884T ES2326560T3 ES 2326560 T3 ES2326560 T3 ES 2326560T3 ES 07111884 T ES07111884 T ES 07111884T ES 07111884 T ES07111884 T ES 07111884T ES 2326560 T3 ES2326560 T3 ES 2326560T3
Authority
ES
Spain
Prior art keywords
router
address
domain
network
home
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
ES07111884T
Other languages
English (en)
Inventor
Marc Klefter
Ulf Ahlfors
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Conveneer AB
Original Assignee
Conveneer AB
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 Conveneer AB filed Critical Conveneer AB
Application granted granted Critical
Publication of ES2326560T3 publication Critical patent/ES2326560T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4552Lookup mechanisms between a plurality of directories; Synchronisation of directories, e.g. metadirectories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W60/00Affiliation to network, e.g. registration; Terminating affiliation with the network, e.g. de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/04Network layer protocols, e.g. mobile IP [Internet Protocol]

Abstract

Un método para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones, que comprende los pasos de: recibir (204) en un enrutador de dominio (103) una petición de registro desde un aparato de comunicaciones móvil (106), incluyendo la petición de registro un nombre URI o lógico de dicho aparato de comunicaciones móvil; buscar (205) una dirección a un enrutador de salto siguiente (104) asociado con el URI o el nombre lógico; enviar (206) la petición de registro al enrutador del salto siguiente (104); recibir (210) una respuesta del enrutador de salto siguiente (104); y si la respuesta incluye una dirección a un enrutador doméstico (104), enviar (211) una respuesta al aparato de comunicaciones móvil (106), que incluya la dirección del enrutador doméstico (104), iniciando dicha respuesta el establecimiento de una conexión entre el aparato (106) de comunicaciones móvil y el enrutador doméstico (104).

Description

Método, aparato y sistema para la gestión de la movilidad y la eficiente recuperación de información en una red de comunicaciones.
Campo técnico
El presente invento se refiere al campo de la recuperación de información en una red de comunicaciones, y más en particular a un método y un aparato para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones.
Antecedentes
El modelo de comunicaciones a través de redes de igual a igual implica que cualquier nodo puede actuar como un servidor para cualquier otro nodo. Los recursos se localizan haciendo que el nodo que solicita entre en una consulta de recursos en la red de igual a igual. El cómo y el por qué protocolo se localiza el recurso solicitado depende del paradigma de búsqueda que se emplee en la red de igual a igual; ya sea por inundación de consultas como en las redes de igual a igual no estructuradas, o ya sea por algún mecanismo de consulta distribuido como en las redes de igual a igual estructuradas. La hipótesis corriente, sin embargo, es la de que todos los nodos, incluyendo los nodos que solicitan, los nodos de consulta, y el nodo o nodos objetivos, son todos parte de la red de igual a igual. Esta hipótesis limita el uso y hace que el servicio sea más restrictivo que el modelo de Internet que prevalece, en el que se supone que cualquier servidor registrado puede ser consultado a través del sistema de DNS (Sistema de Nombres de Dominios) publico. El sistema DNS, sin embargo, supone que un servidor tiene una dirección IP (Protocolo de Internet) estable. Debido al modo en que trabaja el actual sistema DNS, con servidores de nombre distribuidos y principios de memoria intermedia, los cambios de dirección no pueden tener lugar con demasiada frecuencia, puesto que ello podría conducir a que un servidor fuese inalcanzable durante los períodos de cambio.
El DNS Dinámico (DDNS) es una extensión del sistema DNS. El DDNS permite que los datos de nombres de dominio contenidos en un servidor de nombres sean actualizados en tiempo real, permitiendo así que un nombre de dominio de Internet sea asignado a un ordenador (servidor) con una dirección IP variable (es decir, dinámica). El servicio comporta usualmente un proveedor de DDNS que controla el proceso de registro y renovación DNS. El usuario actualiza los servidores DNS del proveedor de DDNS con la dirección IP más actual del servidor siempre que se detecte un cambio. Como desventajas que tiene esta solución se incluyen la implicación de un proveedor de DDNS y los potenciales largos tiempos de respuesta antes de que una actualización produzca un pleno efecto en todo el sistema DNS mundial, durante el cual el servidor objetivo es inalcanzable. Además, el método no resuelve el problema que se plantea cuando los anfitriones (ordenadores conectados a Internet) están situados detrás de un Traductor de Direcciones de la Red (NAT) y por consiguiente se les asignan direcciones de IP procedentes de campos de direcciones privados (que globalmente no son enrutables).
Puesto que los sistemas DNS y DDNS solos no pueden proporcionar un soporte suficiente para la movilidad de los ordenadores conectados a Internet, se han propuesto una serie de métodos y tecnologías. En la técnica anterior existen dos formas de abordar el problema, denominadas de movilidad de la capa de redes y de movilidad de la capa superior.
En el "IP Mobility Support for IPv4" IETF RFC 3344, C. Perkins, Ed., agosto 2002 y en "Mobility Support in IPv6", IETF RFC 3775, D. Johnson y otros, junio de 2004, se describe la norma IETF actual para movilidad de la capa de red. El IP móvil hace posible que un usuario móvil (nodo o anfitrión móvil) mantenga una sola dirección mientras realiza transiciones entre redes y medios de red. Cada nodo móvil está siempre identificado por su dirección permanente (doméstica), con independencia de su punto actual de fijación a la red Internet, lo que permite una dirección transparente con respecto a la red y a todos los demás dispositivos. Los únicos dispositivos que es necesario que sean conscientes del movimiento de este nodo, son el dispositivo móvil y el enrutador doméstico que actúe en nombre del dispositivo móvil. Esta solución se basa en el soporte en el sustrato de IP de las redes implicadas, lo que no siempre es el caso. Para soportar el NAT transversal, se requieren extensiones de mensaje adicionales del protocolo IP Móvil (encapsulación IP-in-UDP). Además, puesto que el IP Móvil es una solución de enrutamiento con el objetivo de actuar de modo transparente para capas más altas de la pila de Protocolos Internet, no proporciona soporte alguno para un eficiente transporte de datos de aplicación, lo cual puede resultar crítico en ambientes móviles.
En el documento US 2006 0059264 de la técnica anterior se describe un ejemplo de una movilidad de IP de soporte de la red.
En "End-to-End Approach to Host Mobility", A.C. Snoeren y H. Balakrishnan, Proc. de la Sexta Conferencia Anual Internacional ACM/IEEE sobre Computación y Redes Móviles, Boston, MA (EE.UU.) agosto de 2000, se describe una arquitectura de movilidad de anfitrión extremo con extremo a nivel de aplicación. En la misma se usan actualizaciones seguras del sistema DNS al cambiar de dirección, y un conjunto de opciones de migración de conexiones para gestionar los cambios en la dirección de IP de un anfitrión sin romper la conexión de extremo con extremo. La solución es realmente de extremo con extremo por cuanto no hay nodos intermedios que estén directamente implicados en el soporte de movilidad. En consecuencia, la propia infraestructura no ofrece un transporte eficiente que depende de las capacidades del anfitrión final. Además, aunque en la solución se aborda la migración de la conexión a través del NAT, no proporciona soporte explícito alguno para alcanzar a los servidores móviles que están detrás del NAT.
El documento de la técnica anterior titulado "The design and implementation of an international naming system" de W. Adjie-Winoto y otros, 17ª ACM Symposium sobre Principios de Sistemas Operantes, Charleston, SC (EE.UU.) diciembre 1999, se describe un sistema de descubrimiento de recursos y localización de servicios para redes dinámicas y móviles de dispositivos y ordenadores denominado Sistema de Asignación de Nombres Intencional (INS). En el INS se usa un lenguaje separado basado en los atributos y los valores para sus nombres y se implementa un mecanismo de enlace posterior que integra la resolución de los nombres y el enrutamiento de mensajes, haciendo posible que los clientes continúen comunicándose con nodos finales incluso aunque los mapas de nombre a dirección cambien mientras está en curso una sesión. La arquitectura del INS requiere por consiguiente resolvedores de nombres específicos con objeto de formar una red de recubrimiento a nivel de aplicación.
Una solución para actuar con redes móviles y con MANETs (redes móviles ad-hoc) consiste en aplicar una optimización de cruce de capas para hacer que la estructura de enrutamiento de recubrimiento de redes de igual a igual sea consciente de la naturaleza transitoria de la red en que se basa. Esta es la solución adoptada en el protocolo de redes de igual a igual móviles descrito en "Performance Evaluation of the Mobile Peer-to-Peer Protocol", I. Gruber, R. Scholmeier, y W. Kellerer, Cuarto Taller Internacional Sobre Computación Global y de Redes de Igual a Igual (GP2PC'2004) 2004; y "Mobile Peer-to-Peer Netvorking", W. Kellerer, R. Schollmeier, I. Gruber y F. Niethammer, Patente WO2005041534, 2004. De acuerdo con esta solución se usa la comunicación de capas cruzadas para enlazar entre sí la capa de enrutamiento con la capa física en que se basa. Esta solución supone una comunicación a través de capas, haciendo por tanto que el despliegue sea un tema a tratar.
El tema a tratar con el acceso de redes de igual a igual a los dispositivos móviles de recursos limitados se aborda por medio de la descarga de los dispositivos móviles ya sea mediante contenidos en memoria intermedia en las partes conectadas por cable de la red, como se ha descrito en, por ejemplo, "Enabling mobile peer-to-peer networking" (Capacitación de redes de igual a igual móviles) de J. Oberender y otros, Mobile and Wireless Systems, LNCS 3427, Alemania (2005); conectando los dispositivos a puertas dedicadas, como se ha descrito en, por ejemplo, "Mobile Web Server, Raccoon, Project", http://opensource.nokia.com/projects/mobile-web-server/, verificada: 2007-05-01; o minimizando el encabezamiento de señalamiento modificando para ello el protocolo de acceso, como se describe en, por ejemplo, "JXME project", http://jxme.jxta.org/, verificada: 2007-05-01. Estas soluciones restringen el paradigma verdadero de extremo con extremo de Internet.
Sumario
Un objeto del invento es eliminar o atenuar al menos algunas de las anteriores desventajas y proporcionar un método, un aparato y un sistema mejorados para gestionar la movilidad y la eficiente recuperación de la información en una red de comunicaciones.
El presente invento proporciona una pila de protocolos para un modelo eficiente y escalable de redes de igual a igual de comunicaciones en redes dinámicas y móviles de dispositivos y ordenadores en donde los nodos forman una red de recubrimiento genérica y se permite que sean móviles y más independientes de la infraestructura de la red en que se basan.
Un aspecto del presente invento es un método para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El método comprende:
recibir en un enrutador de dominio una petición de registro procedente de un aparato de comunicaciones móvil, incluyendo la petición de registro una identificación de dicho aparato de comunicaciones móvil;
buscar una dirección a un enrutador del salto siguiente asociado con la identificación;
enviar la petición de registro al enrutador del salto siguiente;
recibir una respuesta del enrutador del salto siguiente; y
si la respuesta incluye una dirección a un enrutador doméstico, enviar una respuesta al aparato de comunicaciones móvil incluyendo la dirección del enrutador doméstico, iniciando dicha respuesta el establecimiento de una conexión entre el aparato de comunicaciones móvil y el enrutador doméstico.
Un segundo aspecto del invento es un enrutador de dominio para forma una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El enrutador de dominio comprende:
un receptor adaptado para recibir una petición de registro desde un aparato de comunicaciones móvil, incluyendo la petición de registro una identificación de dicho aparato de comunicaciones móvil;
una búsqueda adaptada al controlador de una dirección a un enrutador del salto siguiente asociado con la identificación,
un transmisor adaptado para enviar la petición de registro al enrutador del salto siguiente;
en que, el receptor está adaptado para recibir una respuesta del enrutador del salto siguiente; el controlador está adaptado para determinar si la respuesta incluye una dirección de red a un enrutador doméstico; y el transmisor está adaptado para enviar un mensaje de respuesta al aparato de comunicaciones móvil incluyendo la dirección del enrutador doméstico, iniciando dicho mensaje de respuesta el establecimiento de una conexión entre el aparato de comunicaciones móvil y el enrutador doméstico.
Un tercer aspecto del presente invento es un método alternativo de formación de una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El método comprende:
recibir en un enrutador doméstico una petición de registro para un aparato de comunicaciones móvil desde un enrutador de dominio, incluyendo la petición de registro una identificación de dicho aparato de comunicaciones móvil;
en respuesta a la petición de registro, generar una respuesta que incluya la dirección del enrutador doméstico; y
enviar la respuesta al enrutador de dominio para iniciar una respuesta de transferencia al aparato de comunicaciones móvil incluyendo la dirección del enrutador doméstico.
Un cuarto aspecto del presente invento es un enrutador doméstico para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El enrutador doméstico comprende:
un receptor adaptado para recibir una petición de registro para un aparato de comunicaciones móvil desde un enrutador de dominio, incluyendo la petición de registro una identificación de dicho aparato de comunicaciones móvil;
un controlar adaptado para, en respuesta a la petición de registro, generar una respuesta que incluya la dirección del enrutador doméstico; y
un transmisor adaptado para enviar la respuesta al enrutador de dominio para iniciar una respuesta de transferencia al aparato de comunicaciones móvil que incluya la dirección del enrutador doméstico.
Un quinto aspecto del presente invento es otro método alternativo para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El método comprende:
pedir una conexión a un enrutador doméstico enviando para ello una consulta a un servidor de nombre de dominio;
recibir una dirección a un enrutador de dominio conectado al enrutador doméstico;
pedir el registro del enrutador doméstico enviando para ello una petición de registro al enrutador de dominio de la dirección recibida;
recibir una respuesta de registro desde el enrutador de dominio con referencia al enrutador doméstico;
generar y enviar una petición de registro directamente al enrutador doméstico; y
establecer una conexión entre el enrutador doméstico y el aparato de comunicaciones móvil.
Un sexto aspecto del presente invento es un programa de ordenador que comprende medios de código de programa de ordenador adaptados para realizar todos los pasos de los métodos de acuerdo con los diferentes aspectos del presente invento antes indicados, cuando se corre dicho programa en un ordenador.
En una o más realizaciones el programa de ordenador del sexto aspecto está incorporado en un medio legible por ordenador.
En una o más realizaciones el programa de ordenador del sexto aspecto es un programa de ordenador sobre un portador y que comprende instrucciones ejecutables por ordenador para hacer que un ordenador ejecute los métodos de acuerdo con los diferentes aspectos del presente invento antes indicados, cuando se corre dicho programa en un ordenador.
En una o más realizaciones del programa de ordenador el soporte es un medio de registro, una memoria de ordenador, una memoria de solo lectura o una señal portadora eléctrica.
Un séptimo aspecto del presente invento es un producto de programa de ordenador que comprende un medio legible por ordenador, que tiene en el mismo: medios de código de programa de ordenador, cuando está cargado dicho programa, para hacer que el ordenador ejecute el proceso de cualquiera de los métodos de acuerdo con los diferentes aspectos del presente invento antes indicados.
Breve descripción de los dibujos
Los objetos, características y ventajas de realizaciones del invento se pondrán de manifiesto en la descripción detallada que sigue, haciéndose en ella referencia a los dibujos que se acompañan, en los cuales:
La Fig. 1 ilustra un ejemplo de una infraestructura de red con un conjunto de entidades, de las que una o más forman una red de recubrimiento genérica;
La Fig. 2 es un diagrama esquemático de acuerdo con una realización de un método de registro de un aparato de comunicaciones móvil como un nodo de servidor móvil y del establecimiento de una conexión con un enrutador doméstico en la red de recubrimiento de una red de comunicaciones electrónica como en la Fig. 1;
La Fig. 3A es un diagrama bloque de un enrutador de dominio de acuerdo con una realización;
La Fig. 3B es un diagrama bloque de un enrutador doméstico de acuerdo con una realización;
La Fig. 3C es un diagrama bloque de un enrutador extranjero de acuerdo con una realización;
La Fig. 4 es un diagrama esquemático de un método de acuerdo con una realización cuando un cliente pide el contenido de un MN;
La Fig. 5 es un diagrama esquemático de un método de acuerdo con una segunda realización cuando un cliente pide el contenido de un MN;
La Fig. 6 es un diagrama esquemático de un método de acuerdo con una realización cuando un cliente pide el contenido de un MN que contiene los recursos asociados con múltiples URIs que pertenezcan a diferentes dominios;
La Fig. 7 es un diagrama esquemático de un método para actuar de igual a igual de acuerdo con una realización;
La Fig. 8 es un diagrama esquemático de un método para actuar de igual a igual de acuerdo con una segunda realización;
La Fig. 9 es un diagrama esquemático de una realización de un método para una consulta de metadatos;
La Fig. 10 ilustra una realización de una red de recubrimiento;
La Fig. 11 representa la tabla de enrutamiento del enrutador de dominio como en la Fig. 10;
La Fig. 12 representa la tabla de enrutamiento de un enrutador extranjero como en la Fig. 10;
La Fig. 13 representa un caso actualizado de la Fig. 10 después de un movimiento por parte de la MN;
La Fig. 14 representa la tabla de enrutamiento actualizada de un FR (Enrutador Extranjero) de acuerdo con la Fig. 13; y
La Fig. 15 representa una parte de un sistema para la eficiente manipulación y control de los mensajes de señales y datos aguas abajo y aguas arriba entre un MN y su punto actual de fijación, de acuerdo con una realización.
Descripción detallada
En la Fig. 1 se ha ilustrado un ejemplo de una infraestructura de red 100 con un conjunto de entidades, de las que una o más forman una red de recubrimiento genérica. Como entidades se pueden incluir uno o más clientes 101 y Servidores de Nombres de Dominio (DNSs) 102, enrutadores de dominio (DRs) 103, enrutadores domésticos (HRs) 104, enrutadores extranjeros (FRs) 105, y Nodos de servidores Móviles (MN) 106.
Los clientes 101 pueden ser anfitriones convencionales (no necesariamente parte de la red de recubrimiento) con acceso al Internet global 107. Todo cliente debidamente equipado puede acceder a las aplicaciones alojadas en cualquier MN 106. Análogamente, un MN 106 puede actuar como cliente en otras situaciones. Las entidades de la red que son parte de la red de recubrimiento pueden ser una o más de DRs 103, HRs 104, FRs 105, y MNs 106. El número y tipo de entidades de la infraestructura de la red y de la red de recubrimiento de la Fig. 1 es tan solo un ejemplo, y no está destinado a limitar el alcance del invento.
El Enrutador de Dominio, DR 103, es una entidad adaptada para buscar y redirigir las peticiones para un cierto Identificador de Recursos Uniforme (URI) o nombre lógico hacia un punto de unión, es decir, un HR o un FR, para un MN asociado con el URI solicitado. La consulta se realiza mediante interacción con otros nodos en la red de recubrimiento, incluyendo uno o más Servidores de Nombres de Dominio (DNSs) 102, Enrutadores de Dominio (DRs) 103, Enrutadores Domésticos (HRs) 104, Enrutadores Extranjeros (FRs) 105, y Nodos servidores Móviles (MN) 106, o una combinación de los mismos.
Cada DR 103 contiene una tabla de enrutamiento de salto siguiente en donde cada fila contiene <URI, {enrutadores de salto siguiente}, temporizador>. Por consiguiente, la tabla contiene una lista ordenada de entradas de salto siguiente de direcciones de HRs o FRs para cada URI registrado, y el temporizador para una cierta fila de URIs se renueva para cada consulta dirigida hacia ese URI. Cuando el temporizador expira se retira una fila de URIs de la tabla. El DR 103 mantiene las conexiones con todos los HRs/FRs en su tabla de enrutamiento de salto siguiente. La conexión puede hacerse a través de TCP o de cualquier protocolo de capa de transporte adecuado. Además, el DR 103 puede estar configurado en una topología de racimo por razones de actuaciones y/o de redundancia. Cada dominio de nombre es controlado por una entidad DR o posiblemente por un racimo de las mismas. Además, el DR 103 mantiene una tabla de las direcciones a clientes con consultas actualmente pendientes, no respondidas, para un URI en el dominio controlado por el DR 103. Al recibir la primera respuesta a la consulta para un cierto URI desde un HR/FR de salto siguiente, el DR 103 responderá a todos los clientes las consultas que actualmente estén pendientes, optimizando así el retardo por búsqueda experimentado por los clientes.
El Enrutador Doméstico, HR 104, es una entidad adaptada para buscar y redirigir las peticiones para un cierto URI o nombre lógico hacia el punto de unión (HR o FR) para el MN asociado con el URI solicitado. La consulta se realiza mediante interacción con otros nodos en la red de recubrimiento. Cada HR 104 contiene una tabla de enrutamiento en donde cada fila contiene <URI, {enrutadores salto siguiente}, {enrutadores salto anterior}, temporizador, dirigir>. Por cada URI registrado, la tabla contiene una lista ordenada de entradas de salto siguiente de direcciones de HRs o FRs, una lista ordenada de entradas de salto anterior de direcciones de DRs, HRs o FRs, un temporizador que se renueva para cada consulta de búsqueda hacia ese URI, y una marca de dirección que indica si el MN asociado con el URI está conectado directamente con el HR 104. En este caso, el HR 104 responde con su propia dirección para cualquier petición de consulta que tenga como objetivo el MN. Cuando el temporizador expira se retira de la tabla una fila de URIs. El HR 104 mantiene las conexiones, las cuales pueden ser a través de TCP o de cualquier protocolo de capa de transporte adecuado, con todos los HRs/FRs en la tabla de enrutamiento. Si se conecta directamente a cualquier MN (a uno o más), el HR 104 es el responsable de mantener una conexión directa, a través de TCP o de cualquier protocolo de cada de transporte adecuado, con ese MN -posiblemente a través de NATs y de Cortafuegos- y actúa como un nodo repetidor para el tráfico de la aplicación entre el MN y otros nodos. Un nuevo MN registra típicamente, posiblemente al tener lugar una invitación explícita, su URI con un HR para entrar en la red de recubrimiento. Solamente un HR 104 puede ser el HR original para un MN en cualquier momento dado, mientras que un MN puede mantener asociaciones con otros HRs.
El Enrutador Extranjero, FR 105, es una entidad adaptada para buscar y redirigir las peticiones para un cierto URI o nombre lógico hacia el punto de unión (HR o FR) para el MN asociado con el URI solicitado. La consulta se efectúa por interacción con otros nodos en la red de recubrimiento. Cada FR 105 contiene una tabla de enrutamiento en donde cada fila contiene <URI, {enrutadores a salto siguiente}, {enrutadores a salto anterior}, temporizador, dirigir>. Para cada URI registrado, la tabla contiene una lista ordenada de entradas a salto siguiente de direcciones de HRs o FRs, una lista ordenada de entradas a salto anterior de direcciones de DRs, HRs o FRs, un temporizador que se renueva por cada consulta de búsqueda hacia ese URI, y una marca de dirección que indica si el MN que mantiene el URI está conectado directamente con el FR 105. En este caso el FR 105 responde con su propia dirección para cualquier petición de consulta que tenga como objetivo el MN. Cuando el temporizador expira, se retira de la tabla una fila de URIs. El FR 105 mantiene las conexiones, las cuales pueden ser a través de TCP o de cualquier protocolo de capa de transporte adecuado, con todos los HRs/FRs en la tabla de enrutamiento. Si está conectado directamente a cualquier MN (a uno o más), el FR 105 es el responsable de mantener una conexión directa, a través de TCP o de cualquier protocolo de capa de trasporte adecuado, con ese MN -posiblemente a través de NATs y de Cortafuegos -y actúa como un nodo repetidor para el tráfico de la aplicación entre el MN y otros nodos. Un nodo que actúe como FR para un MN puede actuar como HR para otros MNs.
El Nodo Móvil, MN 106, es un anfitrión que puede cambiar la posición de una red o subred a otra y cambiar su dirección IP. Puede continuar comunicándose con, y ser alcanzado por, otros nodos de Internet en cualquier lugar, asumiendo conectividad de capa de enlace y una dirección IP asignada y válida. El MN 106 puede haberse previsto en un aparato electrónico, el cual puede ser incorporado en un terminal móvil para un sistema de telecomunicaciones o una red móvil 107, por ejemplo, el GSM, el UMTS o cualquier otro sistema o red, tal como una WLAN 108.
Cualquier combinación de las anteriores entidades 101-106 y 108 puede estar colocalizada en un solo dispositivo (posiblemente multidoméstico) o bien pueden estar todas instaladas en dispositivos separados. En lo que resta de este análisis, podemos contemplar y designaremos esas entidades lógicas como unidades separadas de software que corren en dispositivos individuales con capacidades de conexión con ordenador y con red y de comunicaciones.
En la Fig. 2 se ha ilustrado un método para registrar un aparato de comunicaciones móvil como un nodo servidor móvil MN 106 y establecer una conexión con el enrutador doméstico HR 104 en la red de recubrimiento de una red de comunicaciones electrónicas como en la Fig. 1. Además de las necesarias condiciones de conectividad de la red y de tener una dirección IP válida, el MN 106 debe tener instalada una funcionalidad de recubrimiento apropiada. Esta funcionalidad puede ser un producto de programa de ordenador que comprenda un medio legible por ordenador, que tenga en el mismo medios de código de programa de ordenador, cuando dicho programa está cargado, para hacer que el ordenador ejecute el proceso para proporcionar la funcionalidad.
De acuerdo con la realización de la Fig. 2, el MN 106 no tiene constancia inicialmente de la dirección actual de su HR 104. En este caso la inicialización se realiza al tener que resolver el MN 106 su nombre a través del DNS 102 enviando para ello una Interrogación DNS en el paso 201. El DNS halla y retorna una dirección del DR responsable, enviando para ello una Respuesta DNS en el paso 202, hacia la cual puede dirigir el MN una Petición de Registro en el paso 203.
De acuerdo con una realización el DR recibe una Petición de Registro en el paso 204 y realiza una búsqueda basada en el nombre en el paso 205. Si se identifica un HR válido, el DR envía la Petición de Registro al HR identificado en el paso 206. El HR recibe la Petición de Registro desde el DR en el paso 207 y procesa la Petición de Registro en el paso 208. El HR responde enviando una Respuesta de Registro al DR que solicita, en el paso 209. El DR recibe la Respuesta de Registro del HR en el paso 210. El DR procede retornando un mensaje de respuesta hacia el MN en el que expresa la dirección IP del HR, por ejemplo alice.example.com@HR_{IP} en el paso 211. El MN recibe la Respuesta de Registro desde el DR en el paso 212 y puede entonces enviar una Petición de Registro directamente al HR identificado usando para ello la dirección IP recibida en el paso 213. Cuando el HR recibe la Petición de Registro directamente desde el MN peticionario en el paso 214, verifica la Petición de Registro recibida en el paso 215. En el paso 216 el HR envía una Respuesta de Registro, la cual es recibida por el MN en el paso 217, que representa un reconocimiento de que se ha establecido satisfactoriamente una conexión directa entre el MN y el HR. Al completarse la secuencia indicada de acontecimientos, el MN 106 puede ser accesible para otros anfitriones que estén unidos a la red Internet, como se ilustrará con más detalle en lo que sigue.
Como se ha descrito en lo que antecede, se debe identificar un HR para el cual pueda ser registrado un MN. Sin embargo, en el caso de que no sea conocido ningún HR válido en el DR, se pueden definir reglas para una respuesta apropiada. Como acciones se incluyen responder con un mensaje de error adecuado, o bien hacer referencia a HRs alternativos, con tal de que hayan sido definidos uno o más HRs alternativos. El MN establece contacto con el HR y se establece una conexión directa. Esta conexión es vigilada, mantenida y reparada por ambas entidades mediante, por ejemplo, mensajes de mantenimiento en actividad o similares, hasta que el MN deje de estar registrado o
termine.
El MN puede no tener constancia inicialmente de la dirección real de su HR, como en la realización del método que se ha descrito en lo que antecede, o bien el MN puede conocer la dirección del HR.
En este último caso, la dirección IP del HR puede ser conocida de antemano, por haber sido mantenida en memoria intermedia desde sesiones anteriores, reconfigurada o comunicada en una invitación separada. En este caso, cuando el MN tiene ya constancia de la dirección de su HR, el MN puede hacer contacto y registrarse con el HR directamente.
El invento no queda limitado a la realización del método de registrar un aparato de comunicaciones móvil con un enrutador doméstico HR en una red de recubrimiento como se ha descrito en lo que antecede. En una realización más general del invento, el proceso de inicialización y el subsiguiente proceso de nuevo registro serán cualquier combinación de los siguientes pasos:
1. El MN realiza un descubrimiento local ("solicitud de vecino") por medio de una emisión (o de una multiemisión en direcciones dedicadas) en la red secundaria actual. Ello puede dar por resultado respuestas directas de los nodos HR/FR presentes en la red secundaria. Como alternativa, puede dar por resultado referencias indirectas a nodos HR/FR potenciales, por medio de indicaciones recibidas conducidas en respuestas desde otros MNs presentes en la red secundaria (es decir, MNs que actúen como agentes repetidores de solicitudes). En el caso de múltiples alternativas, el MN tendrá que elegir un punto de anclaje basado en criterios configurables.
2. El MN resuelve la dirección a su DR y hace contacto con el mismo para referirse a un HR o FR adecuado. El DR puede basar su respuesta en varios criterios, como el de proximidad de la red (número de saltos, latencia de la ruta ping/trace (detectar la presencia de una conexión/trazar un camino a través de la red), rutas de solapamiento, etc.), localización geográfica (por ejemplo, basada en los datos de GPS), mediciones de capacidad y de tráfico comunicados (por ejemplo, procesamiento actual y situación de la carga en los nodos y enlaces), o bien acuerdos de colaboración de igual a igual establecidos en base a las comunidades y a las relaciones interpersonales conocidas, o por otros medios. Este proceso puede estar, o no, basado en la entrada desde otros DRs y nodos de HR/FR, y posiblemente desde otros servidores para fines especiales en el recubrimiento.
3. El MN hace contacto con nodos HR/FR conocidos mantenidos en su memoria intermedia desde sesiones anteriores recuperados de cualquier otro repertorio, típicamente de un sitio de la red o similar, de acuerdo con algún esquema de petición predeterminado.
Al tener lugar cada registro con un HR/FR, el MN deberá expresar la dirección del último HR/FR conectado, si existe. En base a esta información, el nuevo HR/FR hace contacto con el último HR/FR conectado para actualizar su ruta al siguiente salto. Si no se puede proporcionar tal dirección, el HR/FR efectuará un proceso de resolución de nombre en base al nombre registrado por el MN, que conduzca finalmente el nuevo HR/FR al último punto conocido de unión del MN, si existe. De otro modo, el HR originario deberá ser contactado directamente.
Un MN puede cambiar su punto de unión debido a cambios en la topología de la red, a fallos de nodo, a movilidad: por ejemplo, cuando se mueve el nodo y detecta mejores condiciones de radio, o de acuerdo con cualquier condición de metadatos, tal como de arracimado con otros nodos.
La Fig. 3A es un diagrama bloque de un enrutador de dominio 103 en una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. El enrutador de dominio 103 está configurado para registrar un aparato 106 de comunicaciones móviles con un enrutador doméstico 104 en la red de comunicaciones. De acuerdo con una realización, el enrutador de dominio 103 comprende un receptor 301 adaptado para recibir una petición de registro desde el aparato 106 de comunicaciones móviles, en que la petición de registro incluye una identificación del aparato de comunicaciones móvil. Un controlador 302 del enrutador de dominio está adaptado para buscar una dirección a un enrutador de salto siguiente 104 o 105 asociado con, o a ser asociado con, la identificación, es decir, con el MN 106 que solicita. Además, el enrutador de dominio 103 tiene un transmisor 303 adaptado para enviar la petición de registro al enrutador de salto siguiente 104 o 105.
El receptor 301 está además adaptado para recibir una respuesta desde el enrutador de salto siguiente 104, 105. El controlador 302 está adaptado para determinar si la respuesta incluye una dirección de red a un enrutador doméstico 10; y el transmisor 303 está adaptado para enviar un mensaje de respuesta al aparato de comunicaciones móvil MN 106 que incluya la dirección del enrutador doméstico 104. El mensaje de respuesta inicia el establecimiento de una conexión entre el aparato de comunicaciones móvil y el enrutador doméstico cuando es recibido y procesado por el aparato de comunicaciones móvil.
La Fig. 3B es un diagrama bloque de un enrutador doméstico 104 en una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. De acuerdo con una realización, el enrutador doméstico 104 comprende un receptor 311, un controlador 312, y un transmisor 313. El receptor 311 está adaptado para recibir una petición de registro para un aparato de comunicaciones móvil 106 desde un enrutador de dominio 103, en que la petición de registro incluye una identificación del aparato 106 de comunicaciones móviles. El controlador 312 está adaptado para generar una respuesta que incluye la dirección del enrutador doméstico, en respuesta a la petición de registro. El transmisor 313 está adaptado para enviar la respuesta al enrutador de dominio 103 para iniciar una respuesta de transferencia al aparato de comunicaciones móvil 106 que incluya la dirección del enrutador doméstico.
En una realización, el receptor 311 está adaptado para recibir entonces una petición de registro desde el aparato de comunicaciones móvil 106. Además, el controlador 312 está adaptado para, en respuesta a la petición de registro procedente del aparato de comunicaciones móvil 106, establecer una conexión entre el enrutador doméstico 104 y el aparato de comunicaciones móvil 106.
La Fig. 3C es un diagrama bloque de un enrutador extranjero 105 para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones. De acuerdo con una realización, el enrutador extranjero 105 comprende un receptor 321, un controlador 322, y un transmisor 323.
La Fig. 4 es un organigrama esquemático de un método de acuerdo con una realización cuando un cliente solicita contenidos de un MN. El ejemplo ilustra un cliente solicitando una página web (o similar) emitiendo para ello un HTTP GET. En el paso 401, el cliente envía una Interrogación DNS con la dirección de la red "alice.example.com" al sistema DNS. Un servidor del nombre de DNS responde con la dirección IP del DR para el dominio "example.com" en el paso 402. A continuación, el cliente envía un HTTP GET con la dirección "alice.example.com" a la dirección IP del DR en el paso 403, en respuesta al HTTP GET recibido, el DR realiza una búsqueda en el paso 404 en su tabla de enrutamiento al salto siguiente para un enrutador de salto siguiente, al cual deberá ser enviada la interrogación de búsqueda. El HR que recibe la interrogación de búsqueda identifica la dirección del MN solicitado al estar directamente conectado y envía por lo tanto una respuesta de búsqueda con su propia dirección IP en el paso 405. El HR identifica el HR del MN solicitado, ya sea seleccionándolo por si mismo, si el HR es el HR original del MN, o bien mediante interacción con otros nodos, es decir, con otros HRs y/o FRs en la red de recubrimiento. En este ejemplo, la marca de dirección indica que el MN asociado con el URI está directamente conectado con el HR 104. Por consiguiente, en este caso el HR replica con su propia dirección a la petición de búsqueda al MN que fija el objetivo, es decir, "alice.example.com". Respondiendo a la respuesta de búsqueda del HR, el DR genera y envía un mensaje de redirección de HTTP al cliente solicitante, con la dirección IP del HR conectado al MN solicitado en el paso 406. Por consiguiente, el cliente puede entonces enviar un HTTP GET for alice.example.com al HR conectado al MN que tiene la información solicitada en el paso 407. El HR genera y envía un HTTP GET incorporado para alice.example.com al MN en el paso 408 para acceso a la información solicitada, es decir, a la página web "alice.example.com" en este ejemplo. El MN replica con un HTTP 200 OK incorporado a su HR en el paso 409. En respuesta al HTTP 200 OK incorporado, el HR genera y envía un HTTP 200 OK en el paso 410 para la página web solicitada al cliente solicitante, el usuario de la cual puede entonces acceder a la información en la página web solicitada.
En otras realizaciones, quienes sean expertos en la técnica apreciarán que los anteriores métodos pueden ser aplicados a protocolos de aplicación alternativos. Como puede verse en este ejemplo, el destino final, es decir, la dirección MN, está oculta al cliente; el cliente establecerá una conexión TCP con el HR del MN (o con el FR en otro escenario), mientras el HR (o el FR) retransmite los mensajes entre el cliente y el MN. Se ha supuesto que este tipo de búsqueda solamente ha de ser efectuado para clientes previamente desconocidos, puesto que la mayoría de los clientes serán capaces obtener de la memoria intermedia la dirección del HR (o el FR) del MN para futuras peticiones (ciertamente, esta es una característica típica de los actuales navegadores por la red). Además, si el DR recibe peticiones adicionales de un URI/nombre específico con al menos una búsqueda pendiente anteriormente, el DR puede usar el primer resultado de la búsqueda que retorne para enviar un mensaje de respuesta a todos los clientes solicitantes, optimizando con ello además el retardo de búsqueda experimentado por los clientes.
La Fig. 5 es un organigrama esquemático de un método de acuerdo con una segunda realización, cuando un cliente solicita contenidos de un MN 106. En este ejemplo, el MN 106 se ha movido a otra red secundaria y registrado de nuevo de acuerdo con el proceso de nuevo registro antes indicado. Esto mismo es de aplicación cuando el MN 106 se ha movido a otra puerta o bien cuando la topografía de la red haya cambiado. El MN 106 ha sido registrado con dos FR alternativos 105a y 105b, uno después del otro. En la situación representada, el proceso de registro ha formado una "cadena de búsquedas" consistentes en el DR 103 - HR 104 - FR 105a - FR 105b, donde el FR 105b más inferior es el punto de unión actual del MN.
Un MN puede moverse, realizando para ello una entrega, a un nuevo FR, o de vuelta a su HR, por las razones que se han descrito en lo que antecede. La entrega es controlada por el recubrimiento con objeto de no perturbar ninguna de las sesiones que estén en curso. Al tener lugar un movimiento, cuando el nuevo punto de unión (HR/FR) hace contacto con el último punto conocido de unión (HR/FR), cualesquiera relaciones anteriores serán detectadas mediante la inspección de las tablas de enrutamiento al salto siguiente. Como consecuencia, no se producirá ningún bucle y el número de caminos en el camino de la búsqueda se mantendrá en un mínimo. Los detalles de este proceso se describirán con detalle en lo que sigue.
En la Fig. 5, los pasos 501-504 de mensajería son iguales a los pasos 401-404 de mensajería de la Fig. 4. Sin embargo, en vez de poder responder directamente, como en el mensaje 405 de la Fig. 4, el HR 104 tiene ahora que propagar la interrogación bajando por la "cadena de búsqueda", es decir, por los pasos 505 y 506 a través del FR 105' y del anclaje RF 105'' en la Fig. 5. El anclaje FR 105'' retorna una respuesta de la búsqueda en el paso 507 y la respuesta llega al HR 104 en el paso 508 y al DR 103 en el paso 509, de modo que se puede hacer retornar un mensaje de redirección al cliente 101 en el paso 510. El cliente 101 dirige entonces la petición hacia el anclaje FR 105'' en el paso 511, el cual retransmite a su vez la petición hacia el MN 106 en el paso 512. La respuesta del MN 106 discurre a través del anclaje FR 105'', directamente al cliente en los pasos 513 y 514.
En la Fig. 6 se ha ilustrado un MN 106 que tiene los recursos asociados con múltiples URIs que pertenecen a diferentes dominios, donde cada dominio está controlado por DRs separados, el DR 103a y el 103b en esta realización. Los recursos del MN 106 son accesibles por medio de una petición de búsqueda hacia cualquier URI a través del DR 103b apropiado, donde cada petición es dirigida al DR 103b apropiado mediante búsqueda DNS convencional en los pasos 601 y 602. En el ejemplo ilustrado, la petición se hace a un URI en el dominio secundario del MN 106. En este caso, los HRs 104a y los FRs 105a en el dominio primario actúan como los FRs para el HR 104b en el dominio secundario. Los mensajes 601-612 son por lo tanto análogos a los mensajes 501-512 representados en la Fig. 5.
El método y los medios para asociar y acceder a múltiples URIs con un MN pueden ser realizados como en la Fig. 5, permitiendo que los HRs 104a en el dominio primario establezcan acuerdos entre ellos mismos y los HRs 104b en los dominios segundarios. Tales acuerdos de igual a igual pueden ser establecidos por medio de invitaciones explícitas de igual a igual emitidas por un HR a otro, o bien por tener un HR que solicite una relación de igual a igual con otro HR, posiblemente sobre demanda. Las conexiones de igual a igual pueden ser previamente establecidas o bien ser establecidas al tener lugar la petición cuando un MN solicite establecer una conexión con la red.
Una alternativa y complemento al método de igual a igual de HR para establecer un "alias" del nombre del anfitrión antes descrito, es el método de mapeo de alías DR. En la Fig. 7 se ha representado un ejemplo. En este caso, los administradores de cada DR 104b del dominio secundario pueden registrar una asociación de la dirección del DR 104a del dominio primario con el alías del nombre de los recursos 106 de un MN en su DR. De este modo, cualquier petición de un alías 106 para un MN es dirigida hacia el DR secundario 103b en el paso 703, después de una búsqueda DNS en los pasos 701 y 702, seguida de una respuesta de redirección en el paso 704, apuntando hacia el DR 103a del dominio primario, seguida de una petición de búsqueda en el paso 705. Entonces, en los pasos 706-709 se realiza la secuencia anteriormente indicada de peticiones de búsqueda en el dominio primario y, en base a la respuesta de la búsqueda en el paso 710, se establece contacto directo por el cliente que solicita hacia el actual nodo de anclaje FR 105 en el paso 711, el cual retransmite la petición sobre la conexión previamente establecida entre el FR 105 y el MN 106 en el paso 712.
El acuerdo de igual a igual con HR puede existir debido al establecimiento del "alias" del nombre del anfitrión antes descrito, pero puede también existir por otras razones, incluyendo la de proporcionar escenarios de acceso alternativo. Como razones típicas para tener escenarios de acceso alternativo se incluyen la proximidad a la red y el arracimado, o razones de actuaciones y redundancia. Este tipo de relaciones de igual a igual tiene lugar típicamente sobre la demanda y puede venir regulado por algunos criterios de tiempo real tales como el de la localización del nodo actual o por otros, más complejos, como resultado del procesado de metadatos.
En la Fig. 8 se ha representado una realización de un método de relación de igual a igual. Los dos DRs 103a y 103b controlan dos dominios diferentes, que no necesariamente han de estar relacionados a través de una relación de establecimiento de "alias" del nombre del anfitrión. El MN 106 descubre un nodo de FR 105b, anteriormente desconocido, usando cualquiera de los métodos para inicialización y registro descritos en relación con la Fig. 2 en lo que antecede. Después del descubrimiento, el MN 106 emite una petición en el paso 801 para establecer una relación de igual a igual entre los dos HRs 104a y 104b. La petición contiene como parámetro la dirección del HR 104a del MN 106. El FR 105b recién descubierto propaga la petición de relación de igual a igual en el paso 802 a todos, o posiblemente a un subconjunto seleccionado de los HRs, a los cuales esté conectado, ya sea directa o indirectamente (a través de otros FRs) -en este caso al HR 104b. Cualquier HR que reciba la petición envía una petición de relación de igual a igual al HR 104a del MN 106 como en el paso 803. El HR 104a del MN 106 responde con una respuesta de OK o negativa en el paso 804, la cual es a su vez propagada de vuelta al MN 106 en los pasos 805 y 806. La relación de igual a igual solicitada se establece, dando por resultado conexiones del HR 104a al HR 104b y además al FR 105.
Como se ha señalado en esta realización que sirve de ejemplo, el FR 105b recién descubierto puede ser capaz, si está configurado para hacerlo así, de filtrar algunas o todas las peticiones de relación de igual a igual, en vez de propagarlas a sus nodos predecesores (HRs o FRs) a lo largo de las cadenas de búsqueda de las cuales es miembro el FR. Esto significa que tal petición de relación de igual a igual no será necesariamente transmitida a un HR que tenga el FR en su cadena de búsqueda. En una realización más general, cualquier FR que reciba la petición de relación de igual a igual de esta clase puede enviar la petición a cualquiera de sus nodos predecesores (HRs o FRs) solamente cuando sea permitido por sus criterios de filtrado actuales. Las reglas de filtrado típicas pueden incluir permitir solamente a aquellas peticiones hechas por nodos que pertenezcan a un cierto dominio. Otro filtro podría ser el de dirigir las peticiones a HRs específicos dependiendo de la afiliación del nodo solicitante. Las razones para el filtrado pueden ser la de autorizar el acceso a nodos visitantes.
El presente invento constituye también un sistema distribuido para recoger, almacenar, indexar y buscar metadatos generados por los nodos participantes en el sistema. Un ejemplo de aplicación típico podría implicar un MN equipado con una funcionalidad de GPS. El MN puede comunicar, durante el registro y/o en intervalos de tiempo subsiguientes, sus datos de GPS a su punto de unión, HR/FR. El punto de unión puede almacenar y propagar, posiblemente después de alguna indexación y procesado junto con los datos correlacionados, los metadatos relacionados con el GPS o cualesquiera índices previamente configurados de los mismos a cualquier otro nodo del sistema, típicamente al HR o el DR del MN o a cualquier otro juego dedicado de servidores (metadatos). Un uso todavía más eficiente puede implicar una indexación de metadatos en HR/FR, aunque en vez de propagar los metadatos como tales, solamente sería necesario propagar notificaciones de "índice de metadato", notificando así al DR (o a los DRs o a cualquier otro conjunto dedicado de servidores, si es aplicable) asociados, que los metadatos están disponibles y por qué tipo para posterior interrogación serían necesarios. Otro ejemplo de aplicación directa de metadatos es el de usar la infraestructura de metadatos del recubrimiento para capacitar a los MNs (y a sus propietarios/usuarios) para buscar y localizar a cada uno de los demás para construir y mantener comunidades de usuarios. Esto puede realizarse si un MN se registra por sí mismo con, por ejemplo, una ID específica de una comunidad única en su punto de unión (HR/FR) y que el sistema pueda buscar y localizar otros usuarios por medio de esa ID. De ese modo, la localización de la red, y la localización geográfica en el caso de que estén presentes datos de GPS, de cualquier MN, puede determinarse mediante otros MNs en el sistema. En otras realizaciones, quienes sean expertos en la técnica apreciarán que las anteriores aplicaciones pueden extenderse además y combinarse en la presente estructura de recubrimiento de metadatos. Típicamente puede ser conveniente integrar la búsqueda de metadatos y las operaciones de interrogación en el antes mencionado proceso de inicialización y registro de MN en conexión con la Fig. 2 anterior.
En la Fig. 9 se ha ilustrado una realización de un método para una interrogación de metadatos. En este ejemplo, un MN 106b ha comunicado sus metadatos a su FR 105b en el paso 901, lo que a su vez puede propagarse, dependiendo de las rutas de filtrado que apliquen y posiblemente después de algún procesado, al HR 104b del MN 106b en el paso 902 y al DR 103b en el paso 903, respectivamente, dependiendo de cual sea la política de indexación que se use en el dominio B. La información de metadatos almacenada puede entonces ser compartida con otros MNs. En el ejemplo actual, otro MN 106a en otro dominio A emite una interrogación de metadatos en el paso 904 para otros de igual a igual con datos emparejados. El FR 105a propaga la interrogación al HR del MN que interroga en el paso 905, el cual puede a su vez propagar la interrogación a todos los HRs 104a' bajo el mismo DR 103a en el dominio A en el paso 906, si lo permite la política de dominio; esto se denomina una información intradominio. Las direcciones de todos los HRs en un dominio pueden ser almacenadas y controladas por el DR del dominio. Cada HR interrogado en el dominio transfiere la interrogación a aquellos FRs que hayan indicado que los metadatos emparejados son recogidos (como se ha descrito en los párrafos anteriores), lo que conduce finalmente a una respuesta que vuelve al HR 104a originario en el paso 907. El proceso de interrogación que impone cómo y a que FRs son dirigidas las interrogaciones, puede seguir cualquier algoritmo de búsqueda gráfica predeterminado para Gráficos Acíclicos Dirigidos, por ejemplo, de búsqueda "Breath-first" (Búsqueda en Anchura) o de búsqueda "Depth-first" (Búsqueda en Profundidad). La interrogación puede ser también propagada a los HRs en otros dominios con los que el HR 104a que interroga tenga una relación de igual a igual directa, en el paso 908, en este ejemplo un HR 104b en el dominio B. El HR 104b igualado en el dominio B puede entonces preguntar a su DR 103b en el paso 909 si la transferencia intradominio desde el dominio originario, el dominio A, se permite en el dominio B. Si se permite, se propaga la interrogación intradominio en el dominio B a los otros HRs 104b' en el paso 910. Las respuestas son recogidas en el paso 911 y finalmente hechas retornar al HR 104a originario en el dominio A en el paso 912. Análogamente, si así se indica en la interrogación original, un HR 104c de igualación en otro dominio puede transferir la interrogación a sus HRs 104c' igualados en el paso 913, efectuando así una interrogación de igual a igual indirecta, en este caso hacia el dominio C. Si lo permite el DR 103c en el dominio C, se puede efectuar una interrogación intradominio en el dominio C. Las respuestas de la búsqueda son recibidas por el FR 105a en el paso 914 y finalmente retransmitidas al MN 106a en el paso 915.
Un DR mantiene las conexiones TCP, o cualesquiera otras conexiones de capa de transporte adecuadas, a cada uno de los HRs en su dominio. Por razones de redundancia, pueden también establecerse tales conexiones con los FRs segundo al siguiente, en base a la información de dirección que es propagada desde cada HR al cambiar la situación de la red. Dadas las condiciones de la Fig. 10, la tabla de enrutamiento de los DR 103 se ha ilustrado en la Fig. 11. Como puede verse, las direcciones primarias apuntan a los nodos, los FRs 105 y 105x separados a dos saltos, usando los HRs 104 y 104x como una segunda opción, para ser usada solamente si falla el camino de búsqueda primario. Los caminos redundantes pueden abarcar la totalidad o partes de la cadena de búsqueda, desde el DR 103, sobre los nodos 104, 105, 105' de HR/FR intermedios y el nodo 105'' de anclaje de HR/FR y, finalmente, bajando hasta el nodo MN 106. Cabe también la posibilidad de permitir que varios nodos HR y FR se conecten a un MN, por razones de redundancia, produciéndose así múltiples nodos de anclaje para un MN. A pesar del camino primario/secundario de estrategia de redundancia aquí empleado, debe hacerse notar que, en otra realización, se pueden usar cualquier número de caminos alternativos disponibles entre cualquier par de nodos interconectados en una cadena de búsqueda que conduzca a un MN específico anfitrión de un URI específico.
Se puede proporcionar funcionalidad, por razones de redundancia y de recuperación de defectos por medio de, por ejemplo, un esquema de repetición de prueba (incluyendo, por ejemplo, temporizadores de cuenta atrás exponencial), para controlar las conexiones del transporte entre dos nodos cualesquiera. Ha de quedar entendido que es imperativo emplear cualquiera de tales mecanismos de reparación para descubrir y reparar los caminos que impliquen nodos que no respondan.
Los nodos HR y FR pueden conectarse a los nodos DR, HR, FR y MN usando conexiones TCP, donde una conexión TCP puede ser usada por muchos caminos de búsqueda (con objeto de propagar las peticiones de búsqueda). Es de hacer notar que se pueden usar otros protocolos de transporte distintos al TCP en realizaciones alternativas. Cada conexión TCP está asociada con una tabla de enrutamiento, como en el ejemplo ilustrado en la Fig. 12 con referencia a la Fig. 10. Pueden usarse conexiones redundantes. Esto se ha ilustrado mediante dos alternativas en cada dirección en esta realización. Los caminos son establecidos usando señalización durante el registro del MN o bien debido a cambios de topología (por ejemplo, cuando decae un nodo). El temporizador se renueva, ya sea instantáneamente o ya sea por incrementos, por cada acontecimiento de búsqueda o "latido" del MN que hace de anfitrión para la dirección URI; si expira un nodo en un temporizador (si alcanza su límite configurable), la entrada cuya temporización ha expirado puede ser retirada de la tabla después de una secuencia de señalamiento a nodos vecinos. La señalización empezará una secuencia de acontecimientos de la tabla de enrutamiento en los nodos vecinos. Típicamente, los caminos primario y secundario (en el caso de que se usen dos caminos redundantes por URI) son actualizados para que apunten a otros nodos distintos al nodo cuya temporización ha expirado. Si es necesario, se establecen nuevas conexiones TCP, o de otro modo se modifican las tablas de enrutamiento de las conexiones TCP existentes. Se establece la marca de dirección si el MN con el URI está conectado directamente al nodo en cuestión, en cuyo caso el temporizador no es activo para ese URI. Para asegurar que una cadena de búsqueda no crece demasiado, se pueden retirar nodos por sí mismos de una cadena de búsqueda específica, si se detecta inactividad. Un nodo de enrutador es el responsable de detectar las asociaciones con los MNs que tengan una actividad baja. Cuando un nodo detecte una asociación con un MN al cual no haya estado conectado directamente durante un tiempo suficientemente largo (determinado por medio del valor del temporizador, posiblemente combinado con la medida de la actividad), iniciará una retirada de si mismo de la cadena. Para conseguir esto tiene que hacer contacto con todos los nodos vecinos implicados en el proceso de búsqueda para ese MN (es decir, los nodos conectados por medio de su enlace primario y secundario y los nodos con primario o secundario que enlazan con el mismo). La responsabilidad de volver a construir la red recae en los nodos de enrutador que queden.
En la Fig. 13 se ha ilustrado un caso actualizado de la Fig. 10 después de un movimiento hecho mediante bob.example.com del MN 106 al FR 105' con la dirección 45.678.91.9. En la Fig. 14 se ha ilustrado la tabla de enrutamiento actualizada del FR 105 con la dirección 234.567.89.2 después del movimiento. Como puede verse, las direcciones primaria y secundaria han sido cambiadas por las entradas concernientes al MN actual en la tabla de enrutamiento de FR. Este es el resultado de los mensajes de actualización de señalamiento del camino que son intercambiados en la cadena de nodos, como se ha indicado en los párrafos anteriores y se explica con más detalle aquí. Consideremos una cadena de búsqueda de ejemplo con los nodos DR-HR-FR1-FR2, donde un MN está conectado directamente al FR2. Se ejecutan los siguientes pasos al moverse MN a un nuevo punto de unión que anteriormente no ha sido visitado, por ejemplo, el FR3:
Paso 1. MN señala a FR2 acerca de su movimiento. Desde ese punto, FR2 responderá a cualquier petición de servicio hacia MN con un mensaje de error temporal hasta que sea informado de otra cosa.
Paso 2. MN conecta con FR3.
Paso 3. FR3 envía un mensaje a FR2 informándole de la nueva posición del MN.
Paso 4. FR2 responde e informa a FR3 del enrutador que le precede en la cadena (FR1).
Paso 5. FR3 hace contacto con el enrutador dos pasos atrás (FR1) y le informa de crear un enlace primario con el mismo (FR3) mientras realiza un enlace secundario con el enrutador anterior (FR2). Se actualizan los enlaces de los nodos afectados.
Si MN conecta con un enrutador ya en su cadena en vez de pasar a un nuevo punto de unión que anteriormente no haya sido visitado, el nodo del punto de unión anterior no cambiará su tabla de enrutamiento, ni tampoco el predecesor del punto de unión anterior del nodo (a menos que el predecesor pase a ser el nuevo punto de unión). Con esto queda la cadena sin ser afectada por el cambio en los nodos alrededor del punto de unión anterior. En vez de eso, el único cambio tiene lugar en el nodo (o nodos) predecesor que tiene el nuevo punto de unión en su enlace siguiente secundario. Después del cambio, los dos nodos que preceden al punto de unión actual del MN apuntan al nodo con sus enlaces primarios. Por lo tanto, finalizamos en el nodo correcto con independencia de cual de esos enrutadores esté implicado en la búsqueda, puesto que primero probamos los enlaces primarios. Si MN realiza otro movimiento cambiamos volviendo a las entradas de enrutamiento que eran antes de ese último cambio, dejando esa parte de la cadena como era antes del movimiento. Una razón principal para manipular movimientos dentro de una cadena como esa, es la de evitar la creación de ciclos y no tener nunca más de un camino primario y uno secundario para cada enrutador.
Cuando un MN se mueve desde un nodo, por ejemplo, del nodo A a otro nodo, por ejemplo al nodo B, que anteriormente no sea parte de la cadena de búsqueda (secuencia de nodos interconectados en la manipulación de búsquedas del MN), se formará una nueva rama de la cadena de búsqueda. El nodo A tendrá constancia del movimiento por medio de la recepción de los mensajes de registro desde MN por medio del nodo de anclaje B. Antes de conectar con la nueva rama, A asegura que sus nodos sucesores (si los hay) en la nueva cadena de consulta aislada son debidamente recortados. Este recorte se realiza por medio del envío de mensajes de eliminación a esos nodos sucesores. En este ejemplo, el nodo A enviará un mensaje de eliminación a su nodo sucesor en la cadena ahora invalidada, diciéndole que las entradas para ese MN no son válidas. Un nodo que reciba un mensaje de eliminación para una dirección URI específico, dejará libres sus entradas de enrutamiento (en todas las direcciones) para ese URI y transferirá después el mensaje de eliminación como lo haría con una búsqueda hasta alcanzar el final de la cadena invalidada. El resto de la entrada se mantiene en la tabla hasta que transcurra todo el tiempo hasta que expire, ya que el MN podría volver a conectar, haciendo útil cualquier información almacenada. El nodo A modificará entonces su tabla de enrutamiento en consecuencia, conectará con el nodo B y propagará el mensaje de establecimiento del camino hacia arriba a su predecesor en el camino de búsqueda. Además A señalará también a B la dirección de su predecesor (o predecesores) para hacer que B se interconecte con ellos. Un efecto colateral valioso de la retirada de las cadenas no válidas cuando éstas aparezcan es el de podado automático de la cadena. Puesto que la mayoría de los movimientos a enrutadores que previamente no hayan sido visitados puede esperarse que sucedan desde enrutadores que no sean el último de la cadena, este fenómeno deberá ser bastante común. En consecuencia, si MN retorna a un enrutador anteriormente desconectado de la cadena usando el proceso de eliminación antes indicado, el enrutador se incorpora a la cadena justamente como se haría con cualquier enrutador que anteriormente no hubiera sido visitado.
Es de hacer notar que en otra realización, un MN puede contener una funcionalidad de servidor STUNT, de modo que cualquier cliente con funcionalidad de cliente STUNT pueda establecer, si la travesía NAT es satisfactoria, una conexión directa con un MN después de un proceso de señalamiento STUNT y travesía (como alternativa a la conexión de retransmisión de HR/FR). En el presente sistema, esto se resolvería incluyendo una opción STUNT en la respuesta de búsqueda en los mensajes en el paso 405 y 406 en la Fig. 4. Por consiguiente, si se establece la opción STUNT, indicándose así que el HR/FR y el nodo MN son todos capaces de STUNT, y el cliente es capaz de STUNT, en vez de enviar un mensaje 7, se inicia un proceso de señalamiento STUNT y de travesía. Deberá ser evidente para quien tenga los conocimientos corrientes de la técnica que se pueden usar otros mecanismos y técnicas de travesía NAT, por ejemplo, los mencionados en la estructura ICE, en vez de o además de la solución STUNT antes
mencionada.
En la Fig. 15 se ha ilustrado una parte de un sistema para manipulación eficiente y control de los mensajes de señalamiento y de datos aguas abajo y aguas arriba entre un MN y su punto de unión actual (realizado mediante nodos HR/FR) de acuerdo con una realización. Este método es crucial para manipular los recursos posiblemente escasos en el dispositivo móvil y la baja capacidad potencial o el acceso inalámbrico expuesto a errores entre un MN y su nodo de anclaje FR/HR. Algunas realizaciones contienen los siguientes elementos funcionales: funcionalidad de pre-procesado y de proxi, y la gestión del tráfico aguas abajo y aguas arriba, respectivamente. La gestión del equilibrado de carga aguas abajo y del tráfico se ha ilustrado en la Fig. 15. En ella se muestra como las corrientes de mensajes de datos a los dispositivos MN situados a la derecha llega al punto de unión común del MN (un RF o HR) desde la izquierda. El FR dirige y, si es necesario, almacena temporalmente, la corriente de tráfico que llega en su estructura de memoria intermedia interna. Cada dispositivo MN está representado lógicamente internamente en el nodo de anclaje. Dentro de cada representación de tal dispositivo, cada aplicación que corre en el dispositivo está representada por uno o más almacenamientos intermedios. Una estructura de algoritmo de programación controla el acceso al canal de transporte de datos común. Para un correcto control, la realimentación del estado actual de la capacidad del canal (c (t)) y de la actuación de la aplicación (b (t)) se señala de vuelta al nodo de anclaje desde cada dispositivo MN. Los programadores están organizados con una estructura jerárquica, y los datos están programados por el canal de transporte común (o bloqueados en caso de congestión) de acuerdo con la política de programación actual (configurable por el administrador del nodo). Una estructura similar es también necesaria en la dirección de aguas arriba, en donde cada dispositivo controla el flujo de datos desde cada aplicación que corre en el dispositivo en el nodo de anclaje.
La gestión del tráfico entre un MN y su nodo de anclaje (HR/FR) constituye también una funcionalidad de pre-procesado y de descarga de procesado. Esto se gestiona por medio de un protocolo de señalamiento de control separado (que se ha supuesto que corre fuera de banda en el presente invento, pero también se puede usar un señalamiento en banda) que define reglas y políticas con respecto al pre-procesado en el nodo de anclaje o en representación de las aplicaciones actualmente activas del dispositivo. Típicamente, el dispositivo puede señalar, de acuerdo con una estructura de control bien definida, instrucciones al nodo de anclaje. Tales instrucciones instruyen típicamente al nodo de anclaje sobre cómo y para qué datos de aplicación deberá efectuar la inspección y la clasificación del paquete de datos, y si deberán ser señalados, y cómo, cualesquiera resultados del pre-procesado (típicamente mediante la escritura en un resultado codificado en el campo de datos apropiado en los paquetes a los que concierna) al dispositivo. Deberá ser evidente que por este método se puede implementar la funcionalidad del filtrado de paquetes, como la de seguridad y la de control del acceso.
Por consiguiente, el método y los aparatos de las realizaciones aquí descritas proporcionan una pila de protocolos para un modelo de comunicaciones de igual a igual, eficiente y escalable en redes de comunicaciones dinámicas y móviles de dispositivos y ordenadores en donde los nodos formen una red de recubrimiento genérica y puedan ser móviles y moverse independientemente de la infraestructura de la red en que se basan.
Además, la pila de protocolos de acuerdo con una realización del presente invento incluye un protocolo de cada de red potenciado que permite un enrutamiento de fuente dinámica y hallar los anfitriones igualados de servicio, por ejemplo, basados en la proximidad, además, un protocolo entre nodos móviles y los nodos del enrutador de la red de recubrimiento para un eficiente intercambio de datos en la capa de aplicación, para optimizar el intercambio de datos y las actuaciones de las aplicaciones actuales.
Una ventaja del presente invento es la de que puede proporcionar una infraestructura de red dinámica y escalable en donde los nodos móviles sean siempre alcanzables por otros iguales y sean accesibles a través de una red de igual a igual de recubrimiento genérica que discurra encima de una mezcla de redes de comunicaciones alámbricas fijas e inalámbricas móviles.
El método del presente invento se implementa preferiblemente en un software de ordenador ejecutable preferiblemente mediante un aparato electrónico con capacidades de ordenador. En esta realización del invento, el aparato electrónico comprende un aparato ordenador que incluye un procesador de ordenador para procesar los datos y medios de almacenamiento conectados al procesador de ordenador para almacenar los datos en un medio de almacenamiento, en que dicho aparato de ordenador está configurado para ejecutar los pasos del método.
Además, el invento se extiende también a programas sobre o en un portador, adaptados para poner en práctica el invento. El programa puede estar en forma de código fuente, código objeto, o de un código adecuado para uso en la implementación del método de acuerdo con el invento. El portador puede ser cualquier entidad o dispositivo capaz de soportar el programa. Por ejemplo, el portador puede ser un medio de registro, una memoria de ordenador, una memoria de solo lectura o una señal portadora eléctrica.

Claims (26)

1. Un método para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones, que comprende los pasos de:
recibir (204) en un enrutador de dominio (103) una petición de registro desde un aparato de comunicaciones móvil (106), incluyendo la petición de registro un nombre URI o lógico de dicho aparato de comunicaciones móvil;
buscar (205) una dirección a un enrutador de salto siguiente (104) asociado con el URI o el nombre lógico;
enviar (206) la petición de registro al enrutador del salto siguiente (104);
recibir (210) una respuesta del enrutador de salto siguiente (104); y
si la respuesta incluye una dirección a un enrutador doméstico (104), enviar (211) una respuesta al aparato de comunicaciones móvil (106), que incluya la dirección del enrutador doméstico (104), iniciando dicha respuesta el establecimiento de una conexión entre el aparato (106) de comunicaciones móvil y el enrutador doméstico (104).
2. El método de acuerdo con la reivindicación 1, en el que el paso de búsqueda (205) comprende el paso adicional de identificar la dirección de la red del enrutador doméstico (104) en la red de comunicaciones.
3. El método de acuerdo con la reivindicación 1 o 2, en el que el paso de búsqueda (205) está basado en la proximidad de la red, o localización geográfica, o capacidad y mediciones del tráfico, o acuerdos de colaboración de igual a igual establecidos en base a comunidades y relaciones interpersonales conocidas para el enrutador doméstico (104).
4. El método de acuerdo con la reivindicación 3, en el que la proximidad de la red se determina en base a uno o más de un número de saltos, latencia de ruta ping/trace, y rutas de solapamiento para el enrutador doméstico (104).
5. El método de acuerdo con la reivindicación 3, en el que la localización geográfica está basada en datos de GPS del aparato (106) de comunicaciones móvil.
6. Un enrutador de dominio (103) para formar una red de recubrimiento genérica para la eficiente recuperación de la información en una red de comunicaciones, que comprende:
un receptor (301) adaptado para recibir una petición de registro desde un aparato de comunicaciones móvil (106), incluyendo la petición de registro un URI o nombre lógico de dicho aparato de comunicaciones móvil;
un controlador (302) adaptado para búsqueda de una dirección en un enrutador de salto siguiente (104; 105) asociado con el URI o el nombre lógico;
un transmisor (303) adaptado para enviar la petición de registro al enrutador del salto siguiente (104; 105);
en que el receptor (301) está adaptado para recibir una respuesta desde el enrutador del salto siguiente (104; 105), el controlador (302) está adaptado para determinar si la respuesta incluye una dirección de red a un enrutador doméstico (104); y el transmisor (303) está adaptado para enviar un mensaje de respuesta al aparato de comunicaciones móvil (106) que incluya la dirección del enrutador doméstico (104), iniciando dicho mensaje de respuesta el establecimiento de una conexión entre el aparato de comunicaciones móvil y el enrutador doméstico.
7. El enrutador de dominio de acuerdo con la reivindicación 6, en el que la dirección de la red es un nombre de dominio y el enrutador de dominio (103) es registrado como un agente para un conjunto de nombres de dominio susceptibles de búsqueda en la red de comunicaciones electrónica.
8. El enrutador de dominio de acuerdo con la reivindicación 6 o 7, en el que el receptor (301) está adaptado para recibir una petición de búsqueda de un identificador lógico desde uno o más clientes (101), el controlador 302 está adaptado para buscar un enrutador doméstico o un enrutador extranjero asociado con el identificador lógico y para controlar el transmisor para enviar la interrogación de búsqueda al enrutador doméstico buscado, el receptor está adaptado para recibir una dirección de redirigir de un nodo de retransmisión responsable de manipular la petición del enrutador doméstico buscado, y el transmisor está adaptado para responder al cliente solicitante con la dirección redirigida del nodo de retransmisión.
9. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-8, que comprende una tabla de enrutamiento de direcciones a enrutadores domésticos y a enrutadores extranjeros.
10. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-9, en el que el receptor está adaptado para recibir información de registro o de actualización desde uno o más enrutadores domésticos y/o enrutadores extranjeros, y el controlador está adaptado para almacenar la información de registro en la tabla de enrutamiento.
11. El enrutador de dominio de acuerdo con la reivindicación 10, en el que la tabla de enrutamiento está adaptada para almacenar direcciones alternativas de enrutadores domésticos y/o de enrutadores extranjeros para uno o más identificadores lógicos.
12. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-11, en el que el controlador está adaptado para mantener las conexiones en una capa de transporte con todos los enrutadores en la tabla de enrutamiento.
13. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-12, que comprende una lista de identificadores lógicos asociados con uno o más de otros enrutadores de dominio, y el controlador está adaptado para redirigir las interrogaciones para los nombres que están en la lista de identificadores lógicos a uno de los otros dominios.
14. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-13, que comprende una lista de dominios a los que se permite enviar interrogaciones generadas por enrutadores domésticos a enrutadores domésticos almacenados en la tabla d enrutamiento del enrutador de dominio.
15. El enrutador de dominio de acuerdo con cualquiera de las reivindicaciones precedentes 6-13, que comprende una tabla de direcciones a clientes con interrogaciones de búsqueda actualmente pendientes, no respondidas, para un URI en el dominio controlado por el enrutador de dominio, y el controlador está adaptado para, en respuesta a la recepción de una primera respuesta a la interrogación para un cierto URI desde un enrutador doméstico/enrutador extranjero de salto siguiente, responder a todos los clientes que tengan interrogaciones actualmente pendientes.
16. Un método para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones, que comprende los pasos de:
recibir (207) en un enrutador doméstico (104) una petición de registro para un aparato de comunicaciones móvil (106) desde un enrutador de dominio (103), incluyendo la petición de registro un URI o nombre lógico de dicho aparato de comunicaciones móvil;
buscar una dirección de enrutador doméstico asociado con el URI o el nombre lógico, en que la dirección del enrutador doméstico es una dirección de un enrutador doméstico (104, 105) en el cual puede ser registrado el aparato de comunicaciones móvil;
en respuesta a la petición de registro, generar (208) una respuesta que incluye la dirección del enrutador doméstico (104; 105) en el cual puede ser registrado el aparato (106) de comunicaciones móvil; y enviar (209) la respuesta al enrutador de dominio (103) para iniciar una respuesta de transferencia al aparato (106) de comunicaciones móvil que incluye la dirección del enrutador doméstico (104; 105) en el cual puede ser registrado el aparato (106) de comunicaciones móvil.
\vskip1.000000\baselineskip
17. El método de acuerdo con la reivindicación 16, que comprende:
recibir una petición de registro del aparato de comunicaciones móvil (214); y
en respuesta a la petición de registro desde el aparato de comunicaciones móvil (214) establecer (215, 216) la conexión entre el enrutador doméstico (104) y el aparato de comunicaciones móvil (106).
\vskip1.000000\baselineskip
18. El método de acuerdo con la reivindicación 17, en el que la conexión es una conexión de la capa de transporte.
19. Un enrutador doméstico (104) para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones, que comprende:
un receptor (311) adaptado para recibir una petición de registro para un aparato de comunicaciones móvil (106) desde un enrutador de dominio (103), incluyendo la petición de registro un URI o nombre lógico de dicho aparato de comunicaciones móvil;
un controlador (312) adaptado para buscar una dirección de enrutador doméstico asociado con el URI o el nombre lógico, en que la dirección del enrutador doméstico es una dirección de un enrutador doméstico (104, 105) en el cual puede ser registrado el aparato de comunicaciones móvil, y en respuesta a la petición de registro, generar una respuesta que incluye la dirección del enrutador doméstico; y
un transmisor (313) adaptado para enviar la respuesta al enrutador de dominio (103) para iniciar una respuesta de transferencia al aparato (106) de comunicaciones móvil que incluye la dirección del enrutador doméstico (104; 105) en el cual va a ser registrado el aparato de comunicaciones móvil.
20. El enrutador doméstico de acuerdo con la reivindicación 19, en el que el receptor (311) está adaptado para recibir una petición de registro desde el aparato de comunicaciones móvil (106); y
el controlador (312) está adaptado para, en respuesta a la petición de registro desde el aparato de comunicaciones móvil (106), establecer una conexión entre el enrutador doméstico (104) y el aparato de comunicaciones móvil (106).
21. Un método para formar una red de recubrimiento genérica para una eficiente recuperación de la información en una red de comunicaciones, que comprende los pasos de:
pedir (201) mediante un aparato de comunicaciones móvil una conexión a un enrutador doméstico (104), enviando para ello una interrogación a un servidor (102) de un nombre de dominio;
recibir (202) una dirección a un enrutador de dominio (103) conectado al enrutador doméstico (104);
pedir (203) el registro en el enrutador doméstico (104) enviando para ello (203) desde un aparato de comunicaciones móvil (106) una petición de registro, que incluye un URI o nombre lógico de dicho aparato de comunicaciones móvil, al enrutador doméstico (103) de la dirección recibida para buscar una dirección de enrutador doméstico asociada con el URI o el nombre lógico, en que la dirección del enrutador doméstico es una dirección del enrutador doméstico (104) en el cual puede ser registrado el aparato de comunicaciones móvil;
recibir (212) una respuesta de registro desde el enrutador de dominio (103) con referencia al enrutador doméstico (104), en que la referencia es la dirección del enrutador doméstico (104) en el cual puede ser registrado el aparato de comunicaciones móvil;
generar y enviar (213) una petición de registro directamente al enrutador doméstico (104); y
establecer (217) una conexión entre el enrutador doméstico (104) y el aparato de comunicaciones móvil (106).
22. Un programa de ordenador que comprende medios de código de programa de ordenador adaptados para ejecutar todos los pasos del método de una cualquiera de las reivindicaciones 1-5, 16-18, y 21, cuando se corre dicho programa en un ordenador.
23. Un programa de ordenador según la reivindicación 22 incorporado en un medio legible por ordenador.
24. Un programa de ordenador en un portador que comprende instrucciones ejecutables por ordenador para hacer que un ordenador ejecute el método de acuerdo con las reivindicaciones 1-5, 16-18, y 21, cuando se corre dicho programa en un ordenador.
25. Un programa de ordenador de acuerdo con la reivindicación 24, en el que dicho portador es un medio de registro, una memoria de ordenador, una memoria de solo lectura o una señal portadora eléctrica.
26. Un producto de programa de ordenador que comprende un medio legible por ordenador, que tiene en el mismo: medios de código de programa de ordenador, cuando dicho programa está cargado, para hacer que el ordenador ejecute el proceso de cualquiera de las reivindicaciones 1-5, 16-18, y 21.
ES07111884T 2007-07-05 2007-07-05 Metodo, aparato y sistema para la gestion de la movilidad y la eficiente recuperacion de informacion en una red de comunicaciones. Active ES2326560T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP07111884A EP2012489B1 (en) 2007-07-05 2007-07-05 Method, apparatus and system for mobility management and efficient information retrieval in a communications network

Publications (1)

Publication Number Publication Date
ES2326560T3 true ES2326560T3 (es) 2009-10-14

Family

ID=38894451

Family Applications (1)

Application Number Title Priority Date Filing Date
ES07111884T Active ES2326560T3 (es) 2007-07-05 2007-07-05 Metodo, aparato y sistema para la gestion de la movilidad y la eficiente recuperacion de informacion en una red de comunicaciones.

Country Status (12)

Country Link
US (1) US8879522B2 (es)
EP (1) EP2012489B1 (es)
JP (1) JP5265674B2 (es)
KR (1) KR101559767B1 (es)
CN (1) CN101779437B (es)
AT (1) ATE431035T1 (es)
AU (1) AU2008270207B2 (es)
DE (1) DE602007001075D1 (es)
ES (1) ES2326560T3 (es)
HK (1) HK1146341A1 (es)
RU (1) RU2507700C2 (es)
WO (1) WO2009004083A1 (es)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729273A (zh) * 2008-10-27 2010-06-09 中国移动通信集团公司 一种流媒体分发系统、方法及装置
US8837360B1 (en) * 2009-12-11 2014-09-16 Google Inc. Determining geographic location of network hosts
US8832281B2 (en) * 2010-01-08 2014-09-09 Tangome, Inc. Utilizing resources of a peer-to-peer computer environment
US8560633B2 (en) 2010-01-11 2013-10-15 Tangome, Inc. Communicating in a peer-to-peer computer environment
US9094527B2 (en) * 2010-01-11 2015-07-28 Tangome, Inc. Seamlessly transferring a communication
CN102264059A (zh) * 2010-05-31 2011-11-30 华为技术有限公司 基于用户标识的通信方法、装置及系统
CN102300275B (zh) * 2010-06-22 2014-07-30 华为终端有限公司 通信过程中的切换方法和本地路由控制功能实体
US8935369B2 (en) * 2010-10-05 2015-01-13 International Business Machines Corporation Information technology for exchanging structural organizational information
US8671221B2 (en) * 2010-11-17 2014-03-11 Hola Networks Ltd. Method and system for increasing speed of domain name system resolution within a computing device
US20130294283A1 (en) * 2010-12-03 2013-11-07 Nokia Corporation Facilitating device-to-device communication
CN102231670A (zh) * 2011-06-27 2011-11-02 深圳市科陆电子科技股份有限公司 电力集抄系统自动寻找存在的电表的方法
US9014023B2 (en) 2011-09-15 2015-04-21 International Business Machines Corporation Mobile network services in a mobile data network
US9167614B2 (en) 2011-09-28 2015-10-20 Marvell International Ltd. Tunneled direct link setup systems and methods with consistent link information maintenance
CN103906266A (zh) * 2012-12-31 2014-07-02 中兴通讯股份有限公司 无线通信方法、用户设备、网络设备及系统
US9060308B2 (en) 2013-01-11 2015-06-16 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Avoiding network address translation in a mobile data network
KR101580096B1 (ko) 2014-11-14 2015-12-29 충북대학교 산학협력단 모바일 p2p 네트워크에서 그룹 기반의 캐시 공유 시스템 및 방법
CN109803345B (zh) * 2019-02-01 2023-01-13 东北大学 软件定义移动社交网络中的路由机制
US11265325B2 (en) * 2019-07-22 2022-03-01 Whitestar Communications, Inc. Systems and methods of salutation protocol to communicate using a private overlay peer to peer network
US11950163B2 (en) * 2020-06-19 2024-04-02 Expii Inc. Crowdsourced contact tracing
US11937120B1 (en) 2023-04-06 2024-03-19 Clicknow Technologies Ltd. Method of regulating transmission of data-packets from a wireless terminal device (WTD) and WTD configured for same

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275492B1 (en) 1996-12-03 2001-08-14 Nortel Networks Limited Method and apparatus for routing data using router identification information
SE523335C2 (sv) 1998-07-03 2004-04-13 Sendit Ab Förfarande och anordning för åtkomst och inhämtning av information
US7239618B1 (en) 1998-12-11 2007-07-03 Lucent Technologies Inc. Single phase local mobility scheme for wireless access to packet-based networks
US6654359B1 (en) 1998-12-11 2003-11-25 Lucent Technologies Inc. Wireless access to packet-based networks
US6636498B1 (en) 1999-01-08 2003-10-21 Cisco Technology, Inc. Mobile IP mobile router
US20020055971A1 (en) 1999-11-01 2002-05-09 Interdigital Technology Corporation Method and system for a low-overhead mobility management protocol in the internet protocol layer
DE60042965D1 (de) 2000-05-24 2009-10-29 Sony Deutschland Gmbh Dienstqualitätsunterhandlung
EP1164754B1 (en) 2000-06-15 2006-05-17 Telefonaktiebolaget LM Ericsson (publ) Methods and arrangements in a telecommunications system
US7042864B1 (en) * 2000-08-01 2006-05-09 Cisco Technology, Inc. Enabling push technologies for mobile IP
US6954790B2 (en) * 2000-12-05 2005-10-11 Interactive People Unplugged Ab Network-based mobile workgroup system
GB0120686D0 (en) * 2001-08-24 2001-10-17 Intuwave Ltd Data packet router for a wireless communication device
US20030078987A1 (en) * 2001-10-24 2003-04-24 Oleg Serebrennikov Navigating network communications resources based on telephone-number metadata
US6907501B2 (en) * 2002-01-25 2005-06-14 Ntt Docomo Inc. System for management of cacheable streaming content in a packet based communication network with mobile hosts
GB0206849D0 (en) 2002-03-22 2002-05-01 Nokia Corp Communication system and method
JP4161782B2 (ja) * 2002-04-18 2008-10-08 松下電器産業株式会社 モバイルノードおよび移動通信方法
GB2389005B (en) 2002-05-23 2005-09-07 Inc Motorola Communications methods and apparatus for use therein
WO2004086696A1 (ja) * 2003-03-24 2004-10-07 Allied Telesis K.K. データ中継装置、通信システム、データ中継方法及びそれをコンピュータにおいて実現するコンピュータプログラム
US20050071439A1 (en) 2003-09-29 2005-03-31 Peter Bookman Mobility device platform
WO2005041534A1 (en) 2003-10-16 2005-05-06 Ntt Docomo, Inc. Mobile peer-to-peer networking
SE527871C2 (sv) * 2004-03-09 2006-06-27 Ericsson Telefon Ab L M Metod och system för hantering av webbtjänster
GB2415328B (en) * 2004-06-16 2006-10-04 Matsushita Electric Ind Co Ltd Method for home agent location
US7974234B2 (en) 2004-10-22 2011-07-05 Alcatel Lucent Method of authenticating a mobile network node in establishing a peer-to-peer secure context between a pair of communicating mobile network nodes
US7769850B2 (en) * 2004-12-23 2010-08-03 International Business Machines Corporation System and method for analysis of communications networks
JP4371056B2 (ja) 2005-01-07 2009-11-25 ブラザー工業株式会社 ノード装置、ネットワーク参加処理プログラム、及びネットワーク参加処理方法等
GB2425918A (en) * 2005-05-06 2006-11-08 Nokia Corp Location based FM Transmission Control
GB0509259D0 (en) * 2005-05-06 2005-06-15 Beswick Andrew E Device for dispensing paste
JP2006332833A (ja) * 2005-05-24 2006-12-07 Yazaki Corp 無線lanシステムおよびスイッチングハブ
WO2007104360A1 (en) * 2006-03-14 2007-09-20 Telefonaktiebolaget Lm Ericsson (Publ) Message routing in the ip multimedia subsystem

Also Published As

Publication number Publication date
KR20100045993A (ko) 2010-05-04
RU2507700C2 (ru) 2014-02-20
EP2012489A1 (en) 2009-01-07
US8879522B2 (en) 2014-11-04
JP2010532611A (ja) 2010-10-07
ATE431035T1 (de) 2009-05-15
CN101779437A (zh) 2010-07-14
HK1146341A1 (en) 2011-05-20
US20100177699A1 (en) 2010-07-15
EP2012489B1 (en) 2009-05-06
KR101559767B1 (ko) 2015-10-26
RU2009149102A (ru) 2011-08-10
JP5265674B2 (ja) 2013-08-14
CN101779437B (zh) 2014-11-26
AU2008270207B2 (en) 2014-01-16
AU2008270207A1 (en) 2009-01-08
DE602007001075D1 (de) 2009-06-18
WO2009004083A1 (en) 2009-01-08

Similar Documents

Publication Publication Date Title
ES2326560T3 (es) Metodo, aparato y sistema para la gestion de la movilidad y la eficiente recuperacion de informacion en una red de comunicaciones.
JP5279711B2 (ja) 通信ネットワークにおけるロケータレゾリューション(解決)
Grieco et al. Architecting information centric ETSI-M2M systems
Bouk et al. Vehicular content centric network (VCCN) a survey and research challenges
Anastasiades et al. Dynamic unicast: Information-centric multi-hop routing for mobile ad-hoc networks
Ishakian et al. On supporting mobility and multihoming in recursive internet architectures
Saxena et al. Implementation and performance evaluation of name-based forwarding schemes in V-NDN
Zhang et al. Content delivery in the mobilityfirst future internet architecture
CN101584192B (zh) 节点注册方法
Dutta et al. Information Centric Networks (ICN)
Schellenberg et al. Implementation and validation of an address resolution mechanism using adaptive routing
Kunz et al. A P2P approach to routing in hierarchical MANETs
Chatterjee A survey of internet of things (iot) over information centric network (icn)
Liu et al. Mobile chord: Enhancing P2P application performance over vehicular ad hoc network
Gulati et al. Software-defined content dissemination scheme for Internet of healthcare vehicles in COVID-like scenarios
Rais et al. Naming for heterogeneous networks prone to episodic connectivity
Wang et al. Towards locality-aware DHT for fast mapping service in future Internet
JP2006114946A (ja) モバイルネットワークシステム
Tavan et al. Connected vehicles under information-centric architectures
Grandhomme et al. Comparing inter-domain routing protocol assessment tools for MANET
Chen et al. Integrated service discovery architecture for heterogeneous networks
Castro et al. Opportunistic P2P communications in delay-tolerant rural scenarios
Le et al. An efficient mechanism for mobility support using peer-to-peer overlay networks
Wongsaardsakul P2P SIP over mobile ad hoc networks
Fecko et al. Architecture and applications of dynamic survivable resource pooling in battlefield networks