Unterschied zwischen Onkelblock und gegabelten Blöcken

Zum Beispiel https://etherscan.io/uncles und https://etherscan.io/blocks_forked , welcher Unterschied zwischen ihnen?

Antworten (2)

Dies ist nur eine Teilantwort.

Hier sind einige Unterschiede, die mir beim Betrachten der verlinkten Seiten in Ihrer Frage aufgefallen sind:

Miner-Belohnung . Gegabelte Blöcke brachten den Bergleuten eine volle Belohnung (5 ETH + Gasgebühren), während Onkelblöcke ihnen nur einen Bruchteil davon einbrachten

Zahlen Stand heute (7. Juli 2017, 12:25 Uhr) gibt es nur 15.584 gegabelte Blöcke auf der Blockchain im Vergleich zu 310.542 Onkeln. Aus irgendeinem Grund (den ich hoffentlich von jemand anderem erklären kann) sind verzweigte Blöcke viel seltener.

Beziehung Einige gegabelte Blöcke beinhalten Onkel und andere nicht. Onkelblöcke enthalten per Definition alle einen oder zwei Onkel.

Ein weiterer großer Unterschied besteht darin, dass nach der Blockchain-Reorganisation gegabelte Blöcke aus der Haupt-Blockchain ausgeschlossen werden (gemäß der von Ihnen bereitgestellten Erklärung auf der etherscan.io-Seite), während Onkel weiterhin in die Blockchain aufgenommen/referenziert werden können, und das ist es tatsächlich ermutigt aus einer Reihe von Gründen, die Vitalik in diesem Artikel erklärt :

Veraltete Blöcke in Ethereum können als „Onkel“ wieder in die Kette aufgenommen werden, wo sie bis zu 75 % ihrer ursprünglichen Blockbelohnung erhalten. Diese Mechanik wurde ursprünglich eingeführt, um den Zentralisierungsdruck zu verringern, indem der Vorteil verringert wird, den gut vernetzte Bergleute gegenüber schlecht vernetzten Bergleuten haben, aber sie hat auch mehrere Nebenvorteile, von denen einer darin besteht, dass veraltete Blöcke für alle Zeiten in einer sehr leicht durchsuchbaren Form verfolgt werden Datenbank – die Blockchain selbst.

Nachdem ich all diese Unterschiede festgestellt und einige Webrecherchen durchgeführt hatte, konnte ich immer noch nicht zum Kernunterschied zwischen beiden Arten von Blöcken (dh Fork und Onkel) gelangen. Ich hoffe, andere helfen bei der weiteren Klärung.

Onkelblock ist also ein Block, der gleichzeitig von einem anderen Miner gefunden wurde, aber wie fügt er sich in die Blockchain ein? Wie ich es verstanden habe, der erste Miner, der einen Block gefunden hat, geht in die Blockchain, der zweite Miner, der ihn auch gefunden hat, hat nur im Original verfolgt, dass er an einer Position, an der der Block gefunden wurde, einen Onkel hat, richtig?
Deine Antwort ist vielleicht etwas irreführend. Gegabelte Blöcke bringen den Minern überhaupt keine Belohnung ein, da sie nicht in der Ethereum-Kette enthalten sind. Die auf etherscan angezeigten Zahlen sind nicht schlüssig. Etherscan zeigt nur die neu organisierten und geforkten Blöcke, die ihre eigenen Knoten sehen. Wenn ihre Knoten schlecht mit dem Rest des Netzwerks verbunden sind, würde dies zu einer hohen Anzahl von gegabelten Blöcken und Reorgs führen.
Wenn gegabelte Blöcke nicht in der Hauptkette enthalten sind, wo findet Etherscan diese Blöcke? Stimmt es, dass jedes Mal, wenn Sie zu einer längeren Kette wechseln, die alte zu einer Gabel wird, während wenn jemand anderes Ihnen eine kürzere Kette zuschiebt, diese zu einem Onkel wird?
@jotud es macht für mich mehr Sinn, dass gegabelter Block keine Belohnung verdient. Aber warum ist es wertvoll, sie auf Etherscan zu zeigen? Weil es hilft zu messen, wie viel Rechenleistung verschwendet wird?

Gültige Blöcke, die nicht in der Ethereum-Hauptkette enthalten sind, weil sie etwas zu spät gefunden wurden, werden weiterhin an das Netzwerk übermittelt. Bergleute können diese Blöcke als „Onkel“ einschließen, wenn sie nicht „älter“ (weiter weg) als 7 Blöcke sind. Sie erhalten einen bestimmten Zuschlag zur Belohnung (einen Bruchteil) und der ursprüngliche Miner des Onkels erhält ebenfalls eine Belohnung, die mit dem „Alter“ oder der „Entfernung“ des Onkels abnimmt.

Es scheint, als ob die Seite mit gegabelten Blöcken Blöcke zeigt, die aus irgendeinem Grund gegabelt wurden (z. B. und meistens, weil sie etwas zu spät waren), die aber später NICHT als Onkel enthalten sind. Die Onkel-Seite zeigt nur die Blöcke, die tatsächlich als Onkel in der Ethereum-Kette erfasst sind.

Während die Liste der Onkel vollständig ist, da sie aus der Blockchain ausgelesen werden kann, muss beachtet werden, dass die Liste der Fork-Blöcke von der Konnektivität der Knoten von Etherscan abhängt und daher nicht abschließend ist.

Vielen Dank! Dies ist wahrscheinlich die klarste Definition, die ich bisher gesehen habe, um zu erklären, wie gegabelte Blöcke im Vergleich zu Onkels Arbeit funktionieren. Auf den ersten Blick scheint es dann, dass Sie sich darauf verlassen müssen, den übergeordneten Hash eines Blocks zu überprüfen und ihn mit Blöcken zu vergleichen, die Sie zuvor aufgezeichnet haben, um festzustellen, ob Sie fälschlicherweise gegabelte Blöcke als Wahrheit aufgenommen haben.