Esta es una traducción automática. El original en inglés está aquí: Update 03 August, 2023
Gracias a todos los que participaron en la red de prueba de DataPaymentNet. Ha desempeñado su papel magníficamente, diciéndonos que los fundamentos de los pagos de datos son sólidos, incluso si la UX todavía deja un poco que desear. Hemos perdido algunos nodos después de un pico de replicación que la comunidad detectó anoche. Pero aún tenemos 1675 nodos de MaidSafe funcionando felizmente (y antes del pico estábamos en 2001 nodos durante mucho más tiempo que antes).
Hemos tomado nota de los errores: cero fragmentos después de varias horas, clientes pequeños que se quedan sin recursos al autocifrar archivos grandes, Error de red no pudo recuperar el registro después de almacenarlo
, Conexión cerrada
, No almacenó todos los fragmentos of file
, OutgoingConnectionError to PeerId
y otros. Algunos de estos están relacionados: cero fragmentos probablemente tenga algo que ver con OutgoingConnectionError
y UnroutablePeer
, donde el nodo no se agrega a las tablas de enrutamiento de los pares. Otros serán el resultado de cambios en la funcionalidad de las comunicaciones en otros lugares, y algunos serán errores que anteriormente se cubrieron pero que ahora han surgido de sus agujeros a medida que solucionamos los problemas. Pero no te preocupes, los estamos analizando todos. :músculo:
Esta semana, a raíz de una pregunta en este foro, @Qi_ma explica un poco sobre los registros.
Registros y cómo se relacionan con fragmentos, registros y DBC.
Record
es una función de libp2p
que permite cargar datos en la red y recuperarlos de la red según sea necesario.
El “Registro” abarca varias funciones esenciales a nivel de red, incluidas tareas como la identificación de los pares más cercanos y la facilitación de la transferencia de datos. Al delegar estas responsabilidades a nivel de red al Registro, podemos concentrarnos de manera más efectiva en el pago de datos, la validación de transferencias, el control de seguridad, etc.
Como parte de nuestra implementación actual, tenemos distintos tipos de datos basados en casos de usuarios específicos. Específicamente, tenemos Chunk para manejar datos inmutables, DBC para administrar gastos y registrarse para tipos de datos replicados libres de conflictos (CRDT). Estos tipos de datos representan la información destinada a ser compartida entre los participantes de la Red Segura. Todos estos tipos de datos se pueden encapsular dentro de la estructura Record
, lo que nos permite aprovechar sus poderosas funcionalidades.
Al emplear el “Registro”, podemos almacenar e intercambiar de manera efectiva nuestros tipos de datos personalizados, fomentando así el intercambio de datos sin problemas dentro de Safe Network.
Relacionado con esto está RecordStore que es un módulo libp2p
diseñado para facilitar el almacenamiento eficiente de registros en el disco al tiempo que sirve como una interfaz para permitir la ejecución de tareas de datos personalizadas, como el procesamiento de pagos de datos, la validación de transferencias, los controles de seguridad y otros. El RecordStore
cierra efectivamente la brecha entre estas operaciones de datos personalizadas y el registro libp2p
nativo, lo que permite una interoperabilidad e integración perfectas dentro del sistema.
Progreso general
@Bzee ha estado analizando los errores UnroutablePeer
y OutgoingConnection
, que son problemas raros, pero no lo suficientemente raros como para ignorarlos y parecen estar relacionados con nodos ignorados por otros pares. Pueden ser el resultado de arreglos recientes por parte del equipo libp2p
, por lo que está consultando con ellos. La función de detección de AutoNAT NAT es otro lugar que él y @Aed900 están buscando.
@Joshuef también está investigando aquí, así como en ‘RecordParsingFailed’ y los picos de memoria ocasionales informados por @shu y otros miembros de la comunidad. :orar:
@Qi_ma está liderando investigaciones en las que nuestra configuración de prueba puede desencadenar un gasto doble en ocasiones, lo que detiene el CI.
Mientras tanto, en el frente de las pruebas internas, @roland ha arreglado un bucle infinito en el proceso de verificación de datos y @chriso continúa allanando el camino hacia la automatización implementación de testnet.
Ha habido discusiones sobre cómo podemos registrarnos con una dirección fija para facilitar varias operaciones. Los registros son mutables, por lo que su hash no se puede usar como una dirección de red, a diferencia de, por ejemplo, un Chunk. Pero hay formas de evitar esto, que @bochaco está encabezando.
@Anselme está preparando el terreno, refactorizando registros para eliminar etiquetas de tipo que ya no son necesarias
Y mirando un poco más allá, @dirvine ha estado pensando en integrar SimpleX para las transferencias de DBC y también en la posibilidad de que las IA personales locales se sienten en el cliente y administren cosas como el almacenamiento de datos, billeteras y texto a voz/voz a texto. para el usuario Hay muchas cosas emocionantes que se están reuniendo en esa área ahora, y Safe está en un excelente lugar para aprovechar.
Enlaces útiles
- Sitio web de red segura
- Introducción a la red segura
- Aspectos básicos de la red
- Hoja de ruta
- Glosario
No dude en responder a continuación con enlaces a las traducciones de esta actualización para desarrolladores y los moderadores las agregarán aquí.
Como proyecto de código abierto, siempre estamos buscando retroalimentación, comentarios y contribuciones de la comunidad, así que no sea tímido, únase y creemos la red segura juntos.