مشكلة قابلية التوسع ، (شديدة) شرح ببساطة

ظهرت هذه المشاركة في الأصل على bloXroute SubReddit .

كان هناك الكثير من الجدل حول “مشكلة قابلية التوسع” ، ونود أن نشرح ما هي بالضبط مشكلة قابلية التوسع وما سببها ، لذا فهي واضحة ، حتى بالنسبة إلى أقل أعضاء المجتمع التقني. سنشير إلى Bitcoin ، باعتباره المعيار الذهبي والعملات المشفرة الأكثر شهرة ، ولكن المشكلة مماثلة لجميع سلاسل الكتل ، بدون إذن أو تصريح.

نعتقد أنه من المفيد تحديد المشكلة ، وإلا فسيكون من الصعب جدًا حلها ، أليس كذلك؟

الطريقة التي تعمل بها Bitcoin هي أنه في كل مرة يتم فيها تعدين كتلة جديدة ، يتم نشرها على شبكة Bitcoin بأكملها باستخدام “آلية انتشار P2P” ، وهو اسم رائع للقول أن المُعدِّن يرسلها إلى رقم 8– 10 من أقرانهم ، يرسلونها إلى أقرانهم ، وما إلى ذلك ، حتى تصل إلى الشبكة بالكامل (أو 95٪ من الشبكة ، نظرًا لأن بعض العقد ربما تكون قد انقطعت للتو عن وضع عدم الاتصال ، أو إعادة التشغيل ، أو غير ذلك) ، ويتم استخدامها لأنها غير موثوقة .

اتضح أنه حتى في السيناريو الأمثل ، حيث لا يتم فقد أي رسالة على الإطلاق ، لا يوجد ازدحام ، ولا يوجد عبء حسابي ، ولا زمن انتقال ، ولا توجد مشكلات في هيكل الشبكة ، فإن هذا الانتشار يخلق عنق زجاجة.

تخيل هذا:
لقد قمت بتعدين كتلة بحجم 1 ميغابايت ، وأنت على وشك إرسالها إلى زملائك. يمكنك إرسالها إلى زملائك إما بالتوازي أو بالتتابع ، وسيستغرق الأمر نفس الوقت ، ولكن الإرسال بالتسلسل سيسمح لأقرانك الأوائل بالبدء في نشر الكتلة بشكل أسرع ، بدلاً من ذلك عندما ينتهي جميع أقرانك من استلامها. لذلك ، في هذا السيناريو الأمثل ، ينتشر الأقران بالتتابع بدلاً من الانتشار بشكل متوازٍ.

الآن ، ما المدة التي ستستغرقها الكتلة للتكاثر؟ بعد “قفزة” واحدة ، حيث يرسل عامل المنجم الكتلة إلى نظير واحد ، تعرف عقدتان عنها. بعد “قفزة” أخرى ، تعرف 4 عقد عنها. بعد 3 “قفزات” تعرف 8 عقد عنها ، وتزداد بشكل كبير حتى بعد 12-15 “قفزات” تصل إلى الشبكة الكاملة لآلاف العقد.

تبلغ السعة الحالية لعملة البيتكوين (BTC) 1 ميغا بايت كل 10 دقائق ، وبما أن متوسط ​​حجم المعاملة هو 540 بايت تقريبًا ، فإنها تعالج حوالي 1950 معاملة كل 10 دقائق ، وهو ما يترجم إلى حوالي 3 معاملات في الثانية (TPS). إذا كنت ترغب في زيادة السعة بمقدار x10 ، فيمكنك زيادة حجم الكتل بمقدار x10 (نهج Bitcoin Cash) ، أو يمكنك تقليل الوقت بين الكتل بمقدار x10. ستكون الآثار الجانبية السلبية هي نفسها ، لذلك دعونا نبدأ بالتفكير في 10 كتل أكبر.

إذا قمت بزيادة حجم الكتل بمقدار x10 ، فإن عدد “القفزات” التي ستحتاج إليها يظل كما هو – 12-15 “قفزات”. ومع ذلك ، لا تتطلب كل قفزات الآن إرسال كتلة بحجم 1 ميجابايت ولكن 10 ميجابايت عبر ارتباط ~ 60 ميجابت في الثانية (متوسط ​​سرعة الارتباط الحالية في شبكة Bitcoin) ، والوقت الذي تستغرقه سيزداد بمقدار x10 ، من 0.13 ثانية إلى 1.3 ثانية. كما سيزيد إجمالي وقت الانتشار بنفس العامل: x10.

الآن ، لماذا نهتم؟ لماذا قمنا بتوجيهك خلال هذا التحليل بأكمله؟

نظرًا لأن وقت انتشار الكتلة يحدد نافذة الفرصة لحدوث التفرع. تحدث الشوكات بشكل طبيعي فقط في حالة تعدين كتلة جديدة ، على الرغم من حقيقة أنه تم تعدين كتلة جديدة بالفعل ، وهو ما سيحدث إذا لا يزال يتم نشره ولم تسمع عنه في الوقت المناسب. إذا لم تكن قد قمت بتعدين الكتلة ، فلن يكون هناك مفترق ، وإذا كنت قد سمعت عن الكتلة الجديدة ، فسيكون حافزك أن تكون فوق الكتلة.

إذا قمت بزيادة وقت انتشار الكتلة بمقدار x10 ، فإن احتمال حدوث مفترق يزيد بمقدار x10 تقريبًا ، على الأقل حتى يقترب هذا الاحتمال جدًا من 1.0 ، نظرًا لأنه يعتمد بشكل مباشر على النسبة بين (1) انتشار الكتلة الوقت ، و (2) الوقت بين الكتل (ولهذا أيضًا لا يهم إذا قمت بزيادة حجم الكتلة أو تقليل فترة العشر دقائق).

لذلك ، إذا قمت بزيادة حجم الكتل بمقدار x10 ، فإنك تزيد من وقت انتشار الكتلة بمقدار x10 ، وسترى حوالي x10 المزيد من التفرع (بمجرد امتلاء الكتل 10 ميجابايت) ، ولكن هذا لا يزال جيدًا! تعرف Blockchains كيفية حل التفرع بمجرد تعدين الكتلة التالية.

لكن ، إذا كنت تريد التوسع من 3 TPS إلى 300 TPS (وهو قريب من عشرات الآلاف المطلوبة للمعاملات الصغيرة بين الشركات) ، ولزيادة حجم الكتل بمقدار x100 ، يصبح زمن انتشار الكتلة طويلاً لدرجة أنه في الواقع يتجاوز 10 دقائق بين الكتل! ستلاحظ حدوث التشعبات بمعدل أعلى من الكتل التي تحلها ، و “تتفكك” blockchain إلى المزيد والمزيد من التشعبات (حيث لم يعد هناك إجماع على أنه الشوكة “الصحيحة”) ، وتكسر blockchain.

هذه هي مشكلة قابلية التوسع ، وسبب عدم قدرة blockchain على عمل كتل 300 ميجابايت كاملة كل 10 ثوانٍ.

سنقدم مزيدًا من المعلومات حول كتل FIBER و Falcon و Compact و Xthin والجرافين في منشور آخر ، ولكن كنقطة بداية نعتقد أنه من الأهمية بمكان تحديد هذا باعتباره السبب الجذري لمشكلة قابلية التوسع.

– – –

نبحث دائمًا عن الأشخاص الطيبين!

إذا كنت متحمسًا بنفس القدر لحل مشكلة قابلية التوسع لجميع سلاسل الكتل ، ففكر في الانضمام إلى فريقنا! نحن نبحث دائمًا عن شركاء متحمسين لمساعدتنا في هذه الرحلة المهمة. تحقق من الوظائف المتاحة لدينا للعمل معنا في مكاتبنا في شيكاغو.

اعرف المزيد