ทำไมความหลากหลายของลูกค้า Ethereum 2.0 จึงมีความสำคัญมาก
ที่มา |Ethereum Blog
ที่มา |
ผู้แต่ง | คาร์ล บีคูยเซน
ข้อจำกัดความรับผิดชอบ: บทความนี้ไม่ได้กำหนดเป้าหมายไปยังลูกค้ารายใด เราจำเป็นต้องทราบว่าไคลเอ็นต์แต่ละรายและแม้แต่ข้อกำหนดแต่ละข้ออาจมีข้อบกพร่องและช่องโหว่ ไม่ต้องพูดถึง Eth2 เป็นโปรโตคอลที่ซับซ้อนมาก และผู้ดำเนินการเป็นเพียงมนุษย์ธรรมดา บทความนี้มีวัตถุประสงค์เพื่อเน้นย้ำถึงวิธีการและเหตุผลในการลดความเสี่ยง
หลังจากปล่อยเครือข่ายทดสอบ Medalla เราขอแนะนำให้ทุกคนใช้ไคลเอนต์ที่แตกต่างกันเพื่อเข้าร่วมในเครือข่ายทดสอบ ในวันที่สร้าง testnet มันแสดงให้เราเห็นถึงความสำคัญของหลายไคลเอนต์: โหนดที่ทำงานบนไคลเอ็นต์ Nimbus และ Lodestar ไม่สามารถจัดการการทำงานของ testnet ทั้งหมดได้ ดังนั้นพวกเขาจึงตามความคืบหน้าของโหนดการซิงโครไนซ์ไม่ทัน . ผลก็คือ Medalla ไม่ได้เริ่มการสรุปครึ่งชั่วโมงหลังจากเปิดตัว
เมื่อวันที่ 14 สิงหาคม โหนด Prysm เกิดข้อผิดพลาดด้านเวลา เนื่องจากหนึ่งในเซิร์ฟเวอร์เวลาที่พวกเขาอ้างถึงได้ข้ามไปยังเวลาในอนาคตอย่างกระทันหัน เป็นผลให้โหนดเหล่านี้เริ่มเสนอบล็อกในอนาคตและตรวจสอบการพิสูจน์ในอนาคต อย่างไรก็ตาม หลังจากนาฬิกาของโหนดได้รับการปรับเทียบ (โดยการอัปเดตเวอร์ชันไคลเอนต์ หรือเนื่องจากเซิร์ฟเวอร์เวลาได้ปรับเวลาที่ถูกต้องแล้ว) โหนดที่ยกเลิกการป้องกันการเฉือนก่อนหน้านี้จะพบว่าสินทรัพย์ที่จำนำถูกเฉือนกระบวนการทั้งหมดนี้เกิดขึ้นอย่างละเอียดอ่อน และฉันขอแนะนำให้อ่าน。
เรียงความย้อนหลังของ Raul Jordan เกี่ยวกับเหตุการณ์
เมื่อโหนด Prysm เริ่มเดินทางข้ามเวลา พวกมันคิดเป็นประมาณ 62% ของเครือข่าย ซึ่งหมายความว่าไม่เป็นไปตามเกณฑ์ขั้นต่ำสำหรับการปิดบล็อก (>2/3 ตัวตรวจสอบความถูกต้องบนเครือข่ายที่ใช้งานอยู่) ที่แย่ไปกว่านั้น โหนดเหล่านี้ไม่สามารถหาเชนที่ต้องการได้ (ช่องว่าง 4 ชั่วโมงปรากฏบนไทม์ไลน์ โหนดเหล่านี้ทั้งหมดไปยังเวลาที่แตกต่างกันเล็กน้อยในอนาคต) ดังนั้น โหนดเหล่านี้จึงคาดการณ์ข้อมูลที่ "ขาดหายไป" โดยสรุป ส้อมท่วมเครือข่ายทั้งหมด
คำอธิบายภาพ
แหล่งที่มา:ethernodes.org
แหล่งที่มา:
เมื่อมาถึงจุดนี้ เครือข่ายเต็มไปด้วยการคาดการณ์ที่แตกต่างกันสำหรับส่วนหัวของห่วงโซ่ ดังนั้นลูกค้าทั้งหมดจึงเริ่มจัดการกับงานมากขึ้นเรื่อย ๆ เพื่อพิจารณาว่าหัวของห่วงโซ่ใดถูกต้อง สิ่งนี้นำไปสู่โหนดที่ล้าหลัง จำเป็นต้องซิงค์ หน่วยความจำไม่เพียงพอ และความโกลาหลในรูปแบบอื่นๆ ซึ่งทั้งหมดนี้ทำให้ปัญหารุนแรงขึ้น
โดยรวมแล้ว เหตุการณ์นี้ถือว่าดี เนื่องจากไม่เพียงแต่ช่วยให้เราสามารถแก้ไขปัญหาพื้นฐานที่เกี่ยวข้องกับนาฬิกาได้ แต่ยังช่วยให้เราสามารถทดสอบไคลเอ็นต์ภายใต้ความล้มเหลวของโหนดจำนวนมากและการโหลดของเครือข่ายได้อีกด้วย กล่าวอีกนัยหนึ่ง ความล้มเหลวนี้บอกเราว่าเครือข่ายต้องไม่รุนแรงเกินไป และต้นเหตุของเหตุการณ์นี้คือ โหนด Prysm รับผิดชอบเครือข่ายส่วนใหญ่
ช่วยกระจายอำนาจ—ตอนที่ 1 ประโยชน์ eth2เช่นเดียวกับในซีรีย์นี้บทความของปัญหาที่สอง
ตามที่กล่าวไว้ใน ตามอัลกอริธึมความทนทานต่อความผิดพลาดของ Byzantine แบบอะซิงโครนัส 1/3 เป็นตัวเลขมหัศจรรย์เพื่อให้มั่นใจถึงความปลอดภัยของเครือข่าย หากมากกว่า 1/3 ของ Validator อยู่ในสถานะออฟไลน์ ช่วงเวลาต่างๆ จะไม่สามารถสรุปได้อีกต่อไป ดังนั้นในขณะที่ห่วงโซ่ยังคงเติบโต ณ จุดนี้ เป็นไปไม่ได้อีกต่อไปที่จะสรุปการบล็อกและรับประกันว่าเป็นส่วนหนึ่งของห่วงโซ่ตามรูปแบบบัญญัติ
การอำนวยความสะดวกในการกระจายอำนาจ—ส่วนที่ 2 ประโยชน์ต่อผู้ตรวจสอบความถูกต้อง
ในระดับใหญ่ ผู้ตรวจสอบความถูกต้องมีแรงจูงใจให้ทำสิ่งที่ดีสำหรับเครือข่าย ไม่ใช่เพราะทุกคนคิดว่ามันเป็นสิ่งที่ถูกต้องที่จะทำ
หากมากกว่า 1/3 ของโหนดออฟไลน์ ค่าปรับสำหรับโหนดออฟไลน์จะเริ่มเพิ่มขึ้น ซึ่งเรียกว่าค่าปรับ "เฉย"
ซึ่งหมายความว่าตัวตรวจสอบความถูกต้องต้องการพยายามให้แน่ใจว่าหากโหนดของตัวเองถูกบังคับให้ออฟไลน์ เป็นไปไม่ได้ที่จะบังคับให้โหนดอื่นออฟไลน์ในเวลาเดียวกัน
เช่นเดียวกับการริบ อย่างไรก็ตาม มีความเป็นไปได้เสมอที่ตัวตรวจสอบความถูกต้องจะถูกเฉือนเนื่องจากข้อผิดพลาด/จุดบกพร่องในข้อมูลจำเพาะหรือซอฟต์แวร์ โดยเครื่องหมายทับเพียงครั้งเดียวคือ "เท่านั้น" 1 ETHอย่างไรก็ตาม หาก Validator หลายตัวถูก Slash พร้อมกัน ค่าปรับจะเพิ่มขึ้นเป็น 32 ETH และเลขมหัศจรรย์นี้ เมื่อมีผู้ตรวจสอบความถูกต้องมากกว่า 1/3 ถูกเฉือน 32 ETH จะถูกเฉือน
[เกี่ยวกับสาเหตุของสถานการณ์ข้างต้นสามารถพบได้ที่นี่]
สิ่งจูงใจเหล่านี้เรียกว่าการต่อต้านความสัมพันธ์แบบสดและการต่อต้านความสัมพันธ์ด้านความปลอดภัยตามลำดับ และเป็นลักษณะโดยเจตนาของ eth2 กลไกการต่อต้านความสัมพันธ์จะจูงใจผู้ตรวจสอบความถูกต้องให้ตัดสินใจเพื่อประโยชน์สูงสุดของเครือข่ายโดยกำหนดบทลงโทษแต่ละรายการตามระดับของอิทธิพลที่ผู้ตรวจสอบความถูกต้องแต่ละคนมีต่อเครือข่าย
อำนวยความสะดวกในการกระจายอำนาจ—ส่วนที่ 3 การแสดงข้อมูลทีมงานอิสระจำนวนหนึ่งกำลังนำ Eth2 ไปใช้ โดยแต่ละทีมอิงตามเอกสารที่เขียนโดยทีมวิจัย Eth2 เป็นหลักการพัฒนาที่เป็นที่ยอมรับของลูกค้าอิสระ
. สิ่งนี้ทำให้มั่นใจได้ว่ามีการใช้งานโหนดบีคอนและไคลเอนต์ตัวตรวจสอบหลายตัว โดยแต่ละทีมจะตัดสินใจต่างกันเกี่ยวกับเทคโนโลยี ภาษา การเพิ่มประสิทธิภาพ การแลกเปลี่ยน ฯลฯ ที่จำเป็นในการสร้างไคลเอนต์ eth2 ด้วยวิธีนี้ เมื่อเกิดจุดบกพร่องในเลเยอร์ใดๆ ของระบบ จะมีผลเฉพาะกับผู้ใช้ที่เรียกใช้ไคลเอ็นต์เฉพาะ แทนที่จะเป็นทั้งเครือข่าย
หากมีเพียง 20% ของโหนด eth2 เท่านั้นที่ทำงานบนไคลเอ็นต์ Prysm และ 85% ของผู้ตรวจสอบความถูกต้องออนไลน์ในขณะที่เกิดข้อบกพร่องของ Medalla Prysm โหนด Prysm จะไม่ได้รับโทษ "เฉย" และมีเพียงบทลงโทษเล็กน้อยเท่านั้น และอีกสองสามคืนที่นอนไม่หลับ นักพัฒนาจะทำเคล็ดลับ
แทนที่จะเป็นเช่นนั้น ตัวตรวจสอบความถูกต้อง 3,500 ถึง 5,000 ตัวถูกเฉือนในช่วงเวลาสั้นๆ เนื่องจากมีตัวตรวจสอบจำนวนมากเกินไปที่เรียกใช้ไคลเอ็นต์เดียวกัน (หลายตัวมีการป้องกันเครื่องหมายทับ)
*ความสัมพันธ์สูงหมายความว่าตัวตรวจสอบความถูกต้องเหล่านี้มีค่าปรับประมาณ 16 ETH เนื่องจากใช้ไคลเอนต์ทั่วไป
* ในขณะที่เขียนนี้ slashing ยังคงเข้ามา ดังนั้นจึงยังไม่มีตัวเลขสุดท้าย
ตอนนี้ถึงเวลาที่จะใช้ไคลเอนต์อื่นเพื่อเข้าร่วมการทดสอบ ค้นหาไคลเอ็นต์ที่มีผู้ตรวจสอบจำนวนน้อยใช้อยู่ (คุณสามารถคลิกที่นี่ดู การกระจาย).Lighthouse、Teku、Nimbusเช่นเดียวกับPrysmเช่นเดียวกับLodestarขณะนี้การดำเนินการค่อนข้างคงที่ แต่
ที่สำคัญที่สุด ลองไคลเอนต์ใหม่! เราสามารถลองสร้างการกระจายโหนดที่มีประสิทธิภาพมากขึ้นบน Medalla เพื่อเตรียมพร้อมสำหรับเครือข่ายหลักที่กระจายอำนาจ
ข้อจำกัดความรับผิดชอบ: งานแปลของ ECN มีเป้าหมายเพื่อส่งมอบข้อมูลคุณภาพสูงและทรัพยากรการเรียนรู้สำหรับชุมชน Ethereum ของจีน ลิขสิทธิ์ของบทความเป็นของผู้เขียนต้นฉบับ การพิมพ์ซ้ำต้องระบุแหล่งที่มาของข้อความต้นฉบับและ ethereum.cn สำหรับระยะยาว พิมพ์ซ้ำ โปรดติดต่อ Authorize etheremcn@gmail.com


