محمد نصیری
بنیانگذار توسینسو ، هکر کلاه سفید ، کارشناس امنیت اطلاعات و ارتباطات و عاشق طبیعت

تفاوت AMD-V و Intel VT و Intel VT-d در چیست؟ به زبان ساده

چه تفاوتی بین قابلیت های مجازی سازی CPU ای مثل AMD-V یا Interl-VT وجود دارد؟ قبلا در توسینسو در خصوص تفاوت شرکت Intel و AMD صحبت کرده ایم . امروزه واژه های مخفف آنقدر زیاد شده اند که حتی حرفه ای های اینکار هم در حفظ کردن و متوجه شدن تفاوت های بین تکنولوژی های موجود دچار مشکل می شوند. تا همین چند وقت پیش هر کس از من می پرسید AMD-V یا Intel-VT چیست براحتی می گفتم قابلیت مجازی سازی است که در CPU های این شرکت ها پیاده سازی شده است

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

اما هر روز به این قابلیت ها اضافه می شود و باید دقیقا بدانید که مثلا فلان مخفف چه قابلیت اضافه تری به شما ارائه داده است. زمانیکه صحبت از خریداری کردن یک سرور Host جدید می شود شما به عنوان یک خریدار و یا نماینده یک سازمان باید بدانید که قابلیت های جدیدی که در خصوص مجازی سازی به داخل ای CPU ها اضافه شده است چه چیزهایی است تا بر حسب نیاز سرور مناسب خودتان را اخریداری کنید.

AMD-V چیست

امروزه یکی از مهمترین نکات در خریداری CPU ها پشتیبانی کردن از قابلیت های مجازی سازی است. اگر ندانید که چه قابلیتی از CPU های جدید در خصوص مجازی سازی نیاز دارید و با آنها آشنا نباشید نمی توانید CPU مناسبی تهیه کنید که Workload کاری شما را به خوبی پشتیبانی کند. در این میان دو قابلیت بسیار مهم در خصوص مجازی سازی در CPU های شرکت های Intel و AMD وجود دارد که با توجه به اینکه نامگذاری آنها بسیار شبیه است بیشترین ابهام را برای ما ایجاد می کنند.

هر دو نوع CPU های شرکت Intel و AMD قابلیت های مجازی سازی را ارائه می کنند که در ادامه در خصوص آنها صحبت کرده ایم. این دو قابلیت را بصورت کلی به نامهای AMD-V و Intel-VT می شناسیم. امروزه وجود این دو قابلیت برای مجازی سازی در سازمان ها الزامی است.

Intel-VT چیست

راهکارهای مجازی سازی اولیه ای که در دنیا معرفی شد ، بر پایه و اساس Software Emulation یا شبیه سازی نرم افزار کار می کردند تا بتوانند جایگزین قابلیت های سخت افزار بشوند. در واقع می توان اینطور گفت که در سخت افزارها چیزی به عنوان ویژگی یا امکان مجازی سازی وجود نداشت و این لایه نرم افزار بود که همه چیز را کنترل می کرد. دسترسی به منابعی مثل CPU و RAM و ... همه و همه در لایه نرم افزار انجام می شد و نرم افزار سخت افزار را مدیریت می کرد.

طبیعی بود که نرم افزار به تنهایی باعث کند شدن و کاهش کارایی سیستم مجازی سازی می شد و این به خاطر مدیریت شدن تقریبا همه فرآیند های مجازی سازی توسط نرم افزار بود.مدیریت منابع و رفتارهای ماشین های مجازی نیز طبیعتا به دلیل کاهش کارایی سرور به سختی انجام می شد. در نهایت تولید کننده های CPU در دنیا با توجه به گسترش روز افزون مجازی سازی تصمیم گرفتند که قابلیت های مجازی سازی را در لایه سخت افزار در پردازنده های خود قرار بدهند.

AMD Virtualization چیست

هر دو شرکت AMD و Intel شروع به ساختن پردازنده هایی کردند که در داخل خودشان Extension ها یا ویژگی های سخت افزاری تعبیه شده بود که می توانستند کارهای تکراری و بیخودی لایه نرم افزار را مدیریت کنند و دیگر لایه نرم افزار در این جریان درگیر نمی شد ، در اصطلاح فنی کارهای اضافی لایه نرم افزار در لایه سخت افزار Offload می شد. با قرار گرفتن این قابلیت در پردازنده های این شرکت ها تقریبا وظیفه سیستم عامل در مدیریت منابع سخت افزاری در لایه های پایین به صفر کاهش پیدا کرد و باعث شد کارایی ماشین های مجازی بر روی سرور فیزیکی به شدت افزایش پیدا کند.

مدیریت سخت افزارهایی مثل RAM و CPU قبلا بر عهده نرم افزار Hypervisor بود اما با معرفی این Extension های CPU مدیریت RAM و CPU و دسترسی به منابع سخت افزاری بر عهده خود CPU قرار گرفت. این تکنیک به عنوان Hardware Assist Virtualization یا مجازی سازی در لایه سخت افزار نیز عنوان می شود. مدیریت ورودی و خروجی اطلاعات یا I//O برای سخت افزارها از VM ها بصورت کامل توسط CPU مدیریت می شد. این تکنولوژی ها به عنوان تکنولوژی های Intel-VT برای شرکت Intel و AMD-V برای شرکت AMD معرفی شدند.

قابلیت های Intel-VT و AMD-V هر کدام بعضا دارای یک سری پردازنده های زیرمجموعه بودند که در مدیریت کردن سخت افزارها و منابع سیستم تفاوت های داشتند که همین موضوع باعث شد تکنولوژی های AMD-V و Intel-VT دارای سری سخت افزاری شوند.

برای مثال Intel VT-d یا AMD-Vi از این جمله زیرمجموعه ها هستند. در صورت نداشتن قابلیت های AMD-V یا Intel-VT بر روی یک CPU ممکن است شما نتوانید یک سیستم عامل 64 بیتی guest را بر روی نرم افزار ESXi خودتان نصب و اجرا کنید و یا اصلا نتوانید نرم افزار Hyper-V را نصب کنید. قابلیت های AMD-V و Intel-VT به ماشین مجازی یا Guest Machine این اجازه را می دهند که بتوانند در یک سطح دسترسی بالاتر از منابع CPU استفاده کند.

قابلیت Intel VT-d یک نوع مجازی سازی سخت افزاری است که می توانید Input Output یا همان I//O را در سیستم کنترل کند ، همین تکنولوژی در CPU های شرکت AMD به عنوان Directed I//O شناخته می شود. تکنولوژی AMD-Virtualization برای اولین بار توسط شرکت AMD در سال 2004 با سری پردازنده های AMD Athlon 64 X2 و Athlon 64 FX معرفی شد و امروزه در اکثر سری های پردازنده این شرکت این تکنولوژی وجود دارد.

در این میان Intel VT-d همانطور که گفتیم یک extension برای پشتیبانی از اختصاص منابع خاص سیستم به ماشین های مجازی است در حالیکه Intel VT-c برای ارائه پشتیبانی بهتر I//O در سویچ های شبکه در راهکارهای مجازی سازی استفاده می شود. امیدوارم مورد توجه شما قرار گرفته باشد.


محمد نصیری
محمد نصیری

بنیانگذار توسینسو ، هکر کلاه سفید ، کارشناس امنیت اطلاعات و ارتباطات و عاشق طبیعت

هکر با کلاه ، کارشناس امنیت اطلاعات و ارتباطات و کشف جرائم رایانه ای ، بیش از 12 هزار ساعت سابقه تدریس در بیش از 40 سازمان دولتی ، خصوصی و نظامی ، علاقه مند به یادگیری بیشتر و عاشق محیط زیست ، عضو کوچکی از مجموعه توسینسو

نظرات