NVMe over Fabrics: FC-NVMe، NVMe/TCP، NVMe/RoCE اور ان کے آپٹکس
NVMe نے سرور کے اندر SCSI کی جگہ لے لی کیونکہ فلیش اتنا تیز ہے کہ پروٹوکول اوورہیڈ نمایاں ہو جاتا ہے؛ NVMe over Fabrics (NVMe-oF) وہی کمانڈ سیٹ نیٹ ورک پر لے جاتا ہے تاکہ مشترکہ اسٹوریج رفتار برقرار رکھ سکے۔ یہ تین ٹرانسپورٹس پر چلتا ہے جو تین اقسام کے نیٹ ورک پر میپ ہوتے ہیں، اور اس لیے تین اقسام کے آپٹکس اور فزیکل لیئر قواعد کے تین مجموعوں پر۔ یہ صفحہ ان کا موازنہ کرتا ہے اور بتاتا ہے کہ ہر ایک کو لنکس سے کیا درکار ہے۔
NVMe-oF کیوں
| پہلو | SCSI دور (FCP، iSCSI) | NVMe-oF |
|---|---|---|
| کمانڈ کیوز | ایک کیو، ~32–256 کمانڈز | 64k کیوز × 64k کمانڈز تک؛ ڈیزائن کے لحاظ سے متوازی |
| فی I/O پروٹوکول اوورہیڈ | CPU وقت کے دسیوں µs | چند µs؛ RDMA ٹرانسپورٹس CPU کو بائی پاس کرتے ہیں |
| فیبرک سے شامل ہونے والی تاخیر | عموماً 100–200 µs | 10–30 µs (RDMA/FC)، 30–80 µs (TCP) |
| بہترین استعمال | HDD اور ابتدائی فلیش اریز | آل فلیش، الگ شدہ اسٹوریج، GPU ڈیٹا پائپ لائنز |
ٹرانسپورٹس
| ٹرانسپورٹ | نیٹ ورک | لاس لیس؟ | تاخیر | نوٹس |
|---|---|---|---|---|
| FC-NVMe (FC-NVMe-2) | Fibre Channel 16/32/64GFC | ہاں، کریڈٹس کے ذریعے | بہت کم | اسی فیبرک اور SFPs پر SCSI FCP کے ساتھ چلتا ہے؛ زوننگ اور نیم سرور میں تبدیلی نہیں (FC پروٹوکول بنیادیات) |
| NVMe/RoCE v2 | RDMA NICs کے ساتھ Ethernet 25/100/200/400G | PFC/ECN (DCQCN) درکار | بہت کم | UDP/IP پر RDMA verbs؛ سرے سے سرے تک لاس لیس کنفیگریشن درکار (لاس لیس Ethernet) |
| NVMe/TCP | کوئی بھی Ethernet/IP | نہیں، TCP لاس سنبھالتا ہے | کم–درمیانی | کوئی خاص NICs یا سوئچ فیچرز نہیں؛ روٹ کیا جا سکتا ہے؛ انٹرپرائز کے لیے بڑی تعداد کا انتخاب |
| NVMe/IB | InfiniBand | ہاں، کریڈٹس کے ذریعے | بہت کم | HPC/AI اسٹوریج (InfiniBand) |
چاروں NVMe-oF آرکیٹیکچر مشترک رکھتے ہیں: ایک ڈسکوری کنٹرولر ہوسٹس کو بتاتا ہے کہ کون سے سب سسٹمز موجود ہیں؛ ہوسٹس I/O کنٹرولرز سے کیوز کنیکٹ کرتے ہیں؛ ANA (غیر متناسب نیم اسپیس رسائی) ملٹی پاتھ سنبھالتا ہے۔
ہر ایک کو فزیکل لیئر سے کیا درکار ہے
| ٹرانسپورٹ | لنک کی ضرورت | آپٹکس |
|---|---|---|
| FC-NVMe | صاف FC لنکس، CRC/ITW تقریباً صفر، کریڈٹس ختم نہ ہوں | FC SFPs 16/32/64GFC، وینڈر سے تصدیق شدہ (FC آپٹکس) |
| NVMe/RoCE | صفر لاس: FEC فعال، RoCE کلاس پر PFC فعال، کوئی CRC غلطی نہیں (ہر گرا ہوا فریم go-back-N دوبارہ ترسیل کے ساتھ RDMA کیو کو روک دیتا ہے) | 25G SFP28 / 100G QSFP28 / 400G؛ ریک میں DAC، قطار میں SR/AOC، کمروں کے درمیان LR/DR؛ PMD کے لحاظ سے FEC |
| NVMe/TCP | معمول کا؛ لاس سے تاخیر بڑھتی ہے، درستگی متاثر نہیں ہوتی | کوئی بھی Ethernet آپٹکس |
| NVMe/IB | InfiniBand فیبرکس کی طرح | IB کیبلز اور آپٹکس (IB کیبلنگ) |
RoCE حساس ٹرانسپورٹ ہے: کم مارجن والی Rx پاور یا گندے کنیکٹر والا لنک CRC غلطیاں پیدا کرتا ہے جنہیں TCP خاموشی سے جذب کر لیتا، مگر جو RDMA کیوز کو نمایاں طور پر روکتی ہیں۔ پورٹ کے ایرر کاؤنٹرز کے ساتھ چلنے والے اسٹوریج تاخیر کے اسپائکس اس کی علامت ہیں (Rx پاور اور لنک بجٹ، VDM اور FEC میٹرکس)۔
انتخاب
| صورتِ حال | موزوں ٹرانسپورٹ |
|---|---|
| موجودہ FC SAN، آل فلیش اریز | FC-NVMe، وہی فیبرک، وہی آپٹکس، فی ٹارگٹ فعال کریں |
| نیا Ethernet اسٹوریج، ملے جلے وینڈرز، سائٹس کے درمیان روٹنگ | NVMe/TCP |
| تاخیر کے لیے حساس، واحد وینڈر Ethernet، اندرونِ خانہ لاس لیس مہارت | NVMe/RoCE |
| IB فیبرک کے ساتھ HPC/AI کلسٹر | NVMe/IB یا IB پر متوازی فائل سسٹمز |
| Ethernet اسکیل آؤٹ والے GPU کلسٹرز | الگ اسٹوریج نیٹ ورک پر NVMe/RoCE یا NVMe/TCP (GPU فیبرکس) |
آپریشنل نوٹس
- جہاں ممکن ہو اسٹوریج اور کمپیوٹ کے لیے الگ نیٹ ورکس رکھیں، یا کم از کم الگ ٹریفک کلاسز؛ RoCE کو اپنی لاس لیس کلاس درکار ہوتی ہے۔
- MTU: Ethernet ٹرانسپورٹس پر 9000؛ سرے سے سرے تک یکساں۔
- ملٹی پاتھ: دو فیبرکس یا دو VLANs/لیفز؛ ANA آگاہ انیشی ایٹرز۔
- نگرانی: فی پورٹ CRC/FEC اور پاز کاؤنٹرز، نیز DDM رجحانات؛ ناکام ہونے سے کافی پہلے خراب ہوتا آپٹک ٹیل تاخیر میں ظاہر ہوتا ہے (نگرانی)۔
- فرم ویئر: NIC/HBA اور اری فرم ویئر کی مطابقت میٹرکس اتنی ہی اہم ہیں جتنی آپٹکس کی مطابقت (SAN میں آپٹکس)۔
CodingBox میں
NVMe-oF فیبرک کے آپٹکس عام FC، Ethernet یا IB ماڈیولز ہوتے ہیں؛ فرق یہ ہے کہ ٹرانسپورٹ کتنی کم غلطی برداشت کرتا ہے۔ انسٹالیشن سے پہلے بینچ پر شناخت اور بنیادی DDM پڑھنا (Check transceiver، DDM)، اور اری و سوئچ وینڈرز کی قابلِ قبول شناخت کو کوڈ کرنا (وینڈر لاک)، اس کام کے وہ حصے ہیں جو پروگرامر سے متعلق ہیں۔
وہ اڈاپٹرز جن پر یہ فیبرکس چلتے ہیں، 100G/200G NICs، ان کے کیجز، PCIe حدود اور ماڈیول پالیسیز: آپٹیکل پورٹس کے ساتھ NICs۔