Emme
Ultra
Published in
8 min readAug 26, 2020

--

La semaine dernière nous avons annoncé l’achèvement de notre protocole de développement ainsi que le début imminent du testnet public. Aujourd’hui, nous explorons plus en détail la blockchain d’Ultra en vous présentant un nouveau modèle de ressource décentralisé et l’Ultra Power, notre ressource qui combine CPU et NET.

Une des conditions essentielles pour répondre aux besoins d’un large public est de rendre l’intégration à, et l’usage de, notre solution aussi simples que ce à quoi la plupart des utilisateurs d’applications sont habitués dans leur quotidien: créer un compte gratuitement et commencer directement l’aventure. Notre stratégie de base concernant le protocole de notre blockchain est axée sur l’élimination de la complexité pour les utilisateurs.

Tout d’abord, abordons la complexité des ressources CPU / NET sur EOSIO

Supposons que vous soyez un utilisateur aguerri des applications blockchain et que le staking des ressources EOSIO n’ait aucun secret pour vous. Il s’avère que vous ne pouvez pas savoir combien de quota CPU / NET vous devez mettre de côté, car vous votre utilisation peut varier considérablement d’un jour à l’autre. Si vous évaluez mal la part de votre staking, votre limite de CPU ou de NET peut être atteinte, ce qui résulte inévitablement en des échecs de transactions même s’il vous reste de nombreuses ressources disponibles.

Sur la blockchain d’Ultra, CPU et NET sont combinés en une ressource plus facile à gérer, nommée « Ultra Power ». Mieux encore: les utilisateurs n’ont pas nécessairement besoin d’Ultra Power pour exécuter des transactions !

Avant d’expliquer comment nous y sommes parvenus, permettez-moi de prendre du recul et de vous montrer comment le mécanisme d’allocation des ressources d’EOSIO crée des inefficacités et une faible fiabilité du réseau.

Lorsqu’un utilisateur augmente son quota de CPU et de NET sur EOS, il se voit allouer une partie de la capacité totale CPU / NET d’EOS. Cela se traduit par un quota CPU / NET qui est ensuite multiplié par une valeur dérivée de l’utilisation actuelle du réseau. Par exemple, ce multiplicateur pourrait permettre à quelqu’un qui a staké 100 CPU de dépenser 200 CPU si le réseau n’est pas encombré. Bien qu’il soit agréable de recevoir des ressources blockchain gratuites, les utilisateurs stakent habituellement leur CPU ou leur NET en supposant que l’utilisation de la blockchain reste inférieure à 100%, autrement leur mise leur coûterait trop cher. Cela provoque malheureusement beaucoup de frustrations car les congestions du réseau sont très fréquentes et rien ne peut l’empêcher. Chaque fois que 100% de la capacité du réseau est atteint, le paramètre multiplicateur du staking est égal à 1, ce qui signifie que si vous avez staké 10% de tous les EOS, vous réquisitionnez donc 10% de la capacité de calcul du réseau entier, que vous utilisiez ou non ces 10% qui vous sont alloués.

Par conséquent, la gestion des ressources EOS est à l’origine de deux sources majeures de frustration:

  1. Un grand nombre de transactions EOS échouent et les utilisateurs sont confrontés aux tristement célèbres messages d’erreur concernant les CPU / NET insuffisants, même si « cela a toujours fonctionné, je n’ai rien changé ».
  2. En mode congestion, les stakers monopolisent une grande partie de la capacité du réseau même s’ils ne l’utilisent pas. Il ne s’agit pas seulement de gros stakers: tous ceux qui stakent, qu’ils soient en train de dormir ou de travailler, mettent inutilement en veille une partie de la puissance de calcul du réseau. Ils obligent ainsi tout le monde à miser davantage pour obtenir une part de ce qui reste du réseau.

Les coûts d’exploitation augmentent en raison des inefficacités, et la fiabilité du réseau est mise à l’épreuve. Par conséquent, les entreprises qui voudraient utiliser cette technologie ne peuvent pas fournir de fonctionnalités blockchain à un large public. Pour mettre cela en perspective, il est facile de comprendre qu’une entreprise comme Ubisoft ne puisse pas sereinement implémenter une solution blockchain dans son prochain jeu à succès si cette solution ne « fonctionne que pour certains utilisateurs, la plupart du temps ».

Comment UOS résout les problèmes d’allocation des ressources

Au lieu d’avoir une structure antagoniste qui oblige les utilisateurs à se réserver des ressources «au cas où», tout en les utilisant partiellement, les ressources réseau d’Ultra sont mises en commun et utilisables par tous ceux qui en ont besoin, quand ils en ont besoin.

Il n’y a pas de « mode congestion » pendant lequel les allocations inutilisées sont gaspillées, ni de multiplicateur de ressources. Au lieu de cela, la puissance de calcul d’Ultra peut être utilisé à 100% à tout moment! Nos transactions sont exécutées en une séquence dérivée d’une seule règle équitable: plus on a d’Ultra Power, plus vite la transaction est exécutée.

Les bases à connaître:

  • Chaque nouveau compte utilisateur Ultra démarre avec un quota Ultra Power égal à 0.
  • N’importe qui peut staker des UOS pour obtenir de l’Ultra Power..
  • Faire des transactions sur la blockchain consomme une partie de cet Ultra Power.
  • Le quota d’Ultra Power est réinitialisé toutes les 24 heures.

Lorsque le réseau est à 100% de sa capacité, il exécute en premier les transactions des utilisateurs dont le quota d’Ultra Power restant est le plus élevé. Le réseau exécute ensuite les quotas inférieurs jusqu’à 0, puis les quotas négatifs. Théoriquement, on pourrait exécuter toutes les transactions sans staking. Dans un tel scénario, la blockchain exécuterait simplement les plus haut quotas jusqu’aux plus faibles, même s’il sont tous négatifs. Ce mécanisme permet aux utilisateurs d’exécuter des transactions sur la chaîne gratuitement, même s’ils ont stacké 0 Ultra Power! Lorsqu’un utilisateur effectue des (véritablement gratuites) transactions avec 0 Ultra Power, il dépense tout simplement son quota négativement.

En bref, le principal moteur de notre hiérarchisation des transactions provient du quota d’Ultra Power de chaque utilisateur.

Quiconque souhaitant obtenir une priorité d’exécution des transactions plus élevée sur le réseau peut toutefois staker des UOS pour obtenir un quota d’Ultra Power plus élevé. Le quota de chacun, y compris les quotas négatifs des non-stakers, se réinitialise automatiquement toutes les 24 heures.

Plus vous utilisez votre quota d’Ultra Power, plus la priorité de vos transactions diminue.

Si, pour une raison quelconque, vous avez effectué en une journée plus de transactions blockchain que d’habitude et que vous n’avez pas suffisamment staké, Ultra est beaucoup moins punitif que les chaînes EOSIO. En effet, si vous n’abusez pas du réseau, il est fort probable que vos transactions soient toujours exécutées.

Toutes les transactions non exécutées peuvent rester dans la file d’attente de la chaîne pendant un certain temps. Si Ultra blockchain ne trouve jamais l’occasion d’exécuter des transactions profondément négatives, elles sont simplement abandonnées et échouent.

Cette stratégie, en substance, permet à la blockchain d’Ultra d’utiliser réellement 100% de sa capacité de calcul à tout moment, ce qui se traduit par des transactions plus souvent réussies et une capacité globale de transactions par seconde plus élevée que toute autre blockchain basée sur EOSIO.

Il existe divers mécanismes empêchant les utilisateurs malveillants d’abuser du système. Comme exemple, nous pouvons citer le logiciel EOSIO original qui permet aux producteurs de blocs de mettre en liste grise ou noire les utilisateurs qui abusent du réseau. Les BP Ultra peuvent faire de même mais peuvent également décider d’infliger un malus négatif à l’Ultra Power des acteurs malveillants.

Nous nous attendons à ce que les BP disposent dans un proche avenir d’un outil d’analyse en temps réel de l’état du réseau capable de détecter et de traiter automatiquement les abus du système.

Adéquation aux besoins des entreprises

Les mécanismes décrits ci-dessus ne garantissent effectivement pas que les entreprises pourront mener à bien 100% des transactions devant être traitées par leurs smart contracts. Après tout, la réussite d’une transaction dépend de la charge du réseau et du quota des utilisateurs effectuant les transactions.

Afin de fournir une solution de blockchain conviviale pour les entreprises, nous avons développé un système de prédicat au niveau du protocole permettant aux entreprises de « staker et parrainer » des transactions gratuites sur des smart contracts spécifiques ou sur seulement certaines actions de smart contracts.

Le système de prédicat d’Ultra est très flexible et peut être adapté à toutes sortes de conditions dont une entreprise peut avoir besoin: n’importe quelle donnée stockée sur la chaîne peut être utilisée comme condition pour parrainer les transactions d’un utilisateur. Par exemple, vous pouvez sponsoriser les transactions d’un utilisateur qui possède un NFT particulier !

Voici quelques exemples de règles qui peuvent être utilisées pour parrainer une transaction:

Si vous êtes «user123» => L’entreprise sponsorise la transaction.

Si l’utilisateur achète le produit de l’entreprise => L’entreprise sponsorise la transaction d’achat.

Si l’utilisateur possède un NFT particulier (un jeu par exemple) => L’entreprise sponsorise toutes les transactions qui lui sont liées.

Si l’utilisateur effectue une action particulière dans un smart contract spécifique => L’entreprise sponsorise la transaction.

On pourrait imaginer qu’Ubisoft achète des UOS pour parrainer les utilisateurs possédant Far Cry 6 en stakant pour alimenter toutes les transactions effectuées par ces derniers. Lorsque la transaction d’un utilisateur est sponsorisée, non seulement le quota Ultra Power de l’utilisateur reste intact, puisque l’entreprise « paye » avec ses propres ressources, mais sa transaction est également exécutée avec la priorité la plus élevée.

Les grandes entreprises ont les moyens de staker des UOS et donc d’avoir suffisamment d’Ultra Power pour garantir toutes les transactions de leurs clients. Ainsi, leurs transactions sont toujours exécutées pronto, quelles que soient les conditions du réseau. Grâce à UOS, une entreprise peut fournir à ses utilisateurs le type de fiabilité et de qualité de service dont ils ont besoin pour accéder aux smart contracts.

Alors que les entreprises prospères peuvent se permettre de sponsoriser l’Ultra Power de leurs utilisateurs, nous devons également penser aux petits développeurs qui créent souvent avec peu de moyens des applications cool que tout le monde aime !

Pour donner à tout le monde une chance de prospérer sur Ultra, nous avons conçu un système dans lequel tout utilisateur peut staker des ressources pour ses services Ultra préférés, tels que des jeux, des applications, etc., tout en étant récompensé pour cela. Nous y reviendrons dans un article dédié aux token economics dans lequel nous parlerons avec plus de précision de la relation entre UOS et Ultra Power.

Ultra.io importe la révolution blockchain dans l’industrie du jeu vidéo et crée un écosystème équitable pour l’avenir de leur distribution.

Abonnez-vous à notre fil d’annonces sur Telegram ou venez débattre avec notre communauté et poser des question à notre équipe dans le groupe de discussion officiel.

--

--