هل ترغب في أن يظل الخوادم متاحة بسلاسة حتى عند تعطل التبديل الأساسي في العمل؟ هل ترغب في أن يتمكن الخادم من الوصول إلى عدة شبكات افتراضية دون الاعتماد على برامج تشغيل مورد معين من موردي الأجهزة؟ هل ترغب في تبسيط تكوين الشبكة للمضيفين الفعليين والمضيفين الافتراضيين في بيئتك؟ إذا كانت إجابتك نعم على أي من هذه الأسئلة، فإن هذه المقالة موجهة لك. دع NIC Teaming يقوم بذلك.
يمكن لـ NIC Teaming تحسين مرونة الأعطال لآلاتك، واستخدام موارد الشبكة بشكل أفضل (توازن الحمولة)، وتكوين شبكات VLAN للاستخدام في الآلة، وتبسيط تكوين الشبكة.
في هذه المقالة، ستتعلم ما هو NIC Teaming، والاعتبارات الخاصة الموجودة لاستخدام NIC Teaming في الأجهزة الافتراضية، وكيفية نشرها في منظمتك.
الشروط المسبقة
لا يلزم أن تكون خبيرًا في إدارة ويندوز أو الشبكات لفهم NIC Teaming. ولكن يتعين عليك أن تتوفر على بعض المتطلبات الفنية والمعرفية لفهم وتطبيق هذه المقالة. وتشمل هذه العناصر:
- فهم كيفية عمل الشبكات (عناوين MAC، عناوين IP، شبكات VLAN)
- الوصول إلى ويندوز سيرفر 2016 (أو 2019) مع وجود محولات شبكة اثنين أو أكثر متاحة – تنطبق تقريبًا كل ما تراه على ويندوز سيرفر 2016 و 2012R2 وويندوز سيرفر 2012
فهم NIC Teaming
في نظام الشبكة التقليدي للخادم الفعلي، توفر المرونة للأعطال عن طريق توصيل كابلات الشبكة المتعددة من الخادم إلى التبديلات الفعلية المتعددة (ربما كجزء من كومة تبديل واحدة). وبالتالي، يكون لدى الخادم عناوين IP متعددة نشطة في جميع الأوقات، وتوازن الحمولة غير موجود.
عن طريق تطبيق فريق NIC على الخادم الخاص بك ، يمكنك الحفاظ على اتصال مع مفاتيح مادية متعددة ولكن استخدام عنوان IP واحد فقط. يصبح توازن الحمل متاحًا بسهولة. تصبح التحمل من الأعطال فورية بدلاً من الانتظار حتى ينتهي/يتم تحديث سجلات DNS ويصبح الإدارة أسهل.
فرق NIC هو إمكانية موجودة في خوادم Windows تسمح لك بتجميع NICs في “فرق”. يتكون كل فريق من عضو واحد أو أكثر (NICs التي تكون في الفريق) واجهة شبكة افتراضية واحدة أو أكثر متاحة للاستخدام.
أعضاء الفريق هم محولات الشبكة التي يستخدمها الفريق للتواصل مع المفتاح. الواجهات الفريقية هي الأجهزة الافتراضية للشبكة التي يتم إنشاؤها عند إنشاء الفريق. قد يكون من الصعب تذكر أيهما هو أيهما لأن الواجهات الفريقية تحصل على عنوان IP.
ما هو الفرق بين تجميع NIC والربط؟
تجميع NIC هو مرادف للربط بـ NIC.
تتوفر تجميع NIC في جميع إصدارات Windows Server ابتداءً من Windows Server 2012. تعتبر هذه القدرة مرنة للغاية وتوفر للمسؤولين حلاً أبسط بكثير لـ تجميع الروابط / توازن الحمل والتحمل من الأعطال وشبكات التعريف البرمجي (VLANs).
هناك حلول مماثلة متاحة في بعض الأجهزة من بعض البائعين ، ومع ذلك ، يهدف تنفيذ NIC التجميع من مايكروسوفت إلى توفير هذه الميزات بطريقة مستقلة عن الأجهزة والبائعين.
ما هو الفرق بين تجميع NIC والجسر؟
تتيح لك فرقة NIC إنشاء واجهة NIC تمتد عبر واجهات NIC واحدة أو أكثر تكون جميعها في نفس الشبكة الفرعية. يسمح لك الجسر الـ NIC بربط واجهات NIC من شبكات فرعية مختلفة لتمكين التواصل بين الشبكتين الفرعيتين.
عند تكوين فرقة NIC ، ستقوم بتعيين وضع الفرقة ، ووضع التوازن ، والواجهة الاحتياطية للمحولات ، وفرقة واجهة VLAN. سيتم شرح كل من هذه العناصر أدناه.
وضع الفرقة
عند إنشاء فرقة NIC ، يجب عليك اختيار وضع الفرقة المستخدم. يحدد وضع الفرقة كيفية توزيع حركة المرور بين الخوادم والمفاتيح المتعددة. هناك ثلاثة أنواع من أوضاع الفرقة: مستقل عن المفاتيح ، LACP ، وثابتة.
مستقل عن المفاتيح
وضع الفرقة المستقل عن المفاتيح يسمح لك بتوصيل أعضاء الفرقة بمفاتيح غير مكدسة متعددة. وضع المفتاح المستقل هو الوضع الوحيد الذي لا يستخدم أي تغييرات في التكوين على المفاتيح التي توصلها به. يستخدم هذا الوضع فقط عناوين MAC للتحكم في الواجهة التي يجب إرسال البيانات الواردة إليها.
هناك بعض الحالات التي قد تختار فيها استخدام وضع الفرقة المستقل عن المفاتيح مثل عندما:
- لا تقوم بإجراء تغييرات في التكوين على المفاتيح الموصولة
- استخدام مفاتيح غير مكدسة متعددة لأعضاء الفرقة
- إنشاء فرقة NIC داخل جهاز افتراضي (سنتطرق إلى ذلك في القسم الاعتبارات للاستخدام في الأجهزة الافتراضية أدناه)
إذا كنت تفضل استخدام محول واحد لحركة المرور والاعتماد فقط على محول احتياطي خلال فشل الارتباط الفعلي، يجب عليك استخدام وضع تجميع الفريق غير المتوافق مع السويتش وتكوين محول احتياطي.
A standby adapter is not used often because it reduces the total bandwidth that is available for communicating with the server. The default setting is “None (all adapters Active)”.
يتطلب تجميع
ثابت أن تقوم بتكوين المنافذ يدويًا على السويتش الذي تتصل به فريق NIC في مجموعة تجميع الروابط (LAG). ستقوم الخادم والسويتش بتوزيع حركة المرور بين جميع الروابط المتصلة.
إذا تم توصيل المنفذ على أي طرف بجهاز آخر، سيتم توزيع حركة المرور عبر هذا الارتباط الذي لا يتوقع ذلك. وبالتالي، لا يوفر أي مساعدة في عزل الأخطاء مثل الكابلات الموصلة بشكل غير صحيح.
يجب أن تستخدم وضع التجميع الثابت فقط عندما لا يمكن للسويتشات الخاصة بك دعم LACP.
بروتوكول التحكم في تجميع الروابط (LACP)
LACP التجميع مشابه للتجميع الثابت ولكنه أيضًا يتتبع توصيل كل كابل نشط في الارتباط بمجموعة تجميع الروابط المقصودة. لن يقوم LACP بإرسال البيانات عبر الروابط التي لم تتصل بـ LAG المتوقعة.
يجب استخدام LACP عندما ترغب في إبلاغ السويتش بفريق NIC لتوازن تحميل البيانات التي يرسلها السويتش إلى فريق NIC.
مهم: يتطلب وضع التجميع الثابت ووضع LACP أن تقوم بتوصيل الخادم بسويتش واحد فقط أو مجموعة سويتش واحدة فقط.
وضع توازن التحميل
وضع التوازن التحميل يحدد كيف سيقدم الفريق واجهات للبيانات الواردة ويحدد أيضًا المحولات المستخدمة للبيانات الصادرة. الخيارات المتاحة هي عنوان التجزئة، منفذ Hyper-V، و ديناميكي.
على عكس “جهاز توازن التحميل”، لن يتم توزيع حركة المرور الواردة بالتساوي بين كل رابط يستخدمه أعضاء الفريق.
وضع عنوان التجزئة
وضع عنوان التجزئة سيحاول استخدام عناوين IP المصدر والوجهة والمنافذ لإنشاء توازن فعال بين أعضاء الفريق. إذا لم تكن المنافذ جزءًا من الاتصال، فسيتم استخدام عناوين IP فقط لتحديد كيفية توازن التحميل. في الحالات التي لا تكون فيها عناوين IP جزءًا من الاتصال، سيتم استخدام عناوين MAC.
عند إنشاء فريق NIC، يمكنك أن تجبر الفريق على استخدام IP+Port، IP فقط، أو عنوان MAC فقط. IP+Port هو الافتراضي ويوفر أفضل توازن بين أعضاء الفريق. لاستخدام IP فقط أو عنوان MAC فقط، ستحتاج إلى إنشاء فريق NIC الخاص بك عبر PowerShell.
بينما يقوم وضع التوازن التحميل عنوان التجزئة بوظيفة جيدة في تقسيم حركة المرور الصادرة بين أعضاء الفريق، إلا أنه غير قادر على التكيف مع أعضاء الفريق المستخدمين بشكل زائد أو قليل. أيضًا، جميع حركة المرور الواردة تستخدم عنوان MAC لواجهة الفريق الأساسية. ومع ذلك، يقتصر هذا على رابط واحد إذا كنت تستخدم وضع الفرقة غير المعتمد على البديل.
يجب استخدام عنوان التجزئة عند إنشاء فريق داخل جهاز افتراضي.
منفذ Hyper-V
وضع Hyper-V Port مخصص فقط للاستخدام في مضيفي الأجهزة الافتراضية Hyper-V. سيقوم هذا الوضع بتعيين عنوان MAC لكل جهاز في مضيف الأجهزة الافتراضية ثم تعيين عضو في الفريق لكل عنوان MAC. يتيح ذلك لجهاز الأجهزة الافتراضية المحدد أن يكون له عضو في الفريق متوقع في الظروف الطبيعية.
تعني أعضاء الفريق المتوقعة لكل جهاز الأجهزة الافتراضية أن عرض النطاق الترددي للجهاز الأجهزة الافتراضية يقتصر على الحد الأقصى للرابط الفردي الذي يعمل عليه. عندما يحتوي مضيف Hyper-V على عدد قليل من الأجهزة الافتراضية فيه، فمن المحتمل أن استخدام وضع توازن تحميل Hyper-V Port لن يكون متوازنًا جيدًا جدًا.
عادةً ما لا يكون هناك حاجة لاستخدام وضع Hyper-V Port، ولكن قد تجد المنفعة إذا كنت ترغب في التأكد من أن كل جهاز الأجهزة الافتراضية يستخدم نفس الرابط في جميع الأوقات.
الوضع الديناميكي
الوضع الديناميكي يستخدم أفضل الميزات من أوضاع Address Hash و Hyper-V Port لتوازن حركة المرور الشبكي الصادرة والواردة. مثل Hyper-V، يتم تقسيم حركة المرور الواردة عن طريق تعيين أعضاء الفريق لعناوين MAC مختلفة. مثل Address Hash، يتم تقسيم حركة المرور الصادرة عن طريق تجميع التجزئة المشتقة من عنوان IP/Port. يقدم هذا الخليط توازنًا أفضل مقارنة بأيٍ من الأساليب المذكورة أعلاه.
يأتي الوضع الديناميكي مع تحسين هام: رصد مرور البيانات بشكل ديناميكي. عندما يحدد خوارزمية الوضع الديناميكي أن بعض أعضاء الفريق يعانون من استخدام زائد أو غير كافٍ، فسوف تقوم بإعادة توزيع حركة المرور الصادرة على أعضاء الفريق الآخرين حسب الحاجة.
تتمتع تدفقات TCP بنغمة طبيعية تجعل من الممكن التنبؤ بكميات حركة المرور المستقبلية / فواصل في بروتوكول نقل الملفات TCP؛ تطلق عليها مايكروسوفت اسم “فلوواليتس”. يمكن أيضًا لوضع التوازن الديناميكي للحمل أن يتوقع، من خلال فلوواليتس، أي فرد من أعضاء الفريق سيصبح مستخدمًا بشكل زائد أو غير مستخدم بشكل كاف، وإعادة توزيع حركة المرور الصادرة للتحضير.
الوضع الديناميكي هو عادة أفضل خيار لتوازن الحمولة للاستخدام.
واجهة VLAN للفريق
عند إنشاء فريق، سيتم إنشاء واجهة فريق واحدة افتراضيًا. تحتوي واجهة الفريق على إعداد VLAN لوسم حركة المرور على واجهة إلى VLAN محددة. يتم تعيين إعداد VLAN لواجهة الفريق إلى VLAN موسومة عادةً فقط عندما يستخدم أعضاء الفريق التي تتكون منها فريق NIC الوضع “الشبكة المتعددة”.
بعد إنشاء الفريق، يمكنك إنشاء واجهات فريق إضافية على VLANs مختلفة.
تحذير: توصي Microsoft بعدم تعيين VLAN لواجهة داخل جهاز افتراضي. بدلاً من ذلك، استخدم خيار “معرف VLAN” في تبديل Hyper-V المتقدم لتعريف VLANs لجهاز افتراضي.
شركة تجميع NIC في الأجهزة الافتراضية
إعداد فرق NIC في جهاز افتراضي يأتي مع بعض القيود. تشير Microsoft على وجه التحديد إلى أن استخدام “فرق في فرق” (فرق على مستوى المضيف وفرق على مستوى الجهاز الافتراضي) يمكن أن يكون غير متوقع للغاية ويسبب فقدان الاتصال.
تقديم الاستمرارية للعطل في الآلة الافتراضية في الماضي كان يتطلب أن يكون للآلة الافتراضية اتصال بمفاتيح افتراضية خارجية متعددة. كان عليك أن تخطط للآلات الافتراضية التي ستشترك في كل مفتاح افتراضي للتأكد من عدم اكتظاظها. تعقيدت مشكلات توازن الحمولة بإمكانية حدوث اكتظاظ من الآلات الافتراضية الأخرى على المضيف.
اليوم، يمكنك نشر فريق NIC على مضيف الآلة الافتراضية باستخدام محول شبكة واحد لكل آلة افتراضية. تحصل جميع الآلات الافتراضية على استمرارية كاملة من فشل المنفذ الفعلي أو التبديل. يمكن توزيع حركة المرور لجميع الآلات الافتراضية على أعضاء الفريق للحصول على إجمالي عرض نطاق ترددي ومعالجة اكتظاظ أفضل بكثير. يمكن أن يبدو شكل التكوين الخاص بك الآن كما يلي:

يُستخدم فريق NIC في الآلة الافتراضية أحيانًا لتمكين SR-IOV لتقليل استهلاك وحدة المعالجة المركزية للكومة الشبكية. كما تحتاج إلى دعم BIOS ودعم NIC لتشغيل SR-IOV بشكل صحيح.
المتطلبات
استخدام فريق NIC داخل الآلة الافتراضية يتطلب هذه المتطلبات ليكون “تكوين مدعوم”:
- يجب أن تكون تستخدم عدة محولات في الآلة الافتراضية.
- يجب أن تتصل المحولات بمفاتيح افتراضية اثنين من نوع “خارجي”.
- إذا تم الاتصال بمفاتيح فيزيائية، يجب أن تكون المفاتيح على نفس الشبكة الفرعية L2.
- يجب أن يكون وضع NIC Team للآلة الافتراضية مُعينًا على “مستقل عن التبديل” ويجب أن يتم تعيين وضع توازن الحمولة على “*Address Hash*”.
في Hyper-V ، تحتاج أيضًا إلى تمكين تجميع NIC لـ VM من علامة تبويب ميزات متقدمة لكل من محولات الشبكة التي ستكون جزءًا من الفريق. يمكنك رؤية مثال أدناه لما يبدو هذا الإعداد.

تحسين الأداء
على الرغم من أن تجميع NIC يحقق أداءً جيدًا تلقائيًا ، إلا أن هناك سيناريوهات مختلفة قد تتطلب التركيز على تحسين الأداء. تفاصيل هذه السيناريوهات خارج نطاق هذه المقالة ، ولكن إذا كنت ترغب في معرفة المزيد حول كيفية تحسين الأداء ، فركز على المصطلحات التالية:
- Remote Direct Memory Access (RDMA)
- Switch Embedded Teaming (SET)
- Receive Side Scaling (RSS)
- Single-Root I/O Virtualization (SR-IOV)
عمومًا ، تقوم هذه الإعدادات الإضافية بتقليل بعض العبء على وحدة المعالجة المركزية للشبكة والتأخير بين الاتصالات. يمكنك معرفة المزيد عن تحسين الأداء في المقالات شرح التقنيات البرمجية والأجهزة و زيادة الأداء من خلال RDMA مع SET.
إنشاء فريق NIC على خادم Windows
بعد أن تكون ملمًا بكيفية عمل تجميع NIC ورؤية لتبسيط شبكتك ، يجب أن تكون مستعدًا الآن لإنشاء فريق NIC!
لهذا التجربة ، سيتم إنشاء فريق NIC على جهاز افتراضي بسبب قيود بيئة التجربة. إعداد فريق NIC على خادم فيزيائي متطابق ولكن إذا كانت هناك خطوات خاصة بالأجهزة الافتراضية ، فسيتم التأكيد عليها.
كيف يمكنك التحقق مما إذا كان التجميع الجماعي للبطاقة الشبكية ممكنًا؟
التجميع الجماعي للبطاقة الشبكية ممكن في جميع إصدارات Windows Server منذ 2012 (Server 2012، 2012R2، 2016، و 2019).
تنفيذ التجميع الجماعي للبطاقة الشبكية عبر واجهة المستخدم الرسومية
للبدء ، قم بتشغيل مدير الخوادم على جهاز يعمل بنظام Windows Server. تأكد من الاتصال بالجهاز الذي ترغب في تكوين فريق NIC عليه.
- أولاً ، انقر بزر الماوس الأيمن على اسم الخادم الذي ترغب في إنشاء فريق NIC عليه وحدد تكوين التجميع الجماعي للبطاقة الشبكية.

2. من لوحة المحولات والواجهات ، حدد بطاقات الشبكة التي ترغب في إضافتها إلى الفريق الجديد. بعد ذلك ، انقر بزر الماوس الأيمن على المحولات المحددة وحدد إضافة إلى فريق جديد.

ملاحظة: يمكنك تكوين التجميع الجماعي للبطاقة الشبكية باستخدام أي تركيبة من محول واحد أو العديد من المحولات (الحد الأقصى: 32) وواجهة فريق واحدة أو أكثر.
3. اكتب اسم الفريق الوصفي وقم بتكوين الخصائص الإضافية حسب الحاجة وانقر فوق موافق لإنشاء الفريق.
في هذا المثال ، يتم إعداد فريق NIC على جهاز افتراضي. نتيجة لذلك ، لا يمكن استخدام وضع التجميع أو وضع توازن الحمل. إذا كانت هذه التجربة على خادم فيزيائي ، فمن المحتمل أن تستخدم مستقل عن البديل أو LACP إذا كنت تستخدم رابط تجمع على مفتاح الشبكة.

يجب أن يتم إنشاء فريق NIC الآن على خادم Windows Server.
إضافة المزيد من بطاقات الشبكة أو واجهات إلى فريق الشبكة
بمجرد إنشائه، يمكنك إضافة بطاقات الشبكة إلى فريق مكوّن من نفس نافذة تكوين فريق الشبكة. للقيام بذلك، انقر بزر الماوس الأيمن على بطاقة الشبكة المتاحة ثم حدد إضافة إلى الفريق “اسم الفريق”.

يمكنك أيضًا إضافة المزيد من الواجهات إلى الفريق عن طريق تحديد علامة التبويب واجهات الفريق ثم النقر على المهام -> إضافة واجهة كما هو موضح أدناه.

بمجرد ظهور إدخال البيانات، اكتب VLAN المراد استخدامه واختياريًا، اسمًا كما هو موضح أدناه.

نشر فريق الشبكة عبر Windows PowerShell
الآن بعد أن تعرفت على كيفية إعداد فريق NIC من خلال واجهة المستخدم الرسومية، دعنا نتحقق الآن من كيفية القيام بذلك عن طريق PowerShell.
العثور على أسماء NIC
أولاً، يجب أن تقرر أي NICs ستضيفها إلى الفريق. على وجه التحديد، ستحتاج إلى معرفة أسماء NIC.
للعثور على أسماء NIC، استخدم cmdlet Get-Adapter
. قم بتشغيل هذا الأمر ولاحظ الخيارات المتاحة كما هو موضح أدناه.

بمجرد أن تكون قد لاحظت الأسماء، يمكنك الآن إنشاء الفريق باستخدام PowerShell! لهذا الديمو، سنستخدم NICs Ethernet 3 و 4 لفريق NIC الجديد.
إنشاء فريق NIC
الآن بعد أن لديك أسماء المحولات باليد، لديك فقط cmdlet واحد آخر (New-NetLbfoTeam
) لتشغيله. يمكنك رؤية مثال على تشغيل cmdlet New-NetLbfoTeam
وإخراجه في الأسفل.
بالنسبة للمعلمة TeamMembers
، ستستخدم أسماء NICs التي تم جمعها سابقًا.
في هذا المثال، تم تعيين TeamingMode
على قيمة SwitchIndependent
. إذا كنت تقوم بتكوين منافذ السويتش في مجموعة متكاملة (LAG)، فمن المحتمل أن ترغب في استخدام قيمة LACP
. إذا لم تكن تستخدم مجموعة متكاملة في السويتش، فمن المحتمل أن تختار استخدام SwitchIndependent
.
تستخدم قيمة Dynamic
لمعلمة LoadBalancingAlgorithm
لأن هذا الوضع يوفر التوزيع المتساوي للحمولة عبر أعضاء المجموعة بشكل أفضل.

بمجرد الانتهاء، ستظهر واجهة شبكة افتراضية جديدة في قائمة المحولات من خلال Get-NetAdapter
:

ملاحظات حول مجموعة واجهة الشبكة الافتراضية:
يجب استخدام وضع
SwitchIndependent
لـ ‘TeamingMode’.
يجب استخدام أحد أنواع تجزئة العناوين لـ ‘LoadBalancingAlgorithm’ (TransportPorts).
سيتم استخدام توازن الحمولة الديناميكي على الخادم الفعلي بدلاً من ‘TransportPorts’.*
إضافة مزيد من بطاقات الشبكة أو واجهات لـ مجموعة واجهة الشبكة الافتراضية
بمجرد بناء مجموعة واجهة الشبكة، يمكنك بعد ذلك إضافة بطاقات الشبكة والواجهات إليها تمامًا كما هو متاح في واجهة المستخدم الرسومية. لإضافة المزيد من بطاقات الشبكة إلى المجموعة، استخدم أمر Add-NetLbfoTeamMember
.*.*
يمكنك أيضًا إضافة واجهات مجموعة الفريق الإضافية باستخدام الأمر Add-NetLbfoteamNIC
.
ملخص
لقد تعلمت الآن ما هو تجميع NIC، وكيف يتعلق بالأداء واستخدام آلة افتراضية وتبسيط الشبكة، وكيفية نشره عبر واجهة المستخدم الرسومية أو باستخدام PowerShell.