viernes, 24 de marzo de 2017

La red basada en la ubicación


El Internet of People trata sobre la gente y la gente vive en el mundo físico. Eso significa que están en algún lugar del planeta Tierra. En contraste con esto, las empresas podrían tener un centro de operaciones, pero su ubicación es más difusa, y su alcance es mayor.

Cuando la gente necesita encontrarse, uno de los criterios de búsqueda puede ser su ubicación habitual o la actual. Por otra parte, la mayoría de las personas en la vida real en la actualidad interactúan con las personas más cercanas, y esto es sobre todo cierto también para las comunicaciones electrónicas o interacciones.

En un sistema tan global como Internet of People, nos pareció necesario organizar algunos servicios basados en la localización de la gente. Además de eso, en la vida real tenemos diferentes jurisdicciones, y para asegurar el cumplimiento del sistema con cualquier normatividad en su territorio, tener algunos de sus servicios geolocalizados tiene mucho sentido no sólo desde esta perspectiva. No queremos que los empresarios desarrollen aplicaciones Persona a Persona en algún país al azar para romper alguna ley local al cargar los perfiles de sus usuarios a servidores fuera de su país si su regulación local no lo permite.

Como base para los servicios geolocalizados tenemos la Red Basada en la Ubicación (LOC NET). Esta es una red punto a punto de uso general de nodos que se organizan en base a una geolocalización específica configurada por sus operadores. Algunos servidores IoP pueden asociarse posteriormente con LOC NET NODES y, al hacerlo, sus servicios se vuelven geolocalizados.

Por ejemplo, cualquier servidor de perfiles puede entrar en una asociación con un LOC NET NODE que se ejecute en el mismo hardware, lo que permite a las aplicaciones cliente elegir un servidor para alojar sus perfiles en una ubicación determinada. Esperamos que las aplicaciones alojen los perfiles de sus usuarios en servidores de perfiles cercanos a su ubicación promedio. Hacerlo contribuiría a que estos usuarios sean fácilmente descubiertos por personas que saben dónde viven. También podría repercutir positivamente en su privacidad y seguridad, ya que las comunicaciones entre dos usuarios que viven cerca no se enrutarían nunca lejos de su ciudad, y nunca dejarían su propio país, lo cual tiene mucho sentido en términos de prevenir el espionaje y no confiar en Infraestructura totalmente fuera del control del país en el que viven. Por ejemplo, si un alemán en Berlín está dispuesto a interactuar con su amigo alemán también en Berlín, es más seguro para ellos si sus perfiles se alojan en Berlín y no en Londres o Washington DC, y el proceso para adquirir una colección directa teléfono a teléfono también se hace con la ayuda de un servidor del perfil en Berlín.

No encontramos una red p2p geolocalizada para evitar empezar desde cero, así que diseñamos e implementamos nuestras propias ideas. El resultado es una red que se autoorganiza y que implementa los siguientes conceptos:

  • Nodos no relacionados: Los nodos se unen a la red sin relación con otros nodos. Posteriormente pueden convertirse en compañeros o vecinos. Los compañeros no vinculados por defecto no confían unos en otros. Cualquiera de ellos puede ser un nodo malicioso de cualquier tipo. Esto significa que las interacciones con nodos no relacionados se hacen con especial cuidado.
  • Nodos Compañeros: Los nodos deben conocer nodos en todo el mundo para garantizar la comunicación global. Como red, todos los nodos se benefician igualmente si pueden evitar las solicitudes no rentables de los clientes, como las solicitudes de enrutamiento. Por esta razón, los nodos intercambian información de perfil de nodo entre sí y se convierten en compañeros.
  • Nodos vecinos: Los nodos deben conocer muy bien su vecindario. Ser vecinos es un tipo de relación entre nodos. Cualquier nodo ha dispersado a nodos compañeros de todo el mundo, pero conocen a todos sus vecinos.

Mapa de la red local
La red es consciente de la ubicación y cada nodo conoce sólo una parte de la red. Este mapa de red local es único para cada LOC NODE y parcialmente se superpone con la información guardada por otros nodos. Cada nodo conoce mejor la parte de la red que está más cerca de ella ya medida que aumenta la distancia, conoce menos nodos. Los nodos implementan un algoritmo que les ayuda a elegir qué nodos necesitan conocer y qué cuales no.

El Mapa de Red Local consta de dos partes con diferentes objetivos y propiedades. El Mapa de Vecindarios tiene como objetivo mantener una lista completa de los nodos más cercanos. El Mapa Mundial tiene como objetivo proporcionar una cobertura aproximada del resto del mundo fuera del vecindario. Para evitar demasiados datos y limitar la densidad de nodos, el Mapa Mundial selecciona sólo un nodo de cada área. Las áreas cubiertas se definen con "burbujas" circulares dibujadas alrededor de nodos individuales que no deben superponerse. El Mapa del Mundo utiliza un tamaño de burbuja cambiante para tener una densidad de nodo remoto más densa y más dispersa. Así que cuanto mayor es el área, las burbujas son más grandes, es decir, se incluyen menos nodos. Las burbujas de área se definen de forma autónoma y son específicas del Mapa de Red Local de cada nodo. No hay límite de conteo de nodos para el Mapa Mundial, el tamaño creciente de las burbujas sirve como un límite para los conteos de nodos. Para el Mapa de Vecindad las burbujas pueden superponerse, por lo que necesitamos una cuenta máxima de nodos vecinos.

Servicios prestados
Las aplicaciones Persona a Persona puede utilizar el LOC NET para comunicarse con nodos en diferentes regiones del mundo. Pueden consultar cada nodo sobre el nodo más cercano que conocen dado una ubicación específica. Al repetir este procedimiento con unos pocos nodos, pueden terminar contactando con el nodo más cercano de la red a una determinada ubicación. Una vez allí, pueden solicitar a este nodo su servidor de perfiles asociado o su servidor de proximidad y pasar a esos servidores para consultarlos acerca de los perfiles de las personas o cualquier servicio que tengan que ofrecer.

Los servidores con funciones de colaboración como Servidores de Perfiles, usan su LOC NET NODE asociado para descubrir su vecindario, una variedad de Servidores de Perfiles cercanos que colaboran entre sí, compartiendo parte de la información del perfil para facilitar el descubrimiento de tal información haciendo así que el sistema sea más resiliente.

Consideramos que estas nuevas formas de organizar algunos servicios descentralizados son muy resilientes a las medidas extremas que ya han sido adoptadas por gobiernos represivos, como cortafuegos de todo el país. Al permitir que algunos componentes fundamentales de IoP sean geolocalizados, los servicios proporcionados pueden prosperar incluso dentro de un país aislado del resto del mundo por un gobierno irracional.

Nota.- Traducción realizada por @jmcpcancino del artículo de @Luis_fer_Molina publicada originalmente en Medium.

No hay comentarios.:

Publicar un comentario