#軟分叉#是支援向後相容的軟體升級方式,升級後的節點仍可以與未升級的節點進行互動。軟分叉的升級方式通常是向程式中新添加了一條規則,該規則也不會與之前的舊規則發生衝突。
例如,可以透過軟分叉來實現區塊大小的下調。以比特幣為例:比特幣網路中對區塊大小的上限是有限制的,但對區塊大小的下限是沒有限制的。如果您只想接受特定大小以下的區塊,則只需拒絕大於該數值的區塊即可。
但是,這樣做並不會讓您與網路自動斷開連線。您仍然可以與未執行這些規則的節點進行互動,但是會過濾掉它們傳遞給您的一些資訊。
隔離見證(SegWit)就是一個很充分的案例,它是在比特幣和比特幣現金拆分之後不久發生的。隔離見證是一種更改了區塊和事務格式的更新,而且它的設計方式較為巧妙。舊節點仍然可以驗證區塊和交易(格式不違反規則的),但對於某些欄位來說,他們無法讀取。只有當節點升級到較新的版本後,某些欄位才可讀,才能夠正確解析其他資料。甚至在隔離見證啟用後的兩年多時間裡,也沒有完成所有節點的升級。這樣做也是有很多好處的,比如網路不會發生中斷的情況、升級也沒有那麼緊迫。
軟分叉作為較為平穩的選擇,一般來說,由於新的升級不會與之前的規則發生衝突,因此您只能實施某些限制。也就是說,如果您可以按照相容的方式實施升級,就無需擔心網路碎片化的風險。
最新評論