CodingBox Q&A Ask question

Edgecore AS9716-32D: sfputil يفك تشفير وحدة QSFP-DD بسرعة 400G على أنها QSFP28 تحت PDDF

Asked Active Viewed 291 AI translation from English
4

نقوم بتشغيل زوج من AS9716-32D كعمود فقري (spine) بسرعة 400G في المختبر، على صورة SONiC مجتمعية مع طبقة منصة PDDF. الأجهزة الضوئية ليست المشكلة، الطرف المقابل يرتبط بشكل جيد، لكن كل ما يقوله السويتش عنها خاطئ.

  • Edgecore AS9716-32D (x86_64-accton_as9716_32d-r0)
  • بناء SONiC مجتمعي مع PDDF لهذه المنصة
  • وحدة QSFP-DD بسرعة 400G (قطعة NeoPhotonics) في الجاعة الأولى

القراءة نفسها تنجح، الوحدة مدرجة، والجاعة تُبلَّغ كـ QSFP28:

admin@sonic:~$ sfputil show eeprom
Ethernet0: SFP EEPROM detected
        Identifier: QSFP28 or later
        Vendor Name: NeoPhotonics

سطر المعرّف هذا هو حيث ينهار كل شيء. هذه قطعة QSFP-DD، لذا يجري فك تشفير البايتات أدناه مقابل مجموعة حقول SFF-8636 بدلاً من مجموعة CMIS، والحقول التالية تُقرأ كضوضاء.

ما تم التحقق منه حتى الآن:

  • الوحدة نفسها سليمة، نفس القطعة تُقرأ بشكل صحيح على منصة أخرى والطرف البعيد يرى الضوء؛
  • إعادة تركيبها ونقلها إلى جاعة أخرى لا يغيّر شيئاً، كل منافذ الـ400G تتصرف بشكل متطابق؛
  • في وصف جهاز PDDF، هذه الجاعات معلنة كـ QSFP28 ومرتبطة بـ optoe1.

هل هذه النقطة الأخيرة هي الإجابة الكاملة، هل جاعات QSFP-DD تحتاج ببساطة جهاز optoe مختلف، وهل تعديل وصف المنصة هو الطريقة المقبولة لإصلاح ذلك، أم أن هناك شيئاً فوقه يحتاج أيضاً لتعلّم نوع الجاعة؟

Comments 4

Accepted answer

عرضك يطابق الربط تماماً، فلا داعي للبحث أكثر في الأجهزة الضوئية.

وصف جهاز PDDF لـ AS9716-32D يعلن جاعات الـ400G كـ QSFP28 ويربطها بـ optoe1. optoe1 يعرض تخطيط EEPROM من نوع SFF-8636 الذي تستخدمه QSFP+ وQSFP28، لذا تُقرأ وحدة CMIS عبر الخريطة الخاطئة وكل ما بعد المعرّف يبدو ضوضاء. نوع المنفذ الذي تراه لم يُكتشف على الإطلاق، إنه ببساطة ما يقوله الوصف.

QSFP-DD تتبع CMIS، وCMIS تُخدَم عبر optoe3. الإصلاح هو تبديل كلا الحقلين في وصف جهاز PDDF لتلك الجاعات: النوع من QSFP28 إلى QSFP-DD، والدرايفر من optoe1 إلى optoe3. تحققت من ذلك على نفس الجهاز بقطعة NeoPhotonics بسرعة 400G، وبعد التغيير sfputil show eeprom يُعيد الوحدة مفكوكة التشفير بشكل صحيح.

تحذيران. هذه بيانات منصة، لذا فإن ترقية الصورة ستعيد الوصف القديم بكل سرور ما لم يكن التغيير في الصورة التي تبنيها أنت. ومن جهة المصدر (upstream) تمت الموافقة على هذا التغيير بالضبط لكن طلب السحب (pull request) أُغلق دون دمج، حيث طُوي العمل ضمن تغيير لاحق، لذا لا تفترض أن صورتك تحمله بالفعل. اقرأ وصف الجهاز لمنصتك أولاً وستعرف خلال دقيقة إن كنت تطارد شيئاً على الإطلاق.

2 Netherlandsoptichub40NL Show original (English) AI translation

قبل أن تلمس أي ملف منصة، انشر الدامب الخام: sudo sfputil show eeprom -d على ذلك المنفذ. إذا كانت كل البايتات موجودة وفقط التفسير خاطئ، فهذه مشكلة ربط وليست مشكلة وحدة، وهذا التمييز يستحق عشر دقائق قبل أن يبدأ أحد بالحديث عن استبدال (RMA).

النصف الآخر أجبت عنه بنفسك بالفعل. optoe1 هو نوع SFF-8636 المستخدم لـ QSFP+ وQSFP28، لذا وحدة CMIS تُقرأ عبره تخرج مشوهة بدءاً من المعرّف فصاعداً، وهذا بالضبط الناتج الذي نشرته. بمجرد أن يسمّي الوصف optoe1 لجاعة QSFP-DD، لا يبقى شيء للشك فيه من جهة الوحدة.

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

4 IndiagigopsIN Show original (English) AI translation

هذا كان السبب. نوع الجاعة إلى QSFP-DD، الدرايفر إلى optoe3، إعادة تحميل، والوحدة تُفك تشفيرها بشكل صحيح الآن، مع sfputil show eeprom لم يعد يسمّي الجاعة QSFP28. وضعت التغيير في الصورة التي نبنيها بدلاً من تصحيح السويتش قيد التشغيل، تحديداً بسبب نقطة الترقية أعلاه.

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

0 IndonesiaedgepilotID Show original (English) AI translation

بما أنك تذكر العلل المتبقية، إليك واحدة تنتظرك على نفس المنصة. على AS9716-32D لدينا (x86_64-accton_as9716_32d-r0) يعمل ببناء SONiC رئيسي (master)، sudo sfputil show presence يسرد المنافذ المركّبة كـ Present ويقرأ EEPROM الخاص بها بشكل جيد، بينما show interfaces transceiver presence يبلّغ كل منفذ كـ Not present. سجل النظام يكرر:

Error: unable to access file: [Errno 2] No such file or directory: '/sys/bus/i2c/devices/21-0062/module_present_17'

وقراءة الـEEPROM عبر واجهة الأوامر تفشل بـ RuntimeError('PddfEeprom is not Programmed'). يظهر عشوائياً بعد إعادة التشغيل ولم يُنشر أي سبب جذري على الإطلاق، لذا يبقى sfputil هو فحص الوجود الوحيد الذي أثق به هناك.

غير متعلق لكن في نفس المنطقة: الأمران معروفان أيضاً باختلافهما في أسماء المفاتيح في فرع 202012، وهو ما تم تنظيفه في 202205. إذا اختلفت مخرجاتك في الصياغة وليس في المحتوى، فهذا على الأرجح كل ما في الأمر.

4 Türkiyelinknerd83TR Show original (English) AI translation
Log in to comment. Log in