NOWはどのように機能しますか?
3 回答
- 投票
-
- 2019-03-11
すべてのTezosノードが同期されているという前提があります.そうしないと、1分のスロットでのコンセンサスが機能しません.もちろん、多少の遅れは問題ありませんが、数秒を超えるとパン屋が焼けなくなる可能性があります.
NOWは、トランザクションを含むブロックをベイク処理する必要がある時間です.したがって、パン職人は最後のブロック時間を知っており、自分のスロットを知っているので、ブロックを焼くべき時間を計算できます.次に、その時間を使用してトランザクションを実行します.
There is an assumption that all Tezos nodes are synchronized, otherwise the consensus with 1-minute slots would not work. Of course, some delay is ok, but more than a few seconds might prevent a baker from baking.
NOW is the time at which the block, containing the transaction, should be baked. So, the baker knows the last block time, he knows his slot, so he can compute the time at which he should bake the block. It then uses that time to execute the transactions.
-
- 2019-03-11
パン屋はNOWの値を選択します.私はこれらの2つの制約を認識しています:
プロトコルは、タイムスタンプが少なくともベイカーがベイクすることになっている最小タイムスタンプであることを強制します(前のブロックのタイムスタンプの後のいくらかの遅延):baking.ml .
シェルは、タイムスタンプがシステムクロックに対して遠すぎる(15秒を超える)ブロックも無視します: Distributed_db.ml .
The baker chooses the value of NOW. I am aware of these two constraints:
The protocol enforces that the timestamp is at least the minimal timestamp at which the baker was supposed to bake (some delay after the previous block's timestamp): baking.ml.
The shell will also ignore a block whose timestamp is too far in the future (more than 15s) relative to the system clock: distributed_db.ml.
-
- 2019-03-11
同期されているノードの時間は全体像の一部にすぎません.パン屋は自分の理由で常にオフラインになる可能性があり、ネットワークが停止する可能性があり、他の多くのトランザクションがパン屋によって選択されるために競合する可能性があるなど、人々は非常に慎重に、イベントが発生するのに十分な時間を与えてください.
今日は数分、あるいは数時間では不十分だと思います. 一日で十分ですか?私はそう思う傾向がありますが、確信さえありません.
Nodes time being synchronized is only part of the picture: bakers can always be offline for their own reasons, the network can be stalled, many other transactions could be competing to get selected by bakers, etc. so people need to be very cautious and give plenty of time for an event to occur.
I would say that a few minutes or even hours is not enough today. Is one day enough ? I would tend to think so but I'm not even certain.
-
狭い範囲でマイルストーンを達成できるものを構築することを試みている場合.それらのマイルストーンがどれほど近くにあるのか、ちょっと興味があります.If I'm experimenting with building something that can hit milestones during smaller ranges. Kind of curious how close those milestones can be.
- 0
- 2019-03-11
- Rob
-
理解しましたが、マイルストーンが速すぎる前に、イーサリアムでFomo3dhttps://medium.com/coinmonks/how-the-winner-got-fomo3d-prize-a-detailed-explanation-b30a69b7813fを覚えておきましょう.Understood but let's all remember Fomo3d https://medium.com/coinmonks/how-the-winner-got-fomo3d-prize-a-detailed-explanation-b30a69b7813f on Ethereum before requiring milestones too fast.
- 2
- 2019-03-11
- FFF
契約に
NOW
がしばらく経過したことに基づく条件があるとします.NOW
UTCであり、これはチェーンに追加される前に各ノードによって検証されますか?関数が1時間のウィンドウ内に呼び出されるようにしたい場合、これを強制することは可能ですか?例:
これにより、トランザクションを実行できるように、NOW-15分より大きくNOW +45分未満であることが確認されます.
ネットワーク全体のブロック時間でネットワークがどのようにコンセンサスを得るかを理解することも重要かもしれませんか?