دیکشنری ای دیتا: E2E Data Protection چیست ؟

وقتی که داده‌ها از یک دستگاه به دستگاه دیگر منتقل می‌شوند، ممکن است مشکلات خاصی از جمله ضعیف شدن سیگنال، تداخل نویز و غیره رخ دهد. در نتیجه، حفاظت از داده‌ها از مبدأ تا مقصد (E2E-End-to-End) ایجاد شده تا اطمینان حاصل شود که داده‌های بازیابی شده و به کار گرفته شده، صحیح هستند و از بروز هرگونه خطا در هنگام ذخیره‌سازی داده‌ها، جلوگیری شود.

حفاظت از داده‌ها از مبدأ تا مقصد (E2E Data Protection) یکی از ویژگی‌های SSD است. این ویژگی می‌تواند محدوده‌ی تشخیص خطا را گسترش دهد. محدوده‌ی این پوشش‌دهی، همه‌ی مسیرهای سیستم‌های کامپیوتری، هارد درایوها و انتقال داده‌ها و عملکردها را در بر می‌گیرد تا صحت داده‌ها را تأیید کند.

حفاظت از داده‌ها از مبدأ تا مقصد در SSD

هر SSD شامل یک کنترلر است که مسئول ارتباط بین SSD و سیستم هاست است. اهمیتی ندارد که چه مشخصات (مانند 2.5 اینچ، mSATA، M.2، و…) یا چه پروتکل‌های ارتباطی (مانند SATA یا NVMe) دارند، همه‌ی آن‌ها از طریق کنترلر SSD نوشته یا خوانده می‌شوند.

وقتی که داده خوانده یا نوشته می‌شود، مسیر آن به سایت‌های مختلفی باز می‌شود. راه‌های دسترسی به نوشتن در سایت‌ها، به ترتیب از طریق هاست، آی‌پی PCIe، بافر داده، فلش IP، فلش NAND ( Host–> PCIe IP –>Data Buffer–>Flash IP–>NAND Flash ) انجام می‌گیرد و مسیرهای دسترسی به خواندن در سایت‌ها، عکس این مسیر است.

حفاظت از داده‌ها از ابتدا تا انتها (E2E) تا حد زیادی تضمین می‌کند که از داده‌ها در هنگام انتقال، محافظت می‌شود. اگر رمِ (RAM) داخلی کنترلر، داده را جابه‌جا کند و یک Soft Error (خطای مربوط به سیگنال و…) اتفاق بیفتد، سیستم می‌تواند خطاها را تشخیص دهد و از انتقال داده‌های اشتباه به هاست جلوگیری کند. به طور خلاصه، هدف اصلی حفاظت از داده‌ها از مبدأ تا مقصد (E2E Data Protection) اطمینان از این مسأله است که هر سایت از قابلیت‌های دیباگ کردن و رفع اشکال به صورت مستقل برخوردار باشد و از تولید داده‌های نادرست هنگام جابه‌جایی جلوگیری کند.

تشخیص و تصحیح خطا ‌

برای اطمینان از انتقال داده‌ها از کنترلر SSD به یک دستگاه ذخیره‌سازیِ NAND با حفظ یکپارچگی، کنترلر SSD از تکنولوژی «رفع اشکال» یا همان bug fix -که «کد تصحیح خطا» (ECC- Error Correction Code) نام دارد- برای کشف و رفع اکثر خطاهایی که ممکن است در بین مسیر، بر داده‌ها تأثیر بگذارد، استفاده می‌کند. تراشه‌های NAND Flash که سایر اطلاعات تصحیح خطا و داده‌های نوشته شده در هر قطعه (chunk) را در خود جای داده است، به کنترلر SSD اجازه می‌دهد تا هنگام خواندن قطعه‌های داده، به طور همزمان خطاها را تصحیح کند. علاوه بر این، خطاهای بیت می‌تواند در حین یک عمل عادیِ NAND رخ دهد؛ اما چنین خطاهایی هم می‌تواند به صورت لحظه‌ای توسط ECC تصحیح شود.

با این حال، در موارد بسیار نادر، خطاهای داده نمی‌توانند با خواندن قطعه‌های داده تصحیح شوند. در چنین حالتی، کنترلر SSD این مورد را به عنوان «کد عدم تصحیح خطا» (UECC- Unable Error Correction Code) طبقه‌بندی می‌کند و آن را به کامپیوتر هاست باز می‌گرداند.

SSD ای‌دیتا همچنین بلوک‌های بکاپ را برای دستگاه‌های NAND Flash یکپارچه می‌کند. این بلوک‌های یدکی معمولا در فضای OP هارد درایو قرار دارند و کاربران نمی‌توانند به آن‌ها دسترسی داشته باشند یا آن‌ها را بازیابی کنند. اگر یک دستگاه NAND در بلوک داده خطاهای بسیار زیادی داشته باشد، این بلوک به عنوان یک «قطعه‌ی خطا» (error chunk) علامت‌گذاری و جایگزین می‌شود. بنابراین، استفاده از «قطعات یدکی» (spare chunks) می‌تواند طول عمر SSD را بیشتر کند و ماندگاری آن را تداوم بخشد.