04 · Cuando crece el uso
¿Qué pasa cuando muchas más personas quieren usar una red?
Cada acción en una red exige trabajo.
La información tiene que llegar a otras computadoras.
Las transacciones tienen que comprobarse.
Los bloques tienen que comprobarse y guardarse.
Y en las redes que ejecutan programas, el cómputo y su resultado también tienen que verificarse.
Ahora imagina que el uso crece de forma drástica mientras todos siguen esperando que la red responda rápido.
Más uso significa más trabajo para las computadoras que comprueban la red
Cuando más personas envían transacciones, las computadoras de la red reciben más información.
Tienen que verificar más transacciones, procesar más bloques y conservar la información necesaria para comprobar qué pasa después.
Si hay contratos inteligentes, algunas acciones exigen más cómputo y actualizan más datos.
Así que:
La actividad no desaparece solo porque queramos que la red sea más rápida.
Las computadoras todavía tienen que procesarla y verificarla.
Cuánta actividad puede manejar una red y con qué rapidez obtiene una respuesta quien la usa son preguntas distintas
Una red puede ser capaz de procesar una gran cantidad de actividad a lo largo del tiempo.
Eso es una cuestión de capacidad / rendimiento.
Pero quien la usa también pregunta:
¿Cuánto falta para que vea mi acción incluida?
y
¿Cuánto falta para que tenga confianza suficiente para depender de ella?
Estas preguntas están relacionadas, pero no son idénticas.
Así que, cuando alguien dice que una red es «rápida», conviene preguntar:
¿Qué se volvió más rápido, exactamente?
¿Por qué no hacer simplemente que la red haga mucho más?
Una red puede intentar meter más actividad en cada bloque.
Puede crear bloques con más frecuencia.
Puede exigir computadoras más potentes.
Cada una de esas opciones puede aumentar el rendimiento.
Pero crean otra pregunta importante:
¿Quién puede seguir el ritmo y verificar la red de forma independiente?
Si la verificación independiente exige servidores extremadamente caros y conectividad de nivel de centro de datos, menos personas pueden operar su propio nodo.
Más usuarios van a tener que depender de servicios grandes para que comprueben la red por ellos.
Por eso el rendimiento y la descentralización están conectados.
Incluso con un uso intenso, las reglas tienen que seguir siendo confiables
Una red muy rápida no sirve si las reglas de pago se pueden esquivar.
Igual tiene que impedir que alguien gaste dinero que no es suyo, que gaste el mismo dinero dos veces o que reemplace con facilidad una historia en la que los usuarios ya confiaron.
Por eso un solo número, como el TPS, no puede decirnos por sí mismo si una red es «mejor».
Queremos varias cosas a la vez:
Más actividad.
Respuesta rápida.
Verificación independiente.
Reglas que sean difíciles de esquivar.
Los bloques más rápidos crean otro desafío
La información no viaja por internet al instante.
Imagina que un minero encuentra un bloque nuevo y lo publica.
El bloque empieza a propagarse por la red.
Antes de que otro minero se entere, ese segundo minero también puede encontrar un bloque nuevo construido sobre la misma historia anterior.
Ahora existen dos bloques válidos, y ninguno de los mineros conocía el bloque del otro cuando se creó.
No hace falta que se encuentren en el mismo segundo exacto.
El segundo bloque solo tiene que encontrarse antes de que llegue la noticia del primero.
El minero A encuentra un bloque nuevo y difunde la información hacia el resto de la red. Varias señales ámbar se extienden hacia afuera, incluida una hacia el minero B. Antes de que esa información llegue, el minero B encuentra por su cuenta otro bloque válido, construido sobre el mismo historial anterior. Ninguno de los dos hallazgos tiene que ocurrir en el mismo instante. Esta animación no decide qué bloque gana.
Cuanto más frecuentemente se crean los bloques, más a menudo puede pasar esto
Si pasan minutos entre un bloque y otro, la información suele tener tiempo de sobra para propagarse antes de que aparezca el siguiente.
Si los bloques se crean muchas veces por segundo, se vuelve más probable que varios mineros encuentren bloques antes de enterarse unos de otros.
En Bitcoin, situaciones como esta pueden crear ramas temporales. Con el tiempo, una rama válida se convierte en la cadena principal según el trabajo acumulado.
Eso significa que parte del trabajo hecho en paralelo no permanece en la cadena principal.
Así que el desafío no es simplemente «hacer que todo sea más rápido»
La meta no es solo crear más bloques.
La meta es sostener más actividad y una respuesta más rápida, y al mismo tiempo mantener la red práctica para que participantes independientes la verifiquen.
Y cuando los bloques se crean rápido, la red necesita una mejor forma de tratar el trabajo que ocurre en paralelo.
Eso lleva a una pregunta nueva:
¿Y si dos bloques válidos creados en paralelo no tuvieran que competir por un solo lugar en la historia?
