zips/rendered/draft-arya-deploy-nu7.html

114 lines
5.8 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<title>Draft arya-deploy-nu7: Deployment of the NU7 Network Upgrade</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="css/style.css">
</head>
<body>
<pre><code>ZIP: XXX
Title: Deployment of the NU7 Network Upgrade
Owners: Arya &lt;arya@zfnd.org&gt;
Status: Draft
Category: Consensus / Network
Created: 2024-10-31
License: MIT
Discussions-To: &lt;<a href="https://github.com/zcash/zips/issues/839">https://github.com/zcash/zips/issues/839</a>&gt;
</code></pre>
<h1 id="terminology"><span class="section-heading">Terminology</span><span class="section-anchor"> <a rel="bookmark" href="#terminology"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
<p>The key word &#8220;MUST&#8221; in this document is to be interpreted as described in
BCP 14 <a href="#fn:1" id="fnref:1" title="see footnote" class="footnote"><sup>1</sup></a> when, and only when, it appears in all capitals.</p>
<p>The term &#8220;network upgrade&#8221; in this document is to be interpreted as described
in ZIP 200. <a href="#fn:2" id="fnref:2" title="see footnote" class="footnote"><sup>2</sup></a></p>
<p>The character § is used when referring to sections of the Zcash Protocol
Specification. <a href="#fn:3" id="fnref:3" title="see footnote" class="footnote"><sup>3</sup></a></p>
<p>The terms &#8220;Mainnet&#8221; and &#8220;Testnet&#8221; are to be interpreted as described in
§ 3.12 Mainnet and Testnet. <a href="#fn:4" id="fnref:4" title="see footnote" class="footnote"><sup>4</sup></a></p>
<h1 id="abstract"><span class="section-heading">Abstract</span><span class="section-anchor"> <a rel="bookmark" href="#abstract"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
<p>This proposal defines the deployment of the NU7 network upgrade.</p>
<h1 id="specification"><span class="section-heading">Specification</span><span class="section-anchor"> <a rel="bookmark" href="#specification"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
<h2 id="nu7deployment"><span class="section-heading">NU7 deployment</span><span class="section-anchor"> <a rel="bookmark" href="#nu7deployment"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
<p>The primary sources of information about NU7 consensus protocol changes are:</p>
<ul>
<li>The Zcash Protocol Specification <a href="#fn:3" title="see footnote" class="footnote"><sup>3</sup></a>.</li>
<li>ZIP 200: Network Upgrade Mechanism <a href="#fn:2" title="see footnote" class="footnote"><sup>2</sup></a>.</li>
</ul>
<p>The network handshake and peer management mechanisms defined in ZIP 201
<a href="#fn:5" id="fnref:5" title="see footnote" class="footnote"><sup>5</sup></a> also apply to this upgrade.</p>
<p>The following network upgrade constants <a href="#fn:2" title="see footnote" class="footnote"><sup>2</sup></a> are defined for the
NU7 upgrade:</p>
<dl>
<dt>CONSENSUS_BRANCH_ID</dt>
<dd><code>0x77190AD8</code></dd>
<dt>ACTIVATION_HEIGHT (NU7)</dt>
<dd>Testnet: TBD</dd>
<dd>Mainnet: TBD</dd>
<dt>MIN_NETWORK_PROTOCOL_VERSION (NU7)</dt>
<dd>Testnet: <code>170150</code></dd>
<dd>Mainnet: <code>170160</code></dd>
</dl>
<p>For each network (Testnet and Mainnet), nodes compatible with NU7 activation
on that network MUST advertise a network protocol version that is greater
than or equal to the MIN_NETWORK_PROTOCOL_VERSION (NU7) for that activation.</p>
<h2 id="backwardcompatibility"><span class="section-heading">Backward compatibility</span><span class="section-anchor"> <a rel="bookmark" href="#backwardcompatibility"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
<p>Prior to the network upgrade activating on each network, NU7 and pre-NU7
nodes are compatible and can connect to each other. However, NU7 nodes will
have a preference for connecting to other NU7 nodes, so pre-NU7 nodes will
gradually be disconnected in the run up to activation.</p>
<p>Once the network upgrades, even though pre-NU7 nodes can still accept the
numerically larger protocol version used by NU7 as being valid, NU7 nodes
will always disconnect peers using lower protocol versions.</p>
<h1 id="references"><span class="section-heading">References</span><span class="section-anchor"> <a rel="bookmark" href="#references"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
<div class="footnotes">
<hr />
<ol>
<li id="fn:1">
<p><a href="https://www.rfc-editor.org/info/bcp14">Information on BCP 14 — &#8220;RFC 2119: Key words for use in RFCs to Indicate Requirement Levels&#8221; and &#8220;RFC 8174: Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words&#8221;</a> <a href="#fnref:1" title="return to body" class="reversefootnote">&#160;&#8617;&#xfe0e;</a></p>
</li>
<li id="fn:2">
<p><a href="zip-0200">ZIP 200: Network Upgrade Mechanism</a> <a href="#fnref:2" title="return to body" class="reversefootnote">&#160;&#8617;&#xfe0e;</a></p>
</li>
<li id="fn:3">
<p><a href="protocol/protocol.pdf">Zcash Protocol Specification, Version 2024.5.1 or later</a> <a href="#fnref:3" title="return to body" class="reversefootnote">&#160;&#8617;&#xfe0e;</a></p>
</li>
<li id="fn:4">
<p><a href="protocol/protocol.pdf#networks">Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 3.12: Mainnet and Testnet</a> <a href="#fnref:4" title="return to body" class="reversefootnote">&#160;&#8617;&#xfe0e;</a></p>
</li>
<li id="fn:5">
<p><a href="zip-0201">ZIP 201: Network Peer Management for Overwinter</a> <a href="#fnref:5" title="return to body" class="reversefootnote">&#160;&#8617;&#xfe0e;</a></p>
</li>
</ol>
</div>
</body>
</html>