التحكم في استعادة الأخطاء

في مجال الحوسبة ، تُعدّ خاصية التحكم في استعادة الأخطاء ( ERC ) ( ويسترن ديجيتال : استعادة الأخطاء المحدودة زمنيًا ( TLERسامسونج / هيتاشي : تحديد وقت إكمال الأوامر ( CCTL )) ميزةً في الأقراص الصلبة تُمكّن مسؤول النظام من تحديد المدة الزمنية المسموح بها لبرنامج القرص الثابت (Firmware ) لاستعادة البيانات بعد خطأ في القراءة أو الكتابة. يُتيح تحديد وقت الاستعادة تحسين معالجة الأخطاء في بيئات RAID ، سواءً كانت برمجية أو عتادية . في بعض الحالات، قد يحدث تعارضٌ حول ما إذا كان ينبغي معالجة الأخطاء بواسطة القرص الصلب نفسه أو بواسطة نظام RAID، مما يؤدي إلى تصنيف الأقراص على أنها غير قابلة للاستخدام وتدهور كبير في الأداء، وهو أمرٌ كان من الممكن تجنّبه.

ملخص

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

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

الإعدادات الافتراضية النموذجية

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

بشكل عام، تأتي محركات الأقراص المؤسسية من ويسترن ديجيتال مثل Raptor و Caviar RE2 و RE2-GP (إصدار RAID) مع تمكين قراءة TLER (7 ثوانٍ) وتمكين كتابة TLER (7 ثوانٍ)، بينما تأتي محركات الأقراص المكتبية مثل Caviar SE و SE16 و GP مع تعطيل قراءة وكتابة TLER (مُهيأة على أنها 0 ثانية، لتعطيلها).

اعتبارات المقارنة بين الأنظمة المستقلة وأنظمة RAID

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

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

في تكوين RAID البرمجي، يعتمد مدى فائدة TLER على نظام التشغيل . على سبيل المثال، في FreeBSD، تتحكم حزمة ATA/CAM في مهلات القراءة/الكتابة، وهي مُعدّة لزيادة هذه المهلات تدريجيًا عند حدوثها. وبالتالي، إذا بدأ قرص سطح المكتب غير المُزوّد ​​بتقنية TLER بتأخير الاستجابة لقراءة قطاع، فسيعيد FreeBSD محاولة القراءة بمهلات أطول تدريجيًا لمنع إزالة القرص من المصفوفة قبل الأوان.

نموذجالوضع الافتراضي لـ TLER (قراءة / كتابة)توصية مستقلةتوصية RAID
كافيار، إس إي، إس إي 16، جي بي، رابتورمعطل (0 ثانية / 0 ثانية)تقصيرمُفعّل (إن أمكن)
كافيار RE2، RE2-GP، أحمرمُفعّل (7 ثوانٍ / 7 ثوانٍ)عاجزتقصير

نظام الملفات ZFS

تم تصميم نظام الملفات ZFS لكتابة البيانات على الفور إلى قطاع يتم الإبلاغ عنه على أنه تالف أو يستغرق وقتًا طويلاً للغاية للقراءة (مثل محركات الأقراص غير TLER)؛ وهذا عادةً ما يجبر على إعادة تعيين القطاع على الفور على قطاع ضعيف في معظم محركات الأقراص.

وحدات تحكم RAID

قد تختلف قيم مهلة قطع الاتصال بين مُصنّعي وحدات تحكم RAID المختلفة ؛ لذا، يجب أن يتم تفعيل TLER قبل انتهاء مهلة وحدة التحكم. على سبيل المثال، تستخدم وحدة 3ware 9650SE مهلة 20 ثانية، [ 1 ] بينما تستخدم وحدة LSI Logic المستخدمة في سلسلة IBM x مهلة 10 ثوانٍ. [ 2 ]

تُعد تقنية Intel Matrix RAID / Intel Rapid Storage Technology المتوفرة على نطاق واسع ، والمدمجة في اللوحات الأم لخوادم Intel واللوحات الأم الحديثة لأجهزة الكمبيوتر المكتبية، وحدة تحكم شبه مادية، وليست وحدة تحكم RAID مادية حقيقية.

برنامج RAID

يقوم برنامج mdadm في نظام لينكس ببساطة بإيقاف تشغيل القرص مؤقتًا والسماح له بإكمال عملية الاستعادة، ومع ذلك، فإن مهلة الأمر الافتراضية لطبقة قرص SCSI (/sys/block/sd?/device/timeout) هي 30 ثانية، [ 3 ] وبعدها سيحاول البرنامج إعادة ضبط القرص، وإذا فشل ذلك، فسيفصل القرص عن الشبكة. [ 4 ]

تغيير ERC

معيار ATA-8

يُعرّف معيار ATA-8 لعام 2006 أمر التحكم في استعادة الأخطاء SCT . [ 5 ] بالنسبة لمحركات الأقراص الصلبة التي تُطبّق هذه الواجهة، يُمكن استخدام أداة smartctl (جزء من حزمة smartmontools ) لتغيير مهلة استعادة الأخطاء . [ 6 ] في عام 2018، أضاف معيار ACS-4 وظيفةً لحفظ الإعداد بعد إعادة التشغيل؛ وهي مدعومة الآن بواسطة smartctl. [ 7 ]-l scterc

قد لا يُجدي التحكم في سلوك مهلة الاتصال عبر أداة smartctl على جميع محركات الأقراص الصلبة، لأن بعض الشركات المصنعة قد عدّلت محركات أقراص سطح المكتب الخاصة بها بحيث لم تعد تدعم معيار ERC، [ 8 ] [ 9 ] وذلك على ما يبدو لزيادة مبيعات طرازات RAID/Enterprise الأغلى ثمناً. ويشير ريتشارد غريغوري، الذي كتب رقعة ERC الأصلية لأداة smartctl، إلى أن شركة ويسترن ديجيتال سحبت دعم ERC بإصدار طراز جديد دون سابق إنذار. [ 6 ]

في نظام التشغيل ويندوز، يتوفر برنامج HDAT2 بالإضافة إلى برنامج smartctl (وهو برنامج متعدد المنصات ). [ 6 ]

معيار SCSI

يصف SBC-4 حقل "حدود وقت الاسترداد" في صفحة وضع استرداد أخطاء القراءة والكتابة، والذي يُستخدم لتحديد كيفية قيام محرك الأقراص باسترداد الأخطاء. [ 10 ] يمكن لبرنامج sdparm تغيير هذا الإعداد باستخدام [ 11 ]--set=RTL .

خدمات البائع

ويسترن ديجيتال

تتيح أداة WDTLER.EXE تفعيل أو تعطيل مُعامل TLER على محركات الأقراص الصلبة من ويسترن ديجيتال. هذه الأداة مُصممة لنظام DOS ، وتعمل على جميع محركات الأقراص الصلبة المتوافقة من ويسترن ديجيتال والمتصلة بالكمبيوتر، وتُجري عليها التغييرات اللازمة. ويبقى التغيير ساريًا حتى بعد إعادة تشغيل الجهاز. كانت ويسترن ديجيتال تُشير إلى هذه الأداة في قسم الأسئلة الشائعة . [ 12 ]

تتضمن الأداة ثلاث ملفات دفعية: TLERSCAN.BAT للحصول على الحالة الحالية لإعداد TLER على جميع محركات الأقراص الصلبة، و TLER-ON.BAT لتفعيل TLER، و TLER-OFF.BAT لتعطيله. يقوم ملف TLER-ON.BAT المرفق بضبط وقت TLER للقراءة والكتابة إلى سبع ثوانٍ. كما يمكن استخدام أداة WDTLER.EXE مباشرةً مع معلمات لتحديد مهلة زمنية مخصصة.-r# -w#

تزعم شركة ويسترن ديجيتال أن استخدام أداة WDTLER.EXE على محركات الأقراص الحديثة قد يُلحق الضرر بالبرامج الثابتة ويجعل القرص غير قابل للاستخدام. لم تعد هذه الأداة متوفرة لدى ويسترن ديجيتال، ولن يكون من الممكن تغيير إعدادات TLER على محركات الأقراص الجديدة. أقراص RE مناسبة فقط لمصفوفات RAID، بينما أقراص Caviar مناسبة فقط للاستخدامات غير المتوافقة مع RAID. لا تزال الأداة تعمل مع محركات الأقراص القديمة .

هيتاشي

ذكرت خدمة عملاء هيتاشي في عام 2009 أن هناك أداة خاصة لتغيير رمز التحقق من صحة البيانات (يشار إليها باسم CCTL). [ 12 ]

سيجيت

توفر شركة Seagate أداة openSeaChest التي تتيح لك فحص وتغيير العديد من إعدادات البرامج الثابتة، بما في ذلك TLER. إذا لم تتمكن من استخدام هذه الأداة لضبط TLER، فإن أوامر سطر الأوامر ذات الصلة هي و .smartctl -l scterc,x,yopenSeaChest_Configure -d /dev/sg0 --sctReadTimeropenSeaChest_Configure -d /dev/sg0 --sctWriteTimer

مراجع

  1. "دليل المستخدم لـ 9650SE و9690SA من الإصدار 9.5.2 مجموعة التعليمات البرمجية الكاملة" . lsi.com . مؤرشف من الأصل في 3 فبراير 2012. تم الاطلاع عليه في 10 يونيو 2015 .
  2. متوفر في أداة تهيئة RAID في BIOS > خصائص الجهاز المتقدمة
  3. "linux/sd.h at master · torvalds/linux · GitHub" . GitHub .
  4. "نظام لينكس الفرعي SCSI: SCSI EH" . kernel.org .
  5. مجموعة أوامر ATA/ATAPI (ATA8-ACS)
  6. 1 2 3 ريتشارد غريغوري. "وصف المؤلف للتصحيح الأصلي لـ smartctl الذي نفّذ هذه الميزة" . مؤرشف من الأصل بتاريخ 10 سبتمبر 2013. تم الاطلاع عليه بتاريخ 15 فبراير 2013 .
  7. "#1427 (إضافة دعم لميزات مؤقت استعادة أخطاء SCT المضافة في ACS-4) – smartmontools" . www.smartmontools.org .
  8. "ردًا على: md RAID مع محركات أقراص SATA أو SAS من فئة المؤسسات" . spinics.net .
  9. "أسئلة وأجوبة سيجيت: ما هو التحكم في استعادة الأخطاء؟" . seagate.com .
  10. "INCITS 506-202x - تكنولوجيا المعلومات - أوامر كتل SCSI - 4 (SBC-4) مسودة المراجعة 22" . 15 سبتمبر 2020. تم الاطلاع عليه في 22 مايو 2023 .
  11. دليل مبرمج لينكس – أوامر الإدارة والأوامر ذات الامتيازات من Manned.orgsdparm(8)  
  12. 1 2 "خيط TLER / CCTL / ERC" . [H]الأرض|المنتدى . 16 نوفمبر 2010.