El "tiempo" es un tema eterno en los tiempos cambiantes. Se han producido debates sobre el tiempo en blockchains y otros sistemas distribuidos. El tiempo conecta procesos y nodos, y también usamos la "granularidad" del tiempo para medir la red descentralizada que conecta bloques en cadenas. La dificultad del tiempo en un sistema distribuido es que es difícil que los "relojes físicos" de diferentes participantes lleguen a un acuerdo completo. El maestro de sistemas distribuidos Lamport proporcionó un método descentralizado, transformó el problema en la relación entre el tiempo y el orden, y propuso el concepto de reloj lógico, al igual que la introducción de un "reloj biológico" para los sistemas distribuidos, incluida la cadena de bloques. stakefish compiló un artículo del analista de Vac y desarrollador de ENS, Dean Eigenmann, que presenta la discusión de Lamport sobre el tiempo, los relojes y el orden, y recuerda a todos que deben comprender la cadena de bloques y el tiempo del sistema distribuido desde otra perspectiva. ¿Qué tema es más apropiado para iniciar una serie de artículos sobre sistemas distribuidos? ¿Protocolo de transacciones de privacidad de Ethereum AZTEC? ¿El algoritmo de Paxos, que es notoriamente difícil de dominar? Estos temas se dejan para ser escritos más adelante. Hoy elegí un tema básico como inicio: el tema del tiempo en los sistemas distribuidos. Economista jefe de Wanxiang Blockchain: El banco central debería considerar cómo animar a Alipay a participar en la promoción del RMB digital: Zou Chuanwei, economista jefe de Wanxiang Blockchain, cree que la moneda digital tendrá cierto impacto en los pagos de terceros. En el escenario de pagos minoristas, habrá alguna relación de sustitución mutua entre el renminbi digital y el pago de terceros. El aumento en la participación del renminbi digital significa que las acciones de Alipay y WeChat disminuirán. En este enlace, el banco central debería considerar cómo alentar a instituciones como Alipay y WeChat a participar en la promoción del renminbi digital.La aplicación del renminbi digital también depende de la expansión de escenarios fuera de línea como Alipay y WeChat, y la penetración de Códigos QR. Zou Chuanwei dijo que se puede imaginar un diseño compatible con incentivos.Si Alipay y WeChat Pay ayudan a promover la aplicación del renminbi digital, pueden obtener más ingresos por intereses de las reservas de pago depositadas en el banco central. (First Finance and Economics) [2020/11/19 21:18:01] Este artículo interpreta el conocido artículo "Time, Clocks and Event Sequence in Distributed Systems (Tiempo, relojes y ordenación de eventos en un sistema distribuido ). Es divertido volver a leer este artículo mucho tiempo después y destilar los conceptos clave. Los amigos que no estén familiarizados con Leslie Lamport pueden hacerse una idea general. Es famoso por crear LaTeX, TLA+, Paxos y también analiza el problema general bizantino. Por supuesto, está el reloj Lamport (el primer reloj lógico), y también presentaremos sus conceptos básicos en este artículo. Wang Guoliang: La innovación de los tokens es en realidad la innovación de la industria de la cadena de bloques: Jinse Finance informó que el 24 de octubre, el evento de transmisión en vivo global de la cadena central "1024 Blockchain China Day" se llevó a cabo en Beijing, y la Rama de Economía Digital de China Communications El presidente de la Asociación de la Industria, Wang Guoliang, dijo que todos vieron que el proyecto de ley bancaria del Banco Popular de China se anunció ayer y está buscando opiniones de todos los ámbitos de la vida. Uno de ellos, el Artículo 22, son las fichas. Solo el Banco Popular de China ha el derecho a emitir tokens. Ninguna organización de la sociedad puede emitir billetes para emitir moneda. La cadena de bloques precisamente está innovando en el campo de la notarización, lo que significa que la cadena de bloques es un Internet de valor, que es un consenso mundial. Y el valor se mide en moneda de curso legal, ¿no? Innovar en este campo, por lo que debemos ser muy cautelosos al formular las leyes del Banco Popular de China. La innovación de los tokens es en realidad la innovación de la industria blockchain, por lo que esta es la experiencia que muchas empresas de nuestra industria han explorado. Como una organización de la industria, el comité especial tiene la obligación y la responsabilidad de dirigir o supervisar la industria. La innovación del blockchain, es decir, la innovación en este campo, es en realidad innovar en los puntos clave del enfoque legal. [2020/10/24] Veamos primero la definición de un sistema distribuido. La definición que da Lamport es esta: Dinámica | La multinacional de telecomunicaciones más grande de España apoyará a las startups de blockchain: Según cointelegraph, según un comunicado de prensa oficial del 19 de febrero, la multinacional de telecomunicaciones más grande de España, Telefónica, anunció Iniciativas para apoyar a los emprendedores en el sector tecnológico innovador, incluidas las tecnologías de cadena de bloques y de inteligencia artificial (IA). Telefónica ha lanzado su primera conferencia telefónica de "innovación abierta" del año a través de su filial de incubadora tecnológica, Telefónica Open Future. El programa de un mes de duración tiene como objetivo apoyar a las empresas emergentes y los proyectos innovadores, y las empresas emergentes seleccionadas serán promovidas y apoyadas por Global Open Future Network y Telefónica. [2019/2/21] "Si el retraso de la transmisión de información en un sistema no es despreciable en comparación con el tiempo entre eventos en un solo proceso, se llama un sistema distribuido". enviar y recibir un mensaje. Con la definición claramente definida, comenzamos la introducción formal. Ordenar eventos localmente no podría ser más fácil. Simplemente asigne a cada evento una marca de tiempo cuando sucedió. Podemos obtener el orden general de todos los eventos, lo que significa que todos los eventos se pueden organizar en un orden específico. Pero este problema es mucho más difícil en el contexto de los sistemas distribuidos. ¿por qué? Voz | Wu Zhongze, exviceministro del Ministerio de Ciencia y Tecnología: Blockchain y otras nuevas tecnologías impulsan la transformación industrial: Wu Zhongze, exviceministro del Ministerio de Ciencia y Tecnología, dijo en una conferencia que con el continuo surgimiento de emergentes tecnologías como big data y blockchain, el modelo de negocio global y el modelo de desarrollo económico se enfrentan a una nueva ronda de transformación industrial. Ha llegado la era de la economía digital, y la estrategia de desarrollo One Belt One Road brinda nuevas oportunidades de desarrollo y un amplio entorno de desarrollo para que China se globalice. [2018/8/19] Todo se debe a una naturaleza muy simple del sistema distribuido: después de que se envía el mensaje entre los nodos, puede llegar 0, 1 o más veces en cualquier punto en el futuro. En este caso, los distintos nodos del sistema distribuido no pueden ponerse de acuerdo sobre la hora. Por ejemplo: un nodo puede enviar un mensaje a otro nodo para marcar la hora actual como 12:00:00, pero el receptor no sabe cuánto tiempo tardó en enviarse el mensaje, por lo que no hay forma de confirmar si aún son las 12:00. :00 cuando llega :00. Si es así, es imposible determinar si la información está sincronizada incluso si los mensajes se envían y reciben durante un día completo entre nodos. Si no podemos ponernos de acuerdo sobre el tiempo, no podemos ponernos de acuerdo sobre la secuencia de eventos. Entonces, ¿cómo resolver este problema? En un sistema distribuido, múltiples nodos se comunican enviándose mensajes entre sí. Cuando el nodo recibe la información, primero la confirma y luego ejecuta su próximo evento. Tal orden muestra originalmente una "relación causal": la información debe enviarse antes de que pueda recibirse. Emma zhu de la cadena central de HPB: resuelva el cuello de botella de la cadena de bloques con una combinación de software y hardware: según los informes del reportero principal de Jinse Finance, Emma Zhu de la cadena central de HPB presentó "Cómo resolver el problema de la cadena de bloques a través de la combinación de software y hardware" en la "Conferencia de Blockchain TOKENSKY 2018". Cuello de botella de rendimiento de Blockchain" pronunció un discurso sobre el tema. Dijo que la tecnología blockchain ha recibido una atención sin precedentes recientemente y que la gente también ha visto su enorme potencial. Pero la velocidad de la cadena de bloques es siempre un cuello de botella en el desarrollo. HPB intenta superar este cuello de botella mediante la combinación de software y hardware, y mejorar a fondo la tecnología blockchain a través del código abierto. [2018/3/15] Anotación: Esta relación causal es una relación temporal, no una relación lógica entre causa y efecto. Entonces el orden puede trazarse en base a la relación de causalidad: el mensaje debe ser enviado antes de que sea recibido por él. Con solo mirar los dos eventos A y B, podemos describir el orden dando la relación de "sucede antes". Ahora bien, esta relación puede identificarse sin una noción sistemática del tiempo físico: si A tiene un efecto causal sobre B, el evento A debe haber ocurrido antes que el evento B. La causalidad nos permite determinar el orden de los eventos relacionados en un sistema, un orden parcial. El ordenamiento parcial también tiene una limitación: si no podemos determinar las dependencias, es posible que no sepamos el orden exacto de cada evento en el sistema. Debido a que puede haber muchos eventos simultáneamente en todo el sistema, no todos los nodos son conscientes de la ocurrencia de estos eventos. Reloj Pero ahora que tenemos un orden parcial, podemos agregar un reloj al sistema para obtener el orden total de todos los eventos en el sistema. Recién ahora sabemos que no es factible usar relojes físicos en sistemas distribuidos, por lo que necesitamos usar relojes lógicos. Un reloj lógico es esencialmente una función capaz de asignar un número a un evento. Este número representa el momento en que ocurrió el evento (de ahora en adelante nos referiremos a este número como tiempo), y no tiene relación con el tiempo físico. Suponemos que cada nodo en este sistema distribuido tiene un reloj. Este reloj avanza a medida que se ejecutan los eventos, pero el progreso del reloj no se considera un evento en el sistema. Para cada evento que ocurre en un nodo del sistema, el reloj lógico asigna un número al evento. De acuerdo con esta suposición, podemos satisfacer las siguientes condiciones de reloj: ∀a,b a → b ⟹ C(a) < C(b) ¿Qué significa la expresión anterior? La flecha "→" significa "sucedió antes (sucedió antes)", y C representa la función del reloj, que puede entenderse simplemente como tiempo. Entonces, para expresar el significado es: para cada evento a, b, si a ocurre antes de b, entonces el tiempo de a es menor que el tiempo de b. Pero la deducción inversa no es cierta, solo porque el tiempo de un evento es menor que el tiempo de otro evento, no se puede decir que este evento sucedió antes, pueden ser concurrentes. En la imagen de arriba, podemos ver que en el nodo α, ocurrió un evento en el tiempo 1 y el tiempo 2 respectivamente; el nodo β tiene un evento ocurrido en su propio tiempo 1. Los eventos en el tiempo 1 y el tiempo 2 en el nodo α son concurrentes con los eventos en el tiempo 1 en el nodo β y no existe una conexión causal. Si a y b son dos eventos en un solo nodo, y a ocurre antes que b, entonces el tiempo de a debería ser menor que el tiempo de b. Si a es un nodo que envía un mensaje y b es otro nodo que recibe un mensaje, entonces el tiempo de a debería ser menor que el tiempo de b. Los nodos necesitan dejar que el reloj marque entre eventos. De lo contrario, el reloj debe adelantarse a una hora posterior a la contenida en los mensajes recibidos de otros nodos. b puede suceder después de que el reloj se ajuste rápido. Ahora bien, podemos usar relojes que cumplan con estas condiciones para establecer una secuencia general de todo el sistema distribuido, aquí simplemente ordenamos según el tiempo dado por los relojes de cada evento. Caso de uso Finalmente configuramos una máquina de estado para ver el uso del reloj lógico. Por ejemplo, si tenemos un sistema distribuido, múltiples nodos quieren acceder a los recursos compartidos en él, y solo se puede acceder a un nodo a la vez. La máquina de estado debe cumplir las siguientes condiciones: Condición 1: el nodo que puede acceder al recurso debe liberar el recurso primero y luego otros nodos pueden acceder a él. Condición 2: Las solicitudes de recursos deben tener acceso en el orden en que se realizan las solicitudes. Condición 3: si cada nodo al que se le concede acceso finalmente libera el recurso, todas las solicitudes se concederán finalmente. ¿Por qué no introducir un coordinador intermedio? Porque en este caso, si ocurre una solicitud anterior pero llega más tarde, la condición 2 no se puede cumplir; otra razón es que esperamos adoptar una solución descentralizada. Así que todavía tenemos que construir condiciones para satisfacer este reloj lógico. ¿Cómo cumplir las condiciones? Lamport nos proporciona una solución descentralizada. Primero, queremos que todos los nodos almacenen una cola de solicitudes. En segundo lugar, se deben cumplir algunos supuestos simples: Supuesto 1: Todos los mensajes se reciben en el orden en que se enviaron. Supuesto 2: todos los mensajes finalmente se reciben. Suposición 3: cada nodo puede enviar mensajes directamente a todos los demás nodos del sistema. Si existen algoritmos y protocolos más complejos, se pueden ignorar las suposiciones anteriores. Ahora podemos definir un algoritmo que satisfaga estas 3 condiciones y demostrar la funcionalidad del reloj en la práctica: 1. Si un nodo quiere solicitar un recurso, creará una solicitud con la hora actual, la agregará a su cola y enviará a todos los demás nodos. 2. Todos los demás nodos colocan esta solicitud en su cola y envían un mensaje de respuesta. 3. El nodo que liberó el recurso envía un mensaje de liberación con la hora actual y elimina la solicitud original de su cola. 4. Cuando el nodo reciba el mensaje de liberación, borrará la solicitud relacionada de su propia cola. 5. Cuando un nodo tiene su propia solicitud en su cola antes que cualquier otra solicitud (en orden cronológico), puede acceder libremente a ese recurso y ha recibido mensajes de todos los demás nodos después de ese tiempo. El algoritmo anterior es un algoritmo descentralizado que cada nodo ejecuta de forma completamente independiente.Utiliza el reloj para clasificar las solicitudes de acuerdo con el orden general, para realizar el acceso a los recursos y la coordinación entre los nodos. Bueno, aprendimos cómo usar estos relojes lógicos para clasificar eventos en un sistema distribuido a través del artículo y analizamos la aplicación práctica de determinar la secuencia cuando un sistema distribuido accede a los recursos. Bienvenidos los comentarios de todos, continuaré actualizando más artículos sobre sistemas distribuidos.
Tags:
Un total de 1041 palabras en este artículo Tiempo estimado de lectura: 3 minutos 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa es la dirección ("Dirección de Génesis") para reclamar las recompensas del bloque de génesis de Bitco.
En la última conferencia, analicé contigo el campo de los "contratos inteligentes" en la industria de la cadena de bloques. En esta lección.
Jinse Finance Blockchain, noticias del 3 de febrero Recientemente.
El "tiempo" es un tema eterno en los tiempos cambiantes. Se han producido debates sobre el tiempo en blockchains y otros sistemas distribuidos. El tiempo conecta procesos y nodos.
Jinse Finance Blockchain, 30 de enero, en los últimos cinco años.
Libra es follada por FacebookDesde que el gigante de las redes sociales Facebook anunció sus planes para una criptomoneda.
Mirando la esperanza de blockchain desde la burbuja de la Internet tempranaAutor: Erguotou Erguotou (Erguotou cifrado) Recientemente.