ما هو بروتوكول كتلة رسالة الخادم في الشبكات SMB

اقرأ في هذا المقال


على مر السنين تم اعتماد “SMB” بشكل أساسي لتوصيل أجهزة الكمبيوتر التي تتفعل بنظام “Windows“، وعلى الرغم من أنّ معظم الأنظمة الأخرى مثل “Linux” و”macOS” تتضمن أيضاً مكونات العميل للاتصال بموارد “SMB”.

ما هو بروتوكول SMB

بروتوكول كتلة رسالة الخادم “SMB”: هو بروتوكول اتصال بين الخادم والعميل يُستخدم لمشاركة الوصول إلى الملفات والطابعات والمنافذ التسلسلية والموارد الأخرى على الشبكة، كما يمكن أن تحمل أيضاً بروتوكولات المعاملات للاتصال بين العمليات.

  • “SMB” هي اختصار لـ “”Server Message Block”.

أساسيات بروتوكول SMB

قامت مجموعة في شركة “IBM” بتطوير بروتوكول “SMB” في الثمانينيات، ولقد ولّد البروتوكول منذ ذلك الحين متغيرات متعددة، وتُعرف أيضاً باللهجات لتلبية متطلبات الشبكة المتطورة على مر السنين وطوال ذلك الوقت تم تنفيذ “SMB” على نطاق واسع، ولا يزال أحد أكثر الحلول شيوعاً لمشاركة الملفات في مكان العمل.

تضمنت أنظمة تشغيل “Microsoft Windows” منذ “Windows 95” دعم بروتوكول “SMB” للعميل والخادم، حيث يوفر نظاماً التشغيل “Linux OS” و”macOS” أيضاً دعماً مدمجاً للشركات الصغيرة والمتوسطة، بالإضافة إلى ذلك يمكن للأنظمة المستندة إلى “Unix” استخدام “Samba” لتسهيل وصول الشركات الصغيرة والمتوسطة إلى خدمات الملفات والطباعة، كما يمكن للعميل والخادم تنفيذ لهجات “SMB” مختلفة وإذا فعلوا ذلك يجب أن تتفاوض الأنظمة أولاً على الاختلافات بين الإصدارات قبل بدء الجلسة.

  • “IBM” هي اختصار لـ “International-Business-Machines”.

كيفية عمل بروتوكول SMB

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

يُعد بروتوكول “SMB” المعروف باسم بروتوكول طلب الاستجابة أحد أكثر الطرق شيوعاً المستخدمة في اتصالات الشبكة، حيث في هذا النموذج يرسل العميل طلب “SMB” إلى الخادم لبدء الاتصال وعندما يتلقى الخادم الطلب، فإنّه يرد عن طريق إرسال استجابة “SMB” مرة أخرى إلى العميل وإنشاء قناة الاتصال اللازمة لمحادثة ثنائية الاتجاه.

يعمل بروتوكول “SMB” في طبقة التطبيق ولكنّه يعتمد على مستويات الشبكة المنخفضة للنقل، وفي وقت واحد كان “SMB” يعمل فوق نظام الإدخال أو الإخراج الأساسي للشبكة، وعبر بروتوكول التحكم في الإرسال أو بروتوكول الإنترنت “NetBIOS” عبر “TCP / IP” أو “NBT” أو بدرجة أقل البروتوكولات القديمة مثل “Internetwork Packet Exchange” أو “NetBIOS Extended User” واجهه المستخدم.

عندما كان “SMB” يستخدم “NBT” اعتمد على المنافذ 137 و 138 و 139 للنقل، و”SMB” يعمل مباشرة عبر “TCP / IP” ويستخدم المنفذ 445، كما تتطلب الاتصالات مع الأجهزة التي لا تدعم “SMB” مباشرة عبر “TCP / IP” استخدام “NetBIOS” عبر بروتوكول نقل مثل “TCP / IP”.

  • “TCP / IP” هي اختصار لـ “Transmission-Control-Protocol/Internet-Protocol”.
  • “NBT” هي اختصار لـ “Network-Based-Training”.

ما هي إصدارات بروتوكول SMB

منذ أن تم تقديم بروتوكول “SMB”، تم إصدار عدد من لهجات “SMB” التي تم تحسينها في التنفيذ الأصلي ممّا يوفر إمكانات أكبر وقابلية للتوسع والأمان والكفاءة، ومن أبرز اللهجات:

أولاً: إصدار SMB 1.0

تم إنشاء “SMB 1.0” عام 1984م بواسطة “IBM” لمشاركة الملفات في “DOS”، ولقد أدخلت القفل الانتهازي “OpLock” كآلية تخزين مؤقت من جانب العميل مصممة لتقليل حركة مرور الشبكة، كما ستقوم “Microsoft” لاحقاً بتضمين بروتوكول “SMB” في “LAN Manager” الخاص بها.

  • “LAN” هي اختصار لـ “Local-Area-Network”.

ثانياً: إصدار سيفس CIFS

إصدار “CIFS”: هي إحدى لغات “SMB” التي طورتها “Microsoft” في عام 1996م والتي ظهرت لأول مرة في “Windows 95″، وأضافت دعماً لأحجام الملفات الكبيرة والنقل المباشر عبر “TCP / IP” والروابط الرمزية والروابط الصلبة.

  • “CIFS” هي اختصار لـ “Common-Internet-File-System”.

ثالثاً: إصدار SMB 2.0

تم إصدار SMB 2.0 في عام 2006م مع نظامي التشغيل “Windows Vista” و”Windows Server 2008″ ولقد قلل من الدردشة لتحسين الأداء وقابلية التوسع والمرونة المحسّنة، وأضاف الدعم لتسريع شبكة المنطقة الواسعة “WAN“.

  • “WAN” هي اختصار لـ “Wide-Area-Network”.

رابعاً: إصدار SMB 2.1

تم تقديم “SMB 2.1” في عام 2010م مع “Windows Server 2008 R2” و”Windows 7″، وحل نموذج التأجير “OpLock” للعميل محل “OpLock” لتحسين التخزين المؤقت وتحسين الأداء، كما تضمنت التحديثات الأخرى دعماً كبيراً لوحدة الإرسال وكفاءة طاقة محسّنة، ممّا مكّن العملاء الذين لديهم ملفات مفتوحة من خادم “SMB” من الدخول في وضع السكون.

خامساً: إصدار SMB 3.0

ظهر “SMB 3.0” لأول مرة في عام 2012م في نظامي التشغيل “Windows 8” و”Windows Server 2012″، وقد أضاف العديد من الترقيات المهمة لتحسين التوافر والأداء والنسخ الاحتياطي والأمن والإدارة وتشمل الميزات الجديدة الجديرة بالملاحظة “SMB Multichannel” و”SMB Direct” وشفافة تجاوز فشل وصول العميل ودعم “Remote Volume Shadow Copy Service” وتشفير “SMB”.

سادساً: إصدار SMB 3.02

تم تقديم “SMB 3.02” في  عام 2014م في “Windows 8.1” و”Windows Server 2012 R2″، وتضمنت تحديثات الأداء والقدرة على تعطيل دعم “CIFS / SMB 1.0″، بما في ذلك إزالة الثنائيات ذات الصلة.

سابعاً: إصدار SMB 3.1.1

تم إصدار “SMB 3.1.1” في عام 2015م مع “Windows 10” و”Windows Server 2016″، ولقد أضاف دعماً للتشفير المتقدم وسلامة المصادقة المسبقة لمنع هجمات “MitM” وتسييج اللهجة العنقودية من بين تحديثات أخرى.

  • “MitM” هي اختصار لـ “man-in-the-middle”.

الفرق بين بروتوكول CIFS وبروتوكول SMB

تُعد “CIFS” هي لهجة مبكرة لبروتوكول “SMB” الذي طورته “Microsoft”، على الرغم من أنّ المصطلحين “SMB” و”CIFS” يستخدمان أحياناً بالتبادل، فإنّ “CIFS” يشير على وجه التحديد إلى تنفيذ واحد من “SMB”، ومع ذلك غالباً ما تشير واجهات التطبيق والوثائق التقنية إليها على أنّها واحدة ونفس الشيء ولا سيما “SMB 1.0” و”CIFS”، باستخدام ملصقات مثل “SMB 1.0 / CIFS”.

ومع ذلك من المهم التعرف على التمييز بين اللهجات، وعلى سبيل المثال لا يتمتع “SMB 1.0″ و”CIFS” بنفس مستوى الحماية الأمنية الموجود في اللهجات اللاحقة، كما يوفر “SMB 3.0” حماية أمنية أكثر تقدماً ولهذا السبب تستخدم معظم الأنظمة الحديثة لهجات “SMB” الأحدث، وعلى سبيل المثال يدعم “Windows 10” حالياً “SMB 3.1.1” أحدث إصدار من “SMB”.

تحدث الإصدارات أيضاً فرقاً عندما يتعلق الأمر بالأداء، وعلى سبيل المثال تمت الإشارة إلى “CIFS” لكونه بروتوكول دردشة أعاق أداء “WAN” بسبب الأعباء المجمعة لوقت الاستجابة والعديد من الإقرارات الإصدارات التي يجب اتباعها “SMB 2.0″، حيث حسنت كفاءة البروتوكول عن طريق تقليل مئات الأوامر والأوامر الفرعية بشكل كبير إلى 19 فقط.

الفرق بين بروتوكول Samba  وبروتوكول SMB

تم إصدار “Samba” في عام 1992م، وهو تطبيق مفتوح المصدر لبروتوكول “SMB” لأنظمة “Unix” وتوزيعات “Linux”، كما تتضمن منصة “Samba” خادماً يمكّن أنواعاً مختلفة من العملاء من الوصول إلى موارد “SMB”، كما يدعم الخادم مشاركة الملفات وخدمات الطباعة والمصادقة والترخيص ودقة الاسم وإعلانات الخدمة أي التصفح بين خوادم “Linux / Unix” وعملاء “Windows”.

ويمكن تثبيت “Samba” على خادم “Unix” لتوفير خدمات الملفات والطباعة لأجهزة كمبيوتر سطح المكتب التي تعمل بنظام “Windows 10″، وبالإضافة إلى ذلك يتيح “Samba” دمج خوادم “Linux / Unix” وأجهزة سطح المكتب في بيئة “Active Directory”.

المصدر: COMPUTER NETWORKING / James F. Kurose & Keith W. RossComputer Networks - The Swiss BayCOMPUTER NETWORKS LECTURE NOTES / B.TECH III YEAR – II SEM (R15)An Introduction to Computer Networks / Peter L Dordal


شارك المقالة: