กลางเดือนตุลาคม การหยุดชะงักของการทดสอบ Medalla Testnet: เริ่มต้นอย่างไร และจะจบลงอย่างไร
หมายเหตุบรรณาธิการ: บทความนี้มาจากผู้ที่ชื่นชอบ Ethereum (ID: ethfans)หมายเหตุบรรณาธิการ: บทความนี้มาจาก
ผู้ที่ชื่นชอบ Ethereum (ID: ethfans)
ผู้ที่ชื่นชอบ Ethereum (ID: ethfans)
ผู้เขียน: yorickdowne แปล: A Jian พิมพ์ซ้ำโดย Odaily โดยได้รับอนุญาต
เกิดอุบัติเหตุบนเครือข่ายทดสอบ Medalla เมื่อวันที่ 17 ตุลาคม 2020 (หมายเหตุบรรณาธิการ: อันที่จริง ตั้งแต่วันที่ 14 ตุลาคม 2020 เครือข่ายการทดสอบ Medalla ยังไม่สิ้นสุดการบล็อก) แล้วเกิดอะไรขึ้น? นี่คือเด็กอายุ 5 ขวบที่สามารถอธิบายได้เช่นกัน (อาจไม่ใช่ 5 แต่เป็น 10 แต่นั่นคือสิ่งที่พูด)
1) ผู้ตรวจสอบจำนวนมากหยุดทำงาน (อาจเป็นเพราะเข้าร่วมใน zinken testnet หรืออาจเป็นเพราะพวกเขาเบื่อก็ได้ ใครจะไปรู้)
2) เครือข่ายการทดสอบ Medalla เข้าสู่สถานะที่ไม่สามารถสรุปการบล็อกได้
3) ไคลเอนต์ Prysm และ Nimbus เริ่มมีข้อบกพร่องในการซิงโครไนซ์
4) เราสูญเสียผู้ตรวจสอบความถูกต้องมากขึ้นเนื่องจากข้อผิดพลาดนี้ บางคนไม่เคยได้ยินจากอีก
5) เครือข่ายไม่มีขั้นสุดท้าย ซึ่งเพิ่มภาระหน่วยความจำและ CPU ของโหนด และทำให้เราลองใช้ตัวตรวจสอบจำนวนมาก เนื่องจากโหนดไม่สามารถจัดการกับภาระขนาดใหญ่เช่นนี้ได้
6-1) ผู้ตรวจสอบจำนวนมากกลับมาออนไลน์ ทำให้เครือข่ายกลับมามีความสมบูรณ์อีกครั้ง หรือ
6-2) พวกเขาไม่ได้มาทางออนไลน์ และจากนั้นตัวตรวจสอบแบบออฟไลน์เหล่านี้จะสูญเสียเงินฝากของพวกเขาเร็วขึ้นและเร็วขึ้นเรื่อย ๆ จนกว่าเราจะได้สถานะสุดท้าย ในขั้นตอนนี้ ผู้ตรวจสอบบางรายอาจถูกไล่ออกจากทีมเนื่องจากยอดคงเหลือต่ำเกินไป
7) คุณสามารถติดตาม beaconcha.in สำหรับอัตราการมีส่วนร่วมบนเว็บล่าสุด ไซต์อื่นไม่สามารถติดตามได้อย่างมาก
8) หากสิ่งนี้เกิดขึ้นบน mainnet มันคงไม่นานนัก เพราะหาก ETH จริงถูกเผา ผู้คนจะไม่แยแสhttps://github.com/eth2-educators/medalla-exit
9) เครือข่ายทั้งหมดทำงานตามที่ได้รับการออกแบบมาเพื่อรักษาตัวเองในสถานการณ์ที่มีการแตกแยกครั้งใหญ่
10) หากเป็น 6-2) ในกรณีนี้ ผมไม่แน่ใจว่าเครือข่ายจะกลับมาเป็นปกติได้เร็วแค่ไหน เร็วสุดอาจเป็นวันที่ 25 ตุลาคม และอย่างช้าที่สุดอาจเป็น (วันที่ 25) และหลังจากนั้นอีก 5 วัน
11) หากคุณอยู่ในสถานะออฟไลน์ แต่ไม่ต้องการย้อนกลับไปและเรียกใช้ตัวตรวจสอบความถูกต้องอีกครั้ง นี่คือเครื่องมือที่จะช่วยให้คุณออกจากทีมตัวตรวจสอบความถูกต้องอย่างเป็นระเบียบ:
รายละเอียดทางเทคนิคเพิ่มเติม:
ผู้ตรวจสอบที่ไม่ได้ใช้งานจะไม่ถูกลงโทษ ตัวตรวจสอบความถูกต้องอาจยังคงอยู่ในสถานะที่ไม่ได้ใช้งานเนื่องจากยังคงอยู่ในคิวการเปิดใช้งาน หรือเงินฝากที่ยังไม่ได้รับการประมวลผล - ตัวตรวจสอบความถูกต้องเหล่านี้จะถูกเปิดใช้งานเมื่อเครือข่ายกลับมามีความสมบูรณ์อีกครั้ง นอกจากนี้ หากผู้ตรวจสอบที่ใช้งานอยู่ส่งข้อความออกที่ใช้งานอยู่ ข้อความนั้นจะไม่ทำงานและจะไม่ถูกลงโทษ
ผู้ตรวจสอบที่ใช้งานอยู่และออนไลน์จะรักษาสถานะที่ไม่มีกำไรหรือขาดทุน หากระยะห่างของบรรจุภัณฑ์ของข้อความรับรองของพวกเขานั้นสมบูรณ์แบบ 1 (นั่นคือ ข้อความรับรองที่ส่งในช่องก่อนหน้าจะถูกบรรจุในช่องนี้) แต่นี่เป็นไปไม่ได้ดังนั้นพวกเขาจึงถูกลงโทษเล็กน้อย djrwto ของ Ethereum Foundation (นั่นคือ Danny Ryan) ได้ระบุว่าพวกเขากำลังมองหาวิธีที่จะลดบทลงโทษสำหรับผู้ตรวจสอบ "โดยเฉพาะ" ส่วนนี้อย่างปลอดภัย เพราะโดยทั่วไปบทลงโทษนี้ไม่ใช่ประสบการณ์ที่ดี
โปรแกรมตรวจสอบความถูกต้องแบบแอ็คทีฟและออฟไลน์จะถูกลงโทษเป็น 2 เท่า นั่นคือบทลงโทษจะเพิ่มขึ้นทุกยุค
โปรแกรมตรวจสอบจะถือว่าอยู่ในสถานะออฟไลน์เมื่อไม่มีข้อความยืนยันบรรจุอยู่ภายในยุค แน่นอนว่าการไม่สามารถส่งการรับรองนี้อาจเกิดขึ้นได้หากตัวตรวจสอบความถูกต้องเชื่อมต่อกับโหนดบีคอนเชนที่ไม่ซิงค์กับเครือข่าย หรือหากตัวไคลเอนต์ตัวตรวจสอบไม่ทำงาน สาเหตุที่เป็นไปได้ ได้แก่ ข้อบกพร่องฝั่งไคลเอ็นต์และการใช้ทรัพยากรหน่วยความจำ/CPU คุณสามารถใช้โอกาสนี้เพื่อเรียนรู้วิธีคอมไพล์ไคลเอ็นต์จากแหล่งที่มาและตรวจสอบการใช้ทรัพยากรของโหนดของคุณเอง
ในเช้าวันที่ 12 ตุลาคม EST เราอยู่ในสถานะที่เราไม่สามารถจบการบล็อกได้ (คำจำกัดความของรัฐนี้คือ 4 ยุคติดต่อกันไม่สามารถสรุปได้)
จากนั้นเป็นจังหวะที่ "จุดโทษ" โหม่งเข้าใส่ ค่าปรับสำหรับตัวตรวจสอบแบบออฟไลน์จะเพิ่มขึ้นเมื่อสถานะของความไม่สิ้นสุดยังคงมีอยู่ สูตรคือ การลงโทษ = ความสมดุลที่มีผล * ระยะเวลาที่ไม่ใช่ขั้นสุดท้าย (Epochs-Since-Finality นั่นคือความสูงของยุคปัจจุบันลบด้วยความสูงของยุคสุดท้ายที่ได้รับขั้นสุดท้าย)/(2^25) ในทางคณิตศาสตร์อาจกล่าวได้ว่า: บทลงโทษยุคเดียวสำหรับตัวตรวจสอบแบบออฟไลน์เหล่านี้เพิ่มขึ้นเป็นเส้นตรงตามความคืบหน้าของสถานะที่ไม่มีที่สิ้นสุด ดังนั้นบทลงโทษทั้งหมด (ผลรวมของบทลงโทษ) จะเพิ่มขึ้นเป็นสองเท่า (ขอบคุณ torfbolt ที่ชี้ให้เห็น)
เป็นการยากที่จะประเมินว่าเมื่อใดที่เครือข่ายจะกลับมามีความสมบูรณ์ เนื่องจากอัตราการมีส่วนร่วมของผู้ตรวจสอบความถูกต้องจะผันผวนในการตอบสนองต่อความล้มเหลวของไคลเอ็นต์
หาก "ยอดคงเหลือจริง" ของผู้ตรวจสอบความถูกต้องต่ำกว่า 16ETH (มากกว่า 16.75 ETH ในยอดเงินในบัญชี) ระบบจะคัดออกจากทีมผู้ตรวจสอบความถูกต้อง
ใช้เวลาประมาณ 18 วันกว่าที่ยอดคงเหลือของผู้ตรวจสอบจะลดลงเหลือ 60.6% ซึ่งเป็นขีดจำกัดสูงสุดของการใช้เวลานานแปลภาษาจีน)
หลังจากสามงวดติดต่อกัน การสิ้นสุดจะถูกสร้างขึ้นใหม่ บทลงโทษสำหรับตัวตรวจสอบแบบออฟไลน์จะเปลี่ยนกลับเป็นค่าเริ่มต้นปกติที่มีความรุนแรงน้อยกว่า


