ES2537722B1 - Mecanismo de conexión para redes entre pares energéticamente eficientes - Google Patents
Mecanismo de conexión para redes entre pares energéticamente eficientes Download PDFInfo
- Publication number
- ES2537722B1 ES2537722B1 ES201430021A ES201430021A ES2537722B1 ES 2537722 B1 ES2537722 B1 ES 2537722B1 ES 201430021 A ES201430021 A ES 201430021A ES 201430021 A ES201430021 A ES 201430021A ES 2537722 B1 ES2537722 B1 ES 2537722B1
- Authority
- ES
- Spain
- Prior art keywords
- node
- grouping
- header
- processing device
- cluster
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1076—Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1046—Joining mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1051—Group master selection mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1093—Some peer nodes performing special functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/59—Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
- H04L67/1055—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers involving connection limits
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Un sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a través de una red de comunicaciones, cada nodo que comprende un circuito de procesamiento y circuitería de interfaz de red conectada al circuito de procesamiento, cada nodo que está configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, el sistema de comunicaciones que comprende al menos una agrupación de nodos, en donde uno de los nodos de la agrupación es operable para realizar un papel de cabecera de agrupación que conecta la agrupación a la red de comunicaciones, y en donde la agrupación es operable para implementar un mecanismo para transferir el papel de cabecera de agrupación desde un nodo de la agrupación a otro nodo de la agrupación.
Description
5
10
15
20
25
30
DESCRIPCION
Mecanismos de conexion para redes entre pares energeticamente eficientes Campo tecnico
Descritas en la presente memoria estan realizaciones de una red de comunicaciones y los metodos y dispositivos correspondientes, en particular una red entre pares que comprende y que interconecta diferentes tipos de nodos.
Antecedentes
El Internet de las Cosas (loT) imagina un mundo completamente en red con miles de millones de dispositivos interconectados. La mayoria de estos dispositivos seran sensores y actuadores que proporcionaran capacidades de deteccion ubicuas e interaction con el mundo fisico. Esto conducira a un drastico cambio de paradigma en el mundo de la interconexion, dado que las comunicaciones Maquina a Maquina (M2M) seran varios ordenes de magnitud mayores que las comunicaciones Humano a Humano o Humano a Maquina que son la norma hoy en dia.
Una gran parte de estos sensores se espera que sean pequenos, baratos, inalambricos y alimentados por baterias a fin de ser colocados siempre que sean necesarios. Por lo tanto, a fin de ahorrar bateria, esos dispositivos sensores estaran reposando la mayoria del tiempo y solamente se despertaran periodicamente para detectar su entorno y enviar sus mediciones o para recibir nuevas instrucciones. Los actuadores, por otra parte, se espera que reciban potencia desde una red electrica y esten de esta manera despiertos la mayoria del tiempo esperando comandos, pero aun seran dispositivos de recursos restringidos. Seria deseable de manera general permitir que tales sensores y actuadores sean parte de una red entre Pares (P2P).
Recientemente se han propuesto protocolos para establecer redes P2P de dispositivos informaticos en el contexto de redes IoT/M2M. Un protocolo tal es el Protocolo de Localization y Descubrimiento de Recursos (RELOAD), ver por ejemplo el borrador de Internet "A Constrained Application Protocol (CoAP) Usage for REsource Location And Discovery (RELOAD)” de 20 agosto de 2012 de J. Jimenez, J. Lopez-Vega, J. Maenpaa y G. Camarillo, disponible en lmea en:
http://tools.ietf.org/html/draft-jimenez-p2psip-coap-reload- 02, o el borrador de Internet "Resource Location And Discovery Base Protocol” de 5 de noviembre de 2012 de C. Jennings, B. B. Lowekamp, E. K. Rescorla, S. A. Baset, y H. G. Schulzrinne, disponible en lmea en
http://tools.ietf.org/html/draft-ietf-p2psip-base-23.
http://tools.ietf.org/html/draft-jimenez-p2psip-coap-reload- 02, o el borrador de Internet "Resource Location And Discovery Base Protocol” de 5 de noviembre de 2012 de C. Jennings, B. B. Lowekamp, E. K. Rescorla, S. A. Baset, y H. G. Schulzrinne, disponible en lmea en
http://tools.ietf.org/html/draft-ietf-p2psip-base-23.
5
10
15
20
25
30
RELOAD es un protocolo de serialization P2P generico que usa el algoritmo Chord (ver por ejemplo Stoica, I., Morris, R., Liben-Nowell, D., Karger, D., Kaashoek, M., Dabek, F., y H. Balakrishnan, "Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications”, Actas del IEEE/ACM sobre Interconexion de Redes Volumen 11, Publication 1, 17-32, Feb 2003) como el algoritmo de Tabla de Calculo de Claves Distribuido (DTH) para organizar los nodos participantes en una red superpuesta P2P. Una tabla de calculo de claves distribuida almacena los pares clave-valor asignando claves a diferentes nodos; un nodo almacenara los valores para todas las claves de las cuales es responsable. Chord especifica como se asignan las claves a los nodos, y como un nodo puede descubrir el valor para una clave dada localizando primero el nodo responsable para esa clave. RELOAD proporciona un servicio de red superpuesta P2P generica, de auto organization. Los nodos pueden usar la superposition para encaminar mensajes a otros nodos, asi como almacenar y recuperar datos. El protocolo RELOAD proporciona diferentes tipos de nodos: Un primer tipo de nodos, conocidos como pares, y un segundo tipo de nodos, conocidos como clientes. Mientras que los pares encaminan mensajes RELOAD y almacenan information, los clientes son nodos RELOAD que no tienen responsabilidades de encaminamiento o almacenamiento. No obstante, los clientes comparten algunas caracteristicas con los pares dado que usan el mismo protocolo e incluso implementation en la mayoria de los casos. En particular, como los pares, los clientes se identifican por su ID de nodo y usan certificados para almacenar datos en ciertas ubicaciones en la superposicion.
Por lo tanto, una red que emplea el protocolo RELOAD es un ejemplo de una red P2P que permite a dispositivos de recursos restringidos tales como sensores conectar como clientes, requiriendo de esta manera capacidades de comunicaciones de datos e informaticas mas bajas que para pares. No obstante, puede haber situaciones donde un dispositivo alimentado por baterias o de otro modo de recursos restringidos no pueda conectar a una red P2P como cliente, por ejemplo debido que su par de admision no tienen mas recursos. En las redes P2P de la tecnica anterior, por ejemplo las redes que usan el protocolo RELOAD, la unica solution para tal dispositivo es conectar como un par completo, y por lo tanto que esta despierto todo el tiempo a fin de recibir y procesar mensajes RELOAD de otros pares y clientes. Esto agotara rapidamente sus recursos, requiriendo sustituciones de baterias frecuentes. Por el contrario, permitiendo a sensores del IoT unirse y abandonar periodicamente la red superpuesta como pares a fin de reposar significaria un orden de magnitud mas agitado, conduciendo a un enorme numero de cambios de topologia y de esta manera mensajes de senalizacion en la red superpuesta.
5
10
15
20
25
30
Consecuentemente, se mantiene deseable proporcionar redes y/o procesos de comunicaciones relacionados con tales redes que permitan a dispositivos de recursos restringidos conectar mas eficientemente con tales redes mientras que mantienen su consumo de potencia y/u otro uso de recursos en un bajo nivel. Ejemplos de otro uso de recursos pueden incluir recursos informaticos, recursos de memoria y recursos de comunicaciones de datos.
Compendio
Hay proporcionado un metodo para un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa a traves de una red de superposicion entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par. El metodo comprende, los pasos del dispositivo de procesamiento
- enviar una peticion de conexion a un nodo par, la peticion de conexion que comprende una indication de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente.
Hay ademas proporcionado un metodo para un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa a traves de una red de superposicion entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par.
El metodo comprende para el dispositivo de procesamiento que es un nodo par
- cuando se recibe una peticion de conexion que comprende un indicador de que otro dispositivo de procesamiento quiere unirse como un nodo cliente,
- determinar, si el dispositivo de procesamiento puede admitir conexiones adicionales de nodos cliente; y
- en respuesta a la peticion de conexion, devolver un mensaje de rechazo a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
5
10
15
20
25
30
Segun una realization de la invention hay ademas proporcionado un metodo para un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa a traves de una red de superposition entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par;
El metodo comprende
- formar uno de los nodos de una agrupacion y realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento que actua por ello como un par, mientras que otros nodos de agrupacion, estan unidos a la cabecera de agrupacion como clientes, y en donde el dispositivo de procesamiento, segun un papel de cabecera de agrupacion,
- transferir el papel de cabecera de agrupacion a otro nodo de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa de un nodo a otro entre los nodos en la agrupacion.
Ademas de los metodos anteriores, se proporcionan los dispositivos de procesamiento correspondientes.
Un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa traves de una red de superposicion entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par;
El dispositivo de procesamiento comprende un circuito de procesamiento; circuiteria de interfaz de red conectada al circuito de procesamiento y una memoria, dicha memoria que contiene instrucciones ejecutables por dicho procesador, por el cual el dispositivo de procesamiento esta siendo operable para
- enviar una petition de conexion a un nodo par, la petition de conexion que comprende una indication de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente.
Un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa traves de una red de superposicion
5
10
15
20
25
30
entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par; el dispositivo de procesamiento que comprende un circuito de procesamiento; circuiteria de interfaz de red conectada al circuito de procesamiento y una memoria, dicha memoria que contiene instrucciones ejecutables por dicho procesador, por el cual el dispositivo de procesamiento que es operable para, cuando se es un nodo par,
- cuando se recibe una peticion de conexion que comprende una indication de que otro dispositivo de procesamiento quiere unirse como un nodo cliente.
- determinar, si el dispositivo de procesamiento puede admitir conexiones adicionales de nodos cliente; y
- en respuesta a la peticion de conexion, devolver un mensaje de rechazo a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
Un dispositivo procesamiento en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa a traves de una red de superposicion entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par. El dispositivo de procesamiento que comprende un circuito de procesamiento; circuiteria de interfaz de red conectada al circuito de procesamiento y una memoria, dicha memoria que contiene instrucciones ejecutables por dicho procesador, el dispositivo de procesamiento que es operable para formar uno de los nodos de una agrupacion o que es operable para realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento que actua por ello como un par, mientras que otros nodos de la agrupacion, estan unidos a la cabecera de agrupacion como clientes, y en donde el dispositivo de procesamiento, segun el papel de cabecera de agrupacion, esta configurado para transferir el papel de cabecera de agrupacion a otro nodo de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa de un nodo a otro entre los nodos en la agrupacion.
5
10
15
20
25
30
Para los dispositivos de procesamiento de algunas realizaciones aplica que se usan en un sistema de una pluralidad de dispositivos de procesamiento conectados de manera comunicativa a traves de una red de superposicion entre pares; en donde cualquier dispositivo de procesamiento esta configurado para conectar a la red de superposicion entre pares como un nodo par o como un nodo cliente, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par. Un dispositivo de procesamiento comprende un circuito de procesamiento; circuiteria de interfaz de red conectada al circuito de procesamiento y una memoria, dicha memoria que contiene instrucciones ejecutables por dicho procesador.
Descrito en la presente memoria tambien estan realizaciones de un sistema de comunicaciones que comprende una pluralidad de nodos que estan conectados de manera comunicativa a traves de una red de comunicaciones. Cada nodo puede comprender un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito de procesamiento, y cada nodo esta configurado para conectar a la red de comunicaciones y comunicar con otros nodos de la red de comunicaciones.
Consecuentemente, las realizaciones del sistema de comunicaciones descrito en la presente memoria proporcionan un mecanismo basado en agrupacion para dispositivos de recursos restringidos que aumenta la eficiencia energetica de una red de superposicion P2P. Las realizaciones del sistema de comunicaciones facilitan a los dispositivos de procesamiento alimentados por baterias o de otro modo de recursos restringidos conectar a la red de superposicion incluso si estan en un modo de reposo la mayoria del tiempo, y compartir la carga de ser un par de la red (es decir de estar despierto) entre los miembros de una agrupacion.
En particular, las realizaciones del sistema de comunicaciones descritas en la presente memoria permiten a los nodos alimentados por baterias que no pueden unirse como clientes, por ejemplo debido a que es su par de admision ya tiene demasiados clientes o debido a que no hay pares permanentes en absoluto, agruparse juntos en una agrupacion que puede comportarse como un unico par el resto de la superposicion. En algunas realizaciones, solamente un nodo unico de cada agrupacion realiza el papel de la cabecera de agrupacion
Para el proposito de la presente description, los terminos "reposo” y "dormido” se pretende que se refieran a un nodo que esta en un estado de conservation de energia, mientras que el termino "despierto” se pretende que se refiera a un nodo que esta en un estado operativo que implica un consumo mayor de energia y/u otros recursos que el estado de conservacion
5
10
15
20
25
30
de energia. Por ejemplo, estar despierto puede comprender estar totalmente operativo y realizar todas las funciones de un par en la red de superposicion y/u otras funciones las cuales el nodo esta configurado para realizar. Estar dormido puede comprender detener todas las actividades distintas de aquellas requeridas para ser capaz de volver a entrar al estado operativo normal (es decir entrar al estado despierto) en un punto de tiempo predeterminado; por lo tanto, mientras que esta dormido, el nodo puede aun operar algunos procesos basicos tales como un temporizador.
En algunas realizaciones, la pluralidad de nodos comprende al menos un primer tipo de nodos y un segundo tipo de nodos, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo de admision del primer tipo. En particular, el primer tipo de nodos pueden ser pares de una red de superposicion entre pares, y el segundo tipo de nodos pueden ser nodos clientes conectables a la red de superposicion entre pares a traves de un nodo par de la red de superposicion entre pares. En algunas realizaciones, el nodo de cabecera de agrupacion puede unirse de esta manera a la red de superposicion como un par, mientras que los otros miembros de la agrupacion estan conectados a la cabecera de agrupacion como clientes, y de esta manera son capaces de reposar la mayoria del tiempo.
Para el proposito de la presente description, el termino par se pretende que se refiera a un nodo en la red de comunicaciones que esta configurado para encaminar mensajes a y/o desde nodos distintos de aquellos a los que esta conectado directamente. En algunas realizaciones, un par esta configurado tambien para almacenar datos relacionados con la red de comunicaciones. En general, una red P2P puede proporcionar un servicio de almacenamiento distribuido generico que puede permitir el almacenamiento de cualquier dato o al menos ciertos tipos de datos de una manera distribuida. Por lo tanto, se pueden almacenar registros que de otra manera se pueden almacenar centralmente en una base de datos de una manera distribuida entre los pares de la red P2P. Es decir, cada par puede almacenar cero o mas registros. Un ejemplo de tales datos es el almacenamiento de un registro que contiene un Identificador de Recursos Uniforme (URI) del Protocolo de Inicio de Sesiones (SIP) y su ID de nodo asociado. Tal uso se describe en el borrador de Internet "A SIP Usage for RELOAD”, de Jennings, C., Lowekamp, B., Rescorla, E., Baset, S., y H. Schulzrinne, enero de 2012, disponible en
http://tools.ietf.org/html/draft-ietf-p2psip-sip-07. En este ejemplo, un nodo puede buscar un URI de SIP y recuperar el ID del nodo que corresponde a ese URI de SIP.
http://tools.ietf.org/html/draft-ietf-p2psip-sip-07. En este ejemplo, un nodo puede buscar un URI de SIP y recuperar el ID del nodo que corresponde a ese URI de SIP.
5
10
15
20
25
30
Para el proposito de la presente description, el termino cliente se pretende que se refiera a un nodo que no tiene responsabilidades de encaminamiento o almacenamiento con respecto a la red de comunicaciones.
A fin de equilibrar la carga de energia, el papel de ser la cabecera de agrupacion se comparte por todos los nodos en la agrupacion. Para este fin, en algunas realizaciones, la agrupacion es operable para mantener una programacion de cabecera de agrupacion indicativa de information acerca de que nodo va a tomar el control del papel de cabecera de agrupacion en que punto en el tiempo. Por lo tanto, un nodo de agrupacion solamente actua como el nodo de cabecera de agrupacion durante una cierta cantidad de tiempo. Entonces, otro nodo de la agrupacion llega a ser la nueva cabecera de agrupacion. Para el proposito de la presente descripcion, el proceso para transferir el papel de cabecera de agrupacion de un nodo de la agrupacion a otro nodo de la agrupacion tambien se conocera como traspaso de cabecera de agrupacion.
En algunas realizaciones, cada nodo de la red de comunicaciones es identificable para otros nodos de la red de comunicaciones mediante un identificador de nodo. El mecanismo para transferir el papel de cabecera de agrupacion puede comprender de esta manera un mecanismo para compartir, entre los nodos de la agrupacion, un identificador de nodo de agrupacion para identificar la agrupacion como un nodo de la red de comunicaciones; en donde la agrupacion es identificable mediante el mismo identificador de nodo de agrupacion antes y despues de una transferencia del papel de cabecera de agrupacion de un nodo de la agrupacion a otro nodo de la agrupacion. Por lo tanto, a fin de evitar una agitation y minimizar el numero mensajes de senalizacion en la superposition, todos los nodos de cabecera de agrupacion pueden compartir el mismo ID de nodo. Por lo tanto, un traspaso de cabecera de agrupacion se ve desde fuera de la agrupacion solo como un par que cambia su direction de red (por ejemplo su direction y puerto IP).
En algunas realizaciones todas las comunicaciones dentro de la agrupacion, es decir entre miembros de la agrupacion, incluyendo traspasos de cabecera de agrupacion, pueden emplear mensajes estandar de un protocolo existente para comunicacion dentro de la red de comunicaciones, sin requerir la introduction de tipos de mensaje adicionales. Por ejemplo, en el contexto de RELOAD, todas las comunicaciones dentro de una agrupacion se pueden implementar con mensajes RELOAD existentes.
Sin embargo, en algunas realizaciones, es beneficioso introducir uno o mas mecanismos para coordinar las acciones de los miembros de la agrupacion. En algunas realizaciones, la agrupacion mantiene informacion acerca de los nodos que son parte de la agrupacion y para
5
10
15
20
25
30
sincronizarlos, en particular para sincronizar en que punto en el tiempo que nodo de la agrupacion va a tomar el control del papel de cabecera de agrupacion. Para este fin, la information puede ser indicativa de (es decir al menos ser suficiente para determinar un nodo de agrupacion) el punto en el tiempo cuando cada uno de los nodos de la agrupacion se programa para tomar el control del papel de cabecera de agrupacion, permitiendo de esta manera a cada nodo determinar cuando tiene que despertarse de un modo de reposo. Ya que esta informacion se puede almacenar convenientemente en forma de tabla, esta informacion, para el proposito de la presente description, tambien se conocera como una tabla de agrupacion. Se entendera, no obstante, que la informacion tambien se puede almacenar en un formato diferente distinto de un formato de tabla. La tabla de agrupacion se puede almacenar en la memoria de uno, mas o todos los miembros de la agrupacion a fin de proporcionar acceso a la informacion almacenada a todos los miembros de la agrupacion. En algunas realizaciones la tabla de agrupacion comprende la programacion de cabecera de agrupacion descrita anteriormente y a continuation. Alternativamente, la programacion de cabecera de agrupacion se puede almacenar en una estructura de datos separada. Crear una nueva agrupacion puede comprender de esta manera poner a disposicion la tabla de agrupacion al menos los miembros de la agrupacion, por ejemplo creando un recurso de red adecuado.
En algunas realizaciones, la agrupacion puede tener almacenada una clave privada de un certificado de cabecera de agrupacion a fin de proporcionar protection de autenticidad y/o confidencialidad de la comunicacion entre la agrupacion y otros nodos de la red de comunicaciones. La clave privada tambien se conocera como la clave de la agrupacion; se puede almacenar en una memoria de uno, algunos o todos los miembros de la agrupacion. En algunas realizaciones, la clave de la agrupacion se almacena como un recurso especial que no esta compartido con otros nodos fuera de la agrupacion.
Segun un aspecto, la pluralidad de nodos comprende al menos un primer tipo de nodos y un segundo tipo de nodos, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; en donde un nodo del segundo tipo es operable para enviar una petition de conexion a un nodo de admision del primer tipo, la petition de conexion que comprende una indication de que el nodo solicitante es un nodo del segundo tipo; y en donde el nodo de admision es operable para determinar si el nodo de admision puede admitir conexiones adicionales de nodos del segundo tipo, y, en respuesta a la peticion de conexion, devolver un mensaje de rechazo al nodo solicitante, si el nodo de admision no puede admitir conexiones adicionales de nodos del segundo tipo.
5
10
15
20
25
30
35
Consecuentemente se proporciona un mecanismo para limitar expKcitamente el numero de clientes por par. Se apreciara que se pueden usar realizaciones del mecanismo descrito en la presente memoria para rechazar una conexion desde un cliente (es decir, un nodo que quiere conectar a la superposicion como un cliente) y/o rechazar una conexion de rama, es decir una conexion desde un nodo que ya esta en la superposicion y quiere conectar con un nodo par. La especificacion del protocolo RELOAD actual solamente proporciona un campo de "clientes permitidos” del fichero de configuration de superposicion a fin de permitir especificar si los nodos del tipo cliente se permiten del todo en una red dada, o si todos los nodos deben ser pares. No obstante, las especificaciones de RELOAD de la tecnica anterior proponen no proporcionan forma para que la superposicion haga cumplir esto. Los inventores se han dado cuenta que se puede lograr una gestion mas eficiente de clientes en una red entre pares cuando la red facilita pares para determinar si un nuevo nodo que intenta conectarse a la red uniendose a dicho par es un cliente o un nuevo par. En el contexto de la especificacion RELOAD de la tecnica anterior, la unica diferencia entre una union a un nodo mediante un cliente y un par es que los pares realizaran una operacion de union en un punto posterior en el tiempo. Por lo tanto, en un sistema RELOAD de la tecnica anterior, una vez que se alcanza un limite para el numero de clientes, la unica forma de rechazar clientes es cortar la conexion a un nodo recien unido despues de esperar algun tiempo para la operacion de union desaparecida, dado que rechazar nuevos nodos de union desde el principio impediria tambien que se unan nuevos pares a la red. Realizaciones de un aspecto del sistema descrito en la presente memoria, por otra parte, proporcionan un mecanismo eficiente que permite a un par identificar clientes cuando se unen, y rechazar selectivamente clientes si el par no tiene suficientes recursos.
La petition de conexion puede ser una petition de union que establece una conexion directa entre el nodo solicitante con un nodo de admision de una red de superposicion de manera que pueden intercambiar mensajes directos, a diferencia de los intercambios de mensajes a traves de la red de comunicaciones que atraviesan multiples nodos de la red de superposicion. Por lo tanto intercambiar un mensaje directo entre nodos de una red de superposicion se pretende que se refiera a un mensaje que no atraviesa ningun otro nodo de superposicion; sin embargo, el mensaje puede atravesar probablemente un conjunto de encaminadores de red u otros nodos de la red subyacente, distintos de los nodos de superposicion.
Segun un aspecto adicional, se proporciona un mecanismo mas eficiente para conectar nodos de un tipo cliente. Segun este aspecto, la pluralidad de nodos comprende al menos un primer tipo de nodos y un segundo tipo de nodos, cada nodo del segundo tipo que es
11
5
10
15
20
25
30
operable para conectar a la red de comunicaciones a traves de un nodo de admision del primer tipo, el nodo de admision que es operable para enviar mensajes de actualization recurrentes a los nodos del segundo tipo conectados a el; y en donde dicho nodo del segundo tipo es operable para enviar un mensaje al nodo de admision indicativo de una petition de no recibir ningun mensaje de actualizacion recurrente; y en donde el nodo de admision es operable, en respuesta a recibir dicho mensaje, para no enviar mensajes de actualizacion recurrentes a dicho nodo del segundo tipo.
Por lo tanto, se proporciona un mecanismo que permite a un nodo cliente evitar la necesidad de recibir actualizaciones continuas desde otros nodos en la superposicion, permitiendo de esta manera al nodo cliente estar en un estado de ahorro de energia, por ejemplo un modo de reposo, sin participar en el encaminamiento de superposition. Los mensajes de actualizacion recurrentes son mensajes de actualizacion que se envian en ciertos intervalos de tiempo regulares o irregulares, por ejemplo periodicamente. El contenido del mensaje de actualizacion puede variar de vez en cuando. En la especificacion RELOAD de la tecnica anterior, los clientes reciben actualizaciones periodicas y asmcronas desde el par de admision al que estan conectados. Incluso aunque los clientes pueden marcar con la marca "send_update” de un mensaje de Peticion de Union como FALSO, esto solamente deshabitada el envio de una actualizacion inmediata. Los procedimientos de estabilizacion periodicos en la superposicion continuan y el cliente seguiria recibiendo actualizaciones periodicas, consumiendo de esta manera ancho de banda y energia de ambos, el par de admision y sus clientes. Ademas, las realizaciones de una red de comunicacion descrita en la presente memoria evitan errores indeseados causados por clientes que estan en un modo de reposo cuando un par de admision intenta enviar un mensaje actualizado al cliente. Tal intento fallido puede causar de otro modo un error de conexion en el par de admision, haciendo al par posiblemente de esta manera asumir que el cliente se ha ido y borrar el cliente de su lista de clientes.
Los inventores se han dado cuenta que, dado que los clientes no participan en el encaminamiento, el unico proposito de estos mensajes de actualizacion es permitir a los clientes saber si hay un par de admision mejor para ellos. No obstante los clientes en reposo o conectados intermitentemente pueden usar otros mecanismos (por ejemplo mecanismos de Ping o RouteQuery) para identificar esta situation la siguiente vez que contacten su par de admision.
En algunas realizaciones, cada nodo del segundo tipo es operable para conectar a la red de comunicaciones uniendose a un nodo de admision del primer tipo a fin de permitir al nodo
5
10
15
20
25
30
35
del segundo tipo y al nodo de admision intercambiar mensajes directos, a diferencia de intercambios de mensajes a traves de la red de comunicaciones que atraviesan multiples nodos. El nodo de admision puede ser operable de esta manera para enviar mensajes de actualization recurrentes a los nodos del segundo tipo unidos a el; y en donde dicho nodo del segundo tipo es operable para enviar un mensaje al nodo de admision indicativo de una petition de no recibir ningun mensaje de actualizacion recurrente; y en donde el nodo de admision es operable, en respuesta a recibir dicho mensaje, para no enviar mensajes de actualizacion recurrentes a dicho nodo del segundo tipo.
En algunas realizaciones, el mensaje indicativo de una peticion de no recibir ningun mensaje de actualizacion recurrente puede ser una peticion para unirse a un nodo de la red, es decir la peticion de no recibir mensajes actualizados se puede incluir en la peticion de union, por ejemplo como una marca u otra indication adecuada. Alternativamente, la indication se puede incluir en un mensaje separado diferente de un mensaje de union. En algunas realizaciones, el nodo del segundo tipo puede ser operable para enviar un mensaje al nodo de admision indicativo de una peticion para reanudar los mensajes de actualizacion de recurrentes.
En algunas realizaciones, la red de comunicaciones es una red de superposicion, es decir una red de nodos que esta construida en la parte superior de otra red. Los nodos en la superposition se pueden considerar como que estan conectados mediante enlaces virtuales o logicos, cada uno de los cuales corresponde a un camino. Los nodos de la superposicion se pueden representar mediante un grafico. En algunas realizaciones, cada nodo en la superposicion esta asignado a un identificador de nodo el cual, junto con un algoritmo de superposicion, determina su position en el grafico y el conjunto de nodos al que conecta. Un ejemplo de una red de superposicion P2P es una red de superposicion P2P que usa una tabla de calculo de claves distribuidas. La red subyacente puede ser cualquier red informatica adecuada, tal como una red informatica de area extensa, por ejemplo Internet u otra red informatica que implementa un Protocolo de Internet. En algunas realizaciones, la red de superposicion implementa un protocolo de senalizacion entre Pares (P2P) para uso en la red informatica subyacente tal como Internet. El protocolo de senalizacion P2P dota a sus nodos con un servicio de almacenamiento y mensajeria entre un conjunto de pares de cooperation que forman la red de superposicion. Un ejemplo de tal protocolo de senalizacion P2P es RELOAD, ver el borrador de Internet "Resource Location And Discovery Base Protocol” de 5 noviembre de 2012 de C. Jennings, B. B. Lowekamp, E. K. Rescorla, S. A. Baset, y H. G. Schulzrinne, disponible en lmea en
http://tools.ietf.org/html/draft-ietf-p2psip- base-23. En algunas realizaciones, los nodos de la red de superposicion P2P y, en particular
http://tools.ietf.org/html/draft-ietf-p2psip- base-23. En algunas realizaciones, los nodos de la red de superposicion P2P y, en particular
13
5
10
15
20
25
30
los nodos de una agrupacion, se pueden situar a distancias relativamente grandes unos de otros, ejemplo muchos kilometros.
Cada nodo de la red puede ser un ordenador u otro dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz para conectar el nodo a la red de comunicaciones, por ejemplo a traves de una conexion cableada o inalambrica. Los sensores son ejemplos de tales nodos que estan disenados para detectar o monitorizar una o mas cantidades fisicas, tales como temperatura, humedad, concentration de uno o mas componentes, cantidades electricas, tension, posiciones, velocidad, aceleracion, radiation, etc. Tales sensores se pueden configurar para implementar modos de operation de bajo consumo a fin de permitir al sensor ser parcial o completamente autonomo y alimentado por baterias durante un tiempo de vida considerable dependiendo del ciclo de trabajo y los recursos de comunicaciones usados. Los actuadores son ejemplos de nodos que son operables para actuar en un entorno. Por ejemplo, un actuador puede ser un motor que produce movimiento al recibir un comando sobre una red.
Para el proposito de la presente description, el termino "unir” un nodo a un nodo de la red de comunicaciones se pretende que se refiera a cualquier procedimiento adecuado para establecer una conexion directa con otro nodo de manera que puedan intercambiar mensajes directos, a diferencia de los intercambios de mensajes a traves de la red de comunicaciones que atraviesan multiples nodos. Cuando un nodo cliente se une a un par, el cliente puede comunicar de esta manera con otros nodos de la red a traves de dicho par. Una operacion de "union” se puede usar por un nodo para unirse a una superposition como un par. Cuando el nodo se une a la superposicion como un par, sera responsable de gestionar una parte de la superposicion. El termino "conectar” a una red de comunicaciones se pretende que se refiera a cualquier procedimiento de registro adecuado para registrar un nodo con una red de comunicaciones tal como una red de superposicion P2P, a fin de permitir al nodo comunicar con los otros nodos de la red de comunicaciones.
Descritos en la presente memoria estan diferentes aspectos que incluyen el sistema de comunicaciones descrito anteriormente y a continuation, los metodos, aparatos, dispositivos, y/o medios de producto correspondientes, cada uno que produce uno o mas de los beneficios y ventajas descritos en conexion con el primer aspecto mencionado, y cada uno que tiene una o mas realizaciones que corresponden a las realizaciones descritas en conexion con el primer aspecto mencionado y/o descritas en la reivindicaciones adjuntas.
5
10
15
20
25
30
Segun un aspecto, descrito en la presente memoria esta un metodo para conectar un dispositivo de procesamiento a un sistema de comunicaciones como un nodo del sistema de comunicaciones; el metodo que comprende:
- formar al menos una agrupacion de nodos,
- asignar un papel de cabecera de agrupacion a uno de los nodos de la agrupacion;
- conectar la agrupacion a la red de comunicaciones a traves de dicho nodo de cabecera de agrupacion, e
- implementar un mecanismo para transferir el papel de cabecera de agrupacion desde un nodo de la agrupacion a otro nodo de la agrupacion.
Segun otro aspecto, descrito en la presente memoria esta un metodo para conectar un dispositivo de procesamiento a un sistema de comunicaciones como un nodo del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; el metodo que comprende:
- enviar una peticion de conexion a un nodo de admision del primer tipo, la peticion de conexion que comprende una indication de que el nodo solicitante es un nodo del segundo tipo;
- determinar, mediante el nodo de admision, si el nodo de admision puede admitir conexiones adicionales de nodos del segundo tipo, y
- en respuesta a la peticion de conexion, devolver un mensaje de rechazo por el nodo de admision al nodo solicitante, si el nodo de admision no puede admitir conexiones adicionales de nodos del segundo tipo.
Segun aun otro aspecto, descrito en la presente memoria esta un metodo para conectar un dispositivo de procesamiento a un sistema de comunicaciones como un nodo del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo de admision del primer tipo; el metodo que comprende:
- enviar, mediante un nodo de admision, mensajes de actualization recurrentes a los nodos del segundo tipo conectados a el;
5
10
15
20
25
30
- recibir, mediante el nodo de admision, desde uno de los nodos del segundo tipo conectados a el, un mensaje indicativo de una peticion de no recibir ningun mensaje de actualization recurrente; y
- en respuesta al mensaje recibido, omitir enviar mensajes de actualizacion recurrentes a dicho nodo del segundo tipo desde el cual se ha recibido el mensaje.
En algunas realizaciones la conexion es una union del dispositivo de procesamiento al nodo de admision, y una peticion de conexion es una peticion de union que solicita union del dispositivo de procesamiento al nodo de admision.
Los rasgos de las realizaciones de los metodos descritos en la presente memoria se pueden implementar en software y llevar a cabo en un dispositivo de procesamiento u otro sistema de procesamiento de datos causado por la ejecucion de instrucciones ejecutables por ordenador. Las instrucciones pueden ser medios de codigo de programa cargados en una memoria, tal como una Memoria de Acceso Aleatorio (RAM), desde un medio de almacenamiento o desde otro ordenador a traves de una red informatica. Alternativamente, los rasgos descritos se pueden implementar mediante circuiteria cableada en lugar de software o en combination con software.
Segun aun otro aspecto, descrito en la presente memoria esta un dispositivo de procesamiento para uso como un nodo en un sistema de comunicaciones, el sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a traves de una red de comunicaciones, el dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito de procesamiento; el dispositivo de procesamiento que esta configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, el sistema de comunicaciones que comprende al menos una agrupacion de nodos, en donde el dispositivo de procesamiento es operable para conectar al sistema de comunicaciones como un miembro de dicha agrupacion; y para realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de comunicaciones, y en donde el dispositivo de procesamiento es operable para transferir el papel de cabecera de agrupacion a otro nodo de la agrupacion segun un mecanismo para transferir el papel de cabecera de agrupacion.
En algunas realizaciones, el dispositivo de procesamiento comprende una memoria que tiene almacenado en la misma un identificador de nodo para identificar el dispositivo de procesamiento dentro del sistema de comunicaciones. En algunas realizaciones la memoria tiene almacenado en la misma un identificador de nodo privado para identificar el dispositivo
5
10
15
20
25
30
de procesamiento a otros miembros de la agrupacion, y un identificador de nodo publico para identificar la agrupacion dentro del sistema de comunicaciones. Por lo tanto, en algunas realizaciones, el identificador de nodo publico del dispositivo de procesamiento que inicia una nueva agrupacion, es decir el nodo inicial de la agrupacion, se usa como un identificador de nodo de agrupacion para identificar la agrupacion en la red de comunicaciones.
En algunas realizaciones, el dispositivo de procesamiento puede tener almacenada en el mismo una clave criptografica respectiva asociada con cada identificador de nodo. Crear una nueva agrupacion puede comprender poner a disposition la clave criptografica asociada con el identificador de nodo publico del dispositivo de procesamiento que crea la nueva agrupacion a otros miembros de la agrupacion sin poner a disposicion dicha clave criptografica a otros nodos de la red de comunicaciones que no son miembros de la agrupacion.
Segun aun otro aspecto, descrito en la presente memoria esta un dispositivo de procesamiento para uso como un nodo en un sistema de comunicaciones, el sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a traves de una red de comunicaciones, el dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito de procesamiento; el dispositivo de procesamiento que esta configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; el dispositivo de procesamiento que es operable para enviar una petition de conexion a un nodo de admision del primer tipo, la petition de conexion que comprende una indicacion de que un dispositivo de procesamiento es un nodo del segundo tipo, y recibir, desde el nodo de admision una respuesta, indicativa de un resultado de una determination, por el nodo de admision, si el nodo de admision puede admitir conexiones adicionales de nodos del segundo tipo.
Segun aun otro aspecto, descrito en la presente invention esta un dispositivo de procesamiento para uso como un nodo en un sistema de comunicaciones, el sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a traves de una red de comunicaciones, el dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito
5
10
15
20
25
30
de procesamiento; el dispositivo de procesamiento que esta configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; el dispositivo de procesamiento que es operable:
- para conectar a la red de comunicaciones como un nodo del primer tipo,
- para recibir una peticion de conexion, la peticion de conexion que comprende una indicacion de que otro dispositivo de procesamiento solicita conexion a la red de comunicaciones como un nodo del segundo tipo,
- para determinar, si el dispositivo de procesamiento puede admitir conexiones adicionales de nodos del segundo tipo; y
- en respuesta a la peticion de correccion, para devolver un mensaje de rechazo a dicho otro dispositivo de procesamiento, si el procesamiento no puede admitir conexiones adicionales de nodos del segundo tipo.
Segun aun otro aspecto, descrito en la presente memoria esta un dispositivo de procesamiento para uso como un nodo en un sistema de comunicaciones, el sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a traves de una red de comunicaciones, el dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito de procesamiento; el dispositivo de procesamiento que esta configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; el dispositivo de procesamiento que es operable:
- para conectar a la red de comunicaciones como un nodo del primer tipo,
- para enviar mensajes de actualizacion recurrentes a nodos del segundo tipo conectados a el;
- para recibir, desde uno de los nodos del segundo tipo conectados a el, un mensaje indicativo de una peticion de no recibir ningun mensaje de actualizacion recurrente; y
5
10
15
20
25
30
- en respuesta al mensaje recibido, para omitir enviar mensajes de actualizacion recurrentes a dicho nodo del segundo tipo desde el cual se ha recibido el mensaje.
Segun aun otro aspecto, descrito en la presente memoria esta un dispositivo de procesamiento para uso como un nodo en un sistema de comunicaciones, el sistema de comunicaciones que comprende una pluralidad de nodos conectados de manera comunicativa a traves de una red de comunicaciones, el dispositivo de procesamiento que comprende un circuito de procesamiento y circuiteria de interfaz de red conectada al circuito de procesamiento; el dispositivo de procesamiento que esta configurado para conectar a la red de comunicaciones y para comunicar con otros nodos del sistema de comunicaciones, cada nodo del sistema de comunicaciones que esta configurado para conectar a la red de comunicaciones como un primer tipo de nodo o como un segundo tipo de nodo, cada nodo del segundo tipo que es operable para conectar a la red de comunicaciones a traves de un nodo del primer tipo; el dispositivo de procesamiento que es operable:
- para conectar, a traves de un nodo de admision, a la red de comunicaciones como un nodo del segundo tipo,
- para enviar, al nodo de admision, un mensaje indicativo de una peticion de no recibir ningun mensaje de actualizacion recurrente a fin de hacer al nodo de admision omitir enviar mensajes de actualizacion recurrentes al dispositivo de procesamiento.
Generalmente, la circuiteria de interfaz de red puede ser cualquier circuiteria o dispositivo configurado para proporcionar comunicacion con una red de comunicaciones, por ejemplo una red de comunicaciones inalambrica o cableada.
El circuito de procesamiento puede ser cualquier circuiteria o dispositivo configurado para realizar procesamiento de datos, por ejemplo un microprocesador programado adecuadamente, una unidad central de proceso (CPU) de un ordenador, de un terminal de mano, o de otro dispositivo de procesamiento, un circuito de hardware dedicado, etc., o una combination de los anteriores. El dispositivo de procesamiento puede comprender una memoria u otro medio de almacenamiento adecuado que tiene un codigo de programa de ordenador almacenado en el mismo adaptado para hacer, cuando se ejecuta por el circuito de procesamiento, al dispositivo de procesamiento realizar los pasos de las realizaciones del metodo descrito en la presente memoria.
Ejemplos del dispositivo de procesamiento incluyen un Equipo de Usuario (UE) tal como un telefono movil, un telefono inteligente, u otro dispositivo de comunicaciones inalambrico adecuado, un ordenador, un sensor, un actuador, etc. o combinaciones de los mismos.
5
10
15
20
25
Breve descripcion de los dibujos
Los objetos, rasgos y ventajas anteriores y/o adicionales de realizaciones de los metodos, sistemas y dispositivos descritos en la presente memoria, se dilucidaran ademas mediante la siguiente descripcion detallada ilustrativa y no limitante de las realizaciones de los metodos, sistemas y dispositivos descritos en la presente memoria, con referencia a los dibujos adjuntos, en donde:
La figura 1 ilustra esquematicamente partes de una realization de un sistema de comunicaciones.
La figura 2 muestra un diagrama de bloques esquematico de un dispositivo de procesamiento operable como un nodo de una red de superposition P2P como se describe en la presente memoria.
La figura 3 muestra un ejemplo de un proceso para conectar un nodo cliente a una red de superposicion.
La figura 4 muestra un ejemplo de la estructura de mensajes de una petition de union para unir un nodo a otro nodo de una red de superposicion P2P.
La figura 5 muestra un diagrama de flujo de un ejemplo de un proceso para admitir un nuevo nodo cliente mediante un par de admision.
La figura 6 muestra un diagrama de flujo de un proceso, realizado por un dispositivo de procesamiento, para conectar a una red de superposicion.
La figura 7 ilustra esquematicamente un ejemplo de una parte de una red de superposicion que incluye una agrupacion como se describe en la presente memoria.
La figura 8 muestra un diagrama de flujo de un ejemplo de un proceso para crear una nueva agrupacion.
La figura 9 muestra un diagrama de flujo de un ejemplo de un proceso para unirse a una nueva agrupacion, que permite a un dispositivo de procesamiento unirse a una agrupacion existente como un nuevo nodo.
La figura 10 muestra en un diagrama de flujo de mensajes que ilustra los mensajes intercambiados entre la cabecera de agrupacion y el nuevo un nodo de agrupacion que se une a la agrupacion.
5
10
15
20
25
30
La figura 11 muestra el flujo de mensajes entre la cabecera de agrupacion actual y la siguiente cabecera de agrupacion durante un ejemplo de un traspaso de cabecera de agrupacion.
La figura 12 muestra un dispositivo de procesamiento que comprende un modulo de envio.
La figura 13 muestra un dispositivo de procesamiento que comprende un modulo de par; un modulo de petition de conexion; un modulo de determination y un modulo de rechazo.
La figura 14 muestra un dispositivo de procesamiento que comprende un modulo de formacion de agrupacion y un modulo de transferencia de cabecera de agrupacion.
Descripcion detallada
En la siguiente descripcion, se hace referencia a las figuras anexas, las cuales muestran a modo de ilustracion como se pueden poner en practica las realizaciones de los metodos, sistemas y dispositivos descritos en la presente memoria.
La figura 1 ilustra esquematicamente partes de una realization de un sistema de comunicaciones, en particular partes de una red de superposition P2P de un sistema de comunicaciones subyacente. El sistema comprende los dispositivos de procesamiento 101, 102, conectados a la red de superposicion como nodos de la red de superposicion. Los nodos estan conectados uno con otro mediante enlaces logicos 104 a fin de formar la topologia de la red de superposicion. Se apreciara que cada enlace se puede implementar mediante un camino de comunicaciones de la red de comunicaciones subyacente donde el camino puede implicar una conexion directa entre dos nodos o puede implicar multiples entidades de la red de comunicaciones subyacente.
La red de superposicion comprende un primer tipo de nodos 101, tambien conocidos como pares. Los pares 101 y sus enlaces de interconexion 104 definen la topologia global de la red y los pares 101 participan en el encaminamiento de los mensajes entre nodos distintos de los mensajes desde los nodos a los que esta directamente conectado un par. Los pares ademas proporcionan capacidad de almacenamiento para information relacionada con la red de superposicion, tal como informacion encaminamiento, directorios de red, etc.
La red de superposicion ademas comprende un segundo tipo de nodos 102, tambien conocidos como clientes. Cada cliente 102 esta conectado a la red de superposicion a traves de un par de admision 101. Por lo tanto, un cliente solamente participa en el encaminamiento de los mensajes dirigidos a el o procedentes de el.
5
10
15
20
25
30
En el ejemplo en la figura 1, los pares estan dispuestos en una topologia en forma de anillo, por ejemplo usando el protocolo Chord. La disposition de los nodos y enlaces, asi como las tareas de encaminamiento y almacenamiento a ser realizadas por los nodos se pueden definir en un algoritmo de superposition y siguen un protocolo adecuado, tal como el protocolo RELOAD.
Detalles adicionales del protocolo RELOAD y ejemplos de una realization de una superposicion P2P, sus componentes y los procedimientos de union convencionales se pueden encontrar en el borrador de Internet "A Constrained Application Protocol (CoAP) Usage for REsource Location And Discovery (RELOAD)” de 20 agosto de 2012 de J. Jimenez, J. Lopez-Vega, J. Maenpaa y G. Camarillo, disponible en lmea en:
http://tools.ietf.org/html/draft-jimenez-p2psip-coap-reload-02, y en el borrador de Internet "Resource Location And Discovery Base Protocol” de 5 de noviembre de 2012 de C. Jennings, B. B. Lowekamp, E. K. Rescorla, S. A. Baset, y H. G. Schulzrinne, disponible en lmea en
http://tools.ietf.org/html/draft-ietf-p2psip-base-23.
http://tools.ietf.org/html/draft-jimenez-p2psip-coap-reload-02, y en el borrador de Internet "Resource Location And Discovery Base Protocol” de 5 de noviembre de 2012 de C. Jennings, B. B. Lowekamp, E. K. Rescorla, S. A. Baset, y H. G. Schulzrinne, disponible en lmea en
http://tools.ietf.org/html/draft-ietf-p2psip-base-23.
Se apreciara, no obstante, que la red puede implementar una topologia de red diferente y/o implementar diferentes protocolos de senalizacion y/o algoritmos de superposicion.
La figura 2 muestra un diagrama de bloques esquematico de un dispositivo de procesamiento 201 operable como un nodo de una red de superposicion P2P como se describe en la presente memoria, por ejemplo la red de superposicion de la figura 1. El dispositivo de procesamiento 201 comprende un controlador 212 y otra circuiteria y/o componentes hardware 213 conectados adecuadamente al controlador 212. El controlador 212 comprende un circuito de procesamiento 216 y una memoria 217 conectada al circuito de procesamiento. El circuito de procesamiento 216 puede ser un microprocesador, CPU, u otro procesador adecuado. La memoria 217 puede ser cualquier memoria volatil o no volatil adecuada u otro dispositivo de almacenamiento de datos. La memoria 217 puede tener almacenados en la misma los datos 218 y un codigo de programa de ordenador 219, el codigo de programa 219 que esta adaptado para hacer al circuito de procesamiento 216 realizar procesos a ser realizados por el dispositivo de procesamiento, tales como los pasos de las realizaciones del metodo descritos en la presente memoria que se realizan por el dispositivo de procesamiento 201, por ejemplo los pasos descritos con referencia a las figuras 3, 6, 8 - 11 mas adelante. En particular, la memoria puede tener almacenados en la misma un ID de nodo privado 261 y un ID de nodo publico 262 y las claves criptograficas correspondientes 263 y 264, respectivamente, asociadas con los respectivos de los ID de nodos. Los otros componentes hardware/circuiteria 213 pueden comprender opcionalmente
5
10
15
20
25
30
un dispositivo sensor 215 para detectar una cantidad fisica, una interfaz de usuario, por ejemplo un visualizador, teclado, teclado numerico, pantalla tactil, y/o similares. El dispositivo de procesamiento 201 ademas comprende circuiteria de interfaz de red, tal como la circuiteria radio 214 para radiocomunicacion a traves de una antena 220 con una red de acceso radio. El ejemplo de la figura 2 muestra una realization implementada por procesador, pero realizaciones alternativas podrian usar elementos cableados o una combinacion de ambos. El dispositivo de procesamiento puede ser conectable a la superposition como un par o como un cliente. Se apreciara, no obstante, que, dependiendo de los recursos informaticos, patrones de uso, capacidad de almacenamiento, y/o fuente de alimentation, algunos dispositivo de procesamiento pueden ser mas adecuados para conexion como clientes en lugar de como pares, mientras que otros dispositivos de procesamiento pueden ser conectables igualmente bien como pares y como clientes o conectables mas adecuadamente como pares.
A continuation, se describiran realizaciones en el contexto de RELOAD y, en particular, se describiran modificaciones a los sistemas RELOAD de la tecnica anterior que facilitan soporte de pares de recursos restringidos (por ejemplo activadores) y clientes alimentados por baterias (por ejemplo sensores) en superposiciones RELOAD. Ademas, se describira una realizacion de un mecanismo en el contexto de RELOAD que permite a los nodos alimentados por baterias que no pueden conectar como clientes construir una agrupacion a fin de compartir la carga de participation en las operaciones de superposicion como un par.
La figura 3 muestra un ejemplo de un proceso para conectar un nodo cliente a una red de superposicion, por ejemplo la red de superposicion de la figura 1 tal como una red de superposicion RELOAD.
En el paso S301, el dispositivo de procesamiento 302 que solicita conectar a la red envia una petition de union 320 a un nodo par 301 de la red.
La figura 4 muestra un ejemplo de la estructura de mensajes de la peticion de union 320, por ejemplo un mensaje de Peticion de Union RELOAD modificado. En particular, la peticion de union 320 comprende un campo 421 que indica si el dispositivo solicitante 302 solicita una union como un nodo cliente. Se apreciara que la peticion de union 320 puede comprender un numero de campos adicionales. Un ejemplo espedfico de una peticion de union puede tener la siguiente estructura:
struct {
opaque ufrag<0..2A8-1>;
5
10
15
20
25
30
opaque
password<0..2A8-1>;
opaque
role<0..2A8-1>;
IceCandidate candidates<0..2A16-1>;
Boolean
send_update;
Boolean
client_node;
}
AttachReq;
Donde el campo 421 se implementa como un campo Booleano “client_node”. Este campo se fija VERDADERO cuando el nodo 302 quiere unirse como un cliente, y a FALSO de otro modo (por ejemplo cuando el nodo 302 es un par de union o una rama).
La peticion de union puede comprender ademas un campo 422 que indica si el nodo solicitante 302 desea recibir mensajes actualizados periodicos o de otro modo recurrentes. De nuevo, este campo se puede implementar como un campo Booleano y llamado “send_update”. Por ejemplo del uso de tal campo se describira en mayor detalle mas adelante.
De nuevo con referencia la figura 3, en el paso S302, tras la recepcion de la peticion de union 320, el nodo de admision 301 determinar si todavia tiene suficientes recursos para admitir un cliente adicional unido a el. Por ejemplo, el nodo de admision puede determinar si ya se ha alcanzado un numero maximo predeterminado de clientes unidos, o el nodo de admision puede hacer la determination en base a otros criterios, por ejemplo el uso de memoria actual, etc.
El nodo de recepcion puede elegir de esta manera aceptar la nueva conexion, o rechazarla si el nodo de union es un cliente o una rama, pero el par no tiene suficientes recursos para aceptarla (por ejemplo demasiadas conexiones), o la configuration de superposition no permite clientes (es decir <clients-permited> false </clients-permited>). Una rama es un nodo par que ya es parte de la superposicion.
En base a la determinacion del paso S302, el nodo de admision 301 devuelve un mensaje de respuesta 330 al dispositivo solicitante 302. Si el nodo de admision 301 ha determinado que se puede admitir el cliente adicional 302, la respuesta de union es un mensaje de aceptacion y seguido por pasos de conexion adicionales, por ejemplo como se describe en la especificacion RELOAD (ibid.). Si el nodo de admision 301 ha determinado que el cliente
5
10
15
20
25
30
adicional 302 no se puede admitir, la respuesta de union es un mensaje de rechazo. Ello puede hacer al cliente conectar como un par o iniciar una nueva agrupacion de clientes o unirse a una agrupacion existente, como se describe en la presente memoria.
Para este fin, el mensaje de respuesta de rechazo puede comprender un codigo de error que indica al nodo solicitante 302 que se rechaza la peticion. Tal codigo de error “Error_Connection_Rejected” se puede definir como:
Error_Connection_Rejected: Un procedimiento de union no se puede realizar debido a que el par no tiene suficientes recursos, o la configuration de superposition no permite clientes.
Este codigo de error esta incluido en un mensaje de Respuesta de Union cuando el par no tiene suficientes recursos para aceptar una nueva conexion desde un cliente o una conexion de rama. En algunas realizaciones, este error no se emplea para rechazar la conexion desde un par de union en Chord. Aunque ambas ramas y pares de union pueden enviar una Peticion de Union con un client_node = FALSO, se pueden distinguir por su ID de nodo. En Chord, los pares de union tienen un ID de nodo entre el par de admision y su sucesor. De otro modo el par de union solamente quiere configurar una rama y se puede rechazar. Senalar que en Chord un par de union sustituye la conexion a uno de los pares sucesores del par de admision, y de esta manera se puede aceptar sin aumentar el numero total de conexiones.
En cualquier caso, el mensaje de respuesta de union no necesita incluir el campo client_node, sino que puede incluir el campo, por ejemplo fijar a un valor por defecto tal como FALSO, a fin de usar la misma estructura de mensaje para ambos mensajes.
Las ramas rechazadas pueden buscar un nodo diferente en la misma section de un anillo Chord, mientras que un cliente rechazado puede intentar unirse como un par y crear una nueva agrupacion, como se describe en mayor detalle mas adelante. En particular, el contexto de Chord, un nodo puede tener una conexion de rama con varios nodos alternativos. Dependiendo de a que nodo conecta, el encaminamiento funcionara ligeramente de manera diferente dado que nodos diferentes gestionan diferentes partes de la superposicion. Por lo tanto, dependiendo de a que nodo conecta, se pueden encaminar un mensaje particular a traves de un conjunto de nodos diferentes.
La figura 5 muestra un diagrama de flujo de un ejemplo de un proceso para admitir un nuevo nodo cliente mediante un par de admision, por ejemplo el par de admision 301 de la figura 3.
En el paso inicial S501, el nodo de admision recibe una peticion de union desde un nuevo
nodo solicitante, la peticion de union que comprende un campo client_node y un campo
25
5
10
15
20
25
30
35
send_update, como se describio anteriormente. En el paso S502, el nodo de admision determina si el campo client_node esta fijado a VERDADERO o FALSO. Si el campo client_node es FALSO, el proceso continua en el paso S503 realizando un proceso de union para un nuevo par, por ejemplo como se describe en la especificacion de RELOAD (ibid.). Si el campo client_node esta fijado a VERDADERO, el par de admision pasa al paso S504 y determina si el nodo de admision puede admitir un cliente adicional, por ejemplo como se describe en conexion con la figura 3 anterior. Si el par de admision determina que no puede admitir clientes adicionales, el proceso pasa al paso S505 donde el par de admision envia un mensaje de respuesta de union al nodo solicitante incluyendo el codigo de error anterior “Error_Connection_Rejected”. De otro modo, si el par de admision determina que puede admitir un cliente adicional, el proceso pasa al paso S506 donde el par de admision envia un mensaje de respuesta de union que inicia el proceso de union, por ejemplo como se describe la especificacion RELOAD (ibid.). En el paso S507, el proceso determina si el campo send_update en la peticion de union fue fijado a VERDADERO o FALSO. Si el campo send_update se fija a VERDADERO, el proceso pasa al paso S508 donde el par de admision envia mensajes de actualization periodicos al cliente recientemente admitido. De otro modo, si el campo send_update se fija a FALSO, el proceso pasa al paso S509 donde el par de admision no envia ningun mensaje de actualizacion periodico al cliente recientemente admitido.
Por lo tanto, se introduce un mecanismo que permite a un cliente usar la marca send_update para senalar al par de admision si desea recibir actualizaciones periodicas. A fin de impedir al par de admision enviar actualizaciones periodicas de envio a clientes conectados intermitentemente, un cliente (client_node = VERDADERO) puede fijar esta marca a FALSO. En ese caso el par marca esa conexion como libre de actualizacion y se abstiene de enviar ningun mensaje de actualizacion a traves de ella. Por otra parte, los clientes que aun quieren recibir actualizaciones, incluyendo uno intermedio, pueden fijar su marca a VERDADERO (send_update = VERDADERO). Para nodos no clientes (client_node = FALSO) la marca send_update puede indicar al par de admision que el par recientemente unido solicita un mensaje de actualizacion inmediato una vez que se acaba el procedimiento de union.
Los clientes que no reciben actualizaciones pueden comprobar aun periodicamente si el par actual al que estan conectados es aun el mejor (por ejemplo el responsable para su ID de nodo). Esto se puede hacer por diferentes medios, por ejemplo enviando Peticiones de Encaminamiento a su par actual con send_update = VERDADERO, o enviando un mensaje de Ping a su propio ID de nodo a fin de conocer que par es el responsable.
5
10
15
20
25
30
La figura 6 muestra un diagrama de flujo de un proceso, realizado por un dispositivo de procesamiento, para conectar a una red de superposicion como un nodo clientes, por ejemplo la red de superposicion de la figura 1. Por ejemplo, el dispositivo de procesamiento puede ser un dispositivo alimentado por baterias tal como un sensor, u otro dispositivo de recursos restringidos que desea conectar a la red de superposicion de una manera que conserve los recursos.
Para este fin, en el paso inicial S601, el dispositivo de procesamiento envia una peticion de union a su par de admision, por ejemplo a traves de un nodo de initialization (por ejemplo el par inicial en la red de superposicion). La peticion de union puede incluir un campo client_node fijado VERDADERO a fin de permitir al par de admision determinar que tipo de nodo esta uniendose comprobando su ID de nodo y el campo client_node. De esta manera, el par de admision puede o bien aceptar o bien rechazar la peticion de union y enviar un mensaje de respuesta correspondiente. Por consiguiente, en el paso S602, el dispositivo de procesamiento recibe el mensaje de respuesta. Si el mensaje de respuesta indica una aceptacion de la peticion de union, el proceso pasa al paso S603 realizando una union como un cliente, por ejemplo como se describe en la especificacion RELOAD (ibid.). Si el mensaje de respuesta indica un rechazo de la peticion, por ejemplo por medio de un codigo de error Error_Connection_Rejected como se explico anteriormente, el proceso pasa al paso S604, donde el dispositivo de procesamiento se une como un par y establece una nueva agrupacion de nodos, como se describe en mayor detalle a continuation.
Generalmente, se apreciara que, segun aumenta el numero de clientes en la superposicion, los pares de recursos restringidos (por ejemplo actuadores) comenzaran rechazandoles como clientes. Por lo tanto la unica forma para que clientes rechazados conecten a la superposicion es unirlos como pares completos. No obstante, dado que ser un par implica estar despierto todo el tiempo a fin de reenviar mensajes y almacenar recursos, descrito en la presente memoria esta un mecanismo que permite a dispositivos de procesamiento alimentados por baterias o de otro modo de recursos restringidos agruparse juntos para construir una agrupacion de dispositivos, donde en un punto dado en el tiempo solamente uno de ellos actua como un par. Este miembro de la agrupacion tambien se conoce como la cabecera de agrupacion. Los otros miembros de la agrupacion, a continuacion tambien llamados nodos de agrupacion, se unen a la cabecera de agrupacion como clientes, y de esta manera pueden estar reposando la mayoria del tiempo, es decir solamente uno de ellos necesita estar despierto en cada punto en el tiempo distinto durante un traspaso de cabecera de agrupacion o cuando un nuevo nodo se une a la agrupacion.
5
10
15
20
25
30
La figura 7 ilustra esquematicamente un ejemplo de una parte de una red de superposicion que incluye una agrupacion como se describe en la presente memoria. La red de superposicion comprende los nodos de par 711 y 713, y una agrupacion que comprende los nodos 701, 721, y 751. En el ejemplo de la figura 7, el nodo 701 actua como cabecera de agrupacion mientras que los nodos 721 y 751 son nodos de agrupacion.
A fin de compartir la carga de estar despierto y actuar como un par, el papel de cabecera de agrupacion se rota periodicamente entre todos los nodos que forman la agrupacion. Por lo tanto, cuando el nodo que es la cabecera de agrupacion finaliza su cambio, un nodo de agrupacion deberia despertarse y llegar a ser la nueva cabecera de agrupacion. El periodo de tiempo que un nodo actua como la cabecera de agrupacion se conoce como el periodo de cabecera de agrupacion; su longitud puede ser espedfica de la aplicacion. Por ejemplo, en una aplicacion que emplea telefonos inteligentes o de otro modo sensores recargables (por ejemplo por medio de un panel solar), puede ser deseable seleccionar que el periodo de cabecera de agrupacion sea mas pequeno que la duracion estimada de bateria mientras que es una cabecera de agrupacion. El periodo de cabecera de aplicacion se puede configurar estadisticamente en los nodos o calculado dinamicamente (por ejemplo eligiendo el mmimo de todos los nodos de agrupacion).
El proceso de transferir el papel de cabecera de agrupacion de un miembro de la agrupacion a otro miembro de la agrupacion se llama traspaso de cabecera de agrupacion; implica la nueva cabecera de agrupacion que se une a la superposicion como un par y la vieja cabecera de agrupacion que la abandona. Aunque es posible usar procedimientos de union y abandono RELOAD estandar para implementar el traspaso de cabecera de agrupacion, esto aumentaria extremadamente la agitacion y el trafico de serialization de la superposicion, debido a que requeriria que pares colindantes actualicen sus tablas de encaminamiento y copiar recursos a fin de hacer frente a los cambios en la topologia de superposicion.
En su lugar, en algunas realizaciones, la agrupacion implementa un proceso de traspaso de cabecera de agrupacion mejorado, donde la cabecera de agrupacion mantiene el mismo ID de nodo independientemente de que nodo de agrupacion esta siendo realmente el par de cabecera de agrupacion. Por lo tanto, el proceso de traspaso de cabecera de agrupacion propuesto reduce a la nueva cabecera de agrupacion tomar el control de las conexiones a los nodos y ramas colindantes de la vieja cabecera de agrupacion. De esta manera, el traspaso de cabecera de agrupacion propuesto no genera ninguna agitacion innecesaria en la superposicion, debido a que se ve por pares fuera de la agrupacion solo como un par que
5
10
15
20
25
30
cambia su direction IP, y de esta manera no necesitan actualizar sus tablas de encaminamiento o copiar ningun recurso.
A fin de facilitar un proceso de traspaso de cabecera de agrupacion eficiente, los nodos cliente 701, 721, 751 cada uno tiene almacenados dentro de los mismos dos ID de nodo consecutivos, 761, 762; 771, 772; 781, 782, respectivamente. Se apreciara que, en general, los ID de nodos no necesitan ser consecutivos, pero ID de nodo consecutivos permiten implementaciones particularmente simples. Cada cliente puede tener almacenados dentro del mismo ademas dos claves criptograficas 763, 764; 773, 774; 783, 784, respectivamente asociadas con certificados digitales respectivos asociados con los ID de nodo respectivos; alternativamente la seguridad de la superposition se puede basar en una clave compartida, y de esta manera no son necesarias claves adicionales. Dependiendo del modelo de seguridad de superposicion estos dos certificados pueden ser auto firmados, o asignados por el servidor de inscription. En cualquier caso estas dos identidades tienen propositos muy diferentes. Uno de los dos ID de nodo, por ejemplo el ID de nodo mas alto se emplea para identificar el nodo en si mismo, y de esta manera su clave asociada se mantiene estrictamente privada. Este ID de nodo tambien se conoce en la presente memoria como el ID de nodo privado. El otro de los dos ID de nodo se conocera como el ID de nodo publico; se emplea durante la creation de una nueva agrupacion. El ID de nodo publico del nodo que crea una nueva agrupacion se usara como el ID de nodo de la cabecera de agrupacion que identifica la agrupacion dentro de la red de superposicion. Por lo tanto, este ID de nodo tambien se conocera como el ID de nodo de agrupacion. Por lo tanto, esta identidad, que incluye su clave asociada, se comparte entre todos los nodos de la agrupacion. La clave asociada con el ID de nodo publico del nodo que crea una nueva agrupacion tambien se conocera como la clave de agrupacion. Esta clave de agrupacion se almacena en un recurso de valor unico especial 742 con un ID de Tipo de Datos CLAVE DE AGRUPACION recientemente definido, el cual no esta compartido con ningun nodo fuera de la agrupacion. Un segundo recurso de Diccionario 741 con el ID de Tipo de Datos TABLA DE AGRUPACION se emplea para almacenar la information de agrupacion de la siguiente manera: los ID de nodo de los nodos de agrupacion se emplean como mdice de las entradas respectivas, y cada entrada tiene tres valores asociados:
• El primer valor representa el siguiente instante cuando tal nodo llegaria a ser la cabecera de agrupacion, codificado como un tiempo UNIX; esta entrada puede ser de 64 bits de longitud.
5
10
15
20
25
30
• El segundo valor es de 32 bits de longitud y especifica el periodo de cabecera de agrupacion del nodo, medido en segundos. El valor 0xFFFF significa que el nodo podria ser la cabecera de agrupacion permanentemente.
• El tercer valor es de 8 bits de longitud y especifica el numero maximo de conexiones de ramas y clientes que el dispositivo es capaz de soportar. El valor 0xFF significa que el nodo soporta un numero ilimitado de conexiones.
Se apreciaran que la information de agrupacion anterior se puede almacenar de una manera diferente y poner accesible a los miembros de la agrupacion, por ejemplo usando una estructura de datos diferente. La informacion de agrupacion 741 puede por ejemplo estar almacenada en el nodo 701 que ha creado la agrupacion y/o en uno o mas de otros nodos de la agrupacion.
A continuation, y con referencia continuada a la figura 7, se describiran ejemplos de los diferentes procedimientos realizados por los nodos habilitados con agrupacion a fin de: crear una nueva agrupacion, unirse a una agrupacion, y realizar el traspaso de la cabecera de agrupacion.
La figura 8 muestra un diagrama de flujo de un ejemplo de un proceso para crear una nueva agrupacion. Para el proposito de la description de este ejemplo, se supone que un nodo sensor alimentado por baterias 701 con un ID de nodo publico 761 (por ejemplo que tiene un valor 200) y un ID de nodo privado 762 (por ejemplo que tiene un valor 201) ha intentado conectar a una red de superposition basada en Chord como un cliente que usa su ID de nodo privado, por ejemplo como se describio con referencia a la figura 6 anterior, pero fue rechazado por su par de admision de recursos restringidos (por ejemplo el nodo 711 de la figura 7), el cual ya tiene demasiados clientes y/o ramas. Se apreciaran, no obstante, que el proceso descrito a continuacion tambien se puede realizar por otros tipos de dispositivos de procesamiento, distintos de sensores y pares de recursos restringidos. Se apreciara ademas que los valores espedficos de los ID de nodos sirven meramente como ejemplos ilustrativos.
Ya que el nodo sensor 701 no puede conectar como cliente puede conectar como un par pero, como soporta agrupacion, crea una nueva agrupacion, realizando los siguientes pasos que son un ejemplo de los pasos realizados por el paso S604 de la figura 6 anterior:
En el paso S801, el nodo sensor 701 se une a la red de superposicion, por ejemplo mediante un proceso descrito en conexion con la figura 5 anterior, pero a fin de crear una nueva agrupacion, el nodo sensor 701 emplea su ID de nodo publico 761 y el certificado 763 correspondiente para autentificarse con todos sus vecinos (sucesores, predecesores y
5
10
15
20
25
30
ramas). El ID de nodo publico 761 del nodo que creo la agrupacion es por lo tanto el ID de nodo de agrupacion.
En el paso S802, el nodo 701 crea entonces dos nuevos recursos: un recurso de Valor Unico CLAVE DE AGRUPACION 742 que almacena la clave privada asociada con el certificado de ID de nodo de agrupacion 763, y un recurso de Diccionario TABLA DE AGRUPACION 741. Inicialmente la TABLA DE AGRUPACION contiene una entrada unica, indexada con el ID de nodo privado 762 (que tiene el valor 201 en el presente ejemplo), que contiene la hora actual, por ejemplo codificada en tiempo UNIX (por ejemplo 09:00:00 UTC 1 de septiembre de 2012 = 1346482800), el periodo de cabecera de agrupacion pre configurado del nodo (por ejemplo 2 horas = 7.200 segundos), y el numero maximo de clientes soportados (por ejemplo ilimitado = 255). Ambos recursos se almacenan usando el ID de nodo de agrupacion como su ID de Recurso. Se pueden almacenar en cualquier ubicacion adecuada, por ejemplo por un nodo de la superposicion, segun las reglas aplicables de la superposicion.
Lo siguiente es un ejemplo de los valores de estos recursos despues de la creacion de la nueva agrupacion:
(200, CLAVE DE AGRUPACION): 112233...
(200, TABLA DE AGRUPACION):
ID de Nodo | Hora de la Siguiente CH | Periodo de CH | Max. con.
.................+........................................+........................+...............
201 | 09:00 | 2 horas | 255
El recurso TABLA DE AGRUPACION se puede replicar como cualquier otro recurso segun los mecanismos de replication de recursos de la red de superposicion, por ejemplo en al menos tres nodos sucesores como se especifica por Chord. No obstante, la CLAVE DE AGRUPACION se deberia hacer accesible a nodos fuera de la agrupacion de esta manera normalmente no se replica, y cualquier petition de Traer desde nodos fuera de la agrupacion deberia devolver una respuesta Error_Forbidden. Se puede almacenar por uno o mas nodos de la agrupacion.
5
10
15
20
25
30
En el paso S803, el dispositivo de procesamiento 701 opera como una cabecera de agrupacion segun la agrupacion recientemente creada. Dado que la nueva agrupacion solamente tiene un nodo, este nodo es la cabecera de agrupacion; el nodo 701 esta por lo tanto despierto y actua como un par RELOAD completo hasta que otro nodo se une a la agrupacion. Mientras que es la cabecera de la agrupacion, un nodo no emplea su ID de nodo privado 762 (aqu que tiene un valor 201) para comunicar con otros pares de la superposicion, sino el ID de nodo de agrupacion (que tiene un valor 200 en este ejemplo) en su lugar.
La figura 9 muestra un diagrama de flujo de un ejemplo de un proceso para unirse a una nueva agrupacion, permitiendo a un dispositivo de procesamiento unirse a una agrupacion existente como un nuevo nodo.
En el paso inicial S901, un dispositivo de procesamiento 751 solicita conexion a la red de superposicion como un cliente con la cabecera de agrupacion 701 como un par de admision. Para el proposito de la description de este ejemplo, se supone que el dispositivo de procesamiento es un nodo sensor con el ID de nodo publico 781 (por ejemplo que tiene un valor 250) y el ID de nodo privado 782 (por ejemplo que tiene un valor 251), y que el nodo 751 intenta conectar en un cierto punto en el tiempo (por ejemplo a las 10:00) despues de la creation de la agrupacion por el nodo 701.
En el paso S902, despues de que el segundo nodo 751 se ha unido al primer nodo 701 como un cliente (client_node = VERDADERO, send_update = FALSO), por ejemplo como se describio anteriormente, el nodo recientemente unido 751 comprueba si el par de admision es una cabecera de agrupacion o un par habitual (por ejemplo un actuador). Para hacerlo asi, puede intentar traer desde el par de admision los ID de Tipo TABLA DE AGRUPACION asociados a su ID de nodo 701. Si el par de admision no soporta agrupacion, no devolveria ningun valor y el nodo de union puede pasar al paso S903 y comportarse como un cliente RELOAD simple.
Si, como en el presente ejemplo, el par de admision 701 es una cabecera de agrupacion, el par de admision devuelve la information de agrupacion solicitada. Una vez que el nuevo nodo avisa que puede unirse a una agrupacion, pasa al paso S904 y trae la CLAVE DE AGRUPACION y la almacena localmente (ya tiene el certificado asociado debido a que es el que se empleo por la cabecera de agrupacion que admitio el nodo en primer lugar).
En el paso S905, el nodo 751 se une la agrupacion anadiendo su ID de nodo privado 782 a la TABLA DE AGRUPACION 741 usando una operation "Almacenar. Senalar que los ID de
5
10
15
20
25
30
nodos publicos se emplean solamente para crear una nueva agrupacion, y de esta manera el ID de nodo publico 781 del nodo que se une a una agrupacion existente no se usa. En su lugar los nodos de agrupacion que se unen a una agrupacion existente solamente emplean en su propio ID de nodo privado 782, a menos que llegue a ser la cabecera de la agrupacion cuando usan el ID de nodo de agrupacion 761. El nodo 751 ademas calcula la hora cuando tiene que llegar a ser la cabecera de agrupacion. Para este fin, el nodo 751 puede buscar la hora mas nueva en la tabla de agrupacion (en el ejemplo anterior las 9:00), y entonces a anadir el periodo de cabecera de agrupacion asociado (por ejemplo 9:00 + 2 horas = 11:00 cuando el periodo de cabecera de agrupacion es 2 h).
La tabla de agrupacion resultante 741 puede comprender de esta manera la siguiente information despues de que el nodo 751 se ha unido a la agrupacion:
(200, TABLA DE AGRUPACION):
ID de Nodo | Hora de la Siguiente CH | Periodo de CH | Max. con.
- 201
- —+------ | 09:00 —+— 1 2 horas —+........... | 255
- 251
- | 11:00 1 1 hora 1 16
Si la hora de cabecera de agrupacion calculada ya esta en el pasado, el nodo 701 almacena la hora actual en la tabla de agrupacion e inicia un proceso de traspaso de cabecera de agrupacion inmediatamente, por ejemplo como se describe con referencia la figura 11 mas adelante. De otro modo se puede comportar como un cliente normal, despertandose y reposando segun desee hasta que llega la hora de la hora de cabecera de agrupacion calculada.
La figura 10 muestra un diagrama de flujo de mensaje que ilustra los mensajes intercambiados entre la cabecera de agrupacion 701 y el nuevo nodo de agrupacion 751 que se une a la agrupacion en el ejemplo anterior. Inicialmente, el nuevo nodo envia una petition de union 1001 a la cabecera de agrupacion la cual responde con una respuesta de union 1002. Este proceso es seguido por un proceso de Establecimiento de Conectividad Interactivo (ICE) (1003). Posteriormente, el nuevo nodo 751 trae la informacion de agrupacion mediante una peticion de traer 1004 seguida por una respuesta de traer 1005 desde la cabecera de agrupacion. El nuevo nodo entonces actualiza la tabla de agrupacion y hace a la cabecera de agrupacion almacenar la informacion actualizada por medio de una
33
5
10
15
20
25
30
peticion de almacenamiento 1006. Despues de la recepcion de del reconocimiento correspondiente (1007), el cliente puede entrar en un modo de reposo hasta que es la hora de iniciar un traspaso de cabecera de agrupacion 1008.
Un proceso de union de agrupacion correspondiente se repite por todos los nuevos nodos habilitados con agrupacion, a menos que se alcance el limite de conexion mas pequeno de todos los nodos de agrupacion (por ejemplo 16 en el ejemplo anterior). Por ejemplo un poco mas tarde (por ejemplo a las 10:30) un tercer nodo 721 (por ejemplo que tiene un ID de nodo privado de valor 221) se une a la agrupacion provocando de esta manera la estructura mostrada en la figura 7. De nuevo, el nuevo nodo 721 trae la CLAVE DE AGRUPACION y la TABLA DE AGRUPACION para calcular su hora de cabecera de agrupacion (por ejemplo 11:00 + 1 hora = 12:00), provocando la tabla de agrupacion actualizada:
(200, TABLA DE AGRUPACION):
ID de Nodo | Hora de la Siguiente CH | Periodo de CH | Max. con.
- ...........+----- 201 |
- 09:00 -------+—. 1 -----------------+-2 horas | 255
- 221 |
- 12:00 1 2 horas | 32
- 251 |
- 11:00 1 1 hora | 16
Vale la pena senalar que a cualquier hora dada es posible saber que nodo es la cabecera de agrupacion actual, distinto de buscar el ID de nodo de agrupacion, debido a que el nodo de cabecera de agrupacion deberia tener la hora mas antigua en TABLA DE AGRUPACION y ser la unica en el pasado.
La figura 11 muestra el flujo de mensaje entre la cabecera de agrupacion actual (vieja) 701 y la siguiente cabecera de agrupacion (nueva) 751. Cuando se acaba el periodo de cabecera de agrupacion de la cabecera de agrupacion actual 701, otro nodo de agrupacion despierta y toma de control del papel de cabecera de agrupacion. Para hacerlo asi, la nueva cabecera de agrupacion inicia un proceso de traspaso de cabecera de agrupacion, uniendose a la red de superposicion como un par, y sustituyendo la vieja cabecera de agrupacion. Esto implica obtener la tabla de encaminamiento y todos los recursos de la cabecera de agrupacion vieja, asi como conectar a todos los vecinos de la vieja cabecera de agrupacion en la red de superposicion (predecesores, sucesores y ramas en Chord). No obstante, cuando la nueva
5
10
15
20
25
30
cabecera de agrupacion emplea el mismo ID de nodo que la vieja cabecera de agrupacion, esta sustitucion de par es casi transparente, en el sentido de que no necesita generar ningun cambio en la topo^a de superposicion. El traspaso de cabecera de agrupacion no requiere ningun nuevo mensaje pero puede reutilizar mensajes RELOAD estandar. En particular, una realization del traspaso de cabecera de agrupacion es similar a la operation de Union de RELOAD, aunque a fin de diferenciarla facilmente de un nuevo par que intenta unirse a la superposicion, la nueva cabecera de agrupacion usa el ID de nodo de agrupacion en lugar de su ID de nodo privado.
A continuation, se ilustrara un ejemplo del proceso de traspaso de cabecera de agrupacion con referencia al ejemplo previo descrito con referencia la figura 7 hasta 11, es decir suponiendo que el periodo de cabecera de agrupacion del nodo de cabecera de agrupacion inicial 701 ha llegado (es decir a las 11:00 en el presente ejemplo), y el segundo nodo 751 se despierta para comenzar el proceso de traspaso de cabecera de agrupacion:
Para este fin, el nodo 751, el cual va a llegar a ser la siguiente cabecera de agrupacion, primero se une a la cabecera de agrupacion actual, reutilizando una conexion de cliente previa o creando una nueva a traves de un nodo de initialization adecuado (por ejemplo un nodo colindante con una direction IP publica accesible). El nuevo nodo de cabecera de agrupacion 751 envia de esta manera una petition de union 1101 a la vieja cabecera de agrupacion 701. El mensaje de peticion de union 1101 incluye las marcas client_node = FALSO y send_update = VERDADERO, y usa el ID de nodo de agrupacion (en este ejemplo que tiene el valor 200) como su identidad de remitente, en lugar del ID de nodo privado 751 de la nueva cabecera de agrupacion que se uso previamente para conectar a la cabecera de agrupacion como un cliente. La vieja cabecera de agrupacion responde con un mensaje de respuesta de peticion correspondiente 1102 seguido por un proceso ICE en 1103.
La marca de union send_update = VERDADERO desencadena a la vieja cabecera de agrupacion para enviar su tabla de encaminamiento entera en un mensaje de actualization 1104 inmediatamente despues de que se acaba el proceso de union.
Hasta que se termina el proceso de traspaso de cabecera de agrupacion, la nueva cabecera de agrupacion puede emplear la conexion establecida de esta manera con la vieja cabecera de agrupacion para enviar mensajes RELOAD a la superposicion.
Entonces, el nuevo nodo de cabecera de agrupacion 701 comienza la union a cada uno de los pares de rama y vecinos en la tabla de encaminamiento de la cabecera de agrupacion actual, a fin de sustituirlos. Para este fin, el nuevo nodo de cabecera de agrupacion 701
5
10
15
20
25
30
intercambia un mensaje de peticion de union 1105 y una respuesta de peticion 1106, seguida por un ICE 1107 con cada uno de los vecinos. Senalar que la nueva cabecera de agrupacion tambien esta empleando el mismo ID de nodo de agrupacion (incluyendo la clave de agrupacion correspondiente) para conectar a los pares. Por lo tanto los pares no consideran que estas conexiones vengan desde un nuevo nodo, sino desde la vieja cabecera de agrupacion.
En algunas realizaciones, dos nodos pueden tener multiples conexiones simultaneamente, soportando de esta manera movilidad de par (es decir un par que cambia la direction IP) mientras, en otras realizaciones, puede tener solamente una. En cualquier caso, el proceso de union de la nueva cabecera de agrupacion o bien sustituye la conexion previa, o bien se mantendran las dos conexiones hasta que la vieja cabecera de agrupacion se cierre por si sola.
Una vez que la nueva cabecera de agrupacion ha conectado a todos los pares en la tabla encaminamiento, envia un mensaje de Unir 1108 a la vieja cabecera de agrupacion (usando de nuevo el ID de nodo de agrupacion como su propio ID de nodo) para iniciar la copia de recursos en el nodo de union. Senalar que en Chord, dado que el nuevo nodo esta usando el ID de nodo de agrupacion, el cual por definition es el ID de nodo mas bajo de la agrupacion, todos los recursos de la vieja cabecera de agrupacion se deberian copiar en la nueva cabecera de agrupacion.
Cuando se recibe la operation Unir, la vieja cabecera de agrupacion responde con un mensaje de respuesta de unir 1109 y cierra todas las conexiones con sus vecinos previos. La vieja cabecera de agrupacion ademas comienza copiando todos sus recursos en la nueva cabecera de agrupacion por medio de una o mas operaciones de Almacenar 1110, incluyendo la TABLA DE AGRUPACION. No obstante, antes de enviar la tabla, la vieja cabecera de agrupacion actualiza su propia entrada en la tabla, calculando su siguiente hora de cabecera de agrupacion como se describio previamente. En el presente ejemplo, la tabla de agrupacion actualizada de esta manera puede comprender de esta manera la siguiente information:
(200, TABLA DE AGRUPACION):
ID de Nodo | Hora de la Siguiente CH | Periodo de CH | Max. con. .................+.......................................+.........................+...............
5
10
15
20
25
30
- 201 |
- 14:00 | 2 horas 255
- 221 |
- 12:00 | 2 horas 32
- 251 |
- 11:00 | 1 hora 1 16
En este punto la nueva cabecera de agrupacion tiene sustituida completamente la vieja cabecera de agrupacion y el proceso de traspaso de cabecera de agrupacion esta completado. De esta manera la vieja cabecera de agrupacion puede enviar una Peticion de Abandonar 1111 a la nueva cabecera de agrupacion y, tras la recepcion de una respuesta de Abandonar correspondiente 1112, va a reposar hasta que llegue la hora de cabecera de agrupacion calculada. Mientras tanto puede comportarse como un cliente RELOAD como cualquier otro nodo de la agrupacion.
En lo anterior, se han descrito realizaciones de un metodo, un sistema y aparato para una conexion eficiente de un dispositivo de comunicaciones inalambrico a una red de comunicaciones inalambricas.
Las realizaciones del metodo, un sistema y aparato descritas en la presente memoria permiten a nodos alimentados por baterias (por ejemplo sensores) o de otro modo de recursos restringidos (por ejemplo actuadores) conectar a una red de superposicion P2P de una forma eficiente en recursos y eficiente energeticamente, sin la necesidad de intermediarios o pasarelas, permitiendo clientes en reposo y agrupando dispositivos alimentados por baterias juntos en agrupaciones para compartir la carga de ser un par de la superposicion.
Algunas realizaciones del metodo, sistema y aparato descritas en la presente memoria ademas mejoran la especificacion de cliente actual para RELOAD: ellas permiten una limitacion explicita del numero de clientes y ramas por par en la superposicion. Ellas permiten a un nodo cliente no recibir actualizaciones continuas innecesarias desde la superposicion. Permiten a un par saber si la peticion de union entrante viene desde un cliente o par. Realizaciones del mecanismo descrito en la presente memoria introducen solamente mmimos cambios a RELOAD a fin de permitir toda la funcionalidad de cliente restringida y de agrupacion propuesta.
Aunque algunas realizaciones se han descrito y mostrado en detalle, los aspectos descritos en la presente memoria no estan restringidos a ellas, sino que tambien se pueden incorporar de otras formas dentro del alcance del objeto de la materia definida en las siguientes reivindicaciones. En particular, se tiene que entender que se pueden utilizar otras
realizaciones y se pueden hacer modificaciones estructurales y funcionales. En particular,
37
5
10
15
20
25
30
han sido descritas principalmente realizaciones de los aspectos descritos en la presente memoria con referencia a las redes que usan los protocolos Chord y RELOAD. Se entendera, no obstante, que tambien se pueden aplicar realizaciones de los metodos, dispositivos sistemas a otros tipos de redes de superposicion P2P, tales como redes de superposicion que usan una tabla de calculo de claves distribuida. El mecanismo es casi transparente a otros pares en la superposicion, y no es necesaria ninguna modification a sus procedimientos normales de pares legados.
A continuation se describiran algunas de las realizaciones de la invention.
Hay proporcionado un metodo para un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par. El metodo comprende los pasos del dispositivo de procesamiento 201
- enviar una petition de correction 320 a un nodo par 301, la petition de conexion 320 que comprende una indication 421 de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente 302.
El dispositivo de procesamiento 201 puede ademas
- enviar al nodo par 301, un mensaje, por ejemplo comprendido en la peticion de conexion 320, el mensaje que es indicativo 422 de una peticion 320; 422 de no recibir ningun mensaje de actualization recurrente.
Hay ademas proporcionado un metodo para un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102.104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par.
5
10
15
20
25
30
- cuando se recibe una peticion de conexion 320 que comprende una indication 421 de que otro dispositivo de procesamiento quiere unirse como un nodo cliente 302.
- determinar, si el dispositivo de procesamiento puede admitir S504 conexiones adicionales de nodos cliente, y - en respuesta a la peticion de conexion, devolver un mensaje de rechazo 330, S505 a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
El metodo ademas puede comprender - recibir, desde dicho otro dispositivo de procesamiento 302 desde el cual fue recibida S501 una peticion de conexion 320, un mensaje 320, por ejemplo comprendido en la peticion de conexion, el mensaje que es indicativo 422 de una peticion de no recibir ningun mensaje de actualization recurrente; y - en respuesta al mensaje recibido 320, omitir S509 enviar mensajes de actualizacion recurrentes a dicho otro dispositivo de procesamiento desde el cual se han recibido se ha recibido el mensaje.
Segun una realization, - si no se recibe un mensaje que es indicativo 422 de una peticion de no recibir ningun mensaje de actualizacion recurrente, el dispositivo de procesamiento esta - enviando mensajes de actualizacion recurrentes S508 a dicho otro dispositivo de procesamiento.
Algo o todo del dispositivo o dispositivos de procesamiento puede estar alimentado por baterias.
La red de comunicaciones entre pares puede usar el Protocolo de Localization y Descubrimiento de Recursos, RELOAD. La peticion de conexion 320 puede ser una peticion de union y la respuesta 330 a la peticion de union puede ser una respuesta de union.
El dispositivo de procesamiento 201, se puede adaptar para enviar una peticion de conexion 320 que comprende una indicacion 421 de que el dispositivo de procesamiento quiere unirse como un nodo cliente 302, no tiene responsabilidades de encaminamiento y almacenamiento con respecto a la red de superposition entre pares.
El mensaje de rechazo puede indicar que un procedimiento de union no se puede realizar debido a que el dispositivo de procesamiento que es un nodo par no tiene suficientes recursos, o la red de superposicion entre pares no permite clientes adicionales.
En una realizacion el dispositivo de procesamiento esta configurado para formar uno de los nodos 701 de una agrupacion y es operable para realizar un papel de cabecera de
5
10
15
20
25
30
agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento que actua por ello como un par, mientras que otros nodos de agrupacion, se unen a la cabecera de agrupacion como clientes, y en donde el dispositivo de procesamiento, segun el papel de cabecera de agrupacion, esta configurado para transferir el papel de cabecera de agrupacion a otro nodo 721, 751 de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa desde un nodo a otro entre los nodos en la agrupacion.
En una realizacion adicional, los nodos cliente no tienen responsabilidades de encaminamiento o almacenamiento. El nodo de agrupacion que tiene el papel de cabecera de agrupacion que actua como un par permite a los otros nodos de agrupacion, los cuales estan unidos a la cabecera de agrupacion como clientes, reposar, es decir, estar en un estado de conservation de energia.
Cada uno de los nodos de agrupacion puede estar asociado con una identidad de nodo privada 261; 761; 771; 781 y una identidad de nodo publica 262; 762; 772; 782; la identidad de nodo publica que se emplea durante la creation de una nueva agrupacion, en la que la agrupacion solamente tiene un nodo, este nodo que es la cabecera de la agrupacion 803; dicha identidad de nodo publica 761 de la cabecera de agrupacion que identifica posteriormente la agrupacion dentro de la red de superposicion, es decir, dicha identidad de nodo publica que llega a ser la identidad de nodo de agrupacion.
Cuando un nodo se une S801 a la red de superposicion para creacion de una nueva agrupacion, hay creada una tabla de agrupacion S802 que contiene una entrada, indexada con la identidad de nodo privada 762; 201 del nodo de union, una hora de siguiente cabecera de agrupacion; y un periodo de cabecera de agrupacion pre configurado para dicho nodo.
Cuando un nodo posterior se une 751 a la agrupacion S905, la tabla de agrupacion se actualiza 1005, 1006 con una entrada adicional, indexada con la identidad de nodo privada 722, 221 del nodo posterior, una hora de siguiente cabecera de agrupacion para el nodo posterior y un periodo de cabecera de agrupacion pre configurado para dicho nodo posterior, en donde el nodo posterior puede actuar como un cliente y entrar en un modo de reposo hasta que es la hora de iniciar un traspaso de cabecera de agrupacion 1008.
Cuando se acaba el periodo de cabecera de agrupacion de la cabecera de agrupacion actual 701, se inicia un proceso de traspaso de cabecera de agrupacion 1008, en el cual un siguiente nodo de agrupacion segun una entrada adicional en la tabla de agrupacion esta
5
10
15
20
25
30
uniendose a la red de superposicion como una cabecera de agrupacion de par, y esta sustituyendo la cabecera de agrupacion previa de la tabla de agrupacion y esta tomando control del papel de cabecera de agrupacion.
Este proceso de traspaso implica al siguiente nodo de agrupacion obtener una tabla de encaminamiento a partir de la cabecera de agrupacion, asi como conectar a todos los nodos vecinos de la cabecera de agrupacion previa en la red de superposicion, en donde la siguiente cabecera de agrupacion emplea la misma identidad de nodo que la vieja cabecera de agrupacion.
Como se expreso anteriormente, la red de comunicaciones entre pares puede estar usando el Protocolo de Localization y Descubrimiento de Recursos, RELOAD, en donde se usan mensajes de petition de union 320 y de respuesta de union 330.
En una realization, el siguiente nodo de cabecera de agrupacion 751 envia una peticion de union 1101 al nodo de cabecera de agrupacion previo 701 para iniciar un traspaso de agrupacion, en donde el mensaje de peticion de union 1101 comprende una indication 421 de que el siguiente nodo de agrupacion es un cliente y una indicacion 422 de una peticion para recibir cualquier mensaje de actualization recurrente; y la siguiente cabecera de agrupacion que usa la identidad de nodo de agrupacion 200 como su identidad de remitente, el lugar de la identidad de nodo privada 751 de la siguiente cabecera de agrupacion.
Hay ademas proporcionado segun una realizacion de la invention, un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par; el dispositivo de procesamiento que comprende un circuito de procesamiento 216; circuiteria de interfaz de red 214 conectada al circuito de procesamiento y una memoria 217, dicha memoria que contiene instrucciones ejecutables por dicho procesador, por el cual el dispositivo de procesamiento esta siendo operable para
- enviar una peticion de conexion 320 a un nodo par 301, la peticion de conexion 320 que comprende una indicacion 421 de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente 302.
5
10
15
20
25
30
- enviar al nodo par 301, un mensaje, por ejemplo comprendido en la peticion de conexion 320, el mensaje que es indicativo 422 de una peticion 320; 422 de no recibir ningun mensaje de actualization recurrente.
Hay ademas descrito y mostrado un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposition entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par; el dispositivo de procesamiento que comprende un circuito de procesamiento 216; circuiteria de interfaz de red 214 conectada al circuito de procesamiento y una memoria 217, dicha memoria que contiene instrucciones ejecutables por dicho procesador, por el cual el dispositivo de procesamiento que es operable para,
cuando se es un nodo par 301,
- cuando se recibe una peticion de conexion 320 que comprende una indication 421 de que otro dispositivo de procesamiento quiere unirse como un nodo cliente 302.
- determinar, si el dispositivo de procesamiento puede admitir S504 conexiones adicionales de nodos cliente; y
- en respuesta a la peticion de conexion, devolver un mensaje de rechazo 330, S505 a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente;
El dispositivo de procesamiento puede ser operable ademas para
- recibir, desde dicho otro dispositivo de procesamiento 302 desde el cual fue recibida S501 una peticion de conexion 320, un mensaje 320, por ejemplo comprendido en la peticion de conexion, el mensaje que es indicativo 422 de una peticion de no recibir ningun mensaje de actualizacion recurrente; y
- en respuesta al mensaje recibido 320, omitir S509 enviar mensajes de actualizacion recurrente a dicho otro dispositivo de procesamiento desde el cual ha se ha recibido el mensaje.
Por ejemplo, el mensaje de rechazo indica que no se puede realizar un procedimiento de union debido a que el dispositivo de procesamiento que es un nodo par no tiene suficientes recursos, o la red de superposicion entre pares no permite clientes adicionales.
42
5
10
15
20
25
30
Un dispositivo de procesamiento en un sistema de una pluralidad dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; se describe ademas, en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par. El dispositivo de procesamiento que comprende un circuito de procesamiento 216; circuiteria de interfaz de red 214 conectada al circuito de procesamiento y una memoria 217, dicha memoria que contiene instrucciones ejecutables por dicho procesador,
el dispositivo de procesamiento que es operable para
formar uno de los nodos 701 de una agrupacion y que es operable para realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento que actua por ello como un par, mientras que otros nodos de la agrupacion, se unen a la cabecera de agrupacion como clientes, y en donde el dispositivo de procesamiento, segun el papel de cabecera de agrupacion, esta configurado para transferir el papel de cabecera de agrupacion a otro nodo 721, 751 de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa desde un nodo a otro entre los nodos en la agrupacion.
Por ejemplo, los nodos cliente no tienen responsabilidades de encaminamiento o almacenamiento, y en donde el nodo de agrupacion que tiene el papel de cabecera de agrupacion que actua como un par, permite a los otros nodos de agrupacion, los cuales estan unidos a la cabecera de agrupacion como clientes, reposar, es decir estar en un estado de conservation de energia.
Cada uno de los nodos de agrupacion puede estar asociado con una identidad de nodo privada 261; 761; 771; 781 y una identidad de nodo publica 262;762; 772; 782; la identidad de nodo publica que se emplea durante la creation de una nueva agrupacion, en la que la agrupacion solamente tiene un nodo, este nodo que es la cabecera de agrupacion 803,; dicha identidad de nodo publica 761 de la cabecera de agrupacion que identifica posteriormente la agrupacion dentro de la red de superposicion, es decir, dicha identidad de nodo publica que esta llegando a ser la identidad de nodo de agrupacion.
5
10
15
20
25
30
Como se muestra la figura 12, se proporciona un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par; por lo cual el dispositivo de procesamiento que comprende: -un modulo de envio SM para enviar una peticion de conexion 320 a un nodo par 301, la peticion de conexion 320 que comprende una indicacion 421 de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente 302.
La figura 13 muestra un dispositivo de procesamiento que comprende un modulo par; un modulo de peticion de conexion; un modulo de determinacion y un modulo de rechazo.
Mas espedficamente hay descrito un dispositivo de procesamiento en un sistema de una pluralidad de dispositivo de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par, que comprende: -un modulo de par PM para operar como un nodo par 301, -un modulo de recepcion de peticion de conexion CRM para recibir una peticion de conexion 320 que comprende una indicacion 421 de que otro dispositivo de procesamiento quiere unirse como un nodo cliente 302; -un modulo de determinacion DM para determinar, si el dispositivo de procesamiento puede admitir S504 conexiones adicionales de nodos cliente; y -un modulo de rechazo RM que es sensible a la peticion de conexion, para devolver un mensaje de rechazo 330, S505 ha dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
La figura 14 muestra un dispositivo de procesamiento que comprende un modulo de formacion de agrupacion y un modulo de transferencia de cabecera de agrupacion.
Mas espedficamente hay mostrado un dispositivo de procesamiento en un sistema de una pluralidad de dispositivos de procesamiento 201 conectados de manera comunicativa a traves de una red de superposicion entre pares 101, 102, 104; en donde cualquier dispositivo de procesamiento 201 esta configurado para conectar a la red de superposicion entre pares como un nodo par 301 o como un nodo cliente 302, es decir, que es un nodo par
5
10
15
20
25
30
o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par; el dispositivo de procesamiento que comprende:
- un modulo de formation de agrupacion CFM para formar uno de los nodos 701 de un agrupacion y que es operable para realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, permitiendo al dispositivo de procesamiento actuar como un par, mientras que otros nodos de agrupacion, estan unidos a la cabecera de agrupacion como clientes, y
- un modulo de transferencia de cabecera de agrupacion CHTM para efectuar que el dispositivo de procesamiento, segun un papel de cabecera de agrupacion, esta transfiriendo el papel de cabecera de agrupacion a otro nodo 721, 751 de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa de un nodo a otro entre los nodos en la agrupacion.
Las realizaciones de la invention se pueden implementar por medio de un producto de programa de ordenador que comprende un codigo de programa de ordenador 219 segun cualquiera de los pasos de los metodos explicados anteriormente.
Los metodos explicados anteriormente se pueden constituir adicionalmente mediante un Programa para un ordenador o procesador que comprende un codigo de programa de ordenador 219.
En las reivindicaciones del dispositivo que enumeran diversos medios, se pueden incorporar diversos de estos medios mediante uno y el mismo elemento de hardware. El mero hecho de que ciertas medidas se reciten en reivindicaciones dependientes mutuamente diferentes o describan en diferentes realizaciones no indica que una combination de estas medidas no se pueda usar como ventaja.
Se deberia enfatizar que el termino "comprende/que comprende” cuando se usa en esta especificacion se toma para especificar la presencia de rasgos, enteros, pasos o componentes expuestos pero no excluye la presencia o adicion de uno o mas de otros rasgos, enteros, pasos, componentes o grupos de los mismos.
Claims (35)
- 51015202530REIVINDICACIONES1. Un metodo para mecanismos de conexion de redes entre pares energeticamente eficientes conectados de manera comunicativa a traves de una red de superposicion entre pares (101, 102, 104); en donde al menos un dispositivo de procesamiento (201) esta configurado para conectarse a la red de superposicion entre pares energeticamente eficientes como un nodo par (301) o como un nodo cliente (302), siendo un nodo cliente conectable a la red de superposicion entre pares energeticamente eficientes a traves de un nodo par (301);el metodo que comprende- transmision de una peticion de conexion (320) desde el dispositivo de procesamiento (201) a un nodo par (301), comprendiendo la peticion de conexion (320) una indication (421) de que dicho dispositivo de procesamiento (201) quiere conectarse como un nodo cliente (302).
- 2. Metodo segun la reivindicacion 1, donde el metodo comprende ademas- transmision desde el dispositivo de procesamiento (201) actuando como nodo par (301), de un mensaje, comprendido en la peticion de conexion (320), indicativo (422) de una peticion (320; 422) de evitar recibir un mensaje de actualization recurrente.
- 3. Metodo segun la reivindicacion 2, donde el metodo comprende ademas- reception en el dispositivo de procesamiento (201) actuando como nodo par (301), de una peticion de conexion (320), comprendiendo una indicacion (421) de que otro dispositivo de procesamiento (201) quiere unirse como un nodo cliente (302);- determination, si el dispositivo de procesamiento (201) actuando como nodo par (301), puede admitir (S504) conexiones adicionales de nodos cliente (302); y- en respuesta a la peticion de conexion (320), devolver un mensaje de rechazo (330, S505) a dicho otro dispositivo de procesamiento (201), si el dispositivo de procesamiento (201) actuando como nodo par (301) que recibe la peticion de conexion (320) no puede admitir conexiones adicionales de nodos cliente (302).
- 4. Metodo segun la reivindicacion 3, que comprende ademas- recibir, desde dicho dispositivo de procesamiento (302) desde el cual fue recibida51015202530(S501) una peticion de conexion (320), el mensaje, comprendido en la peticion de conexion (320), indicativo (422) de una peticion de evitar recibir mensajes de actualization recurrente; y- en respuesta al mensaje recibido (320), omitir (S509) enviar mensajes de actualizacion recurrentes a dicho otro dispositivo de procesamiento (201) desde el cual se ha enviado el mensaje.
- 5. Metodo segun la reivindicacion 4, que ademas comprende- si no se ha recibido el mensaje indicativo (422) de una peticion de evitar recibir mensajes de actualizacion recurrente,- enviar mensajes de actualizacion recurrentes (S508) a dicho otro dispositivo de procesamiento
- 6. Metodo segun cualquier reivindicacion precedente, en donde la red de comunicaciones entre pares esta usando el Protocolo de Localization y Descubrimiento de Recursos, RELOAD, y en donde la peticion de conexion (320) es una peticion de union y la respuesta (330) a la peticion de union es una respuesta de union.
- 7. Metodo segun cualquier reivindicacion precedente en donde se transmite una peticion de conexion (320) desde el dispositivo de procesamiento (201), que comprende una indication (421) de que el dispositivo de procesamiento solicita unirse como un nodo cliente (302) y no tiene responsabilidades de encaminamiento o almacenamiento con respecto a la red de superposicion entre pares.
- 8. Metodo segun la reivindicacion 3 en donde el mensaje de rechazo indica que un procedimiento de union no se puede realizar debido a que el dispositivo de procesamiento (201), que es un nodo par (301), no tiene suficientes recursos, o la red de superposition entre pares no permite clientes adicionales.
- 9. Metodo segun la reivindicacion 1, donde el metodo que comprende- formation uno de los nodos (701) de una agrupacion y realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento (201) actuando como nodo par (301), mientras que otros nodos de agrupacion, estan unidos a la cabecera de agrupacion como nodos clientes (302), y en donde el dispositivo de procesamiento (201), segun51015202530el papel de cabecera de agrupacion,- transferir el papel de cabecera de agrupacion a otro nodo (721, 751) de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa desde un nodo a otro nodo entre los nodos en la agrupacion.
- 10. Metodo segun la reivindicacion 9, en donde los nodos cliente (302) no tienen responsabilidades de encaminamiento o almacenamiento, y en donde el nodo de agrupacion que tiene el papel de cabecera de agrupacion que actua como un nodo par (301) permite a los otros nodos de agrupacion, que estan unidos a la cabecera de agrupacion como clientes, reposar, estar en un estado de conservation de energla.
- 11. Metodo segun la reivindicacion 9 o 10, en donde cada uno de los nodos cliente (302) esta asociado con una identidad de nodo privada (261; 761; 771; 781) y una identidad de nodo publica (262; 762; 772; 782); la identidad de nodo publica que se emplea durante la creacion de una nueva agrupacion, en la que la agrupacion solamente tiene un nodo, este nodo que es la cabecera de agrupacion (803); dicha identidad de nodo publica (761) de la cabecera de agrupacion que identifica posteriormente la agrupacion dentro de la red de superposition, es decir, dicha identidad de nodo publica que llega a ser la identidad de nodo de agrupacion.
- 12. Metodo segun cualquiera de las reivindicaciones 9 a 11, en donde cuando un nodo se une (S801) a la red de superposicion para creation de una nueva agrupacion, hay creada una tabla de agrupacion (S802) que contiene una entrada, indexada con la identidad de nodo privada (762; 201) del nodo de union, una hora de siguiente cabecera de agrupacion, punto en el tiempo cuando cada uno de los nodos de la agrupacion se programa para tomar el control del papel de cabecera de agrupacion; y un periodo de cabecera de agrupacion pre configurado para dicho nodo.
- 13. Metodo segun la reivindicacion 12, en donde cuando un nodo posterior se une (751) a la agrupacion (S905), la tabla de agrupacion se actualiza (1005, 1006) con una entrada adicional, indexada con la identidad de nodo privada (722, 221) del nodo posterior, una hora de siguiente cabecera de agrupacion para el nodo posterior y un periodo de cabecera de agrupacion pre configurado para dicho nodo posterior, en donde el nodo posterior puede actuar como un cliente y entrar en un modo de reposo hasta que es hora de iniciar un traspaso de cabecera de agrupacion (1008).
- 14. Metodo segun la reivindicacion 13, en donde cuando se acaba el periodo de cabecera de agrupacion de la cabecera de agrupacion actual (701), se inicia un proceso de51015202530traspaso de cabecera de agrupacion (1008), en el cual un siguiente nodo de agrupacion segun una entrada adicional en la tabla de agrupacion esta uniendose a la red de superposicion como una cabecera de agrupacion par, y esta sustituyendo la cabecera de agrupacion previa de la tabla de agrupacion y esta tomando el control del papel de cabecera de agrupacion;el proceso de traspaso que implica al siguiente nodo de agrupacion obtener una tabla de encaminamiento a partir de la vieja cabecera de agrupacion, asl como conectar a todos los nodos vecinos de la cabecera de agrupacion previa en la red de superposicion, en donde la siguiente cabecera de agrupacion emplea la misma identidad de nodo que la vieja cabecera de agrupacion.
- 15. Metodo segun cualquier reivindicacion precedente 9 a 14, en donde la red de comunicaciones entre pares esta usando el Protocolo de Localization y Descubrimiento de Recursos, RELOAD, y en donde se usa una petition de union (320) y una respuesta de union (330).
- 16. Metodo segun las reivindicaciones 14 y 15, en donde el siguiente nodo de cabecera de agrupacion (751) envla una peticion de union (1101) al nodo de cabecera de agrupacion previo (701) para iniciar un traspaso de agrupacion, en donde el mensaje de peticion de union (1101) comprende una indication (421) de que el siguiente nodo de agrupacion es un cliente y una indicacion (422) de una peticion para recibir cualquier mensaje de actualization recurrente; la siguiente cabecera de agrupacion que usa la identidad de nodo de agrupacion (200) como su identidad de remitente, el lugar de la identidad de nodo privada (751) de la siguiente cabecera de agrupacion.
- 17. Un dispositivo de mecanismos de conexion de redes entre pares energeticamente eficientes conectados de manera comunicativa a traves de una red de superposicion entre pares (101, 102, 104); en donde al menos un dispositivo de procesamiento (201) esta configurado para conectarse a la red de superposicion entre pares energeticamente eficientes como un nodo par (301) o como un nodo cliente (302), siendo un nodo cliente conectable a la red de superposicion entre pares energeticamente eficientes a traves de un nodo par (301);el dispositivo de procesamiento (201) que comprende un circuito de procesamiento (216); circuiterla de interfaz de red (214) conectada al circuito de procesamiento y una memoria (217), dicha memoria que contiene instrucciones ejecutables por dicho procesador, por el cual el dispositivo de procesamiento esta siendo operable para51015202530- enviar una peticion de conexion (320) a un nodo par (301), la peticion de conexion (320) que comprende una indication (421) de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente (302).
- 18. Dispositivo de procesamiento segun la reivindicacion 17, el dispositivo de procesamiento (201) que ademas es operable para- enviar al nodo par (301), un mensaje, por ejemplo comprendido en la peticion de conexion (320), el mensaje que es indicativo (422) de una peticion (320; 422) de no recibir ningun mensaje de actualization recurrente.
- 19. Dispositivo segun la reivindicacion 17; dondeel dispositivo de procesamiento cuando es un nodo par (301),- recibe una peticion de conexion (320) que comprende una indicacion (421) de que otro dispositivo de procesamiento quiere unirse como un nodo cliente (302);- determinar, si el dispositivo de procesamiento puede admitir (S504) conexiones adicionales de nodos cliente; y- en respuesta a la peticion de conexion, devolver un mensaje de rechazo (330, S505) a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
- 20. Dispositivo de procesamiento segun la reivindicacion 19, que es ademas operable para- recibir, desde dicho otro dispositivo de procesamiento (302) desde el cual fue recibida (S501) una peticion de conexion (320), un mensaje (320), por ejemplo comprendido en la peticion de conexion, el mensaje que es indicativo (422) de una peticion de no recibir ningun mensaje de actualizacion recurrente; y- en respuesta al mensaje recibido (320), omitir (S509) enviar mensajes de actualizacion recurrentes a dicho otro dispositivo de procesamiento desde el cual se ha recibido el mensaje.
- 21. Dispositivo de procesamiento segun cualquier reivindicacion precedente 17 a 20, en donde la pluralidad de dispositivos de procesamiento de la red de comunicaciones entre pares esta usando el Protocolo de Localization y Descubrimiento de Recursos, RELOAD, y en donde la peticion de conexion (320) es una peticion de union y la respuesta (330) a la5051015202530peticion de union es una respuesta de union.
- 22. Dispositivo de procesamiento segun cualquier reivindicacion precedente 17 a 21 en donde el dispositivo de procesamiento (201), que envia una peticion de conexion (320) que comprende una indication (421) de que el dispositivo de procesamiento que quiere unirse como un nodo cliente (302), no tiene responsabilidades de encaminamiento o almacenamiento con respecto a la red de superposition entre pares.
- 23. Dispositivo de procesamiento segun la reivindicacion 19, en donde el mensaje de rechazo indica que un procedimiento de union no se puede realizar debido a que el dispositivo de procesamiento que es un nodo par no tiene suficientes recursos, o la red de superposicion entre pares no permite clientes adicionales.
- 24. Dispositivo segun la reivindicacion 17donde el dispositivo de procesamiento que es operable paraformar uno de los nodos (701) de una agrupacion y que es operable para realizar un papel de cabecera de agrupacion que conecta la agrupacion a la red de superposicion entre pares, el dispositivo de procesamiento que actua por ello como un par, mientras que otros nodos de agrupacion, se unen a la cabecera de agrupacion como clientes, y en donde el dispositivo de procesamiento, segun el papel de cabecera de agrupacion, esta configurado para transferir el papel de cabecera de agrupacion a otro nodo (721, 751) de la agrupacion, de manera que el papel de cabecera de agrupacion se traspasa desde un nodo a otro entre los nodos en la agrupacion.
- 25. Dispositivo de procesamiento segun la reivindicacion 24, en donde los nodos cliente no tienen responsabilidades de encaminamiento o almacenamiento, y en donde el nodo de agrupacion que tiene el papel de cabecera de agrupacion que actua como un par, permite a los otros nodos de agrupacion, que estan unidos a la cabecera de agrupacion como clientes, reposar, es decir, estar en un estado de conservation de energia.
- 26. Dispositivo de procesamiento segun la reivindicacion 24 o 25, en donde cada uno de los nodos cliente esta asociado con una identidad de nodo privada (261; 761; 771; 781) y una identidad de nodo publica (262; 762; 772; 782); la identidad de nodo publica que se emplea durante la creation de una nueva agrupacion, en la que la agrupacion solamente tiene un nodo, este nodo que es la cabecera de agrupacion (803); dicha identidad de nodo publica (761) de la cabecera de agrupacion que identifica posteriormente la agrupacion dentro de la red de superposicion, es decir, dicha identidad de nodo publica que llega a ser la identidad de nodo de agrupacion.51015202530
- 27. Dispositivo de procesamiento segun cualquiera de las reivindicaciones 24 a 26, en donde cuando un nodo se une (S801) a la red de superposicion para creacion de una nueva agrupacion, hay creada una tabla de agrupacion (S802) que contiene una entrada, indexada con la identidad de nodo privada (762; 201) del nodo de union, una hora de la siguiente cabecera de agrupacion, punto en el tiempo cuando cada uno de los nodos de la agrupacion se programa para tomar el control del papel de cabecera de agrupacion; y un periodo de cabecera de agrupacion pre configurado para dicho nodo.
- 28. Dispositivo de procesamiento segun la reivindicacion 27, en donde cuando un nodo posterior se une (751) a la agrupacion (S905), la tabla de agrupacion se actualiza (1005, 1006) con una entrada adicional, indexada con la identidad de nodo privada (722, 221) del nodo posterior, una hora de siguiente cabecera de agrupacion para el nodo posterior y un periodo de cabecera de agrupacion pre configurado para dicho nodo posterior, en donde el nodo posterior puede actuar como un cliente y entrar en un modo de reposo hasta que es hora de iniciar un traspaso de cabecera de agrupacion (1008).
- 29. Dispositivo de procesamiento segun la reivindicacion 28, en donde cuando se acaba el periodo de cabecera de agrupacion de la cabecera de agrupacion actual (701), se inicia un proceso de traspaso de cabecera de agrupacion (1008), en el cual un siguiente nodo de agrupacion segun una entrada adicional en la tabla de agrupacion esta uniendose a la red de superposicion como una cabecera de agrupacion par, y esta sustituyendo la cabecera de agrupacion previa de la tabla de agrupacion y esta tomando el control del papel de cabecera de agrupacion;el proceso de traspaso que implica al siguiente nodo de agrupacion obtener una tabla de encaminamiento a partir de la vieja cabecera de agrupacion, asl como conectar a todos los nodos vecinos de la cabecera de agrupacion previa en la red de superposicion, en donde la siguiente cabecera de agrupacion emplea la misma identidad de nodo que la vieja cabecera de agrupacion.
- 30. Dispositivo de procesamiento segun cualquier reivindicacion precedente 24 a 29, en donde la red de comunicaciones entre pares esta usando el Protocolo de Localization y Descubrimiento de Recursos, RELOAD, y en donde se usa una petition de union (320) y una respuesta de union (330).
- 31. Dispositivo de procesamiento segun las reivindicaciones 24y 25, en donde el siguiente nodo de cabecera de agrupacion (751) envla una peticion de union (1101) al nodo de cabecera de agrupacion previo (701) para iniciar un traspaso de agrupacion, en donde el51015202530mensaje de peticion de union (1101) comprende una indication (421) de que el siguiente nodo de agrupacion es un cliente y una indicacion (422) de una peticion para recibir cualquier mensaje de actualization recurrente; la siguiente cabecera de agrupacion que usa la identidad de nodo de agrupacion (200) como su identidad de remitente, el lugar de la identidad de nodo privada (751) de la siguiente cabecera de agrupacion.
- 32. Dispositivo segun la reivindicacion 17;en donde cualquier dispositivo de procesamiento (201) esta configurado para conectar a la red de superposition entre pares como un nodo par (301) o como un nodo cliente (302), es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la red de superposicion entre pares a traves de un nodo par;por el cual el dispositivo de procesamiento que comprende:- un modulo de envlo (SM) para enviar una peticion de conexion (320) a un nodo par (301), la peticion de conexion (320) que comprende una indicacion (421) de que dicho dispositivo de procesamiento quiere unirse como un nodo cliente (302).
- 33. Dispositivo segun la reivindicacion 17; que comprende- un modulo de par (PM) para operar como un nodo par (301),- un modulo de reception de peticion de conexion (CRM) para recibir una peticion de conexion (320) que comprende una indicacion (421) de que otro dispositivo de procesamiento quiere unirse como un nodo cliente (302);- un modulo de determination (DM) para determinar, si el dispositivo de procesamiento puede admitir (S504) conexiones adicionales de nodos cliente; y- un modulo de rechazo (RM) que es sensible a la peticion de conexion, para devolver un mensaje de rechazo (330, S505) a dicho otro dispositivo de procesamiento, si el dispositivo de procesamiento que recibe la peticion de conexion no puede admitir conexiones adicionales de nodos cliente.
- 34. Dispositivo segun la reivindicacion 17;en donde cualquier dispositivo de procesamiento (201) esta configurado para conectar a la red de superposicion entre pares como un nodo par (301) o como un nodo cliente (302), es decir, que es un nodo par o un nodo cliente; en donde un nodo cliente es conectable a la redde superposicion entre pares a traves de un nodo par; el dispositivo de procesamiento que comprende:- un modulo de formation de agrupacion (CFM) para formar uno de los nodos (701) de una agrupacion y que es operable para realizar un papel de cabecera de5 agrupacion que conecta la agrupacion a la red de superposicion entre pares,permitiendo al dispositivo de procesamiento actuar como un par, mientras que otros nodos de agrupacion, estan unidos a la cabecera de agrupacion como clientes, y- un modulo de transferencia de cabecera de agrupacion (CHTM) para efectuar que el dispositivo de procesamiento, segun el papel de cabecera de agrupacion, esta10 transfiriendo el papel de cabecera de agrupacion a otro nodo (721, 751) de laagrupacion, de manera que el papel de cabecera de agrupacion se traspasa desde un nodo a otro entre los nodos en la agrupacion.
- 35. Un producto de programa de ordenador que comprende un codigo de programa de ordenador (219) segun cualquiera de las reivindicaciones 1 a 17.15 36. Un programa para un ordenador o procesador que comprende un codigo deprograma de ordenador (219) segun cualquiera de las reivindicaciones 1 a 17.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201361750982P | 2013-01-10 | 2013-01-10 | |
| US61/750,982 | 2013-01-10 | ||
| EP14050061EP | 2014-01-03 | ||
| PCT/EP2014/050061 WO2014108356A2 (en) | 2013-01-10 | 2014-01-03 | Connection mechanism for energy-efficient peer-to-peer networks |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| ES2537722A2 ES2537722A2 (es) | 2015-06-11 |
| ES2537722R1 ES2537722R1 (es) | 2015-07-09 |
| ES2537722B1 true ES2537722B1 (es) | 2016-06-28 |
Family
ID=49943361
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES201430021A Expired - Fee Related ES2537722B1 (es) | 2013-01-10 | 2014-01-10 | Mecanismo de conexión para redes entre pares energéticamente eficientes |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US10075519B2 (es) |
| EP (1) | EP2944069B1 (es) |
| ES (1) | ES2537722B1 (es) |
| WO (1) | WO2014108356A2 (es) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10628815B1 (en) * | 2013-09-27 | 2020-04-21 | Groupon, Inc. | Systems and methods for programmatically grouping consumers |
| US9571464B2 (en) * | 2014-08-11 | 2017-02-14 | Intel Corporation | Network-enabled device provisioning |
| DE102014019534A1 (de) * | 2014-12-24 | 2016-06-30 | Christopher Bentley | Vorrichtung zur verwendung in einem dynamischen netzwerk und dynamisches netzwerk |
| WO2017078724A1 (en) * | 2015-11-05 | 2017-05-11 | Hewlett-Packard Development Company, L.P. | System routines and raw data |
| US9848035B2 (en) * | 2015-12-24 | 2017-12-19 | Intel Corporation | Measurements exchange network, such as for internet-of-things (IoT) devices |
| US10063666B2 (en) | 2016-06-14 | 2018-08-28 | Futurewei Technologies, Inc. | Modular telecommunication edge cloud system |
| US20180041578A1 (en) * | 2016-08-08 | 2018-02-08 | Futurewei Technologies, Inc. | Inter-Telecommunications Edge Cloud Protocols |
| EP3729842B1 (en) * | 2017-12-20 | 2023-08-09 | Sony Network Communications Europe B.V. | System and method for sharing cluster head assistance data in a device cluster |
| US10762234B2 (en) * | 2018-03-08 | 2020-09-01 | International Business Machines Corporation | Data processing in a hybrid cluster environment |
| US12120594B2 (en) | 2018-12-06 | 2024-10-15 | Visa International Service Association | Proximity device network |
| JP7556866B2 (ja) * | 2019-08-29 | 2024-09-26 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 制御方法、サーバ、および、プログラム |
| CN110661862A (zh) * | 2019-09-20 | 2020-01-07 | 网宿科技股份有限公司 | 一种预热资源文件的方法和中心管理系统 |
| CN110913388B (zh) * | 2019-12-12 | 2023-10-17 | 深圳技术大学 | 一种基于无线传感器网络的安全成簇方法及装置 |
| CN111416861B (zh) * | 2020-03-20 | 2022-07-26 | 中国建设银行股份有限公司 | 一种通信管理系统和方法 |
| US11121989B1 (en) * | 2020-05-29 | 2021-09-14 | Bank Of America Corporation | Centralized repository and communication system for cross-network interactions |
| DE102021204774A1 (de) * | 2021-05-11 | 2022-11-17 | Continental Automotive Technologies GmbH | Verfahren zur Relaisauswahl basierend auf einer Verbundlastmetrik mehrerer Schnittstellen |
| US20240397315A1 (en) * | 2021-09-22 | 2024-11-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Worker node cluster management |
| US20240020176A1 (en) * | 2022-07-12 | 2024-01-18 | Vmware Inc. | Methods and apparatus for deployment of a virtual computing cluster |
| US20250260738A1 (en) * | 2024-02-08 | 2025-08-14 | Hoseo University Academic Cooperation Foundation | Fuzzy logic based forwarding method and system for mitigation of push-based data broadcast in VNDN |
Family Cites Families (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7069295B2 (en) * | 2001-02-14 | 2006-06-27 | The Escher Group, Ltd. | Peer-to-peer enterprise storage |
| US7243103B2 (en) * | 2002-02-14 | 2007-07-10 | The Escher Group, Ltd. | Peer to peer enterprise storage system with lexical recovery sub-system |
| US7379428B2 (en) * | 2002-10-31 | 2008-05-27 | Hewlett-Packard Development Company, L.P. | Autonomous system topology based auxiliary network for peer-to-peer overlay network |
| US7266125B2 (en) * | 2002-10-31 | 2007-09-04 | Hewlett-Packard Development Company, L.P. | Landmark numbering based auxiliary network for peer-to-peer overlay network |
| US7401132B1 (en) * | 2002-12-20 | 2008-07-15 | Symantec Operating Corporation | Method and system for creating a peer-to-peer overlay network |
| US7953858B2 (en) * | 2003-01-17 | 2011-05-31 | Hewlett-Packard Development Company, L.P. | Method and apparatus for mapping peers to an overlay network |
| US7792915B2 (en) * | 2003-06-04 | 2010-09-07 | Sony Computer Entertainment Inc. | Content distribution overlay network and methods for operating same in a P2P network |
| US7558875B2 (en) * | 2003-09-15 | 2009-07-07 | Microsoft Corporation | Measurement-based construction of locality-aware overlay networks |
| US7634812B2 (en) * | 2004-07-21 | 2009-12-15 | Microsoft Corporation | Filter generation |
| US7634813B2 (en) * | 2004-07-21 | 2009-12-15 | Microsoft Corporation | Self-certifying alert |
| US7603715B2 (en) * | 2004-07-21 | 2009-10-13 | Microsoft Corporation | Containment of worms |
| JP4810437B2 (ja) * | 2004-12-21 | 2011-11-09 | パナソニック株式会社 | 無線ノードの電源管理方法 |
| WO2006068365A1 (en) * | 2004-12-21 | 2006-06-29 | Electronics And Telecommunications Research Institute | P2p overlay network construction method and apparatus |
| WO2006096928A1 (en) * | 2005-03-17 | 2006-09-21 | Xynk Pty Ltd | A method and system of communication with identity and directory management |
| US20090116484A1 (en) * | 2005-09-08 | 2009-05-07 | Matsushita Electric Industrial Co., Ltd. | Parallelizing Peer-to-Peer Overlays Using Multi-Destination Routing |
| US8856310B2 (en) * | 2005-12-22 | 2014-10-07 | Alcatel Lucent | ACORN: providing network-level security in P2P overlay architectures |
| ATE463120T1 (de) * | 2005-12-22 | 2010-04-15 | Microsoft Corp | Verbindungsverwaltung in peer-to-peer- datenverteilungsnetzen |
| US7881223B2 (en) * | 2006-03-31 | 2011-02-01 | Panasonic Corporation | Method for on demand distributed hash table update |
| US20070288638A1 (en) * | 2006-04-03 | 2007-12-13 | British Columbia, University Of | Methods and distributed systems for data location and delivery |
| US8605721B1 (en) * | 2006-05-25 | 2013-12-10 | The Hong Kong University Of Science And Technology | Scalable island multicast for peer-to-peer media delivery |
| KR101322213B1 (ko) * | 2007-01-12 | 2013-10-25 | 삼성전자주식회사 | P2p 오버레이 네트워크 상에서 무선 노드의 기능을처리하는 프록싱 처리 방법 및 서버 |
| US8489701B2 (en) * | 2007-01-30 | 2013-07-16 | Microsoft Corporation | Private virtual LAN spanning a public network for connection of arbitrary hosts |
| KR20090000582A (ko) * | 2007-02-27 | 2009-01-08 | 삼성전자주식회사 | 스트리밍 데이터를 중계하는 방법 및 장치 |
| US20080209053A1 (en) * | 2007-02-28 | 2008-08-28 | Microsoft Corporation | HTTP-Based Peer-to-Peer Framework |
| CN100531098C (zh) * | 2007-03-13 | 2009-08-19 | 华为技术有限公司 | 一种对等网络系统及重叠网间节点的互通方法 |
| US7788522B1 (en) * | 2007-05-31 | 2010-08-31 | Oracle America, Inc. | Autonomous cluster organization, collision detection, and resolutions |
| US7894371B2 (en) * | 2007-07-31 | 2011-02-22 | Motorola, Inc. | System and method of resource allocation within a communication system |
| WO2009071971A2 (en) * | 2007-12-05 | 2009-06-11 | Nokia Corporation | Method, apparatus, and computer program product for providing a smooth transition between peer-to-peer node types |
| US7792992B2 (en) * | 2008-05-29 | 2010-09-07 | Xerox Corporation | Serverless distributed monitoring and anomaly detection for a service oriented architecture |
| US8254287B2 (en) * | 2008-06-17 | 2012-08-28 | Qualcomm Incorporated | Methods and apparatus for optimal participation of devices in a peer to peer overlay network |
| EP2139205B1 (en) * | 2008-06-27 | 2012-10-31 | Alcatel Lucent | Method of redundant data storage |
| ATE551818T1 (de) * | 2008-06-27 | 2012-04-15 | Alcatel Lucent | Verfahren zur bereitstellung einer nachfolgerliste |
| CN102113296B (zh) * | 2008-07-02 | 2013-10-16 | 汤姆森许可贸易公司 | P2p模式下使用二部对等端覆盖在对等端之间传播内容数据的设备和方法 |
| EP2319269B1 (en) * | 2008-08-27 | 2014-05-07 | Telefonaktiebolaget L M Ericsson (publ) | Routing mechanism for distributed hash table based overlay networks |
| US8281023B2 (en) * | 2008-11-14 | 2012-10-02 | Qualcomm Incorporated | Systems and methods for data authorization in distributed storage networks |
| US8051161B2 (en) * | 2008-12-08 | 2011-11-01 | Microsoft Corporation | Peer-to-peer (P2P) streaming overlay construction and optimization |
| US9344438B2 (en) * | 2008-12-22 | 2016-05-17 | Qualcomm Incorporated | Secure node identifier assignment in a distributed hash table for peer-to-peer networks |
| US9264498B2 (en) * | 2009-03-11 | 2016-02-16 | Qualcomm Incorporated | Methods and apparatus for creation, advertisement, and discovery of peer-to-peer overlay networks |
| US8484382B2 (en) * | 2009-03-11 | 2013-07-09 | Qualcomm Incorporated | Methods and apparatus for merging peer-to-peer overlay networks |
| US10764748B2 (en) * | 2009-03-26 | 2020-09-01 | Qualcomm Incorporated | Apparatus and method for user identity authentication in peer-to-peer overlay networks |
| US8848513B2 (en) * | 2009-09-02 | 2014-09-30 | Qualcomm Incorporated | Seamless overlay connectivity using multi-homed overlay neighborhoods |
| US8385267B2 (en) * | 2010-02-19 | 2013-02-26 | Research In Motion Limited | Client routing in a peer-to-peer overlay network |
| US8549126B2 (en) * | 2010-04-09 | 2013-10-01 | Sony Computer Entertainment Inc. | Application level broadcast in peer overlay network |
| US20110307538A1 (en) * | 2010-06-10 | 2011-12-15 | Alcatel-Lucent Usa, Inc. | Network based peer-to-peer traffic optimization |
| WO2012108880A1 (en) * | 2011-02-11 | 2012-08-16 | Research In Motion Limited | User equipment battery saving in a hetnet deployment with eicic |
| US9473409B2 (en) * | 2011-04-13 | 2016-10-18 | Telefonaketiebolaget L M Ericsson | Load balancing mechanism for service discovery mechanism in structured peer-to-peer overlay networks and method |
| EP2519071B1 (en) * | 2011-04-30 | 2019-01-30 | Samsung Electronics Co., Ltd. | Method and system for delegating group ownership in a wi-fi peer to peer network |
| US8874769B2 (en) * | 2011-06-30 | 2014-10-28 | Qualcomm Incorporated | Facilitating group access control to data objects in peer-to-peer overlay networks |
| US8806250B2 (en) * | 2011-09-09 | 2014-08-12 | Microsoft Corporation | Operating system management of network interface devices |
| US8892710B2 (en) * | 2011-09-09 | 2014-11-18 | Microsoft Corporation | Keep alive management |
| US9049660B2 (en) * | 2011-09-09 | 2015-06-02 | Microsoft Technology Licensing, Llc | Wake pattern management |
| US8713194B2 (en) * | 2011-11-18 | 2014-04-29 | Peerialism AB | Method and device for peer arrangement in single substream upload P2P overlay networks |
| CN104137517B (zh) * | 2012-02-27 | 2018-06-05 | 瑞典爱立信有限公司 | 用于检测对等网络中故障对等体的对等体、装置和方法 |
| CN104662867A (zh) * | 2012-09-25 | 2015-05-27 | 瑞典爱立信有限公司 | 与受限互联网设备进行通信 |
-
2014
- 2014-01-03 WO PCT/EP2014/050061 patent/WO2014108356A2/en not_active Ceased
- 2014-01-03 US US14/655,197 patent/US10075519B2/en active Active
- 2014-01-03 EP EP14700062.4A patent/EP2944069B1/en active Active
- 2014-01-10 ES ES201430021A patent/ES2537722B1/es not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP2944069B1 (en) | 2019-03-13 |
| WO2014108356A2 (en) | 2014-07-17 |
| US20150334181A1 (en) | 2015-11-19 |
| ES2537722A2 (es) | 2015-06-11 |
| US10075519B2 (en) | 2018-09-11 |
| WO2014108356A3 (en) | 2014-10-02 |
| EP2944069A2 (en) | 2015-11-18 |
| ES2537722R1 (es) | 2015-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2537722B1 (es) | Mecanismo de conexión para redes entre pares energéticamente eficientes | |
| Kumar et al. | Location-based routing protocols for wireless sensor networks: A survey | |
| Ding et al. | Peer-to-peer file-sharing over mobile ad hoc networks | |
| Schollmeier et al. | Protocol for peer-to-peer networking in mobile environments | |
| Boukerche et al. | Energy-aware data-centric routing in microsensor networks | |
| Levis et al. | The emergence of a networking primitive in wireless sensor networks | |
| Banerjee et al. | Self-organizing topology for energy-efficient ad-hoc communication networks of mobile devices | |
| Trindade et al. | Routing on large scale mobile ad hoc networks using bloom filters | |
| Al-Mamou et al. | ScatterPastry: An overlay routing using a DHT over wireless sensor networks | |
| Hof et al. | Secure overlay for service centric wireless sensor networks | |
| Dash et al. | A distributed approach to construct hierarchical structure for routing with balanced energy consumption in wsns | |
| Pietilainen et al. | Experiments in mobile social networking | |
| Sha et al. | 5.2 LOAD-BALANCED QUERY PROTOCOLS FOR WIRELESS SENSOR NETWORKS | |
| Demeure et al. | An energy-aware middleware for collaboration on small scale manets | |
| Ito et al. | A study on designing ad hoc network protocol using Bluetooth low energy | |
| Brodt et al. | Resource discovery protocols for bluetooth-based ad-hoc smart spaces: Architectural considerations and protocol evaluation | |
| Khalid | Authentication in Mesh Networking | |
| Nejad | Resource-aware cooperative caching on mobile ad-hoc peer to peer networks | |
| Singh et al. | FDR: fault detection and recovery scheme for wireless sensor networks using virtual grid | |
| Harjula | Energy-efficient peer-to-peer networking for constrained-capacity mobile environments | |
| Raychoudhury | Reliable service discovery and access in pervasive computing environments | |
| Wongsaardsakul | P2P SIP over mobile ad hoc networks | |
| Gopalan | Architecture and protocols for service and application deployment in resource aware ubiquitous environments | |
| Cao | Distributed services for mobile ad hoc networks | |
| Bakht | Implementation and Evaluation of MAODDP on Scalable Wireless Network Simulator (SWANS) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FG2A | Definitive protection |
Ref document number: 2537722 Country of ref document: ES Kind code of ref document: B1 Effective date: 20160628 |
|
| FD2A | Announcement of lapse in spain |
Effective date: 20230526 |