NVMe (non-volatile memory express) رابط کنترلکننده میزبان حافظه غیرفرار
NVMe چیست؟
NVMe مخفف non-volatile memory express یک حافظه غیرفرار و ماندگار است و سرعت خواندن و نوشتن اطلاعات روی آن بالاست. همچنین NVMe نسخه پیشرفته تر و حرفه ای تر هارد SSD می باشد. درگاه اتصال هاردهای SSD درگاه Sata بوده اما درگاه اتصال حافظه NVME ، پی سی آی (PCIe) است. به علت اتصال مستقیم درایو PCIe با مادربرد(برد اصلی سیستم)، این هارد از نهایت قابلیت و کارایی خود استفاده می کند. این قضیه موجب بالا رفتن سرعت دریافت و ارسال اطلاعات می شود.
NVMe یک رابط کنترلکننده میزبان است . NVMe دارای پروتکل های خاص(قوانین) ذخیرهسازی می باشد. NVMe برای تسریع سرعت انتقال دادهها بین سیستمهای میزبان (سازمان ها) و کاربران (مشتریان) ساخته شده است. این حافظه درایو حالت جامد می باشد که از طریق گذرگاه بسیار پرسرعت رایانه ایجاد شده است.
NVMe معمولاً به عنوان رسانه ذخیره سازی حالت جامد حافظه اصلی، حافظه نهان cache یا حافظه پشتیبان back up استفاده می شود.(حالت جامد: همانند حافظه فلش، از تراشه الکترونیکی برای ذخیره سازی دائمی اطلاعات استفاده می کند)
این حافظه یک جایگزین برای استانداردهای (SCSI) و (ATA) برای اتصال و انتقال داده ها بین یک سیستم میزبان host و یک دستگاه ذخیره سازی مقصد ارائه می کند. NVMe برای کار با رسانه های پرسرعت طراحی شده است. مزیت اصلی درایوهای (PCIe SSD) مبتنی بر NVMe نسبت به سایر انواع حافظه، تأخیر کمتر(تاخیر یا latency در شبکه، مدت زمانی است که طول میکشد تا یک درخواست از مبدا به مقصد ارسال شود.) و انجام عملیات ورودی/خروجی پرسرعت در ثانیه (IOPS) می باشد.
توضیحات کوتاه مربوط به متن بالا:
PATA یا Parallel ATA مخفف Parallel Advanced Technology Attachment یک استاندارد برای اتصال هارد دیسک به کامپیوتر است. همانطور که از نامش پیداست، PATA بر خلاف دستگاه های سریال ATA (SATA) که از فناوری سیگنالینگ سریال استفاده می کنند ، مبتنی بر فناوری سیگنالینگ موازی است.
SCSI یک نوع محبوب از نوع اتصال برای ذخیره سازی مورد استفاده سایر دستگاه ها در کامپیوتر است. این اصطلاح به کابل ها و پورت های مورد استفاده برای اتصال انواع خاصی از دیسک های سخت ، درایوهای نوری ، اسکنر ها و سایر دستگاه های جانبی به کامپیوتر اشاره دارد.
PCIe SSD عملکرد بسیار بالایی دارند و این باعث گرانتر شدن این نوع SSDها شده است. مطمئنا PCIe به طور مستقیم داده را به مادربرد متصل میکند. PCIe معمولا در دستگاه هایی مانند کارت گرافیک استفاده میشود و همچنین نیاز به اتصالات داده ای بسیار سریعی میباشد، در عین حال PCIe میتواند در حافظههای ذخیره سازی نیز بسیار کاربردی باشد. پی سی آی ای یا پی سی آی اکسپرس که به صورت PCIe نیز نوشته میشود و مخفف کلمه لاتین (Peripheral Component Interconnect Express) است، به معنای اتصال سریع قطعات جانبی است. PCIe در واقع استانداردی برای اتصال پرسرعت تجهیزات و قطعات جانبی کامپیوتر است.در همه مادربردهای سیستم های دسکتاپ(رومیزی) تعدادی اسلات یا شیار قرار دارد که میتوان از آنها برای نصب کارتهای جانبی از جمله کارت گرافیک، کارت صدا، کارت کپچر، کارت RAID، کارت Wi-Fi یا کارت SSD استفاده کرد. نوع شیار PCIe استفاده شده در کامپیوتر شما بستگی به نوع و مدل مادربرد خواهد داشت.
SSD یک حافظه است که از تراشه الکترونیکی برای ذخیرهسازی دائم داده ها و اطلاعات استفاده میکند. در واقع SSD حافظهای مبتنی بر حافظه فلش است(عملکرد آن شبیه درایو فلش است) که در مقایسه با HDD برق کمتری مصرف میکند و از مقاومت و سرعت بیشتری برخوردار است.
HDD یا به اختصار Hard Disk Drive یک حافظه دائمی است که برای ذخیره کردن دادههای مورد پردازش کامپیوتر مورد استفاده قرار میگیرد. این هاردها اطلاعات را به شکل مکانیکی روی سطح مغناطیسی دیسکهای خود ذخیره میکند. هارد دیسکها یک ابزار ذخیرهسازی دائمی برای کامپیوترها مطرح هستند. ابزار ذخیرهسازی دائمی به این معنی است که با قطع جریان برق، اطلاعات ذخیرهشده از بین نمیروند. در هارد دیسکها با چرخش پلاتر، هد خواندن و نوشتن توسط یک بازوی مکانیکی به دادهی مورد نظر شما دسترسی پیدا میکند. اطلاعات به کمک این بازوها و بهره گیری از مغناطیس خوانده و نوشته میشوند.
همانطور که تکنولوژی حالت جامد(ذخیره اطلاعات در تراشه الکترونیکی) به رسانه پیشنهادی در بازار ذخیره سازی تبدیل شد، سریعا مشخص شد که رابط ها و پروتکل های موجود ، مانند SATA و SCSI برای دیتا سنترها و محیط های نگهداری داده ها و اطلاعات مناسب نمی باشند.
در اوایل سال 2011، مشخصات اولیه NVMe منتشر شد. نزدیک به 100 شرکت فناوری در توسعه آن مشارکت داشتند. شایان ذکر است NVMe یک عامل مهم و کلیدی برای فناوریها و برنامههای کاربردی در حال تکامل مانند اینترنت اشیا، هوش مصنوعی و یادگیری ماشین است، که همگی میتوانند از تاخیر کم و بهبود عملکرد بالا ارائه شده توسط ذخیرهسازی متصل به NVMe بهره ببرند.
NVMe چگونه کار می کند؟
همچنین استاندارد NVMe کاربرد اصلی NVMe را بیان نمی کند. با این حال، یک رابط رجیستری، مجموعه دستورات و مجموعه ای از ویژگی ها را برای SSD های مبتنی بر PCIe با اهداف عملکرد بالا و قابلیت همکاری در ابعاد وسیعی از سیستم های NVMe تعریف می کند.
جالب است بدانیم ،پروتکل NVMe می تواند از هر نوعی از حافظه غیر فرار، مانند SSD هایی که از انواع مختلف حافظه غیر فرار، از جمله فلش NAND استفاده می کنند، پشتیبانی کند. درایورهای NVMe برای انواع سیستم عامل ها از جمله ویندوز و لینوکس قابل استفاده هستند.
NAND Flash نوعی فناوری ذخیره سازی غیر فرار است که برای نگهداری داده ها نیازی به برق ندارد. یک مثال می تواند تلفن همراه باشد، با NAND Flash (یا تراشه حافظه) جایی است که فایل های داده مانند عکس ها، فیلم ها و موسیقی روی کارت micro SD ذخیره می شود. تراشههای فلش NAND تقریباً به اندازه یک ناخن هستند و میتوانند حجم عظیمی از دادهها را حفظ کنند. NAND عمدتاً در کارت های حافظه، درایوهای فلش USB و درایوهای solid-state یافت می شود.
یک NVMe SSD از طریق گذرگاه PCIe یا کانکتورهای M.2 و U.2 متصل می شود. پروتکل NVMe که با این اتصالات وصل شده است، تاخیر کمتر و IOPS (انجام عملیات ورودی/خروجی پرسرعت در ثانیه) بالاتر را همراه با کاهش مصرف برق امکان پذیر می کند.
NVMe فرامین ترسیم شده ورودی/خروجی (I/O) و پاسخ به حافظه به اشتراک گذاشته شده در کامپیوتر میزبان را از طریق یک رابط PCIe می دهد. رابط NVMe از I/O موازی با پردازندههای چند هستهای پشتیبانی میکند و توان عملیاتی بالا را ساده تر می کند .همچنین، مشکلات واحد پردازش مرکزی (CPU) را برطرف کند.
چرا NVMe اهمیت دارد؟
لازم به ذکر است، NVMe برای رسانههای ذخیرهسازی غیرفرار با سرعت و کارایی بالا مانند SSD طراحی شده است، برای محاسبات بسیارسخت و کاربردی مناسب است. به عنوان مثال، NVMe می تواند بارهای کاری سازمانی را مدیریت کند و در عین حال زیرساخت کمتری را به جا بگذارد و انرژی کمتری مصرف کند.
مدیریت بار، که به عنوان مدیریت طرف تقاضا نیز شناخته میشود، فرایند تعادل تأمین برق در شبکه با بار الکتریکی با تنظیم یا کنترل بار به جای خروجی ایستگاه قدرت است. از آنجا که انرژی الکتریکی شکلی از انرژی است که نمیتواند بهطور مؤثر انبار شود باید بلافاصله تولید، توزیع و مصرف شود. زمانی که بار بر روی یک سیستم نزدیک به حداکثر ظرفیت تولید میشود اپراتورهای شبکه باید یا منابع اضافی انرژی را پیدا کنند یا راههایی برای کاهش بارو در نتیجه مدیریت بار پیدا کنند. اگر آنها ناموفق باشند سیستم ناپایدار خواهد شد و خاموشیها میتوانند رخ دهند.
همچنین در مقایسه، تفاوت زیادی بین عملکرد NVMe و SATA وجود دارد. NVMe تاخیر بسیار کمتری نسبت به پروتکل های SAS و SATA دارد. این افزایش عملکرد و کاهش تأخیر به این معنی است که NVMe را می توان با برنامه های کاربردی با حجم کاری زیاد که نیاز به پردازش بلادرنگ دارند و در عین حال از محدودیت ها جلوگیری می کند، استفاده کرد.
مراکز سازمانی و دیتا سنترها می توانند از عملکرد بالای ذخیرهسازی مبتنی بر NVMe بهره ببرند.
موارد استفاده NVMe چیست؟
به دلیل عملکرد بسیار مناسب تکنولوژی ذخیرهسازی فلش NVMe، همچنین توانایی آن در مدیریت تعداد زیادی صف و دستورات، NVMe برای موارد زیر مناسب است:
-
مناسب برای استفاده حرفه ای تولید کنندگان و مصرف کنندگان قطعات الکترونیکی و انجام فعالیت هایی مانند ویرایش گرافیکی.
-
برنامه های کاربردی با عمق صف زیاد(صف یکی از انواع داده ساختارهاست که از آن برای ذخیره و بازیابی دادهها بهره میبرند.) برای ذخیره سازی ورودی/خروجی، از جمله پایگاه های داده و برخی عملیات در وب و اینترنت.
-
محاسبات با کارایی بالا به طور خاص، در برنامه هایی که تاخیر کم بسیار مهم است.
-
نواحی که نیاز به ذخیره سازی مقادیر زیادی داده دارند، مانند هوش مصنوعی، یادگیری ماشینی، تجزیه و تحلیل های پیشرفته و داده های بزرگ.
-
پایگاه داده های رابطه ای .عملکرد بهتر سیستم های حافظه فلش NVMe ، تعداد سرورهای فیزیکی مورد نیاز را کاهش می دهد.
-
برنامه هایی که نیاز به بازیابی یا ذخیره داده ها به صورت بلادرنگ و در لحظه واقعی دارند، مانند برنامه های مالی و تجارت الکترونیک.
مزایای NVMe چیست؟
-
درایوهای NVMe دستورات را دو برابر سریعتر از درایوهای AHCI SATA ارسال می کنند.
-
SSD های NVMe تنها چند میکروثانیه تاخیر دارند، در حالی که SSD های SATAبین 30 تا 100 میکروثانیه تاخیر دارند.
-
ذخیره سازی، مدیریت و دسترسی بهینه به داده ها.
-
پهنای باند بسیار بالاتری نسبت به SATA و SAS دارد.
-
از چندین فاکتور استاندارد از جمله اتصالات 2و U.2 پشتیبانی می کند.
-
داده ها را می توان مجزا و ساده کرد.
-
از پروتکل های tunneling که به حریم خصوصی می پردازد، پشتیبانی می کند.
AHCI در سادهترین تعریف یک مکانیستم سختافزاری است که از طریق نرمافزار عملکرد کنترلرهای میزبان SATA را برای پیادهسازی در چیپستهای مادربورد کنترل میکند. در واقع این رابط باعث تعامل سختافزار سیستم و تبادل داده بین حافظه سیستم میزبان و دستگاههای ذخیرهسازی میشود.
تکنولوژی M.2 نسل جدیدی از SSD هاست که برای دستگاههای باریک نظیر اولترابوک و تبلتها استفاده میشود. این تکنولوژی از سایر SSD ها باریکتر و کوچکتر بوده و به ویژه برای لپ تاپهای جدید گیمینگ و یا رندرینگ سه بعدی به دلیل سرعت بیشتر، مناسب هستند. درایوهای M.2 برای اتصال به مادربرد نیازی به کابل ندارند. در عوض، این درایورها مستقیماً با یک اسلات اتصال اختصاصی M.2 به مادربرد وصل میشوند.
قرارداد تونلزنی Tunneling protocol در شبکههای رایانهای به کاربر اجازه میدهد تا به سرویسهایی که در شبکهاش ارائه نمیشوند، دسترسی پیدا کند. یکی از استفادههای مهم آن اجرای یک پروتکل خارجی بر روی شبکهایست که آن پروتکل را پشتیبانی نمیکند؛ برای مثال استفاده از IPv6 بر روی شبکه مبتنی بر IPv4. استفاده دیگر این نوع پروتکلها ایجاد ارتباط ایمن بین شبکه ها یا فراهم کردن سرویسهایی است که ارائه کردن آنها توسط شبکه غیرممکن یا ناامن است. برای مثال فراهم کردن دسترسی یک کاربر خارجی به شبکه داخلی یک شرکت. از tunneling اغلب در شبکه های خصوصی مجازی یا همان VPN ها نیزاستفاده می شود. همچنین از آنجایی که پروتکلهای تونلزنی دادههای ارسالی را مجدداً بهشیوهای جدید بستهبندی کرده و احتمالاً براساس استاندارد بر روی آنها رمزگذاری اعمال میکنند، مخفی کردن محتویاتِ تونل نیز میتواند از استفادههای این نوع پروتکلها باشد. استفاده میشود. همچنین از دیگر ویژگی های آن میتوان به ایجاد ارتباط ایمن بین شبکه ها، امکان استفاده از پروتکل های پشتیبانی نشده، حفاظت از firewallها، اشاره کرد.
معایب NVMe چیست؟
معایب احتمالی عبارتند از:
-
سیستم های قدیمی NVMe پشتیبانی نمی کنند.
-
برای ذخیره حجم زیاد از داده مقرون به صرفه نیست و در مقایسه با دیسک های چرخشی (هارد دیسک hdd) متناسب با ظرفیت ذخیره سازی گران تر است.
-
معمولاً با قالب 2 استفاده می شود که ممکن است انتخاب درایو را بیشتر محدود کند.