آشنایی با مفاهیم SAS و SATA و NL-SAS در هارد درایوها

احتمالا با نام اینترفیس هایی که در ذخیره سازی اطلاعات استفاده می شوند، برخورد داشته اید. نام هایی مانند SAS ، SATA و NL-SAS. در این مقاله سعی داریم به معرفی این اینترفیس ها و پروتکل هایی که در برقراری ارتباط آنها بکار گرفته می شوند بپردازیم و با آنها آشنا شویم.

پروتکل های ذخیره سازی اطلاعات

پروتکل را میتوان با بیانی ساده به صورت مجموعه ای از دستورات و قوانین برای برقرای ارتباط تعریف کرد. درایوهای HDD و SSD و استوریج ها از طریق پروتکل خاصی ارتباط برقرار می کنند. (استوریج ها معمولا از طریق چند پروتکل ارتباط برقرار می کنند.) در دنیای ذخیره سازی اطلاعات، هر پروتکل اینترفیس خاص خود را دارد. بنابراین پروتکل مورد استفاده در درایو، اینترفیس فیزیکی آن را تعیین می کند. برای مثال یک هارد SATA از طریق پروتکل SATA ارتباط برقرار می کند و همچنین از اینترفیس SATA هم استفاده می کند. این موضوع برای پروتکل های SAS و FC هم صدق می کند و هرکدام پروتکل و اینترفیس خاص خود را دارند. چهار پروتکل و اینترفیس مرسومی که امروزه در ذخیره سازی اطلاعات استفاده می شوند شامل موارد زیر می شوند:

  • SATA
  • SAS
  • NL-SAS
  • FC

این چهار مورد شامل پروتکل و اینترفیس مربوط به آنها می شوند. پروتکل SATA از مجموعه دستورات ATA استفاده می کند، در حالیکه باقی پروتکل ها از مجموعه دستورات SCSI استفاده می کنند. این پروتکل ها بر روی کنترلردرایوها قرار دارند و نوع اینترفیس را برای آنها مشخص می کنند.

SATA

SATA1 توسط Serial ATA Working Group دز سال 2003 به عنوان جایگزینی برای PATA2 معرفی شد. هر دو اینترفیس از مجموعه دستورات ATA استفاده می کنند. در اینترفیس PATA  اطلاعات به صورت موازی در چند رشته انتقال می یافتند و بالا بردن نرخ انتقال اطلاعات موجب ایجاد ناهماهنگی و مشکل در رسیدین اطلاعات میشد، از اینرو در افزایش نرخ انتقال آنها محدودیت وجود داشت. در سمت دیگر اینترفیس SATA به صورت سری اطلاعات را انتقال می دهد و این امر باعث میشود بتوانیم نرخ انتقال اطلاعات را در این اینترفیس افزایش دهیم. اینترفیس SATA با توجه بالاتر بودن نرخ انتقال اطلاعات، به مقدار قابل توجهی از اینترفیس PATA سریعتر می باشد.

کاربرد اینترفیس SATA

اینترفیس SATA معمولا در سیستم های low end مانند لپتاپ ها و PC ها استفاده می شود و برای به کارگیری در این رنج از سیستم ها جا افتاده است. این پروتکل به واسطه مزیت هایی که ارائه می کند مسیر خود را به سیستم های high end نیز باز کرده است، اما با سرعت بالایی در حال واگذاری جایگاه خود به پروتکل NL-SAS می باشد.

SATA interface

SATA interface

این اینترفیس در مجموع شامل 22 پین می شود که 7 پین آن برای انتقال اطلاعات و 15 پین برای تامین انرژی می باشد.

SATA Connector

SATA Connector

جایگاه اینترفیس SATA در سطوح Enterprise

در سطوح Enterprise و استوریج ها، زمانی که از درایوهای SATA نام برده می شود؛ قیمت مناسب و ارزان، پرفورمنس پایین و ظرفیت ذخیره سازی بالای آنها در نظر گرفته می شود. دلیل اصلی این موضوع این است که پروتکل SATA از مجموعه دستورات ATA استفاده می کند که به اندازه مجموعه دستورات SCSI توانمند نیستند، از این رو برای کارهای high performance مناسب نیستند. البته به این موضوع هم باید اشاره کنیم که تولید کنندگان هارد دیسک، در ساخت درایوهای SATA از میزان بافر کمتر و اجزاء ارزان تر که به طبع کیفیت پایین تری هم دارند استفاده می کنند.

با تمام این توضیحات، دنیای سیستم های enterprise فقط محدود به اجزاء دارای پرفورمنس بالا نیست؛ قطعا در بخش هایی از آن نیاز به هارد دیسکی که حجم بالا، قیمت ارزان و پرفورمنس پایینی داشته باشد احساس می شود. برای مثال  معمولا در تجهیزات بکاپ گیری و آرشیو اطلاعات و یا tierهای سطح پایین راهکار auto-tiering از این هارد دیسک های SATA استفاده می کنند. هرچند اخیرا در اکثر این تجهیزات به جای هارد دیسک SATA، از هارد دیسک NL-SAS استفاده می کنند.

ورژن های مختلف SATA

اینترفیس SATA در ورژن های مختلفی که از SATA 1 شروع شده و به SATA 3.2 ختم می شود، ارائه شده است. ورژن های اینترفیس SATA شامل موارد زیر می شود:

  • SATA 1 : اولین نسخه ی اینترفیس SATA می باشد که سرعت آن معادل 1.5 Gb/s می باشد و از پهنای باند 150 MB/s پشتیبانی می کند.
  • SATA 2 : در این اینترفیس تکنیک صف بندی NCQ3 به SATA اضافه شد. این تکنیک صف بندی سرعت اجرای دستورات را افزایش می دهد. اینترفیس SATA 2 سرعتی معادل 3 Gb/s دارد و از پهنای باند 300 MB/s پشتیبانی می کند.
  • SATA 3 : علاوه بر تغییرات جزئی در تکنیک صف بندی، تغییر اصلی این نسخه نسبت به SATA 2 سرعت انتقال اطلاعات در آن بود. اینترفیس SATA 3 سرعتی معادل 6 Gb/s دارد و از پهنای باند 600 MB/s پشتیبانی می کند.

برای اینترفیس SATA 3 دو مدل به روزتری هم اضافه شد که 3.1 (mSATA) و 3.2 (M.2 و SATA Express) نام گذاری شدند. اینترفیس SATA 3.2 بالاترین سرعت در اینترفیس های SATA را ارائه میکند که معادل 16 Gb/s می باشد.

SAS

همانطورکه از نام آن مشخص است،SAS4 پروتکلی است که به صورت P2P و سریال ارتباط برقرار می کند. این پروتکل از مجموعه دستورات SCSI و مکانیزم پیشرفته SCSI در صف، استفاده می کند. در محیط های enterprise، استاندارد SCSI جایگاه خود را در سیستم های high end تثبیت کرده است، از دلایل آن میتوان به مجموعه دستورات5 قدرتمند و توانمندتر، مکانیزم صف بندی بهتر و معمولا کیفیت فیزیکی اجزاء بالاتر نسبت به درایوهای SATA اشاره کرد. تمامی اینها باعث می شود اینترفیس هایی که بر پایه SCSI هستند، مانند اینترفیس های SAS و FC، بهترین انتخاب برای کارهای مهم و حیاتی که پرفورمنس بالایی هم نیاز دارند باشند.

در تصویر زیر اینترفیس SATA (بالا) و اینترفیس SAS (پایین) را مشاهده می کنید:

SAS

SAS

البته این موضوع را هم در نظر بگیرید که پرفورمنس بالا با هزینه ی بالا بدست می آید. بنابراین در حجم برابر، درایوهای SAS از درایوهای SATA گرانتر هستند.

مزایای اینترفیس SAS

همانطور که اشاره کردیم اینترفیس SAS از مجموعه دستورات توانمندتر، مکانیزم صف بندی بهتر و در مجموع پرفورمنس بالاتری نسبت به اینترفیس SATA بهره مند است.

علاوه بر اینها مزیت دیگری که پروتکل SAS ارائه می کند این است که درایوهایی با اینترفیس های SATA II و نسخه های جدیدتر آن می توانند به شبکه SAS و backplain آن متصل شوند و در کنار درایوهای SAS به کار گرفته شوند. در هنگام طراحی استوریج این موضوع پروتکل SAS را تبدیل به گزینه ای انعطاف پذیر می کند.

درایوهای SAS دوئل پورت هستند، در واقع دو پورت برای انتقال اطلاعات دارند، از این رو برای استوریج ها و بالا بردن انعطاف پذیری ایده آل هستند. در مورد استوریج ها و درایوهای SAS، هر یک از دو پورت موجود در درایو SAS می تواند به کنترلر مجزایی در استوریج متصل شوند. این بدین معناست که اگر یکی از پورت ها یا ارتباط پورت با کنترلر و یا کنترلر متصل به آن از کار بیوفتند، این درایو هنوز هم از طریق پورت دوم در دسترس می باشد. در این صورت انتقال باراز روی پورت fail شده بر روی پورت جایگزین به سرعت صورت میگیرد به طوری که کاربر و برنامه ها متوجه این failover نمی شوند.

نکته ای که ممکن است از آخرین جمله متوجه آن شده باشید این است که دو پورت موجود در درایو SAS به صورت اکتیو/پسیو کار می کنند، این بدین معنا است که در هر لحظه، تنها یکی از پورت ها فعال است و اطلاعات را جابجا می کند.

sector size درایوهای SAS

یکی از اجزای اصلی هارد دیسک ها، platter می باشد. پلتر یک دیسک سفت و سخت می باشد که اطلاعات بر روی سطح آن نگهداری می شود. در واقع اطلاعات بر روی بخش های کوچکی در سطح پلتر به نام sector نگهداری می شود. هر sector مقدار مشخصی اطلاعات می تواند نگهداری کند که مقدار آن را sector size مشخص می کند. در درایوهای SATA نمی توان sector size  را تغییر داد، که مقدار آن به صورت پیش فرض 512 بایت می باشد.

sector

sector

این در حالی است که sector size در درایوهای SAS می تواند مقدارهای متفاوتی داشته باشد که آنها را قادر میسازد تا EDP (که گاهی آن را DIF هم می نامند) را پیاده سازی کنند. با داشتن EDP، سایز sector به جای 512 بایت، مقدار 520 بایت خواهد داشت. این 8 بایت اضافه شده به ازای هر سکتور، برای نگهداری metadata استفاده می شود که برای بررسی و تایید صحت اطلاعات استفاده می شود و تضمین می کند که اطلاعات آسیبی ندیده باشند.

FC

درایوهای FC از مجموعه دستورات و مکانیزم صف بندی SCSI استفاده می کنند، و اینترفیس های دوئل FC-AL یا دوئل FC P2P را دارا می باشند. این درایوها هم مانند درایوهای SAS برای نیازهای high performance مناسب هستند. این موضوع را هم باید در نظر گرفت که درایوهای FC به ازای هر گیگابایت فضای ذخیره سازی ($/GB) بهای بسیار زیادی دارند.

از نظر پرفورمنس اینترفیس FC تقریبا عملکردی مشابه اینترفیس SAS دارد. در استوریج های بسیار بزرگ و High end، پرفورمنس اینترفیس FC اندکی نسبت به اینترفیس SAS بهتر است. اما به دلیل قیمت ارزانتر درایوهای SAS تقریبا می توان گفت که درایوهای FC به طور کلی کنار گذاشته شده، و به جای آن از درایوهای SAS استفاده می شود.

NL-SAS

درایوهای Nearline SAS که مختصرا NL-SAS نامیده می شوند، ترکیبی از درایوهای SAS و SATA می باشند. درایوهای NL-SAS از اینترفیس و پروتکل SAS برای برقرای ارتباط استفاده می کنند، اما پلتر و RPM درایوهای SATA را در خود دارند. در واقع اجزاء داخلی درایو از اجزاء درایوهای SATA تشکیل شده (سخت افزار) و کنترلر و اینترفیس و پروتکل آن (نرم افزار) از درایو SAS گرفته شده است.

شاید برای شما هم این سوال پیش بیاید که هدف از ایجاد درایوهای NL-SAS چه بوده؟ این درایوها به راحتی به backplane و کانکتور SAS متصل می شوند و مزایای مجموعه دستورات SCSI و صف بندی پیشرفته آن را ارائه می کنند، در حالیکه ویژگی مثبت درایوهای SATA یعنی حجم بالای حافظه ذخیره سازی آنها را هم به همراه دارند. در مجموع پروتکل NL-SAS ترکیب مناسبی از پروتکل های SAS و SATA به وجود آورده است.

از آنجایی که اکثر استوریج ها از NL-SAS پشتیبانی می کنند، این پروتکل به جایگزین مناسبی برای پروتکل SATA در دنیای پیشرفته ذخیره سازی اطلاعات تبدیل شده است.

صف بندی

تمامی دیسک درایوها از تکنیکی به نام صف بندی6 استفاده می کنند که تاثیر مثبت و قابل توجهی بر روی پرفورمنس دیسک درایوها می گذارد. صف بندی امکان مرتب کردن عملیات های I/O را فراهم می کند به طوری که دستورات read و write به گونه ای که برای هارد دیسک بهینه باشند، مرتب می شوند. صف بندی دستورات را به گونه ای مرتب می کند که تا جایی که امکانش وجود داشته باشد عملیات خواندن و نوشتن به صورت sequential انجام شود. در واقع دستورات read و write به گونه ای مرتب می شوند که تاخیر جابجایی r/w head و چرخش پلتر به کمترین مقدار ممکن برسد.

مجموعه دستورات ATA از تکنیک صف بندی NCQ استفاده می کند. این موضوع پرفورمنس درایوهای SATA را افزایش می دهد، مخصوصا در IOPSهای همزمان؛ اما باز هم به اندازه تکنیک TCQ7 که در SCSI استفاده می شود قدرتمند نیستند.

جمع بندی

در این مقاله سعی کردیم اینترفیس های مورد استفاده در هارد درایوها را معرفی کنیم و فهمیدیم که در دنیای ذخیره سازی اطلاعات درایوهای SAS ،SATA و NL-SAS بیشتر مورد استفاده قرار می گیرند. درایو SATA در سیستم های low end مانند لپتاپ ها و کامپیوترهای شخصی استفاده می شوند. درایوهای SAS و  NL-SAS هم در سیستم های high end مانند انواع استوریج ها کاربرد دارند.

  1. Serial Advanced Technology Attachment
  2. Parallel ATA
  3. Native Command Queuing
  4. Serial Attached SCSI
  5. command set
  6. queuing
  7. Tag Command Queuing
1 پاسخ دادن

دیدگاهتان را بنویسید

می خواهید در گفت و گو شرکت کنید؟
خیالتان راحت باشد :)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *