نموذج الخادم والعميل: الفرق بين النسختين
[نسخة منشورة] | [نسخة منشورة] |
تم حذف المحتوى تمت إضافة المحتوى
ط بوت:الإبلاغ عن رابط معطوب أو مؤرشف V3.3 |
ط بوت:الإبلاغ عن رابط معطوب أو مؤرشف V4.2 (تجريبي) |
||
سطر 2:
'''نموذج طلب الخدمة''' أو '''نموذج العميل/الخادم'''<ref name="almaany">{{مرجع ويب
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017| مسار
|
|
|
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> غالباً ما يتّصل المُخدّم مع العميل عبر [[شبكة حاسوب|شبكة حواسب]]، حيث يعمل كل منهما على [[منصة (حوسبة)|منصّة]] مُنفصلة، ولكن يُمكن أن يتواجد المُخدّم والعميل ضمن نفس [[نظام تشغيل|النظام]].<ref name="Web-2">{{مرجع ويب
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref>
يُكمن للمُخدّم أن يُشغّل [[برنامج (حاسوب)|برنامجاً]] واحداً أو أكثر من البرامج الخاصة بطرف المُخدم لتقديم خدمة واحدة أو أكثر أو مُشاركة الموارد مع عميلٍ واحدٍ أو أكثر، أمّا العميل فلا يُشارك موارده مع أحد، ولكنّه يطلب الخدمة أو الموارد من المُخدّم.<ref name="Web-3">{{مرجع ويب
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> لذلك يبدأ العملاء بإنشاء [[قناة
من الأمثلّة عن [[برمجيات تطبيقية|التطبيقات]] التي تعتمد هذا النموذج تطبيقات [[بريد إلكتروني|البريد الإلكترونيّ]] و[[خادم طباعة|الطباعة عبر الشبكة]] وتطبيقات [[شبكة عنكبوتية عالمية|الويب]].<ref name="book-1">{{مرجع كتاب
|
|
|
|
|
|
|
|الرقم المعياري= 0849398231
|
}}</ref>
== نبذة تاريخيّة ==
ورد ذكر شكل بدائيّ من نموذج طلب الخدمة في الوثائق المرجعيّة الخاصة بنظام {{
|
|
|
|
|
}}</ref> "مدخل لأداء الأعمال عن بعد"،{{للهامش|1}} حيث كان الهدف الأساسي هو إنجاز عمل ما عن بُعد. في نهاية الستينيات، كان العمل في [[معهد ستانفورد للأبحاث]] يجري على بناء [[أربانت|شبكة الأربانت]]، وقد ورد ذكر بُنيّة بدائيّة لنموذج طلب الخدمة في أوائل [[طلب تعليقات|وثائق التعليقات]]، حيث ورد في الوثيقة (RFC 4) المُعنونّة:<ref name="ietf-1">{{مرجع ويب
| الأخير=Shapiro
| الأول= Elmer B.
|
|
|
|
|
|
|
| تاريخ الوصول= 2 أغسطس 2017| مسار
ظهرت مُصطلحات مُشابهة في الوثيقة (RFC 5) المُعنونّة:<ref name="ietf-2">{{مرجع ويب
| الأخير=Rulifson
| الأول= Jeff
|
|
|
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017| مسار
|الأخير= Israel
|الأول= Jay E.
سطر 90:
| الناشر = Xerox Palo Alto Research Center,
}}</ref> "الفصل بين المُعطيات والوظائف في نظام توزيع الملفّات"،{{للهامش|4}} وقد حرص كاتبو البحث على التمييز بين [[مستخدم (حوسبة)|المُستخدم]] و[[عميل (حوسبة)|العميل]]، الذي عرّفوه بأنّه مُستخدم [[عقدة (شبكات)|لعقدة]] في [[شبكة حاسوب|الشبكة]]. أمّا استعمال كلمة [[خادم (حوسبة)|مُخدّم]] بمعناها الحالي فقد بدأ في العام 1992م.<ref name="Web-4">{{مرجع ويب
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017| مسار
== بُنية وآليّة عمل النموذج ==
سطر 118:
| الأخير= Kramek
| الأول= Andy
|
|
|
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref>
سطر 142:
| الناشر = Taylor & Francis
}}</ref> في هذه البُنية يُضاف مُستوى ثالث، في الوسط بين المستويين السابقين بهدف فصل التعامل مع العميل عن إدارة قاعدة بيانات،<ref name="Web-6">{{مرجع ويب
|
|
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> يضمّ هذا المُستوى بالإضافة للعميل و[[مخدم قاعدة بيانات|مُخدّم قاعدة البيانات]]، مُخدّماّ خاصّاً بالتطبيقات. يُمكن أن يعمل مُخدّم التطبيقات على [[منصة (حوسبة)|منصّة]] مُستقلة، أو أن يتواجد على نفس المنصة التي يعمل عليها مُخدّم قاعدة البيانات. في البنية ثُلاثية المُستويات، فقط [[مخدم تطبيق|مُخدّم التطبيقات]] هو من يملك صلاحيّات النفاذ إلى قاعدة البيانات الخاصّة بالخدمة عبر مُخدّم قاعدة البيانات، وذلك عوضاً عن منح هذه الصلاحيّات لكل عميل يتقدم بطلب الحصول على الخدمة كما هو الحال في البنيّة ثُنائية المستويات. إنّ البنية السابقة هي البُنية ثُلاثيّة المُستويات الأساسيّة، وتتنوع البُنى المُشتقة عنها باختلاف [[برمجيات تطبيقية|التطبيقات]]، ومن أهمها البُنى التي تحتوي على وسيط {{إنج|Broker}}،<ref name="JOU-3">{{cite journal
|الأخير= Aarsten
سطر 161:
|السنة= 1996
}}</ref> والبنى التي تحتوي على أكثر من قاعدة بيانات مُتزامنة.
* ''' [[عمارة متعددة الطبقات|بُنيّة مُتعددة المُستويات]]''' {{إنج|N-Tiers Architecture}}: إنّ تطوير هذا النموذج هو نتيجة للاعتماد المتزايد على [[إنترنت|شبكة الإنترنت]]، وهو يسمح للعميل بالنفاذ إلى الخدمة عبر [[متصفح
=== دور العميل ودور المُخدّم ===
إنّ العلاقة بين [[عميل (حوسبة)|العميل]] والمخدّم هي علاقة تعاون بين [[برنامج (حاسوب)|برنامجين]] ضمن نفس [[برمجيات تطبيقية|التطبيق]]، في هذه العلاقة يقوم [[خادم (حوسبة)|المُخدّم]] بالوظيفة أو يُقدّم [[خدمة (شبكات)|خدمة]] [[عميل (حوسبة)|لعميل]] واحد أو أكثر ممن يطلبون ذلك. يجري تصنيف [[خادم (حوسبة)|المُخدّمات]] بحسب [[خدمة (شبكات)|الخدمات]] التي يقدمونها، فمثلاً [[خادم ويب|مُخدّم الويب]] يُخدّم [[صفحة ويب|صفحات الويب]]، و[[مخدم ملف|مُخدّم الملفّات]] يقدم خدمته [[ملف حاسوب|للملفّات]]. إنّ [[مشاركة مورد|مشاركة الموارد]] تعتبر أيضاً شكلاً من أشكال [[خدمة (شبكات)|الخدمة]] التي يُمكن أن تُقدّم، ويشمل ذلك [[برنامج (حاسوب)|البرامج]] و[[بيانات|المُعطيات]] ومساحة [[
|
|
|
|
|
|الرقم المعياري=0-13-474222-2
|
}}</ref>
سطر 183:
بشكلٍ عام، [[خدمة (شبكات)|الخدمة]] هي شكل [[تجريد (حاسوب)|تجريديّ]] يُعبّر عن الموارد التي يمكن [[خادم (حوسبة)|للمُخدم]] أن يقدّمها [[عميل (حوسبة)|للعُملاء]]. إنّ نظام طلب الخدمة مُصمم بحيّث يكون العُملاء غير معنيين بالآليّة التي يقوم فيها المُخدّم بالاستجابة للطلبات، ويتوجب عليهم فقط أن يكونوا قادرين على فهم الردّ الوارد من المُخدّم، ويحصل ذلك عن طريق تشغيل العميل لأحد [[بروتوكول (اتصالات)|البروتوكولات]] الخاصّة [[خدمة (شبكات)|بالخدمة]] المطلوبة.
يتبادل العميل والمُخدّم الرسائل ضمن نمط الطلب/الرد (Request/Response)، حيث يرسل العميل طلباً فيقوم المُخدّم بالردّ عليه، إنّ هذا النمط هو مثال عن [[التواصل
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017| مسار
تعمل كل بروتوكولات طلب الخدمة في أقرب طبقة [[برمجيات تطبيقية|للتطبيقات]] بحسب نموذج الاتصال المستعمل، على أيّ حال تسمى هذه الطبقة بطبقة التطبيق في [[حزمة بروتوكولات الإنترنت|نموذج الإنترنت]]<ref name="ietf-4">{{مرجع ويب
سطر 195:
| الأخير2= Kale
| الأول2= C.
|
|
|
| مسار
|
|
|
|
| تاريخ الوصول=5 أغسطس 2017}}</ref> وفي [[نموذج اتصال معياري|نموذج الاتصال المعياريّ]]<ref name="ISO-1">{{مرجع ويب
| الأخير=
| الأول=
|
|
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017| مسار
|الأخير= Adkr
|الأول= Richard M.
سطر 229:
| الأخير= McDowell
| الأول= Mindi
|
|
|
|
|
|
| تاريخ الوصول= 31 يوليو 2017| مسار
== أمثلة عن عمل نموذج طلب الخدمة ==
سطر 241:
| الأخير= Droms
| الأول= R.
|
|
|
| مسار
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> حيث يمكن أن يعمل البروتوكول بحسب النموذج بشكلين، إمّا وفق بنية ثنائية المُستويات، أو ثلاثيّة المستويات. أمّا المثال الثاني، فهو مُخصص لإظهار كيفيّة عمل النموذج عند تصفّح الإنترنت.
سطر 254:
{{مفصلة|بروتوكول التهيئة الآلية للمضيفين}}
يعمل [[بروتوكول التهيئة الآلية للمضيفين|بروتوكول التهيئة الآلية للمُضيفين]] على تزويد [[مضيف (حوسبة)|المُضيفين]] بالإعدادات اللازمة لنجاح اتصالهم [[شبكة حاسوب|بالشبكة]] أو قيامهم بوظائفهم. بشكلٍ أساسيّ، يقوم البروتوكول بتزويد المُضيف [[عنوان آي بي|بعنوان بروتوكول إنترنت]] وقناع الشبكة (Network mask) وعنوان {{
يُمكن أن يعمل البروتوكول بشكلين، الأول هو النموذج المُباشر، وهو نموذج طلب خدمة ثنائيّ المُستويات، حيث يملك [[خادم (حوسبة)|المُخدّم]] و[[عميل (حوسبة)|العميل]] عناوين إنترنت من نفس الشبكة، أيّ أنّهما يتواجدان ضمن نفس [[
==== عمل البروتوكول وفق النموذج المباشر ====
سطر 263:
| الأخير= Postal
| الأول= J.
|
|
|
| مسار
|
|
|
|
| تاريخ الوصول=5 أغسطس 2017}}</ref> كبروتوكول [[طبقة النقل|طبقة نقل]]، يقوم هذا البروتوكول بإنشاء [[
* ''' رسالة الاكتشاف (DHCP Discovery):''' وتُرسل من [[عميل (حوسبة)|العميل]] إلى [[خادم (حوسبة)|المُخدّم]]، وتكون موجّهة إلى أي مُخدّم للبروتوكول موجود في [[
* ''' رسالة العرض (DHCP Offer):''' وهي ردّ على رسالة الاكتشاف، وتُرسل من [[خادم (حوسبة)|المُخدّم]] إلى [[عميل (حوسبة)|العميل]]، وتتضمن معلومات عن المُخدّم الذي يقدّم عرض التهيئة ومعلومات عن العرض نفسه.
* ''' رسالة الطلب (DHCP request):''' وتُرسل من العميل إلى [[خادم (حوسبة)|المُخدّم]]، وتتضمن طلباً بالتزويد بمعلومات التهيئة بحسب العرض الذي تمّ تقديمه في الرسالة السابقة.
* ''' إشعار التأكيد (DHCP Acknowledgement):''' ويُرسل من [[خادم (حوسبة)|المُخدّم]] إلى [[عميل (حوسبة)|العميل]]، وهو آخر مرحلة من مراحل التهيئة، ويتضمّن الإشعار معلُومات التهيئة الخاصّة بالعميل، ويمكن للعميل استعمال هذه المعلومات بعد تلقيه إشعار التأكيد.
يعمل [[بروتوكول التهيئة الآلية للمضيفين]] (DHCP) وفق النموذج المباشر، أي نموذج طلب الخدمة ثنائي المُستويات، حيث يجري تبادل الرسائل بين العميل و[[خادم (حوسبة)|المُخدّم]] الموجودين ضمن نفس [[
# يُرسل عميل البروتوكول رسالة اكتشاف بحثّاً عن أي مُخدّم للبروتكول موجود في [[
# تصل رسالة الاكتشاف إلى [[خادم (حوسبة)|مُخدّم]] واحد أو أكثر، فيقوم كل [[خادم (حوسبة)|مُخدّم]] استقبل رسالة الاكتشاف بإرسال رسالة عرض إلى [[عميل (حوسبة)|العميل]]، يعرض فيها تزويده بمُحددات التهيئة.
# تصل رسالة العرض إلى [[عميل (حوسبة)|العميل]]، فيقوم بطلب معلومات التهيئة من [[خادم (حوسبة)|المُخدّم]] عن طريق رسالة طلب.
سطر 293:
| الأخير=Patrick
| الأول=M.
|
|
|
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> "معلومات عن خيار وسيط النقل الخاصّ ببروتوكول التهيئة الآليّة للمُضيفين"{{للهامش|5}} كيفيّة استخدام أحد خيارات البروتوكول من أجل توسيع مجال عمل البروتوكول وتمكينُه من تقديم خدمة التهيئة الآلية لمُضيفين لا يتواجدون ضمن [[
لينجح [[خادم (حوسبة)|المُخدّم]] في تقديم خدمته في شبكة بعيدة، لابدّ من وجود وسيطٍ له في تلك الشبكة، يقوم هذا الوسيط بنقل الرسائل بين [[عميل (حوسبة)|العميل]] و[[خادم (حوسبة)|المُخدّم]]. يجب تهيئة الوسيط وتزويده [[عنوان آي بي|بعنوان بروتوكول الإنترنت]] الخاصّ بالمخدّم. بعد التهيئة يقوم الوسيط بانتظار رسائل الاكتشاف التي يُرسلها العملاء،<ref name="Web-5">{{مرجع ويب
|
|
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> ثُمّ يقوم بتوليد رسائل طلب مُكافئة نحو [[خادم (حوسبة)|المُخدّم]]. لا يكون [[عميل (حوسبة)|العملاء]] مُدركين لوجود الوسيط الذي غالباً ما يكون أحد [[بطاقة الشبكة|منافذ]] [[راوتر (حوسبة)|المُوجّهات]] المُتصلة مع [[شبكة متباعدة|الشبكة البعيدة]].
في المثال المدروس هنا، يوجد [[خادم (حوسبة)|المُخدّم]] و[[عميل (حوسبة)|العميل]] في شبكتين مختلفتين، يتصل [[راوتر (حوسبة)|الموجه]] (R1) مع شبكة العميل، ويلعب [[بطاقة الشبكة|منفذ]] [[راوتر (حوسبة)|الموجّه]] دور وسيط المُخدّم، يُمكن الاطلاع على [[طوبولوجيا شبكة|طوبولوجيا الشبكة]] من الشكل المُرفق جانباً، إنّ الرسائل المتبادلة بين [[عميل (حوسبة)|العميل]] و[[خادم (حوسبة)|المُخدّم]] مشابه من حيث النوع والترتيب للرسائل في المثال السابق، ولكنّ المسار الذي تسلكه يكون مُختلفّاً.
تكون الرسائل المتبادلة بين [[عميل (حوسبة)|العميل]] والوسيط رسائل [[بث عام (شبكات)|بثّ عام]]، أما تلك المُتبادلة بين الوسيط و[[خادم (حوسبة)|المُخدّم]] فتكون رسائل [[بث فريد|فريدة]]، ويكون مسار الرسائل بالشكل التالي:
# يُرسل العميل رسائله على شكل رسائل [[بث عام (شبكات)|بثّ عام]] في [[شبكة محلية|شبكته المحليّة]] (LAN)، تصل هذه الرسائل إلى الوسيط الموجُود في تلك الشبكة.
# ينقل الوسيط رسالة [[عميل (حوسبة)|العميل]] إلى [[خادم (حوسبة)|المُخدّم]] على شكل [[
# بعد معالجة الرسالة، يقوم [[خادم (حوسبة)|المُخدّم]] بإرسال رسالته إلى الوسيط على شكل [[
# بعد وصول [[
تسلك جميع الرسائل المُتبادلة بين [[خادم (حوسبة)|المُخدّم]] و[[عميل (حوسبة)|العميل]] المسار السابق مُروراً بالوسيط.
سطر 327:
[[ملف:Client-server model example (Web browsing) - ar.png|thumb|300بك|مثال عن نموذج طلب الخدمة (Client/ Server)، [[مخطط تسلسل العمليات|مُخطط تسلسل العمليات]] لتصفّح الويب، يُمكن ملاحظة البنيّة ثُلاثيّة المستويات للنموذج الخاص [[خدمة دليل أسماء (شبكات)|بخدمة تبديل الأسماء بالعناوين]].]]
يقوم [[مستخدم (حوسبة)|مُستخدم]] باستعمال [[متصفح
| الأخير= Mockapetris
| الأول= P.
|
|
|
| مسار
|
|
|
|
| تاريخ الوصول= 5 اغسطس 2017}}</ref> للحصول على عنوان [[موقع ويب|موقع الويب]]. تعتمد خدمة تصفح الويب على [[بروتوكول نقل النص الفائق|بروتوكول نقل النصّ التشعبي]]<ref name="ietf-11">{{مرجع ويب
| الأخير1= Fielding
سطر 353:
| الأخير7= Berners-Lee
| الأول7= T.
|
|
|
| مسار
|
|
|
|
| تاريخ الوصول= 5 أغسطس 2017}}</ref> وفق نموذج طلب الخدمة ببُنية ثنائية المستويّات، أمّا [[خدمة دليل أسماء (شبكات)|بخدمة تبديل الأسماء بالعناوين]] فتعتمد نفس النموذج ولكن وفق بُنية ثلاثيّة المُستويّات.
سطر 366:
| الأخير= Murray
| الأول= Peter
|
|
|
| مسار
| تاريخ
|
|
|
|
| تاريخ الوصول=5 أغسطس 2017}}</ref> يوجد ثلاث [[طرفية حاسوب|طرفيات]]، الأولى هي [[حاسوب|حاسب المُستخدم]]، والثانيّة هي [[
تبدأ العملية عندما يقوم المُستخدم بإدخال اسم [[موقع ويب]] لأول مرة في [[متصفح
# يحصل عميل نظام أسماء النطاقات على اسم الموقع، ويُرسل طلباً لمُخدّم نظام أسماء النطاقات المحلّيّ طالباً منه [[خدمة دليل أسماء (شبكات)|خدمة تبديل الاسم بالعنوان]] الموافق.
# يستقبل [[خادم دليل أسماء|مُخدّم نظام تسميّة النطاقات]] الطلب، وبما أنّ تصفّح الموقع يجري للمرة الأولى، فلا وجود لسجلّات خاصّة به في [[قاعدة بيانات|قاعدة البيانات]] المحلّيّة، فيقوم مُخدّم نظام أسماء النطاقات المحلّيّ بإرسال الطلب إلى مُخدّم نظام أسماء النطاقات البعيد.
# يصلّ الطلب إلى نظام أسماء النطاقات البعيد، يُعالج المُخدّم البعيد الطلب ويُرسل ردّاً بالعنوان المُوافق إلى مُخدّم نظام أسماء النطاقات المحلّيّ.
# يصلّ الردّ إلى نظام أسماء النطاقات المحلّيّ، فيُسجّل العنوان المُوافق للاسم في قاعدة بياناته المحليّة، ثُمّ يُرسل الردّ إلى عميل نظام أسماء النطاقات، ونتيجة للعملية يحصل [[متصفح
# يطلب عميل الويب خدمة تصفّح موقع الويب المُحدد بالعنوان من [[
# يُعالج [[
# يستقبل عميل الويب رسالة الردّ التي تحتوي صفحة الويب المطلوبة، وبات بإمكان [[متصفح
== مقارنة مع نموذج القرناء ==
سطر 394:
|الأخير1 =Schollmeier
|الأول1 = R.
|
|
|
|الرقم المعياري= 0-7695-1503-7
|
}}</ref> ولهذا النموذج تطبيقات عديدة في مجال [[حوسبة موزعة|الحوسبة الموزّعة]]. يعتمد نموذج القرناء على آليّات عمل مُختلفة مقارنة بنموذج طلب الخدمة بالإضافة لامتلاكه [[معمارية برمجيات|بُنيّة معماريّة]] خاصّة.
سطر 417:
}}</ref>
إنّ أحد الأهداف الرئيسيّة الكامنة خلف تصميم نموذج طلب الخدمة هو خلق نقطة تحكّم مركزيّة في النظام لتُقدّم [[خدمة (شبكات)|الخدمة]] [[عميل (حوسبة)|للعُملاء]] ، تتجمع في هذه النقطة قُدرات [[عملية (
في نموذج طلب الخدمة، يجب أن تُحقق المُخدّمات [[تواجدية|توافريّة]] عاليّة، فقد يُسبب فشل [[خادم (حوسبة)|المُخدّم]] فشلاً في كامل النموذج بسبب [[نظام مركزي (حوسبة)|مركزيّة النظام]]. أمّا في نموذج القرناء، فإنّ التوافريّة العاليّة ليست مطلباً أساسيّاً بسبب وجود قرائن إضافيّة [[فائضية (هندسة)|فائضة]] تُعوّض النقص الحاصل في الخدمة أو الموارد.<ref name = "JOU-8">{{cite journal
|