Γιατί η απόδοση του Blockchain είναι δύσκολο να μετρηθεί η ευφυΐα δεδομένων PlatoBlockchain. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Γιατί είναι δύσκολο να μετρηθεί η απόδοση του Blockchain

Η απόδοση και η επεκτασιμότητα είναι πολυσυζητημένες προκλήσεις στον χώρο των κρυπτογράφησης, που σχετίζονται τόσο με έργα επιπέδου 1 (ανεξάρτητες αλυσίδες μπλοκ) όσο και με λύσεις επιπέδου 2 (όπως συλλογές και κανάλια εκτός αλυσίδας). Ωστόσο, δεν έχουμε τυποποιημένες μετρήσεις ή σημεία αναφοράς. Οι αριθμοί αναφέρονται συχνά με ασυνεπείς και ημιτελείς τρόπους, καθιστώντας δύσκολη την ακριβή σύγκριση των έργων και συχνά αποκρύπτοντας αυτό που έχει μεγαλύτερη σημασία στην πράξη. 

Χρειαζόμαστε μια πιο λεπτή και εμπεριστατωμένη προσέγγιση για τη μέτρηση και τη σύγκριση της απόδοσης – μια προσέγγιση που αναλύει την απόδοση σε πολλαπλά στοιχεία και συγκρίνει τις ανταλλαγές μεταξύ πολλών αξόνων. Σε αυτήν την ανάρτηση, ορίζω τη βασική ορολογία, περιγράφω τις προκλήσεις και προσφέρω οδηγίες και βασικές αρχές που πρέπει να έχετε υπόψη κατά την αξιολόγηση της απόδοσης του blockchain. 

Επεκτασιμότητα έναντι απόδοσης

Αρχικά, ας ορίσουμε δύο όρους, την επεκτασιμότητα και την απόδοση, οι οποίοι έχουν τυπικές έννοιες της επιστήμης των υπολογιστών που χρησιμοποιούνται συχνά σε περιβάλλοντα blockchain. επίδοση μετρά τι είναι ένα σύστημα επί του παρόντος σε θέση να επιτύχει. Όπως θα συζητήσουμε παρακάτω, οι μετρήσεις απόδοσης μπορεί να περιλαμβάνουν συναλλαγές ανά δευτερόλεπτο ή διάμεσο χρόνο επιβεβαίωσης συναλλαγής. Απεριόριστες δυνατότητες, από την άλλη, μετρά το την ικανότητα ενός συστήματος να βελτιώνει την απόδοση με την προσθήκη πόρων.

Αυτή η διάκριση είναι σημαντική: Πολλές προσεγγίσεις για τη βελτίωση της απόδοσης δεν βελτιώνουν καθόλου την επεκτασιμότητα, όταν ορίζονται σωστά. Ένα απλό παράδειγμα είναι η χρήση ενός πιο αποτελεσματικού σχήματος ψηφιακών υπογραφών, όπως οι υπογραφές BLS, οι οποίες έχουν περίπου το μισό μέγεθος των υπογραφών Schnorr ή ECDSA. Εάν το Bitcoin άλλαζε από ECDSA σε BLS, ο αριθμός των συναλλαγών ανά μπλοκ θα μπορούσε να αυξηθεί κατά 20-30%, βελτιώνοντας την απόδοση μέσα σε μια νύχτα. Αλλά μπορούμε να το κάνουμε αυτό μόνο μία φορά — δεν υπάρχει ένα ακόμη πιο αποδοτικό σχέδιο υπογραφών στο χώρο για μετάβαση (οι υπογραφές BLS μπορούν επίσης να συγκεντρωθούν για εξοικονόμηση περισσότερου χώρου, αλλά αυτό είναι ένα άλλο μοναδικό κόλπο).

Μια σειρά από άλλα μεμονωμένα κόλπα (όπως το SegWit) είναι δυνατά σε blockchains, αλλά χρειάζεστε μια κλιμακούμενη αρχιτεκτονική για να επιτύχετε συνεχή βελτίωση της απόδοσης, όπου η προσθήκη περισσότερων πόρων βελτιώνει την απόδοση με την πάροδο του χρόνου. Αυτή είναι η συμβατική σοφία και σε πολλά άλλα συστήματα υπολογιστών, όπως η κατασκευή ενός διακομιστή web. Με μερικά κοινά κόλπα, μπορείτε να δημιουργήσετε έναν πολύ γρήγορο διακομιστή. αλλά τελικά, χρειάζεστε μια αρχιτεκτονική πολλών διακομιστών που μπορεί να καλύψει τη συνεχώς αυξανόμενη ζήτηση προσθέτοντας συνεχώς επιπλέον διακομιστές.

Η κατανόηση της διάκρισης βοηθά επίσης στην αποφυγή του κοινού σφάλματος κατηγορίας που βρίσκεται σε δηλώσεις όπως, "Το Blockchain X είναι εξαιρετικά επεκτάσιμο, μπορεί να χειριστεί συναλλαγές Y ανά δευτερόλεπτο!" Ο δεύτερος ισχυρισμός μπορεί να είναι εντυπωσιακός, αλλά είναι α επίδοση μετρική, όχι μέτρηση επεκτασιμότητας. Δεν μιλάει για την ικανότητα βελτίωσης της απόδοσης με την προσθήκη πόρων.

Η επεκτασιμότητα απαιτεί εγγενώς την εκμετάλλευση του παραλληλισμού. Στον χώρο του blockchain, η κλιμάκωση του επιπέδου 1 φαίνεται να απαιτεί διαμοιρασμό ή κάτι που μοιάζει με διαμοιρασμό. Η βασική έννοια του διαμοιρασμού — διαχωρισμός της κατάστασης σε κομμάτια, έτσι ώστε διαφορετικοί επικυρωτές να μπορούν να επεξεργάζονται ανεξάρτητα — ταιριάζει πολύ με τον ορισμό της επεκτασιμότητας. Υπάρχουν ακόμη περισσότερες επιλογές στο Επίπεδο 2 που επιτρέπουν την προσθήκη παράλληλης επεξεργασίας — συμπεριλαμβανομένων καναλιών εκτός αλυσίδας, διακομιστών συλλογής και πλευρικών αλυσίδων.

Καθυστέρηση έναντι απόδοσης

Κλασικά, η απόδοση του συστήματος blockchain αξιολογείται σε δύο διαστάσεις, την καθυστέρηση και την απόδοση: Η καθυστέρηση μετρά πόσο γρήγορα μπορεί να επιβεβαιωθεί μια μεμονωμένη συναλλαγή, ενώ η διεκπεραίωση μετρά τον συνολικό ρυθμό συναλλαγών με την πάροδο του χρόνου. Αυτοί οι άξονες ισχύουν τόσο για συστήματα επιπέδου 1 και επιπέδου 2, όσο και για πολλούς άλλους τύπους συστημάτων υπολογιστών (όπως μηχανές αναζήτησης βάσεων δεδομένων και διακομιστές Ιστού).

Δυστυχώς, τόσο η καθυστέρηση όσο και η απόδοση είναι πολύπλοκα στη μέτρηση και τη σύγκριση. Επιπλέον, οι μεμονωμένοι χρήστες δεν ενδιαφέρονται πραγματικά για τη διεκπεραίωση (που είναι ένα μέτρο για όλο το σύστημα). Αυτό που τους ενδιαφέρει πραγματικά είναι η καθυστέρηση και οι χρεώσεις συναλλαγών — πιο συγκεκριμένα, οι συναλλαγές τους να επιβεβαιώνονται όσο το δυνατόν γρηγορότερα και όσο το δυνατόν πιο φθηνά. Αν και πολλά άλλα συστήματα υπολογιστών αξιολογούνται επίσης σε βάση κόστους/απόδοσης, τα τέλη συναλλαγών είναι ένας κάπως νέος άξονας απόδοσης για συστήματα blockchain που δεν υπάρχει πραγματικά στα παραδοσιακά συστήματα υπολογιστών.

Προκλήσεις στη μέτρηση του λανθάνοντος χρόνου

Η καθυστέρηση φαίνεται στην αρχή απλή: πόσος χρόνος χρειάζεται για να επιβεβαιωθεί μια συναλλαγή; Αλλά υπάρχουν πάντα αρκετοί διαφορετικοί τρόποι για να απαντήσετε σε αυτήν την ερώτηση.

Πρώτον, μπορούμε να μετρήσουμε την καθυστέρηση μεταξύ διαφορετικών χρονικών σημείων και να έχουμε διαφορετικά αποτελέσματα. Για παράδειγμα, ξεκινάμε να μετράμε τον λανθάνοντα χρόνο όταν ο χρήστης πατήσει ένα κουμπί «υποβολή» τοπικά ή όταν η συναλλαγή φτάσει στο mempool; Και σταματάμε το ρολόι όταν η συναλλαγή βρίσκεται σε ένα προτεινόμενο μπλοκ ή όταν ένα μπλοκ επιβεβαιώνεται με ένα μπλοκ παρακολούθησης ή έξι;

Η πιο κοινή προσέγγιση λαμβάνει την άποψη των επικυρωτών, που μετρούν από τη στιγμή που ο πελάτης μεταδίδει για πρώτη φορά μια συναλλαγή έως τη στιγμή που μια συναλλαγή "επιβεβαιώνεται" εύλογα (με την έννοια ότι οι έμποροι του πραγματικού κόσμου θα εξέταζαν μια πληρωμή που έλαβε και θα απελευθερώσει το εμπόρευμα) . Φυσικά, διαφορετικοί έμποροι μπορεί να εφαρμόζουν διαφορετικά κριτήρια αποδοχής και ακόμη και ένας μόνο έμπορος μπορεί να χρησιμοποιεί διαφορετικά πρότυπα ανάλογα με το ποσό της συναλλαγής.

Η προσέγγιση που επικεντρώνεται στον επικυρωτή παραλείπει πολλά πράγματα που έχουν σημασία στην πράξη. Πρώτον, αγνοεί τον λανθάνοντα χρόνο στο δίκτυο peer-to-peer (πόσος χρόνος χρειάζεται από τη στιγμή που ο πελάτης εκπέμπει μια συναλλαγή έως όταν την έχουν ακούσει οι περισσότεροι κόμβοι;) και τον λανθάνοντα χρόνο από την πλευρά του πελάτη (πόσος χρόνος χρειάζεται για να προετοιμαστεί μια συναλλαγή στο τοπικό μηχάνημα του πελάτη;). Ο λανθάνων χρόνος από την πλευρά του πελάτη μπορεί να είναι πολύ μικρός και προβλέψιμος για απλές συναλλαγές όπως η υπογραφή μιας πληρωμής Ethereum, αλλά μπορεί να είναι σημαντικός για πιο περίπλοκες περιπτώσεις, όπως η απόδειξη ότι μια θωρακισμένη συναλλαγή Zcash είναι σωστή.

Ακόμα κι αν τυποποιήσαμε το χρονικό διάστημα που προσπαθούμε να μετρήσουμε με καθυστέρηση, η απάντηση είναι σχεδόν πάντα εξαρτάται. Κανένα σύστημα κρυπτονομισμάτων που δημιουργήθηκε ποτέ δεν έχει προσφέρει σταθερή καθυστέρηση συναλλαγών. Ένας βασικός εμπειρικός κανόνας που πρέπει να θυμάστε είναι:

Η καθυστέρηση είναι μια κατανομή, όχι ένας ενιαίος αριθμός.

Η ερευνητική κοινότητα δικτύωσης το έχει καταλάβει εδώ και καιρό (βλ., για παράδειγμα, αυτό εξαιρετική ομιλία του Gil Tene). Ιδιαίτερη έμφαση δίνεται στη «μακριά ουρά» της διανομής, καθώς μια εξαιρετικά αυξημένη καθυστέρηση ακόμη και στο 0.1% των συναλλαγών (ή ερωτημάτων διακομιστή ιστού) θα επιπτώσεις τελικούς χρήστες.

Με τις αλυσίδες μπλοκ, η καθυστέρηση επιβεβαίωσης μπορεί να διαφέρει για διάφορους λόγους:

Παρτίδα: Τα περισσότερα συστήματα ομαδοποιούν τις συναλλαγές κατά κάποιο τρόπο, για παράδειγμα σε μπλοκ στα περισσότερα συστήματα επιπέδου 1. Αυτό οδηγεί σε μεταβλητή καθυστέρηση, επειδή ορισμένες συναλλαγές θα πρέπει να περιμένουν μέχρι να γεμίσει η παρτίδα. Άλλοι μπορεί να σταθούν τυχεροί και να συμμετάσχουν στην παρτίδα τελευταίοι. Αυτές οι συναλλαγές επιβεβαιώνονται αμέσως και δεν αντιμετωπίζουν επιπλέον καθυστέρηση.

Μεταβλητή συμφόρηση: Τα περισσότερα συστήματα υποφέρουν από συμφόρηση, που σημαίνει ότι δημοσιεύονται περισσότερες συναλλαγές (τουλάχιστον μερικές φορές) από όσες μπορεί να χειριστεί αμέσως το σύστημα. Ο βαθμός συμφόρησης μπορεί να ποικίλλει όταν οι συναλλαγές μεταδίδονται σε απρόβλεπτες ώρες (συχνά αφηρημένα ως α Διαδικασία Poisson) ή όταν το ποσοστό των νέων συναλλαγών αλλάζει κατά τη διάρκεια της ημέρας ή της εβδομάδας ή ως απόκριση σε εξωτερικά συμβάντα όπως μια δημοφιλής κυκλοφορία NFT.

Διακύμανση συναινετικού επιπέδου: Η επιβεβαίωση μιας συναλλαγής στο Επίπεδο 1 απαιτεί συνήθως ένα κατανεμημένο σύνολο κόμβων για να επιτευχθεί συναίνεση σε ένα μπλοκ, το οποίο μπορεί να προσθέσει μεταβλητές καθυστερήσεις ανεξάρτητα από τη συμφόρηση. Τα συστήματα απόδειξης εργασίας βρίσκουν μπλοκ σε απρόβλεπτους χρόνους (επίσης αφηρημένα μια διαδικασία Poisson). Τα συστήματα απόδειξης στοιχήματος μπορούν επίσης να προσθέσουν διάφορες καθυστερήσεις (για παράδειγμα, εάν ένας ανεπαρκής αριθμός κόμβων είναι συνδεδεμένοι για να σχηματιστεί μια επιτροπή σε έναν γύρο ή εάν απαιτείται αλλαγή προβολής ως απάντηση σε συντριβή ενός ηγέτη).

Για αυτούς τους λόγους, μια καλή οδηγία είναι:

Οι αξιώσεις σχετικά με τον λανθάνοντα χρόνο θα πρέπει να παρουσιάζουν μια κατανομή (ή ιστόγραμμα) των χρόνων επιβεβαίωσης, αντί για έναν μεμονωμένο αριθμό όπως ο μέσος όρος ή ο διάμεσος.

Ενώ τα συνοπτικά στατιστικά στοιχεία όπως ο μέσος όρος, η διάμεσος ή τα εκατοστιαία ποσοστά παρέχουν μια μερική εικόνα, η ακριβής αξιολόγηση ενός συστήματος απαιτεί την εξέταση ολόκληρης της κατανομής. Σε ορισμένες εφαρμογές, η μέση καθυστέρηση μπορεί να παρέχει καλή εικόνα εάν η κατανομή του λανθάνοντος χρόνου είναι σχετικά απλή (για παράδειγμα, Gaussian). Αλλά στα κρυπτονομίσματα, σχεδόν ποτέ δεν είναι έτσι: Συνήθως, υπάρχει μια μεγάλη ουρά αργών χρόνων επιβεβαίωσης.

Τα δίκτυα καναλιών πληρωμής (π.χ. Lightning Network) είναι ένα καλό παράδειγμα. Μια κλασική λύση κλιμάκωσης L2, αυτά τα δίκτυα προσφέρουν πολύ γρήγορες επιβεβαιώσεις πληρωμής τις περισσότερες φορές, αλλά περιστασιακά απαιτούν επαναφορά καναλιού που μπορεί να αυξήσει την καθυστέρηση κατά τάξεις μεγέθους.

Και ακόμη κι αν έχουμε καλά στατιστικά στοιχεία για την ακριβή κατανομή λανθάνοντος χρόνου, πιθανότατα θα διαφέρουν με την πάροδο του χρόνου καθώς αλλάζει το σύστημα και η ζήτηση στο σύστημα. Επίσης, δεν είναι πάντα σαφές πώς να συγκρίνουμε τις κατανομές λανθάνοντος χρόνου μεταξύ ανταγωνιστικών συστημάτων. Για παράδειγμα, εξετάστε ένα σύστημα που επιβεβαιώνει συναλλαγές με ομοιόμορφα κατανεμημένη καθυστέρηση μεταξύ 1 και 2 λεπτών (με μέσο όρο και διάμεσο 90 δευτερόλεπτα). Εάν ένα ανταγωνιστικό σύστημα επιβεβαιώσει το 95% των συναλλαγών σε 1 λεπτό ακριβώς και το άλλο 5% σε 11 λεπτά (με μέσο όρο 90 δευτερόλεπτα και διάμεσο 60 δευτερόλεπτα), ποιο σύστημα είναι καλύτερο; Η απάντηση είναι μάλλον ότι κάποιες εφαρμογές θα προτιμούσαν το πρώτο και κάποιες το δεύτερο.

Τέλος, είναι σημαντικό να σημειωθεί ότι στα περισσότερα συστήματα, δεν έχουν όλες οι συναλλαγές εξίσου προτεραιότητα. Οι χρήστες μπορούν να πληρώσουν περισσότερα για να λάβουν υψηλότερη προτεραιότητα συμπερίληψης, επομένως, εκτός από όλα τα παραπάνω, η καθυστέρηση ποικίλλει ανάλογα με τα τέλη συναλλαγής που καταβάλλονται. Συνοψίζοντας:

Η καθυστέρηση είναι πολύπλοκη. Όσο περισσότερα δεδομένα αναφέρονται, τόσο το καλύτερο. Στην ιδανική περίπτωση, οι πλήρεις κατανομές λανθάνοντος χρόνου θα πρέπει να μετρώνται υπό διαφορετικές συνθήκες συμφόρησης. Οι αναλύσεις του λανθάνοντος χρόνου σε διαφορετικά στοιχεία (τοπικό, δίκτυο, παρτίδα, καθυστέρηση συναίνεσης) είναι επίσης χρήσιμες.

Προκλήσεις στη μέτρηση της απόδοσης

Η απόδοση φαίνεται επίσης απλή με την πρώτη ματιά: πόσες συναλλαγές μπορεί να επεξεργαστεί ένα σύστημα ανά δευτερόλεπτο; Προκύπτουν δύο κύριες δυσκολίες: τι ακριβώς είναι μια «συναλλαγή» και μετράμε τι κάνει ένα σύστημα σήμερα ή τι μπορεί να κάνει;

Ενώ οι "συναλλαγές ανά δευτερόλεπτο" (ή tps) είναι ένα de facto πρότυπο για τη μέτρηση της απόδοσης του blockchain, οι συναλλαγές είναι προβληματικές ως μονάδα μέτρησης. Για συστήματα που προσφέρουν δυνατότητα προγραμματισμού γενικού σκοπού («έξυπνα συμβόλαια») ή ακόμη και περιορισμένα χαρακτηριστικά όπως οι συναλλαγές πολλαπλών σημείων του Bitcoin ή επιλογές για επαλήθευση πολλαπλών σημάτων, το θεμελιώδες ζήτημα είναι:

Δεν είναι όλες οι συναλλαγές ίσες.

Αυτό ισχύει προφανώς στο Ethereum, όπου οι συναλλαγές μπορούν να περιλαμβάνουν αυθαίρετο κώδικα και να τροποποιούν αυθαίρετα την κατάσταση. Η έννοια του αερίου στο Ethereum χρησιμοποιείται για να ποσοτικοποιήσει (και να χρεώσει τέλη για) τη συνολική ποσότητα εργασίας που κάνει μια συναλλαγή, αλλά αυτό είναι ιδιαίτερα συγκεκριμένο για το περιβάλλον εκτέλεσης EVM. Δεν υπάρχει απλός τρόπος σύγκρισης του συνολικού όγκου εργασίας που γίνεται από ένα σύνολο συναλλαγών EVM με, για παράδειγμα, ένα σύνολο συναλλαγών Solana χρησιμοποιώντας το περιβάλλον BPF. Η σύγκριση με ένα σύνολο συναλλαγών Bitcoin είναι παρόμοια γεμάτη.

Οι αλυσίδες μπλοκ που διαχωρίζουν το επίπεδο συναλλαγής σε ένα επίπεδο συναίνεσης και ένα επίπεδο εκτέλεσης μπορούν να το κάνουν πιο σαφές. Στο (καθαρό) επίπεδο συναίνεσης, η απόδοση μπορεί να μετρηθεί σε byte που προστίθενται στην αλυσίδα ανά μονάδα χρόνου. Το επίπεδο εκτέλεσης θα είναι πάντα πιο περίπλοκο.

Τα απλούστερα επίπεδα εκτέλεσης, όπως οι συγκεντρωμένοι διακομιστές που υποστηρίζουν μόνο συναλλαγές πληρωμής, αποφεύγουν τη δυσκολία ποσοτικού υπολογισμού. Ακόμη και σε αυτήν την περίπτωση, ωστόσο, οι πληρωμές μπορεί να διαφέρουν ως προς τον αριθμό των εισροών και των εκροών. Κανάλι πληρωμής Οι συναλλαγές μπορεί να διαφέρουν ως προς τον αριθμό των απαιτούμενων «πηδήσεών» που επηρεάζει την απόδοση. Και η απόδοση του συγκεντρωτικού διακομιστή μπορεί να εξαρτάται από τον βαθμό στον οποίο μια παρτίδα συναλλαγών μπορεί να «συμψηφιστεί» σε ένα μικρότερο σύνολο συνοπτικών αλλαγών.

Μια άλλη πρόκληση με την απόδοση είναι η υπέρβαση της εμπειρικής μέτρησης της σημερινής απόδοσης για την αξιολόγηση της θεωρητικής ικανότητας. Αυτό εισάγει όλα τα είδη ερωτήσεων μοντελοποίησης για την αξιολόγηση της πιθανής χωρητικότητας. Αρχικά, πρέπει να αποφασίσουμε για ένα ρεαλιστικό φόρτο εργασίας συναλλαγής για το επίπεδο εκτέλεσης. Δεύτερον, τα πραγματικά συστήματα σχεδόν ποτέ δεν επιτυγχάνουν θεωρητική ικανότητα, ειδικά τα συστήματα blockchain. Για λόγους ευρωστίας, ελπίζουμε ότι οι υλοποιήσεις κόμβων είναι ετερογενείς και ποικίλες στην πράξη (και όχι όλοι οι πελάτες που εκτελούν μια ενιαία εφαρμογή λογισμικού). Αυτό καθιστά ακόμη πιο δύσκολη τη διεξαγωγή των ακριβών προσομοιώσεων της διακίνησης blockchain. 

Συνολικά:

Οι αξιώσεις απόδοσης απαιτούν προσεκτική επεξήγηση του φόρτου εργασίας της συναλλαγής και του πληθυσμού των επικυρωτών (ποσότητα, υλοποίηση και συνδεσιμότητα δικτύου). Ελλείψει οποιουδήποτε σαφούς προτύπου, οι ιστορικοί φόρτοι εργασίας από ένα δημοφιλές δίκτυο όπως το Ethereum αρκούν.

Ανταλλαγές καθυστέρησης-απόδοσης

Ο λανθάνοντας χρόνος και η απόδοση είναι συνήθως ένα συμβιβασμό. Οπως και Σκιαγραφεί ο Λευτέρης Κόκορης-Κόγιας, αυτή η αντιστάθμιση συχνά δεν είναι ομαλή, με ένα σημείο καμπής όπου η καθυστέρηση αυξάνεται απότομα καθώς το φορτίο του συστήματος πλησιάζει τη μέγιστη απόδοση του.

Τα συστήματα συνάθροισης μηδενικής γνώσης αποτελούν ένα φυσικό παράδειγμα της ανταλλαγής απόδοσης/λανθάνουσας κατάστασης. Οι μεγάλες παρτίδες συναλλαγών αυξάνουν τον χρόνο απόδειξης που αυξάνει την καθυστέρηση. Αλλά το αποτύπωμα στην αλυσίδα, τόσο ως προς το μέγεθος της απόδειξης όσο και ως προς το κόστος επικύρωσης, θα αποσβεστεί σε περισσότερες συναλλαγές με μεγαλύτερα μεγέθη παρτίδων, αυξάνοντας την απόδοση.

αμοιβές συναλλαγής

Όπως είναι λογικό, οι τελικοί χρήστες ενδιαφέρονται περισσότερο για την αντιστάθμιση μεταξύ καθυστέρησης και αμοιβές, όχι καθυστέρηση και απόδοση. Οι χρήστες δεν έχουν κανέναν άμεσο λόγο να ενδιαφέρονται καθόλου για τη διεκπεραίωση, μόνο ότι μπορούν να επιβεβαιώσουν τις συναλλαγές γρήγορα με τις χαμηλότερες δυνατές χρεώσεις (με ορισμένους χρήστες να ενδιαφέρονται περισσότερο για τις χρεώσεις και άλλους περισσότερο για την καθυστέρηση). Σε υψηλό επίπεδο, οι χρεώσεις επηρεάζονται από πολλούς παράγοντες:

  1. Πόση ζήτηση υπάρχει στην αγορά για την πραγματοποίηση συναλλαγών;
  2. Ποια συνολική απόδοση επιτυγχάνεται από το σύστημα;
  3. Πόσα συνολικά έσοδα παρέχει το σύστημα σε επικυρωτές ή εξορύκτες;
  4. Πόσο από αυτά τα έσοδα βασίζεται σε προμήθειες συναλλαγών έναντι πληθωριστικών ανταμοιβών;

Οι δύο πρώτοι παράγοντες είναι χονδρικά οι καμπύλες προσφοράς/ζήτησης που οδηγούν σε τιμή εκκαθάρισης της αγοράς (αν και έχει υποστηριχθεί ότι οι ανθρακωρύχοι λειτουργούν ως καρτέλ για να αυξήσουν τα τέλη πάνω από αυτό το σημείο). Αν όλα τα άλλα είναι ίσα, η μεγαλύτερη απόδοση θα πρέπει να οδηγεί σε χαμηλότερα τέλη, αλλά συμβαίνουν πολλά περισσότερα.

Ειδικότερα, τα σημεία 3 και 4 παραπάνω είναι θεμελιώδη ερωτήματα του σχεδιασμού του συστήματος blockchain, ωστόσο δεν έχουμε καλές αρχές για καθένα από αυτά. Έχουμε κάποια κατανόηση των πλεονεκτημάτων και των μειονεκτημάτων της παροχής εσόδων στους ανθρακωρύχους από πληθωριστικές ανταμοιβές έναντι προμηθειών συναλλαγών. Ωστόσο, παρά τις πολλές οικονομικές αναλύσεις των πρωτοκόλλων συναίνεσης του blockchain, δεν έχουμε ακόμα ένα ευρέως αποδεκτό μοντέλο για το πόσα έσοδα πρέπει να πάνε στους επικυρωτές. Σήμερα τα περισσότερα συστήματα δημιουργούν μια έμπειρη εικασία σχετικά με το πόσα έσοδα είναι αρκετά για να διατηρήσουν τους επικυρωτές να συμπεριφέρονται με ειλικρίνεια χωρίς να στραγγαλίζουν την πρακτική χρήση του συστήματος. Σε απλοποιημένα μοντέλα, μπορεί να αποδειχθεί ότι το κόστος της τοποθέτησης μιας επίθεσης 51% κλιμακώνεται με ανταμοιβές στους επικυρωτές.

Η αύξηση του κόστους των επιθέσεων είναι καλό, αλλά δεν γνωρίζουμε επίσης πόση ασφάλεια είναι «αρκετή». Φανταστείτε ότι σκέφτεστε να πάτε σε δύο λούνα παρκ. Ο ένας ισχυρίζεται ότι ξοδεύει 50% λιγότερα για τη συντήρηση της διαδρομής από τον άλλο. Είναι καλή ιδέα να πάτε σε αυτό το πάρκο; Μπορεί να είναι πιο αποτελεσματικά και να έχουν ισοδύναμη ασφάλεια με λιγότερα χρήματα. Ίσως ο άλλος ξοδεύει περισσότερα από όσα χρειάζεται για να κρατήσει τις βόλτες ασφαλείς χωρίς κανένα όφελος. Αλλά θα μπορούσε επίσης να συμβεί ότι το πρώτο πάρκο είναι επικίνδυνο. Τα συστήματα blockchain είναι παρόμοια. Μόλις συνυπολογίσετε την απόδοση, οι αλυσίδες μπλοκ με χαμηλότερες χρεώσεις έχουν χαμηλότερες χρεώσεις επειδή ανταμείβουν (και επομένως κινητοποιούν) λιγότερο τους επικυρωτές τους. Δεν έχουμε καλά εργαλεία σήμερα για να αξιολογήσουμε εάν αυτό είναι εντάξει ή εάν αφήνει το σύστημα ευάλωτο σε επιθέσεις. Συνολικά:

Η σύγκριση τελών μεταξύ συστημάτων μπορεί να είναι παραπλανητική. Παρόλο που οι χρεώσεις συναλλαγών είναι σημαντικές για τους χρήστες, επηρεάζονται από πολλούς παράγοντες εκτός από τον ίδιο τον σχεδιασμό του συστήματος. Η απόδοση είναι μια καλύτερη μέτρηση για την ανάλυση ενός συστήματος στο σύνολό του.

Συμπέρασμα

Η σωστή και ακριβής αξιολόγηση της απόδοσης είναι δύσκολη. Αυτό ισχύει εξίσου για τη μέτρηση της απόδοσης ενός αυτοκινήτου. Ακριβώς όπως με τα blockchain, διαφορετικοί άνθρωποι νοιάζονται για διαφορετικά πράγματα. Με τα αυτοκίνητα, ορισμένοι χρήστες θα νοιάζονται για την κορυφαία ταχύτητα ή την επιτάχυνση, άλλοι για τη διανυόμενη απόσταση σε βενζίνη και άλλοι για την ικανότητα ρυμούλκησης. Όλα αυτά δεν είναι τετριμμένα για αξιολόγηση. Στις ΗΠΑ, για παράδειγμα, η Υπηρεσία Προστασίας του Περιβάλλοντος διατηρεί λεπτομερείς οδηγίες μόνο για τον τρόπο αξιολόγησης των χιλιομέτρων αερίου καθώς και για το πώς πρέπει να παρουσιάζεται στους χρήστες σε μια αντιπροσωπεία.

Ο χώρος του blockchain απέχει πολύ από αυτό το επίπεδο τυποποίησης. Σε ορισμένες περιοχές, ενδέχεται να φτάσουμε εκεί στο μέλλον με τυποποιημένο φόρτο εργασίας για την αξιολόγηση της απόδοσης ενός συστήματος ή τυποποιημένα γραφήματα για την παρουσίαση κατανομών λανθάνοντος χρόνου. Προς το παρόν, η καλύτερη προσέγγιση για τους αξιολογητές και τους κατασκευαστές είναι να συλλέγουν και να δημοσιεύουν όσο το δυνατόν περισσότερα δεδομένα, με λεπτομερή περιγραφή της μεθοδολογίας αξιολόγησης, ώστε να μπορούν να αναπαραχθούν και να συγκριθούν με άλλα συστήματα.

Σφραγίδα ώρας:

Περισσότερα από Andreessen Horowitz