El Servidor de Perfiles

Posted on

El servidor de perfiles es la piedra angular del sistema de Internet Of People (IoP). Un servidor de perfiles es una pieza de la arquitectura IoP más amplia. Conceptualmente, proporciona los siguientes dos servicios cruciales para Aplicaciones persona a persona:

 

Descubrimiento de personas: Las aplicaciones persona a persona necesitan un servicio descentralizado que permita a sus usuarios encontrarse entre sí. Ese es el objetivo principal de los servidores de perfiles. Las aplicaciones persona a persona alojan los perfiles de sus usuarios en los servidores de perfiles y, al hacerlo, estos perfiles pueden ser detectados por otras aplicaciones persona a persona.

 

Ayuda en las conexiones de dispositivo a dispositivo: Una vez que las personas se encuentran, el siguiente problema a resolver es cómo sus dispositivos pueden adquirir una conexión directa entre ellos. Los servidores de perfil tienen algunos mecanismos diseñados para ayudar con eso.

 

Para ayudar a las personas a descubrir otras personas, los Servidores de perfiles proporcionan los siguientes servicios específicos:

 

Perfil de Alojamiento: Las aplicaciones persona a persona se ejecutan principalmente en dispositivos móviles que no siempre están en línea. Los servidores de perfil alojan los perfiles de los usuarios finales y los mantienen en línea independientemente del estado de los dispositivos móviles en los que se ejecutan las aplicaciones persona a persona.

 

Consultas de perfil alojadas: Los servidores de perfil permiten que cualquier entidad solicite listas de perfiles e información del perfil en general. La búsqueda de perfiles es la forma natural de los usuarios finales para encontrar a otros usuarios finales en el Internet of people. Especialmente cuando necesitan conectarse entre sí por primera vez. Una vez que están conectados, ambas partes recuerdan cuál es el Servidor de Perfil de su contraparte.

 

Tarjetas de relación: Es una estructura de datos que contiene una prueba de que un determinado perfil tiene una relación con otro perfil. Una vez que se establece una relación, el perfil B firma el contenido de la estructura de datos que incluye las claves públicas del perfil A y B, así como el tipo de relación y una fecha de vencimiento. Por ejemplo, Bob firma una tarjeta que dice que Alice y Bob son amigos y le da esa tarjeta a Alice. Entonces Alice puede usar esa tarjeta para probar que es el amigo de Bob a cualquier persona hasta que la tarjeta expire. Esta tarjeta puede ser utilizada por Alice para respaldar a Bob en lo buen amigo que es, así como por ejemplo para recibir notificaciones de servidor de perfiles de Bob mientras está en línea. La tarjeta también incluye lo que Alice tiene permitido hacer con ella. Estas tarjetas permiten a los propietarios de perfiles vincular sus perfiles entre sí, o expresar públicamente las relaciones entre perfiles pertenecientes a diferentes personas.

 

Con el fin de ayudar a las personas a interconectar sus dispositivos, el servidor de perfiles proporciona los siguientes servicios:

 

Mantener la conexión a dispositivos en línea: Los servidores de perfil mantienen una conexión TCP / IP abierta con dispositivos de usuario final mientras están conectados a Internet. De esta forma, los servidores de perfiles saben cuándo las personas que están detrás de los perfiles alojados están en línea y cuándo no. Esto les permite ayudar a dos dispositivos remotos a iniciar el proceso de adquisición de una conexión directa entre ellos.

 

Llamadas de servicio de aplicaciones: La comunicación entre dispositivos de un usuario final se realiza a través de un concepto denominado Servicios de Aplicaciones. Dispositivos conectados a un servidor de perfiles indican que servicios de aplicaciones están ejecutando y disponibles para recibir llamadas. Cuando los usuarios finales quieren interactuar entre sí utilizando una determinada aplicación, esta aplicación se comunicará con una aplicación remota a través de uno de los servicios de aplicación disponibles que se ejecutan localmente. Si se cumple esta condición, la aplicación puede iniciar el proceso de colocar una llamada de servicio de aplicación a través de un servidor de perfiles.

 

Los servidores del perfil funcionan encima de dos de las redes del p2p de IoP:

 

Ubicación basada en red [LOC]: Un servidor de perfiles que se ejecuta en una máquina, tratará de encontrar un LOC NODE en la misma máquina. Si tiene éxito, el LOC NODE proporcionará al servidor de perfiles la lista de LOC NODEs próximos, los nodos próximos. Una vez que un servidor de perfiles conoce qué NODE LOCES están próximos, se contacta con ellos y sus servidores de perfiles asociados y comparte con ellos parte de los datos de sus perfiles alojados. Lo llamamos Perfiles compartidos. Esto permite que todos los servidores de perfil en la proximidad sepan que estos usuarios finales existen y la información muy básica sobre ellos. La información más detallada sólo se almacenará en el servidor de perfiles que cada usuario final elija utilizar como nodo de origen. Así, además de los servicios anteriores descritos, los servidores de perfiles también proporcionan información y aceptan consultas en perfiles compartidos.

 

Red de direcciones de contenido [CAN]: Los servidores de proximidad también detectan CAN NODEs ejecutándose en la misma máquina y para los perfiles que están marcados para ser indexados, siembran el contenido del perfil a la red CAN a través de CAN NODE. Esto permite a los usuarios finales recuperar perfiles de otros usuarios finales de cualquier CAN NODE siempre que conozcan la clave pública del propietario del perfil.

 

Si esto parece complicado es porque lo es. Más allá de los tecnicismos, lo importante es recordar que los servidores de perfiles permiten que las aplicaciones persona a persona carguen perfiles de usuarios finales a IoP. Estos perfiles contienen sólo la información necesaria necesaria para que las personas se encuentren, el resto se mantiene en los dispositivos del usuario final. Una vez que los perfiles se suben, se convierten en parte de la red de personas en el IoP. Una vez allí, la misma aplicación persona a persona puede hacer uso de estos perfiles, permitiendo que su base de usuarios se encuentren.

 

Cuando una aplicación persona a persona tiene que decidir cómo elegir un servidor de perfiles para alojar su perfil de usuario, consideran estas dos cosas:

 

Proximidad: Intenta elegir entre servidores de perfil que se ejecutan en la misma ciudad donde vive el usuario. Al elegir un servidor de perfiles en la misma ciudad, aumenta su seguridad, ya que las comunicaciones con otros usuarios en la misma ciudad o país nunca abandonan la ciudad o el país mismo. Pero el objetivo principal es permitir que estos usuarios sean encontrados por otros usuarios que saben poco acerca de ellos, a veces sólo su nombre y la ciudad donde viven.

 

Costo: Trata de elegir la mejor oferta del mercado. Así es, el servidor de perfiles carga algunas cuotas pequeñas en la criptomedas IoP para proporcionar sus servicios. Eso significa que las aplicaciones deben elegir la oferta más conveniente.

 

Pero la verdadera belleza de Internet de la gente es que estos perfiles también pueden ser vistos por otras aplicaciones de persona a persona, o cualquier aplicación en general. Los servidores de perfil son una infraestructura pública que responderá consultas a quienquiera que solicite información. Así que vamos a ver a través de la lente de nuestro ejemplo de Taxi sistema que he utilizado tantas veces antes.

 

En mi ejemplo de sistema de taxis, tenemos dos aplicaciones de persona a persona, una para los pasajeros de taxi y la otra para taxistas. Digamos que el Proyecto Fermat desarrolla estas Apps (como se indica en su hoja de ruta). Supongamos que estas aplicaciones se han comenzado a utilizar y después de un período de tiempo, 1.000 taxistas utilizan la aplicación Taxi Driver. Eso significa que 1.000 taxistas están ahora en Internet de People, ya que sus perfiles fueron subidos por esta aplicación Fermat para taxistas. Algo similar ocurre con los pasajeros de taxi. Supongamos que hay 50.000 pasajeros de taxi en Internet de la gente.

 

Fermat construirá estas dos aplicaciones de persona a persona como proyectos de código abierto, lo que significa que cualquier persona puede reutilizar más tarde la base de código para crear nuevas aplicaciones basadas en eso. Digamos que algunos empresarios tienen una idea inteligente para ofrecer a los pasajeros de taxi algún servicio no proporcionado por la aplicación de Taxi de Fermat. Así que él va a github.com donde está el código fuente, hace un fork de la aplicación de Taxi para pasajeros de Fermat y desarrolla algunas características que cree que son útiles para los pasajeros. Para ser más específico y claro en el ejemplo actual vamos a imaginar que él creó una Aplicación de pasajeros de taxi de destinado a las mujeres y sólo trabajará con Taxis que los conductores son también mujeres.

 

Con el código fuente original, él personaliza la marca -utilizando mucho color rosa- y realiza los cambios necesarios en la aplicación original. Una vez finalizado, sube su nueva aplicación a Google Play Store, donde normalmente se distribuyen aplicaciones para móviles para Android. Después de difundirla en las redes sociales, la aplicación es descargada por 5.000 personas.

 

Es una aplicación similar a la original en este caso, pero la siguiente explicación es la misma si hubiera escrito todo el código desde cero. Sus usuarios ahora son parte de Internet de la gente. Desde entonces se pueden encontrar 55.000 perfiles de pasajeros en el IoP. Pero lo que es realmente interesante es que no necesita crear una aplicación de taxista, o afiliarse a cualquier unidad de taxis. Su aplicación de pasajero del taxi encuentra conductores de los actuales 1.000 taxistas que ya están activos en el IoP, filtrando a todos los conductores del sexo masculino. sé está reutilizando sin esfuerzo no sólo el código de código abierto de la aplicación de pasajeros de taxi de Fermat, sino también la base de usuarios de la aplicación de conductores de Taxi de Fermat que no creó y que no posee. El Internet de las Personas no tiene permisos, lo que significa que no requiere autorización de nadie para hacer eso. Todo esto es por diseño.

 

Por primera vez en la historia es posible reutilizar una base de usuarios sin permiso. Lo que estamos presenciando aquí es una alternativa a las redes privadas de personas. Cada aplicación o servicio que usamos, opera una red privada: Facebook, WhatsApp, LinkedIn, eBay, Uber, Airbnb, lo que quieras. Internet de la gente no sólo permitirá que estos servicios se portan en aplicaciones persona a persona, pero al mismo tiempo todas sus bases de usuarios combinados serán reutilizables por cualquier empresario en todo el mundo que les permite crear servicios especializados para sus comunidades locales. Esto es poderoso.

 

¿Por qué el efecto de red del IoP ​​es tan fuerte? Debido a que el IoP ​​no es sólo un catálogo compartido de perfiles de personas. Es mucho más que eso. Detrás de los perfiles son personas reales conectadas con sus propios dispositivos listos para interactuar con usted una vez que los encuentres a través de cualquier aplicación persona a persona.