فهرست مطالب
Toggleدر عصر دادهها، الزامات یک شبکه سریعتر، کارآمدتر و مقیاس پذیر تبدیل به یک ضرورت شده است. از آنجایی که اتصالات اترنت TCP/IP سنتی به درگیر شدن پردازنده محتاج هستند و نیاز به پردازش و کپی اضافی از دادهها دارند، دیگر نمیتوانند نیازهای شبکههای فعلی را برآورده کنند. برای رفع این مشکل، RDMA بر روی اترنت همگرا (RoCE) وارد بازی میشود. برای اینکه بدانید RoCE چیست، ابتدا باید به توضیح RDMA بپردازیم.
RDMA چیست؟
دسترسی مستقیم به حافظه از راه دور (RDMA) یک فناوری است که دسترسی مستقیم به حافظه را از حافظه یک میزبان یا سرور به حافظه میزبان یا سرور دیگر بدون دخالت پردازنده امکان پذیر میکند. بدین ترتیب، حجم کاری پردازندهها را کم میکند تا بتوانند کارهایی مانند اجرای برنامهها و پردازش حجم عظیمی از دادهها را که وظیفه اصلیشان است، به انجام برسانند. با این قابلیت، عملکرد شبکه و میزبان با تأخیر کمتر، بار پردازنده کمتر و پهنای باند بالاتر به صورت مقرون به صرفهتری در دسترس قرار میگیرد.
RoCE چیست؟
به عنوان یک نوع RDMA، RoCE یک پروتکل شبکه است که در استاندارد InfiniBand Trade Association (IBTA) تعریف شده است و به RDMA اجازه میدهد تا روی شبکه اترنت همگرا کار کند. به طور خلاصه، میتوان آن را به عنوان کاربرد فناوری RDMA در مراکز داده فوقهمگرا، ابر، فضای ذخیرهسازی و محیطهای مجازی در نظر گرفت. این ویژگی دارای تمام مزایای فناوری RDMA و اترنت به صورت همزمان است.
انواع RoCE
به طور کلی، دو نسخه RDMA از طریق اترنت همگرا وجود دارد: RoCE v1 وRoCE v2. استفاده از هرکدام بستگی به آداپتور یا کارت شبکه مورد استفاده دارد.
RoCe v1: پروتکل RoCE v1 یک پروتکل لایه پیوند اترنت است که به دو میزبان در یک دامنه پخش اترنت (VLAN) اجازه میدهد با هم ارتباط برقرار کنند. این پروتکل از Ethertype 0x8915 استفاده میکند که طول فریم را به ۱۵۰۰ بایت برای یک فریم استاندارد اترنت و ۹۰۰۰ بایت برای یک فریم جامبو اترنت محدود میکند.
RoCE v2: پروتکل RoCE v2 بر محدودیت نسخه ۱ یعنی محدود شدن به یک دامنه پخش واحد (VLAN) غلبه میکند. با تغییر محصورسازی بسته برای در نظر گرفتن IP و هدر UDP، RoCE v2 اکنون میتواند در هر دو شبکه L2 و L3 استفاده شود. این ویژگی مسیریابی لایه ۳ را فعال میکند که RDMA را برای مقیاس پذیری بیشتر به شبکهای با چندین زیرشبکه میآورد. بنابراین، RoCE v2 به عنوان RoCE قابل مسیریابی(RRoCE) نیز در نظر گرفته میشود. با توجه به وجود RoCE v2، چندپخشی (Multicast) IP هم امکان پذیر است.
مزایای RoCE
از آنجایی که RDMA بر روی اترنت همگرا به جای این که از طریق هسته به دادههای حافظه دسترسی داشته باشد، از طریق رابط شبکه دسترسی مستقیم دارد، میتواند انتقال با تاخیر کم و کارایی بالا را در اختیار کاربر قرار دهد. به همین دلیل مزایای زیر را دارد:
درگیری کمتر پردازنده: دسترسی به سوئیچ از راه دور یا حافظه سرور بدون مصرف منابع پردازشی در سرور راه دور، که امکان استفاده کامل از پهنای باند موجود و مقیاس پذیری بالاتر را فراهم میکند.
کپی صفر (Zero Copy): ارسال و دریافت داده به و از بافرهای راه دور.
بهرهوری بالا: از آنجایی که تاخیر و توان عملیاتی توسط RoCE بهبود یافته است، عملکرد شبکه بسیار افزایش مییابد.
صرفه جویی در هزینه: با RoCE نیازی به خرید تجهیزات جدید یا جایگزینی زیرساخت اترنت برای مدیریت حجم عظیم داده نیست، که تا حد زیادی باعث صرفه جویی در هزینههای سرمایهای برای شرکتها میشود.
تحقق RoCE
به طور کلی، برای تحقق RDMA از طریق اترنت همگرا برای یک مرکز داده، میتوانید آداپتور شبکه یا درایور کارتهایی را نصب کنید که RoCE را پشتیبانی میکنند. همه کارتهای شبکه اترنت به کارتهای آداپتور شبکه RoCE نیاز دارند. درایورهای RoCE در Red Hat، Linux، Microsoft Windows و سایر سیستم عاملهای رایج موجود هستند. RDMA روی اترنت همگرا به دو صورت در دسترس است. برای سوئیچ شبکه، میتوانید از سوییچ با سیستم عاملی که از PFC پشتیبانی میکند، استفاده کنید. در مورد سرور رک یا هاست، باید از کارت آداپتور شبکه مانند ConnectX-3 pro و ConnectX-4 و بالاتر استفاده کنید.
سوالات رایج در مورد RoCE
در اینجا ما تعدادی از سوالات متداول در مورد RDMA بر روی اترنت همگرا را برای درک بهتر شما در مورد آن فهرست میکنیم.
۱) کدام سوئیچهای FS یا کارتهای/آداپتورهای شبکه از RoCE پشتیبانی میکنند؟
تا به حال، به جز سری S5860 و S5850-24S2Q، سوئیچهای S5850-24S2Q-DC، سوئیچهای سری FS N و سری S58/80 همگی میتوانند RoCE v1 و v2 را پشتیبانی کنند. مشتریان باید پس از خرید سوئیچ RDMA عملکرد PFC خود را فعال کنند. در مورد آداپتورها و کارتها، RoCE هنوز در FS قابل دسترسی نیست.
۲) آیا آداپتورهای RoCE میتوانند با انواع آداپتورهای دیگر مانند iWARP ارتباط برقرار کنند؟
آداپتورهای RoCE فقط میتوانند از طریق آداپتورهای اترنت همگرا با سایر RDMAها ارتباط برقرار کنند. هر پیکربندی که سعی در ترکیب انواع آداپتورها داشته باشد، مثلا آداپتورهای RoCE همراه با آداپتورهای iWARP، احتمالا به اتصالات TCP/IP سنتی برمیگردد.
۳) تفاوت RoCE و iWARP چیست؟
به عنوان پروتکل شبکه RoCE، iWARP که پروتکل اینترنت گسترده RDMA است، نیز از عملکرد RDMA با تأخیر کمتر پشتیبانی میکند، اما تفاوتهایی با هم دارند.
از یک طرف، RoCE تنها راهکار استاندارد صنعت مبتنی بر اترنت RDMA با یک اکوسیستم دارای چند تامین کننده است که آداپتورهای شبکه را ارائه میدهد و روی سوئیچهای اترنت لایه ۲ و لایه ۳ استاندارد کار میکند. در حالیکه iWARP تا بهحال پشتیبانی بسیار کمتری دریافت کرده است.
از سوی دیگر، iWARP از ترکیب پیچیدهای از لایهها، از جمله DDP (Direct Data Placement)، تنظیمی به نام MPA (Marker PDU Aligned Framing) و یک پروتکل RDMA جداگانه (RDMAP) برای ارائه خدمات RDMA از طریق TCP/IP استفاده میکند. با چنین معماری پیچیدهای، برای پروتکل iWARP سخت خواهد بود که RDMA را در چارچوبهای نرمافزاری انتقال موجود اعمال کند. پس از چنین سازشهایی، تاخیر عملیاتی و استفاده از توان پردازنده برای iWARP کاهش مییابد.
نتیجه گیری
با اجرای RDMA در مراکز داده، کم شدن بار انتقال داده و دسترسی بیشتر به منابع پردازنده برای اجرای برنامههای کاربردی قابل دستیابی است. پذیرندگان RoCE میتوانند از قابلیتهای RDMA بدون تغییر زیرساخت شبکه خود بهره مند شوند. با کاهش تأخیر شبکه اترنت و کاهش بار سربار پردازنده، RoCE عملکرد در جستجو، ذخیرهسازی، پایگاه داده، برنامههای مالی و نیازمند به نرخ تراکنش بالا را افزایش میدهد. با افزایش کارایی پردازنده و بهبود عملکرد برنامهها، RoCE میتواند تعداد سرورهای مورد نیاز را کاهش دهد و در نتیجه باعث صرفه جویی در انرژی و کاهش اندازهی فیزیکی مراکز داده مبتنی بر اترنت شود.