Zum Inhalt springen

Ethereum-Prioritätsgebühr

Ein Praxisleitfaden zu Ethereum-EIP-1559-Prioritätsgebühren, Gebührenobergrenzen, effektivem Gaspreis, Aufnahmeanreizen, Schätzung, Ersetzung und Belegabgleich.

Aktualisiert

Nur zu Bildungszwecken; keine Transaktions-, Sicherheits- oder Anlageberatung. Gebühren und Aufnahme hängen von der konkreten Chain, dem Transaktionstyp, den Blockbedingungen sowie dem Verhalten von Wallet, RPC, Relay, Builder und Validator ab.

Direkte Antwort

Bei Ethereum ist die Prioritätsgebühr, auch Trinkgeld genannt, der Betrag je Ausführungs-Gaseinheit, der nach dem Verbrennen der Grundgebühr durch das Protokoll für den Gebührenempfänger des Blocks verbleibt. Bei einer EIP-1559-Transaktion vom Typ 2 ist maxPriorityFeePerGas nur eine Obergrenze: Die realisierte Prioritätsgebühr je Gas beträgt min(maxPriorityFeePerGas, maxFeePerGas - baseFeePerGas), und der effektive Gaspreis ist die Grundgebühr plus diese realisierte Prioritätsgebühr.

Ein höheres wettbewerbsfähiges Trinkgeld kann die Chance auf zeitnahe Aufnahme verbessern, garantiert aber weder den nächsten Block noch eine bestimmte Reihenfolge oder erfolgreiche Ausführung. Die Transaktion muss weiterhin gültig sein, ihre Gesamtgebührenobergrenze muss die Grundgebühr des Aufnahmeblocks decken, und Builder oder Validatoren können privaten Orderflow, Bundles, MEV, lokale Richtlinien und weitere Einschränkungen berücksichtigen. Auf anderen Chains und L2s unterscheiden sich Begriffe und Gebührenregeln; die Ethereum-Formel darf daher nicht ungeprüft übertragen werden.

Netzwerkgebühr
0,000462 native
Fiat-Äquivalent
$1,39
Grundgebühr
22 gwei

Die Ergebnisse sind vereinfachte Bildungsmodelle. Sofern nicht anders angegeben, berücksichtigen sie keine Handelsplatzregeln, Steuern, Latenz, Oracle-Eigenschaften oder sonstigen protokollspezifischen Parameter.

Funktionsweise

  1. Legen Sie Chain, Transaktionstyp, Absender, Nonce, beabsichtigte Calldata, Gaslimit, aktuellen Head und Übermittlungsweg fest. Typ-2-Transaktionen enthalten maxPriorityFeePerGas und maxFeePerGas; Legacy-Transaktionen enthalten einen einzigen gasPrice, dessen Betrag oberhalb der Grundgebühr bei Aufnahme nach EIP-1559 zum effektiven Prioritätsanteil wird.
  2. Schätzen Sie die Bedingungen, statt ein statisches Trinkgeld zu kopieren. Wallet oder RPC können jüngste Blöcke, wartende Nachfrage und eth_feeHistory verwenden; dessen Belohnungsperzentile beschreiben historische, nach verbrauchtem Gas gewichtete effektive Prioritätsgebühren und sind kein Versprechen für den nächsten Block.
  3. Setzen Sie zwei getrennte Obergrenzen. maxPriorityFeePerGas begrenzt das gewünschte Trinkgeld, maxFeePerGas begrenzt Grundgebühr plus Trinkgeld. Nicht verbrauchtes Gas und ungenutzter Spielraum der Obergrenze werden nicht allein wegen der Autorisierung berechnet.
  4. Für einen Kandidatenblock muss maxFeePerGas >= baseFeePerGas gelten. Berechnen Sie dann effectivePriorityFeePerGas = min(maxPriorityFeePerGas, maxFeePerGas - baseFeePerGas) und effectiveGasPrice = baseFeePerGas + effectivePriorityFeePerGas.
  5. Verstehen Sie das Trinkgeld als Aufnahmeanreiz, nicht als Reihenfolgevertrag. Ein Block-Builder kann Gesamtblockwert, Bundles und Gültigkeitsbedingungen optimieren, statt alle öffentlichen Transaktionen nach Trinkgeld zu sortieren; null oder wenig Trinkgeld kann aufgenommen werden, während hohes Trinkgeld warten oder scheitern kann.
  6. Gleichen Sie nach der Aufnahme Beleg und Block ab. Erfassen Sie gasUsed, effectiveGasPrice aus dem Beleg, baseFeePerGas des Blocks, Status, Block-Hash und Bestätigungstiefe. Die Ausführungsgebühr ist gasUsed * effectiveGasPrice, der Prioritätsanteil gasUsed * (effectiveGasPrice - baseFeePerGas).
  7. Bleibt eine Transaktion ausstehend, bewerten Sie Grundgebührenobergrenze und Übermittlungsweg vor einer Ersetzung neu. Die Ersetzung bei gleichem Absender und gleicher Nonce folgt Client- und Poolrichtlinien, verlangt oft Erhöhungen mehrerer Gebührenfelder und erzeugt ein Rennen; die Abbrechen-Funktion einer Wallet kann eine bereits aufgenommene Transaktion nicht rückgängig machen.

Rechenbeispiele

  • Trinkgeld unter beiden Obergrenzen. Verbraucht werden 70,000 Gas, die Grundgebühr beträgt 25 gwei, die maximale Prioritätsgebühr 3 gwei und die maximale Gebühr 40 gwei. Die realisierte Prioritätsgebühr ist min(3, 40 - 25) = 3 gwei; der effektive Gaspreis ist 28 gwei. Die Ausführungsgebühr beträgt 70,000 * 28 gwei = 0.001960 ETH, aufgeteilt in 0.001750 ETH verbrannt und 0.000210 ETH als Prioritätsanteil gutgeschrieben.
  • Gesamtobergrenze bindet. Die Obergrenzen bleiben bei 3/40 gwei, die Grundgebühr des Aufnahmeblocks steigt aber auf 38 gwei. Die realisierte Prioritätsgebühr sinkt auf min(3, 40 - 38) = 2 gwei, der effektive Gaspreis beträgt somit 40 gwei. Bei einer Grundgebühr von 41 gwei kann die Transaktion trotz des hohen gewünschten Trinkgelds unter der maximalen Gebühr von 40 gwei nicht aufgenommen werden.
  • Eine Schätzung ist keine Garantie. Wenn jüngste eth_feeHistory-Perzentile 2 gwei nahelegen, ist diese Beobachtung ein Ausgangspunkt. Ein plötzlicher Nachfrageschub, ein privates Bundle, die begrenzte Sicht eines RPC oder die Richtlinie eines Builders können das Aufnahmeergebnis ändern; prüfen Sie den tatsächlichen Beleg, statt die Schätzung als Leistungszusage zu behandeln.

Risiken

  • Falsche Chain, falsches Gebührentoken, falscher Transaktionstyp oder falsche Einheiten wie wei, gwei und ETH.
  • maxPriorityFeePerGas als zwingend gezahlten Betrag behandeln.
  • Übersehen, dass eine steigende Grundgebühr das realisierte Trinkgeld drückt oder die Transaktion unter maxFeePerGas unzulässig macht.
  • Annehmen, das höchste sichtbare Trinkgeld garantiere den ersten Platz oder die Aufnahme in den nächsten Block.
  • Bei schnell wechselnder Nachfrage veralteten Wallet-, RPC- oder Gebührenverlaufsschätzungen vertrauen.
  • Wegen aggressiver Wallet-Vorgaben oder der Verwechslung von Obergrenzen und Istkosten zu viel zahlen.
  • Glauben, ein hohes Trinkgeld behebe ungültige Calldata, zu wenig Gas, einen Revert, eine abgelaufene Frist oder einen bösartigen Vertrag.
  • Private Relays, Bundles, MEV, Zensur und Richtlinien von Buildern oder Validatoren ignorieren.
  • Die falsche Nonce ersetzen, eine Erhöhungsregel des Pools verfehlen oder widersprüchliche wertübertragende Transaktionen senden.
  • Eine Ausstehend-Anzeige als globale Wahrheit oder eine Bestätigung als Finalität lesen.
  • Die Ethereum-Formel für Ausführungstrinkgeld auf ein L2 oder eine andere Chain mit abweichenden Gebührenbestandteilen und Empfängern anwenden.

Häufige Irrtümer

  • Die maximale Prioritätsgebühr wird immer bezahlt. Sie ist eine Obergrenze; die Gesamtgebührenobergrenze kann das realisierte Trinkgeld reduzieren.
  • Ein höheres Trinkgeld garantiert Erfolg. Es kann die Aufnahmechancen verbessern, garantiert aber weder Reihenfolge noch Ausführungserfolg oder Finalität.
  • Die maximale Gebühr kommt zusätzlich zu Grundgebühr und Trinkgeld hinzu. Bei Typ-2-Ausführungsgas ist sie die Obergrenze für beides.
  • Nicht verbrauchtes Gas oder ungenutzter Gebührenspielraum wird ausgegeben. Die tatsächliche Ausführungsgebühr verwendet Gasverbrauch und effektiven Gaspreis aus dem Beleg.
  • Jedes Netzwerk verwendet Ethereums Prioritätsmechanik. L2s und andere Chains können zusätzliche oder andere Gebührenmärkte, Sequencer-Richtlinien und Empfänger haben.

Verwandte Themen

Quellen

Navigation

Wiki durchsuchen...