NVMe over Fabrics (NVMe-oF) توسعه پروتکل شبکه NVMe به FC بر روی اترنت (FCoE) است که اتصال سریعتر و کارآمدتر بین بخش ذخیرهسازی و سرورها و همچنین کاهش استفاده از CPU از سرورهای میزبان برنامه را امکان پذیر میکند. این پروتکل انتقال داده بین یک کامپیوتر میزبان و یک دستگاه یا سیستم ذخیرهسازی حالت جامد (Solid State) را از طریق یک شبکه از طریق فرمان مبتنی بر پیام NVMe، امکان پذیر میکند. دادهها را میتوان از طریق روشهایی مانند FC بر روی اترنت یا InfiniBand منتقل کرد.
NVM Express Inc سازمانی غیرانتفاعی است که نسخه ۱.۰ مشخصات NVMe را در ۱ مارس ۲۰۱۱ منتشر کرد. بعدا، در ۵ ژوئن ۲۰۱۶، همان سازمان نسخه ۱.۰ مشخصات NVMe-oF را نیز منتشر کرد. NVMe نسخه ۱.۳ نیز بعدا در ماه می۲۰۱۷ منتشر شد. این به روز رسانی ویژگیهایی را برای افزایش امنیت، اشتراک منابع و پایداری درایو حالت جامد (SSD) اضافه کرد. سازمان NVM Express تخمین زده است که ۹۰ درصد از پروتکل NVMe-oF همان پروتکل NVMe است که برای استفاده محلی روی گذرگاه PCIe طراحی شده است.
فروشندگان در حال کار بر روی توسعه یک اکوسیستم سازمانی بالغ هستند که از NVMe end-to-end بر روی Fabricها پشتیبانی میکند، از جمله سیستم عامل سرور، هایپروایزر سرور، کارتهای آداپتور شبکه، سیستم عامل ذخیرهسازی و درایوهای ذخیرهسازی. علاوه بر این، فروشندگان سوئیچ SAN سعی میکنند FC ۳۲ گیگابیتی را به عنوان fabric منطقی برای فلش NVMe قرار دهند. از زمان توسعه اولیه NVMe-oF، پیاده سازیهای متعددی از این پروتکل وجود داشته است، مانند NVMe-oF با استفاده از RDMA، FC یا TCP/IP.
موارد استفاده NVMe over Fabrics
اگرچه NVMe-oF هنوز یک فناوری نسبتا جوان است، به طور گسترده در معماری شبکه گنجانده شده است. استفاده از NVMe-oF میتواند به ارائه یک پروتکل ذخیرهسازی پیشرفته کمک کند که میتواند از پتانسیل SSDهای امروزی به طور کامل استفاده کند. این پروتکل میتواند به پر کردن شکافهای بین DAS و SAN نیز کمک کند و سازمانها را قادر میسازد تا از پس بارهای کاری که به توان عملیاتی بالا و تأخیر کم نیاز دارند، برآیند.
استقرار اولیه NVMe به صورت DAS در سرورها بود. به این صورت که کارتهای فلش NVMe جایگزین SSDهای سنتی به عنوان رسانه ذخیرهسازی شدند. این چیدمان در مقایسه با فضای ذخیرهسازی تمام فلش موجود، دستاوردهای امیدوارکنندهای با عملکرد بالا ارائه میکند، اما معایبی هم دارد. NVMe نیاز به افزودن ابزارهای نرمافزاری شخص ثالث برای بهینهسازی پایداری نوشتن و خدمات داده دارد. در آرایههای NVMe در سطح کنترل کننده ذخیرهسازی هنوز هم تنگناهایی وجود دارند.
موارد استفاده دیگر برای NVMe-oF شامل بهینهسازی تجزیه و تحلیل بلادرنگ و همچنین ایفای نقش در هوش مصنوعی و یادگیری ماشینی است. استفاده از NVMe-oF یک مرحله نسبتا جدید در تکامل این فناوری است که راه را برای ورود سیستمهای فلش در مقیاس رک که مدیریت دادههای بومی و سرتاسری را یکپارچه میکنند، هموار میکند. سرعت پذیرش این فناوری توسط جریان اصلی به سرعت توسعه اکوسیستم NVMe در سراسر پشته بستگی دارد.
مزایای NVMe over Fabrics
مزایای درایوهای ذخیرهسازی مبتنی بر NVMe شامل موارد زیر است:
- زمان تاخیر کم
- درخواستهای موازی اضافی
- افزایش عملکرد کلی
- کاهش طول پشتههای ذخیرهسازی سیستم عامل در سمت سرور
- بهبودهای مربوط به عملکرد آرایه ذخیرهسازی
- راهحلهای پرسرعتتر در نقطه پایانی با حرکت از درایوهای پیوستشده SCSI (SAS)/SATA به NVMe SSDها
- انواع مختلف پیادهسازی برای سناریوهای مختلف
مشخصات فنی NVMe over Fabrics
برخی از مشخصات فنی NVMe-oF شامل موارد زیر است:
- سرعت بالا
- تأخیر کم در شبکهها
- کنترل جریان مبتنی بر اعتبار (credit-based)
- توانایی مقیاس پذیری تا هزاران دستگاه دیگر
- پشتیبانی چند مسیری fabric برای فعال کردن چندین مسیر بین آغازگر میزبان NVMe و هدف ذخیرهسازی به طور همزمان
- پشتیبانی از چند میزبان fabric برای امکان ارسال و دریافت دستورات از چندین میزبان و زیرسیستمهای ذخیرهسازی به طور همزمان
NVMe over Fabrics در برابر NVMe؛ تفاوتهای اصلی
NVMe جایگزینی برای استاندارد Small Computer System Interface (SCSI) برای اتصال و انتقال دادهها بین یک میزبان و یک دستگاه یا سیستم ذخیرهسازی هدف جانبی است. NVMe برای استفاده با رسانههای سریعتر مانند SSD و فناوریهای مبتنی بر حافظه پسا فلش طراحی شده است. استاندارد NVMe در مقایسه با پروتکلهای SCSI و SATA که برای رسانههای چرخان مثل هارد دیسک توسعه یافتهاند، زمانهای دسترسی را چند برابر سریعتر میکند.
NVMe از ۶۴۰۰۰ صف پشتیبانی میکند که هر کدام دارای عمق صف تا ۶۴۰۰۰ فرمان هستند. تمام دستورات ورودی/خروجی، همراه با پاسخهای بعدی، بر روی یک هسته پردازنده عمل میکنند و پردازندههای چند هستهای را در سطح بالایی از موازیسازی قرار میدهند. قفل I/O مورد نیاز نیست، زیرا هر رشته برنامه یک صف اختصاصی دریافت میکند.
دستگاههای مبتنی بر NVMe دادهها را با استفاده از یک شیار گسترش PCIe انتقال میدهند، به این معنی که برای هدایت ترافیک ذخیرهسازی شبکه نیازی به کنترلکننده سختافزار اختصاصی نیست. با استفاده از NVMe، یک PCIe SSD مبتنی بر میزبان میتواند دادهها را با کارایی بیشتری به یک هدف ذخیرهسازی یا زیرسیستم انتقال دهد.
یکی از تمایزات اصلی بین NVMe و NVMe-oF، مکانیسم transport-mapping برای ارسال و دریافت دستورات یا پاسخ است. NVMe-oF از یک مدل مبتنی بر پیام برای ارتباط بین یک میزبان و یک دستگاه ذخیرهسازی هدف استفاده میکند. NVMe محلی دستورات و پاسخها را به حافظه مشترک درهاست از طریق پروتکل رابط PCIe ترسیم میکند.
در حالی که NVMe ویژگیهای عملکرد PCIe Gen 3 را منعکس میکند، فاقد یک لایه پیام رسانی بومی برای هدایت ترافیک بین میزبانهای راه دور و SSDهای NVMe در یک آرایه است. درواقع NVMe-oF پاسخ صنعت به توسعه یک لایه پیام رسانی است.
NVMe over Fabrics با استفاده از RDMA
استفاده NVMe-oF از RDMA توسط یک زیر گروه فنی از سازمان NVM Express تعریف شده است. نگاشتهای موجود شامل RDMA از طریق اترنت همگرا (RoCE) و پروتکل اینترنت گسترده RDMA (iWARP) برای اترنت و InfiniBand است. RDMA مکانیزم انتقال حافظه به حافظه بین دو کامپیوتر است. دادهها از یک فضای آدرس حافظه به فضای دیگر، بدون فراخوانی سیستم عامل یا پردازنده ارسال میشود. سربار کمتر و دسترسی و زمان پاسخگویی سریعتر به پرس و جوها، با تأخیری که معمولا در حد میکروثانیه است، از نتایج RDMA است.
NVMe به عنوان پروتکل برای انتقال ترافیک ذخیرهسازی در RDMA از طریق Fabrics عمل میکند. این پروتکل یک زبان مشترک برای سرورهای محاسباتی و ذخیرهسازی برای برقراری ارتباط در مورد انتقال دادهها فراهم میکند. NVMe-oF با استفاده از RDMA اساسا نیاز به پیادهسازی یک شبکه ذخیرهسازی جدید دارد که عملکرد را افزایش میدهد، اما هزینهاش کاهش مقیاس پذیری در مقایسه با پروتکل FC است.
NVMe Over Fabrics با استفاده از Fibre Channel
NVMe-oF با استفاده از FC-NVMe توسط کمیته T11 به عنوان بخشی از کمیته بین المللی استانداردهای فناوری اطلاعات (INCITS) توسعه یافته است. FC امکان نگاشت پروتکلهای دیگر مانند NVMe، SCSI و فیبر اتصال اختصاصی IBM (Ficon) را برای ارسال دادهها و دستورات بین دستگاههای ذخیرهسازی میزبان و هدف، فراهم میکند.
FC-NVMe و Gen 6 FC میتوانند در یک زیرساخت همزیستی داشته باشند و لزوم اورهال مراکز داده را از بین میبرد. مشتریان از سیستم عامل برای ارتقاء سوئیچهای شبکه FC موجود استفاده میکنند، مشروط بر اینکه آداپتورهای باس میزبان (HBA) از اهداف ذخیرهسازی با قابلیت NVMe-oF و FC با سرعت ۱۶ گیگابیت در ثانیه یا ۳۲ گیگابیت بر ثانیه پشتیبانی کنند.
پروتکل FC از دسترسی به فلش مشترک NVMe پشتیبانی میکند، اما شاهد کاهش عملکرد برای تفسیر و ترجمه دستورات SCSI محصور شده به دستورات NVMe خواهیم بود. انجمن صنعت FCIA به ایجاد استانداردهایی برای پیاده سازی FC-NVMe سازگار با زیرساخت قدیمی کمک میکند و یک آداپتور FC-NVMe را قادر میسازد تا از دیسکهای مبتنی بر SCSI، SSDهای سنتی و کارتهای فلش NVMe متصل به PCIe پشتیبانی کند.
مقاله پیشنهادی“(ISE) Cisco Identity Services Engine چیست؟”
NVMe over Fabrics با استفاده از TCP/IP
یکی از پیشرفتهای جدیدتر در مورد NVMe-oF توسعه این پروتکل با استفاده از TCP/IP است. NVMe-oF اکنون میتواند از اتصال انتقال TCP پشتیبانی کند. NVMe از طریق TCP امکان استفاده از NVMe-oF را در یک شبکه استاندارد اترنت فراهم میکند. همچنین با استفاده از NVMe-oF TCP/IP نیازی به تغییرات پیکربندی یا پیاده سازی تجهیزات خاصی نیست. از آنجا که اتصال جابجایی را میتوان بر روی هر شبکه اترنت یا اینترنت استفاده کرد، چالشهایی که معمولا در پیاده سازی تجهیزات و تنظیمات اضافی وجود دارد حذف میشوند.
TCP یک استاندارد پذیرفته شده برای ایجاد و حفظ ارتباطات هنگام تبادل داده در یک شبکه است. TCP در ارتباط با IP کار خواهد کرد، زیرا هر دو پروتکل استفاده شده با هم ارتباطات در سراسر اینترنت و شبکههای خصوصی را تسهیل میکنند. اتصال انتقال TCP در NVMe-oF چگونگی کپسولهسازی و تحویل دادههای بین یک میزبان و یک زیر سیستم حافظه غیر فرار را مشخص میکند. اتصال TCP همچنین نحوه نگاشت صفها، کپسولها و دادهها را مشخص میکند که از ارتباطات TCP بین میزبانهای NVMe-oF و کنترلکنندهها از طریق شبکههای IP پشتیبانی میکند.
NVMe-oF با استفاده از TCP/IP انتخاب خوبی برای سازمانهایی است که میخواهند از زیرساخت اترنت خود استفاده کنند. این روش پیاده سازی به توسعه دهندگان این امکان را میدهد که فناوری NVMe را از iSCSI خارج کنند. به عنوان مثال، سازمانی که نمیخواهد با مشکلات احتمالی موجود در پیادهسازی NVMe روی Fabrics با استفاده از RDMA روبرو شود، میتواند به جای آن از مزایای NVMe-oF با استفاده از TCP/IP در هسته لینوکس استفاده کند.
پشتیبانی صنعت ذخیرهسازی از NVMe-oF و NVMe
فروشندگان قدیمی راهکارهای ذخیرهسازی و استارت آپها به طور یکسان برای بهدست آوردن جایگاهی در این بازار رقابت میکنند. محصولات ذخیرهسازی تمام فلش NVMe و NVMe-oF شامل موارد زیر است:
- DataDirect Networks (DDN) Flashscale
- سیستم هیبریدی Datrium DVX
- Kaminario K2.N
- آرایههای NetApp Fabric-Attached Storage (FAS)، از جمله Flash Cache با اتصال NVMe SSD
- Pure Storage FlashArray//X
- Tegile IntelliFlash (در سال ۲۰۱۷ توسط Western Digital Corp خریداری شد و سپس در سال ۲۰۱۹ به DDN فروخته شد.)
در دسامبر ۲۰۱۷، IBM یک پیکربندی NVMe-oF InfiniBand را پیشنمایش کرد که سیستمهای Power9 و FlashSystem V9000 خود را ادغام میکرد، محصولی که برای بارهای کاری شناختی که مقادیر انبوهی از داده را دریافت میکنند، طراحی شده است.
در سال ۲۰۱۷، شرکت Hewlett Packard Enterprise حافظه فلش HPE Persistent Memory Server خود را با استفاده از سرورهای ProLiant Gen9 و SSDهای PCIe با حافظه پایدار سازگار با NVMe معرفی کرد.
Dell EMC یکی از اولین فروشندگان فضای ذخیرهسازی بود که محصول NVMe تمام فلش را به بازار عرضه کرد. آرایه DSSD D5 با سرورهای Dell PowerEdge و یک NVMe اختصاصی روی شبکه PCIe ساخته شده است. این محصول در سال ۲۰۱۷ به دلیل فروش ضعیف کنار گذاشته شد.
تعداد معدودی از استارت آپها نیز آرایههای تمام فلش NVMe را راه اندازی کردهاند:
- Apeiron Data Systems از درایوهای NVMe برای رسانهها استفاده میکند و به جای سرورهای متصل به آرایههای ذخیرهسازی، سرویسهای داده را در آرایههای دروازه قابل برنامه ریزی میدانی (FPGAs) قرار میدهد.
- E8 Storage که توسط آمازون در سال ۲۰۱۹ خریداری شد از نرمافزار خود برای ایجاد کپی از snapshotها از آرایه فلش E8-D24 NVMe به سرورهای محاسباتی متصل استفاده میکند، طرحی که هدف آن کاهش هزینههای مدیریتی روی آرایه است.
- فضای ذخیرهسازی تعریف شده توسط نرم افزار Excelero بر روی هر سرور استاندارد اجرا میشود.
- آرایههای Mangstor MX6300 NVMe-oF مبتنی بر Dell EMC PowerEdge مجهز به کارتهای NVMe PCIe هستند.
- Pavilion Data Systems دارای یک آرایه حافظه با نام تجاری Pavilion است که با کارتهای رابط شبکه (NICs) رایج، سوئیچهای PCIe و پردازندهها ساخته شده است. دستگاه U4 این شرکت شامل ۲۰ کنترلر ذخیرهسازی و ۴۰ پورت اترنت است که با استفاده از شبکه سوئیچ داخلی PCIe به ۷۲ عدد SSD NVMe متصل میشود.
- Vexata Inc. نرم افزارهای توزیع شده VX-100 و Vexata Active Data Fabric خود را ارائه میدهد. آرایه NVMe متصل به اترنت فروشنده شامل یک کنترلر front-end، یک روتر cut-through مبتنی بر FPGA و گرههای داده است که زمانبندیهای ورودی/خروجی و ابرداده را مدیریت میکند.
فعالیت تامینکنندگان سختافزار برای آمادهکردن بازار
فروشندگان سختافزار رایانه در سال ۲۰۱۷ در حوزه فناوریهای NVMe-oF مسیر جدیدی را آغاز کردند. فروشندگان محصولات شبکه منتظر فروشندگان محصولات ذخیرهسازی هستند تا بتوانند آرایههای مبتنی بر NVMe-oF را به فروش برسانند. Brocade و Cisco به عنوان بازیگران اصلی حوزه سوئیچهای FC، هر کدام از ادوات Gen 6 FC با سرعت ۳۲ گیگابیت بر ثانیه استفاده کردند که از ترافیک فلش NVMe، از جمله قابلیتهای پارچه FC-NVMe پشتیبانی میکند. همچنین Cavium هم وارد میدان شد که آداپتورهای QLogic Gen 6 FC و FastLinQ اترنت را برای NVMe-oF به روز رسانی کرد.
Marvell کنترلکنندههای ۸۸SS1093 NVMe SSD خود را معرفی کرد که دارای طراحی پیشرفتهای است که فناوری بررسی برابری کم چگالی خود را برای دستگاههای فلش NAND TLC بر روی MLC NAND قرار میدهد.
Mellanox Technologies معماری مرجع ذخیرهسازی NVMe-oF را بر اساس پردازندههای قابل برنامه ریزی سیستم روی تراشه BlueField (SoC) خود توسعه داده است. شبیه به زیرساختهای همگرا (HCI)، BlueField ابزارهای محاسباتی، شبکه، امنیت، ذخیرهسازی و مجازی سازی را در یک دستگاه ادغام میکند.
Microsemi Corp. با American Megatrends (AMI) برای توسعه معماری مرجع NVMe-oF همکاری کرد. این سیستم سوئیچهای Microsemi Switchtec PCIe را در سختافزار زیرساختی قابل ترکیب با طراحی در مقیاس رک Intel (RSD) با سیستمافزار مدیریت Fabric مربوط به AMI ترکیب میکند.
در میان سازندگان درایو، Intel با SSDهای NVMe دو پورت مبتنی بر ۳D NAND و درایوهای Intel Optane NVMe که بر اساس فناوری حافظه سه بعدی XPoint توسعه یافته توسط Intel و سازنده تراشه Micron Technology، پیشتاز است. Intel ادعا میکند درایوهای Optane NVMe تقریبا هشت برابر سریعتر از حافظههای فلش NAND NVMe PCIe SSD هستند.
Micron سری ۹۲۰۰ NVMe SSD خود را عرضه کرد و همچنین به بخش فروش فضای ذخیرهسازی منشعب شد و معماری مرجع Micron Accelerated Solutions NVMe و دستگاههای مبتنی بر Micron SolidScale NVMe-oF را راهاندازی کرد.
Seagate Technology درایو Nytro 5000 M.2 NVMe SSD خود را معرفی کرد و نمونه برداری از کارت الحاقی NVMe 64 ترابایتی را آغاز کرد.
جمعبندی
با توجه به تعداد افراد بیشتری که به دادهها در سرویسهای ابری وابسته هستند، تقاضای فزایندهای برای ذخیرهسازی back-end سریعتر در مراکز داده وجود دارد. NVMe-oF و انواع مختلف آن به عنوان آینده ذخیرهسازی دادهها شناخته میشوند. NVMe به دلیل عملکرد چندوظیفهای سریع با تاخیر کم و توان عملیاتی بالا، روز به روز محبوبتر شده است. در حالی که NVMe در رایانههای شخصی هم برای بهبود ویرایش ویدیو، بازی و سایر راهحلها استفاده میشود، مزیت واقعی NVMe-oF در سطح استفاده شرکتها مشاهده میشود. صنایعی مانند فناوری اطلاعات، هوش مصنوعی و یادگیری ماشینی به پیشرفت خود ادامه میدهند و تقاضا برای عملکرد بهبودیافته همچنان در حال رشد است.