NVMe over Fabrics: FC-NVMe, NVMe/TCP, NVMe/RoCE ও সেগুলোর অপটিক্স · স্টোরেজ সিস্টেম · প্রযুক্তি · ডকুমেন্টেশন · CodingBox
CodingBox ডকুমেন্টেশন

NVMe over Fabrics: FC-NVMe, NVMe/TCP, NVMe/RoCE ও সেগুলোর অপটিক্স

সার্ভারের ভেতরে NVMe সরিয়ে দিয়েছে SCSI-কে, কারণ ফ্ল্যাশ এতই দ্রুত যে প্রোটোকলের ওভারহেড আলাদা করে চোখে পড়ে; ফ্যাব্রিকের ওপর NVMe (NVMe-oF) একই কমান্ড সেট নেটওয়ার্ক জুড়ে বহন করে, যাতে শেয়ার্ড স্টোরেজও তাল মেলাতে পারে। এটি চলে তিনটি ট্রান্সপোর্টে, যেগুলো তিন ধরনের নেটওয়ার্কের সঙ্গে মেলে; ফলে অপটিক্সও তিন ধরনের, আর ফিজিক্যাল লেয়ারের নিয়মও তিন সেট। এই পেজে সেগুলোর তুলনা করা হয়েছে এবং প্রতিটি লিংকের কাছে কী চায় তা বলা হয়েছে।

কেন NVMe-oF

দিকSCSI-যুগ (FCP, iSCSI)NVMe-oF
কমান্ড কিউএকটি কিউ, ~32–256 কমান্ডসর্বোচ্চ 64k কিউ × 64k কমান্ড; নকশাতেই সমান্তরাল
প্রতি I/O-এর প্রোটোকল ওভারহেডCPU সময়ের কয়েক দশ µsকয়েক µs; RDMA ট্রান্সপোর্ট CPU-কে এড়িয়ে যায়
ফ্যাব্রিক যে ল্যাটেন্সি যোগ করেসাধারণত 100–200 µs10–30 µs (RDMA/FC), 30–80 µs (TCP)
সবচেয়ে উপযোগীHDD ও প্রথম দিকের ফ্ল্যাশ অ্যারেঅল-ফ্ল্যাশ, ডিসঅ্যাগ্রিগেটেড স্টোরেজ, GPU ডেটা পাইপলাইন

ট্রান্সপোর্ট

ট্রান্সপোর্টনেটওয়ার্কলসলেস?ল্যাটেন্সিমন্তব্য
FC-NVMe (FC-NVMe-2)ফাইবার চ্যানেল 16/32/64GFCহ্যাঁ, ক্রেডিটের মাধ্যমেখুব কমএকই ফ্যাব্রিক ও SFP-তে SCSI FCP-এর পাশাপাশি চলে; জোনিং ও নেম সার্ভার অপরিবর্তিত (FC প্রোটোকলের মূল বিষয়)
NVMe/RoCE v2RDMA NIC-সহ ইথারনেট 25/100/200/400GPFC/ECN (DCQCN) লাগেখুব কমUDP/IP-এর ওপর RDMA ভার্বস; প্রান্ত থেকে প্রান্ত লসলেস কনফিগারেশন দরকার (লসলেস ইথারনেট)
NVMe/TCPযেকোনো ইথারনেট/IPনা; TCP প্যাকেট হারানো সামলায়কম–মাঝারিবিশেষ NIC বা সুইচ ফিচার লাগে না; রাউটযোগ্য; এন্টারপ্রাইজে সবচেয়ে বেশি ব্যবহৃত বিকল্প
NVMe/IBইনফিনিব্যান্ডহ্যাঁ, ক্রেডিটের মাধ্যমেখুব কমHPC/AI স্টোরেজ (ইনফিনিব্যান্ড)

চারটিই NVMe-oF-এর একই আর্কিটেকচার ভাগ করে: ডিসকভারি কন্ট্রোলার হোস্টকে জানায় কোন সাবসিস্টেম আছে; হোস্ট I/O কন্ট্রোলারের সঙ্গে কিউ কানেক্ট করে; ANA (অ্যাসিমেট্রিক নেমস্পেস অ্যাক্সেস) মাল্টিপাথ সামলায়।

ফিজিক্যাল লেয়ারের কাছে প্রতিটির চাহিদা

ট্রান্সপোর্টলিংকের প্রয়োজনীয়তাঅপটিক্স
FC-NVMeপরিচ্ছন্ন FC লিংক: CRC/ITW শূন্যের কাছাকাছি, ক্রেডিট ফুরিয়ে যায়নি16/32/64GFC-এর FC SFP, ভেন্ডরের যাচাই করা (FC অপটিক্স)
NVMe/RoCEশূন্য লস: FEC চালু, RoCE ক্লাসে PFC চালু, কোনো CRC এরর নেই (প্রতিটি হারানো ফ্রেম গো-ব্যাক-N পুনঃপ্রেরণের মাধ্যমে RDMA কিউ আটকে দেয়)25G SFP28 / 100G QSFP28 / 400G; র‍্যাকে DAC, সারিতে SR/AOC, কক্ষের মধ্যে LR/DR; প্রতিটি PMD অনুযায়ী FEC
NVMe/TCPসাধারণ; প্যাকেট হারালে ল্যাটেন্সি বাড়ে, কিন্তু ডেটার সঠিকতা নষ্ট হয় নাযেকোনো ইথারনেট অপটিক্স
NVMe/IBইনফিনিব্যান্ড ফ্যাব্রিকের মতোইIB ক্যাবল ও অপটিক্স (IB ক্যাবলিং)

এ ক্ষেত্রে RoCE-ই সবচেয়ে সংবেদনশীল: সীমার কিনারায় থাকা Rx পাওয়ার বা নোংরা কানেক্টরযুক্ত লিংক এমন CRC এরর তৈরি করে, যা TCP নীরবে সামলে নিত, কিন্তু RDMA কিউকে চোখে পড়ার মতো আটকে দেয়। স্টোরেজের ল্যাটেন্সি স্পাইক কোনো পোর্টের এরর কাউন্টারের সঙ্গে তাল মিলিয়ে বাড়লে সেটিই সূত্র (Rx পাওয়ার ও লিংক বাজেট, VDM ও FEC মেট্রিক)।

বাছাই

পরিস্থিতিউপযুক্ত ট্রান্সপোর্ট
বিদ্যমান FC SAN, অল-ফ্ল্যাশ অ্যারেFC-NVMe: একই ফ্যাব্রিক, একই অপটিক্স, প্রতিটি টার্গেটে আলাদাভাবে চালু করুন
গ্রিনফিল্ড ইথারনেট স্টোরেজ, মিশ্র ভেন্ডর, সাইটের মধ্যে রাউটিংNVMe/TCP
ল্যাটেন্সি-সংবেদনশীল, একক-ভেন্ডর ইথারনেট, নিজেদের লসলেস দক্ষতা আছেNVMe/RoCE
IB ফ্যাব্রিকযুক্ত HPC/AI ক্লাস্টারNVMe/IB অথবা IB-এর ওপর প্যারালাল ফাইল সিস্টেম
ইথারনেট স্কেল-আউটযুক্ত GPU ক্লাস্টারআলাদা স্টোরেজ নেটওয়ার্কে NVMe/RoCE বা NVMe/TCP (GPU ফ্যাব্রিক)

অপারেশনাল নোট

  • সম্ভব হলে স্টোরেজ ও কম্পিউটিংয়ের জন্য আলাদা নেটওয়ার্ক, অন্তত আলাদা ট্রাফিক ক্লাস; RoCE-এর দরকার নিজস্ব লসলেস ক্লাস।
  • MTU: ইথারনেট ট্রান্সপোর্টে 9000; প্রান্ত থেকে প্রান্ত একই মান।
  • মাল্টিপাথ: দুটি ফ্যাব্রিক অথবা দুটি VLAN/লিফ; ANA-সচেতন ইনিশিয়েটর।
  • মনিটরিং: প্রতি পোর্টের CRC/FEC ও পজ কাউন্টার, সঙ্গে DDM-এর প্রবণতা; অবনতি হতে থাকা মডিউল বিকল হওয়ার অনেক আগেই টেইল ল্যাটেন্সি হিসেবে ধরা পড়ে (মনিটরিং)।
  • ফার্মওয়্যার: NIC/HBA ও অ্যারের ফার্মওয়্যার-সামঞ্জস্যের ম্যাট্রিক্স অপটিক্সের সামঞ্জস্যের মতোই গুরুত্বপূর্ণ (SAN-এ অপটিক্স)।

CodingBox-এ

NVMe-oF ফ্যাব্রিকের অপটিক্স সাধারণ FC, ইথারনেট বা IB মডিউলই; পার্থক্য হলো ট্রান্সপোর্ট কতটা কম এরর সহ্য করে। ইনস্টলেশনের আগে টেস্ট বেঞ্চে শনাক্তকরণ তথ্য ও বেসলাইন DDM পড়া (Check transceiver, DDM) এবং অ্যারে ও সুইচের ভেন্ডর যে শনাক্তকরণ তথ্য গ্রহণ করে তা কোড করা (ভেন্ডর লক) কাজের সেই অংশ, যা প্রোগ্রামারের ভাগে পড়ে।

এই ফ্যাব্রিকগুলো যে অ্যাডাপ্টারের ওপর চলে, সেই 100G/200G NIC, তাদের কেজ, PCIe-এর সীমা ও মডিউল-নীতি: অপটিক্যাল পোর্টসহ NIC।


এই নিবন্ধে কোনো অশুদ্ধ তথ্য বা ভুল পেলে সংশ্লিষ্ট অংশটি নির্বাচন করুন এবং Ctrl+Enter চেপে ।