پرش به محتوا

پیش‌نویس:IWARP: تفاوت میان نسخه‌ها

از ویکی‌پدیا، دانشنامهٔ آزاد
محتوای حذف‌شده محتوای افزوده‌شده
Miriam202 (بحث | مشارکت‌ها)
ایجاد شده به‌واسطهٔ ترجمهٔ صفحهٔ «IWARP»
 
Miriam202 (بحث | مشارکت‌ها)
ایجاد شده به‌واسطهٔ ترجمهٔ صفحهٔ «IWARP»
خط ۱: خط ۱:
{{پانویس}}
'''پروتوکل iWARP''' یک [[شیوه‌نامه ارتباطات|پروتکل شبکه]] کامپیوتری است که [[دسترسی مستقیم حافظه از راه دور|دسترسی مستقیم به حافظه از راه دور]] (RDMA) را برای انتقال کارآمد داده ها از طریق شبکه های پروتکل اینترنت فراهم می کند. برخلاف برخی تصورات، <ref>{{Cite web|url=https://www.intel.com/content/dam/support/us/en/documents/network/sb/understanding_iwarp_final.pdf|title=Understanding iWARP: Delivering Low Latency to Ethernet|date=2015-11-24|publisher=[[Intel]]|accessdate=2018-09-07}}</ref> iWARP یک مخفف نیست. <ref>{{Cite web|url=http://rdmaconsortium.org/home/FAQs_Apr25.htm|title=RDMA Consortium FAQs|last=|first=|date=|website=|archiveurl=|archivedate=|accessdate=}}</ref>


'''iWARP''' یک [[شیوه‌نامه ارتباطات|پروتکل شبکه]] کامپیوتری است که [[دسترسی مستقیم حافظه از راه دور|دسترسی مستقیم به حافظه از راه دور]] (RDMA) را برای انتقال کارآمد داده‌ها بر روی شبکه های پروتکل اینترنت پیاده سازی می کند.
این صفحه در حال ترجمه است لطفا حذف نکنید

برخلاف برخی گزارش‌ها، <ref>{{Cite web|url=https://www.intel.com/content/dam/support/us/en/documents/network/sb/understanding_iwarp_final.pdf|title=Understanding iWARP: Delivering Low Latency to Ethernet|date=2015-11-24|publisher=[[Intel]]|accessdate=2018-09-07}}</ref> iWARP مخفف شده نیست. <ref>{{Cite web|url=http://rdmaconsortium.org/home/FAQs_Apr25.htm|title=RDMA Consortium FAQs|last=|first=|date=|website=|archiveurl=|archivedate=|accessdate=}}</ref>

از آنجایی که iWARP توسط [[کارگروه مهندسی اینترنت]] (IETF) و بر اساس پروتکل‌های استاندارد آگاه از [[کنترل ازدحام|ازدحام]] مانند [[پروتکل هدایت انتقال]] (TCP) و [[اس‌سی‌تی‌پی|پروتکل انتقال کنترل جریان]] (SCTP) لایه‌بندی شده است، نیاز‌های کمی به شبکه ایجاد دارد و می‌تواند در گستره وسیعی از محیط‌ها با موفقیت به کار گرفته شود.

== تاریخچه ==
در سال 2007، IETF پنج [[درخواست توضیح]] (RFC) را منتشر کرده است که iWARP را تعریف می‌کنند:

# RFC 5040 ''مشخصات پروتکل [[دسترسی مستقیم حافظه از راه دور|دسترسی مستقیم به حافظه از راه دور]]'' که بر روی [[Direct Data Placement Protocol|پروتکل قرارگیری داده مستقیم]] (DDP) لایه بندی شده است. این مشخصات تعیین می کند که عملیات ارسال، خواندن و نوشتن RDMA چگونه با استفاده از DDP به سربرگ‌ها روی شبکه کدگذاری می شوند.
# RFC 5041 ''قرار‌گیری'' ''مستقيم داده‌ها بر روی انتقالات قابل اعتماد''،که بر روي MPA/TCP يا SCTP لایه بندی شده است. این مشخصات تعیین می‌کند که داده‌های دریافت شده چگونه می‌توانند بدون استفاده از بافرهای میانی به طور مستقیما بر روی بافر دریافت پروتکل‌های لایه بالاتر قرار گیرند.
# RFC 5042 امنیت پروتکل قرارگیری مستقیم داده‌ها ''(DDP) / پروتکل دسترسی مستقیم به حافظه از راه دور (RDMAP)'' مسائل امنیتی مرتبط با لایه‌های پروتکل iWARP DDP و RDMAP را تجزیه و تحلیل می‌کند.
# RFC 5043 تطبیق ''پروتکل قرارگیری مستقیم داده‌ها (DDP)'' برای ''پروتکل انتقال کنترل جریان (SCTP)،'' یک لایه تطبیقی را تعریف می کند که امکان DDP را بر روی SCTP فعال می کند.
# RFC 5044 ''مشخصات کادربندی هم‌راستای نشانگر PDU برای TCP''، یک لایه تطبیقی را تعریف می کند که امکان حفظ مرزهای رکورد پروتکل DDP را که بر روی جریان بایت متصل قابل اعتماد TCP لایه‌بندی شده است را فراهم میکند.

این RFC ها بر اساس مشخصات کنسرسیوم RDMA برای RDMA بر روی TCP هستند. <ref>{{Cite web|url=http://rdmaconsortium.org/|title=RDMA Consortium|date=2009-12-17|accessdate=2017-08-23}}</ref> مشخصات کنسرسیوم RDMA از استانداردهای قبلی RDMA، از جمله [[معماری واسط مجازی]] (VIA) و [[اینفینی‌باند]] (IB) تاثیر گرفته‌اند.

از سال 2007، IETF سه RFC اضافی را منتشر کرده است که iWARP را نگه داشته و توسعه می دهند:

# RFC 6580 ریجستری های [[مرجع واگذاری اعداد در اینترنت|IANA]] برای پرتوکل های قرارگیری مستقیم داده از راه دور ''(RDDP)'' که در سال 2012 منتشر شد، رجیستری‌های [[مرجع واگذاری اعداد در اینترنت|IANA]] برای کدهای خطا، کدهای عملیات و کدهای عملکرد (RDDP) تعریف می کند.
# RFC 6581 ''ایجاد اتصال ارتقاء یافته دسترسی به حافظه مستقیم از راه دور (RDMA) که'' در سال 2011 منتشر شد، کاستی‌های موجود در تنظیم اتصال iWARP را برطرف می‌کند.
# RFC 7306 توسعه پروتکل ''Remote Direct Memory Access (RDMA)'' که در سال 2014 منتشر شد، RFC 5040 را با عملیات‌های اتمی و RDMA Write با داده های فوری را گسترش می دهد.

== پروتکل ==
جزء اصلی در پروتکل iWARP، پروتکل قرار‌گیری داده مستقیم (DDP) است که اجازه انتقال بدون کپی واقعی را فراهم می‌دهد. خود DDP انتقال را انجام نمی دهد. پروتکل زیرین (TCP یا SCTP) این کار را میکند.

با این حال، TCP به مرزهای پیام توجهی ندارد. داده ها را به عنوان یک توالی از بایت ها بدون توجه به واحدهای داده پروتکل (PDU) ارسال می کند. از این نظر، خود DDP ممکن است برای SCTP مناسب‌تر باشد و در واقع IETF یک استاندارد RDMA بر روی SCTP پیشنهاد کرده است.<ref>{{Cite book|last1=Rashti|first1=Mohammad J.|last2=Afsahi|first2=Ahmad|title=2007 IEEE International Parallel and Distributed Processing Symposium|chapter=10-Gigabit iWARP Ethernet: Comparative Performance Analysis with InfiniBand and Myrinet-10G|date=March 2007|chapter-url=https://ieeexplore.ieee.org/document/4228208|pages=1–8|doi=10.1109/IPDPS.2007.370480|isbn=978-1-4244-0909-9|s2cid=2279387}}</ref> اجرای DDP بر روی TCP نیاز به یک تغییر به نام کادربندی نشانگر PDU aligned (MPA) دارد تا مرزهای پیام‌ها را تضمین کند.

علاوه بر این، DDP قرار نیست به طور مستقیم دسترسی داشته باشد. در عوض، یک پروتکل RDMA جداگانه (RDMAP) خدمات خواندن و نوشتن داده را فراهم می کند. بنابراین، تمام مشخصات RDMA بر روی TCP در واقع RDMAP بر روی DDP بر روی MPA/TCP یا SCTP است. همه این پروتکل ها میتوانند در سخت افزار پیاده‌سازی شوند.

برخلاف IB، پروتکل iWARP فقط ارتباطات متصل قابل اعتماد دارد، زیرا این تنها سرویسی است که TCP و SCTP فراهم می‌کنند. مشخصات iWARP ویژگی‌های دیگر IB را حذف کرده است، مانند عملیات ارسال به داده های فوری. با RFC 7306، پروتکل IETF در تلاش است این حذفیات را کاهش دهد.

== پیاده سازی ==
از آنجا که پیاده‌سازی [[هسته (سیستم‌عامل)|هسته‌ای]] پشته TCP می تواند به عنوان یک گلوگاه (bottleneck) در نظر گرفته شود، این پروتکل به‌طور معمول در [[کارت شبکه]] RDMA به صورت سخت افزاری (rNIC) پیاده سازی می شود. از آنجایی که تلفات ساده داده‌ در محیط‌های شبکه به ندرت اتفاق می‌افتد، ممکن است تصحیح خطای TCP توسط مکانیسم‌های نرم‌افزاری انجام شود و این در حالی است که ارتباطات‌های پرتکرار کاملاً توسط منطق (logic) تعبیه‌شده در rNIC کنترل می‌شوند. به طور مشابه، اتصالات به طور معمول کاملا توسط نرم افزار برقرار می شوند و سپس به سخت افزار تحویل داده می شوند. علاوه بر این، مدیریت جزئیات خاص پروتکل iWARP به طور معمول از پیاده‌سازی TCP جدا است، به طوری که rNIC‌ها می‌توانند هم به عنوان تخلیه RDMA و هم تخلیه TCP (در حمایت از برنامه‌های TCP/IP مبتنی بر سوکت‌های سنتی) استفاده شوند. بخشی از پیاده سازی سخت افزاری که برای پیاده سازی پروتکل TCP استفاده می شود به عنوان [[موتور بارگذاری جانبی تی‌سی‌پی|موتور تخلیه بار TCP]] (TOE) شناخته می شود.

TOE خود کپی در سمت گیرنده را جلوگیری نمی کند و باید با سخت افزار RDMA برای نتایج بدون کپی ترکیب شود. مشخصات RDMA / TCP مجموعه‌ای از پروتکل‌های سیمی مختلف است که قصد پیاده‌سازی در سخت‌افزار دارند (اگرچه به نظر می‌رسد قابل شبیه‌سازی در نرم‌افزار برای سازگاری باشد اما بدون مزایای عملکردی).

== رابط‌ها ==
iWARP یک پروتکل است، نه یک پیاده سازی، اما رفتار پروتکل را از نظر عملیاتی که برای پروتکل قانونی است تعریف می کند، که به عنوان افعال (Verbs) شناخته می شود. به این ترتیب، iWARP هیچ رابط برنامه‌نویسی استانداردی ندارد. با این حال، رابط های برنامه نویسی تمایل دارند به افعال نزدیک باشند.

چندین رابط برنامه نویسی پیشنهاد شده اند، از جمله:

* OpenFabrics Verbs
* Network Direct
* uDAPL
* kDAPL
* IT-API
* RNICPI

پیاده سازی‌های برخی از این رابط‌ها برای پلتفرم های مختلف، از جمله [[مایکروسافت ویندوز|ویندوز]] و [[لینوکس]] در دسترس هستند.

== خدمات موجود ==
خدمات شبکه‌ای که بر روی iWARP پیاده‌سازی شده اند شامل خدمات ارائه شده توسط OpenFabrics Alliance در OpenFabrics Enterprise Distribution (OFED) برای سیستم‌های عامل [[لینوکس]] و از طریق Network Direct برای سیستم عامل[[مایکروسافت ویندوز|Microsoft Windows]] می‌باشد.

* [[ان‌وی‌ام اکسپرس]] (NVMEoF)
* برنامه های افزودنی iSCSI برای RDMA (iSER)
* [[بلوک پیام سرور]] (SMB Direct)
* [[پروتکل سوکت های مستقیم]] (SDP)
* پروتکل SCSI RDMA (SRP)
* [[سیستم فایل شبکه‌ای]] روی RDMA (NFS روی RDMA)
* [[GPUDirect]]

== فروشندگان ==
فروشندگان محبوب تجهیزات مجهز به iWarp عبارتند از:

* Chelsio
* [[مارول تکنالوجی|Marvell]]
* [[Bloombase]]

== همچنین ببینید ==

* [[آر.دی.ام.ای روی اترنت همگرا|RDMA از طریق اترنت همگرا]]

== منابع ==

== لینک های خارجی ==

* [https://www.iol.unh.edu/testing/hpc/ofa OpenFabrics Alliance] at the University of New Hampshire InterOperability Laboratory — Testing on iWARP devices
* [https://datatracker.ietf.org/doc/charter-ietf-rddp/ Remote Direct Data Placement Charter] (IETF)
* [http://www.cs.ubc.ca/labs/dsg/mpi-sctp/ MPI-SCTP: Using the Stream Control Transmission Protocol for parallel programs written using the Message Passing Interface] {{Webarchive|url=https://web.archive.org/web/20091002101222/http://www.cs.ubc.ca/labs/dsg/mpi-sctp/|date=2009-10-02}} (2008-09-01)
* [https://msdn.microsoft.com/en-us/library/hh536346.aspx SMB2 Remote Direct Memory Access (RDMA) Transport Protocol] (2017-06-01)
[[رده:شبکه‌های رایانه‌ای]]
[[رده:شبکه‌های رایانه‌ای]]
[[رده:ابررایانه‌ها]]
[[رده:ابررایانه‌ها]]

نسخهٔ ۱۹ مهٔ ۲۰۲۴، ساعت ۱۰:۲۲

iWARP یک پروتکل شبکه کامپیوتری است که دسترسی مستقیم به حافظه از راه دور (RDMA) را برای انتقال کارآمد داده‌ها بر روی شبکه های پروتکل اینترنت پیاده سازی می کند.

برخلاف برخی گزارش‌ها، [۱] iWARP مخفف شده نیست. [۲]

از آنجایی که iWARP توسط کارگروه مهندسی اینترنت (IETF) و بر اساس پروتکل‌های استاندارد آگاه از ازدحام مانند پروتکل هدایت انتقال (TCP) و پروتکل انتقال کنترل جریان (SCTP) لایه‌بندی شده است، نیاز‌های کمی به شبکه ایجاد دارد و می‌تواند در گستره وسیعی از محیط‌ها با موفقیت به کار گرفته شود.

تاریخچه

در سال 2007، IETF پنج درخواست توضیح (RFC) را منتشر کرده است که iWARP را تعریف می‌کنند:

  1. RFC 5040 مشخصات پروتکل دسترسی مستقیم به حافظه از راه دور که بر روی پروتکل قرارگیری داده مستقیم (DDP) لایه بندی شده است. این مشخصات تعیین می کند که عملیات ارسال، خواندن و نوشتن RDMA چگونه با استفاده از DDP به سربرگ‌ها روی شبکه کدگذاری می شوند.
  2. RFC 5041 قرار‌گیری مستقيم داده‌ها بر روی انتقالات قابل اعتماد،که بر روي MPA/TCP يا SCTP لایه بندی شده است. این مشخصات تعیین می‌کند که داده‌های دریافت شده چگونه می‌توانند بدون استفاده از بافرهای میانی به طور مستقیما بر روی بافر دریافت پروتکل‌های لایه بالاتر قرار گیرند.
  3. RFC 5042 امنیت پروتکل قرارگیری مستقیم داده‌ها (DDP) / پروتکل دسترسی مستقیم به حافظه از راه دور (RDMAP) مسائل امنیتی مرتبط با لایه‌های پروتکل iWARP DDP و RDMAP را تجزیه و تحلیل می‌کند.
  4. RFC 5043 تطبیق پروتکل قرارگیری مستقیم داده‌ها (DDP) برای پروتکل انتقال کنترل جریان (SCTP)، یک لایه تطبیقی را تعریف می کند که امکان DDP را بر روی SCTP فعال می کند.
  5. RFC 5044 مشخصات کادربندی هم‌راستای نشانگر PDU برای TCP، یک لایه تطبیقی را تعریف می کند که امکان حفظ مرزهای رکورد پروتکل DDP را که بر روی جریان بایت متصل قابل اعتماد TCP لایه‌بندی شده است را فراهم میکند.

این RFC ها بر اساس مشخصات کنسرسیوم RDMA برای RDMA بر روی TCP هستند. [۳] مشخصات کنسرسیوم RDMA از استانداردهای قبلی RDMA، از جمله معماری واسط مجازی (VIA) و اینفینی‌باند (IB) تاثیر گرفته‌اند.

از سال 2007، IETF سه RFC اضافی را منتشر کرده است که iWARP را نگه داشته و توسعه می دهند:

  1. RFC 6580 ریجستری های IANA برای پرتوکل های قرارگیری مستقیم داده از راه دور (RDDP) که در سال 2012 منتشر شد، رجیستری‌های IANA برای کدهای خطا، کدهای عملیات و کدهای عملکرد (RDDP) تعریف می کند.
  2. RFC 6581 ایجاد اتصال ارتقاء یافته دسترسی به حافظه مستقیم از راه دور (RDMA) که در سال 2011 منتشر شد، کاستی‌های موجود در تنظیم اتصال iWARP را برطرف می‌کند.
  3. RFC 7306 توسعه پروتکل Remote Direct Memory Access (RDMA) که در سال 2014 منتشر شد، RFC 5040 را با عملیات‌های اتمی و RDMA Write با داده های فوری را گسترش می دهد.

پروتکل

جزء اصلی در پروتکل iWARP، پروتکل قرار‌گیری داده مستقیم (DDP) است که اجازه انتقال بدون کپی واقعی را فراهم می‌دهد. خود DDP انتقال را انجام نمی دهد. پروتکل زیرین (TCP یا SCTP) این کار را میکند.

با این حال، TCP به مرزهای پیام توجهی ندارد. داده ها را به عنوان یک توالی از بایت ها بدون توجه به واحدهای داده پروتکل (PDU) ارسال می کند. از این نظر، خود DDP ممکن است برای SCTP مناسب‌تر باشد و در واقع IETF یک استاندارد RDMA بر روی SCTP پیشنهاد کرده است.[۴] اجرای DDP بر روی TCP نیاز به یک تغییر به نام کادربندی نشانگر PDU aligned (MPA) دارد تا مرزهای پیام‌ها را تضمین کند.

علاوه بر این، DDP قرار نیست به طور مستقیم دسترسی داشته باشد. در عوض، یک پروتکل RDMA جداگانه (RDMAP) خدمات خواندن و نوشتن داده را فراهم می کند. بنابراین، تمام مشخصات RDMA بر روی TCP در واقع RDMAP بر روی DDP بر روی MPA/TCP یا SCTP است. همه این پروتکل ها میتوانند در سخت افزار پیاده‌سازی شوند.

برخلاف IB، پروتکل iWARP فقط ارتباطات متصل قابل اعتماد دارد، زیرا این تنها سرویسی است که TCP و SCTP فراهم می‌کنند. مشخصات iWARP ویژگی‌های دیگر IB را حذف کرده است، مانند عملیات ارسال به داده های فوری. با RFC 7306، پروتکل IETF در تلاش است این حذفیات را کاهش دهد.

پیاده سازی

از آنجا که پیاده‌سازی هسته‌ای پشته TCP می تواند به عنوان یک گلوگاه (bottleneck) در نظر گرفته شود، این پروتکل به‌طور معمول در کارت شبکه RDMA به صورت سخت افزاری (rNIC) پیاده سازی می شود. از آنجایی که تلفات ساده داده‌ در محیط‌های شبکه به ندرت اتفاق می‌افتد، ممکن است تصحیح خطای TCP توسط مکانیسم‌های نرم‌افزاری انجام شود و این در حالی است که ارتباطات‌های پرتکرار کاملاً توسط منطق (logic) تعبیه‌شده در rNIC کنترل می‌شوند. به طور مشابه، اتصالات به طور معمول کاملا توسط نرم افزار برقرار می شوند و سپس به سخت افزار تحویل داده می شوند. علاوه بر این، مدیریت جزئیات خاص پروتکل iWARP به طور معمول از پیاده‌سازی TCP جدا است، به طوری که rNIC‌ها می‌توانند هم به عنوان تخلیه RDMA و هم تخلیه TCP (در حمایت از برنامه‌های TCP/IP مبتنی بر سوکت‌های سنتی) استفاده شوند. بخشی از پیاده سازی سخت افزاری که برای پیاده سازی پروتکل TCP استفاده می شود به عنوان موتور تخلیه بار TCP (TOE) شناخته می شود.

TOE خود کپی در سمت گیرنده را جلوگیری نمی کند و باید با سخت افزار RDMA برای نتایج بدون کپی ترکیب شود. مشخصات RDMA / TCP مجموعه‌ای از پروتکل‌های سیمی مختلف است که قصد پیاده‌سازی در سخت‌افزار دارند (اگرچه به نظر می‌رسد قابل شبیه‌سازی در نرم‌افزار برای سازگاری باشد اما بدون مزایای عملکردی).

رابط‌ها

iWARP یک پروتکل است، نه یک پیاده سازی، اما رفتار پروتکل را از نظر عملیاتی که برای پروتکل قانونی است تعریف می کند، که به عنوان افعال (Verbs) شناخته می شود. به این ترتیب، iWARP هیچ رابط برنامه‌نویسی استانداردی ندارد. با این حال، رابط های برنامه نویسی تمایل دارند به افعال نزدیک باشند.

چندین رابط برنامه نویسی پیشنهاد شده اند، از جمله:

  • OpenFabrics Verbs
  • Network Direct
  • uDAPL
  • kDAPL
  • IT-API
  • RNICPI

پیاده سازی‌های برخی از این رابط‌ها برای پلتفرم های مختلف، از جمله ویندوز و لینوکس در دسترس هستند.

خدمات موجود

خدمات شبکه‌ای که بر روی iWARP پیاده‌سازی شده اند شامل خدمات ارائه شده توسط OpenFabrics Alliance در OpenFabrics Enterprise Distribution (OFED) برای سیستم‌های عامل لینوکس و از طریق Network Direct برای سیستم عاملMicrosoft Windows می‌باشد.

فروشندگان

فروشندگان محبوب تجهیزات مجهز به iWarp عبارتند از:

همچنین ببینید

منابع

لینک های خارجی

  1. "Understanding iWARP: Delivering Low Latency to Ethernet" (PDF). Intel. 2015-11-24. Retrieved 2018-09-07.
  2. "RDMA Consortium FAQs".
  3. "RDMA Consortium". 2009-12-17. Retrieved 2017-08-23.
  4. Rashti, Mohammad J.; Afsahi, Ahmad (March 2007). "10-Gigabit iWARP Ethernet: Comparative Performance Analysis with InfiniBand and Myrinet-10G". 2007 IEEE International Parallel and Distributed Processing Symposium. pp. 1–8. doi:10.1109/IPDPS.2007.370480. ISBN 978-1-4244-0909-9. S2CID 2279387.