سواب
صوب
اختصار لـ: البروتوكول المبسط لتطبيقات الكائنات أو (Simple Object Application Protocol)[1]
هو أحد البروتوكولات المستخدمة في عملية نقل البيانات بين شبكات الحواسيب مستعملا لغة الترميز القابلة للامتداد وذلك عند استخدام خدمات الشبكة العنكبوتية (بالإنجليزية Web services) في نقل البيانات. ويقوم بعملية نقلة البيانات المكتوبة باستخدام لغة الترميز القابلة للامتداد باستخدام بروتوكولات الاتصال بروتوكول نقل النص التشعبي ,بروتوكول نقل النص التشعبي الآمن.[2][3]
وهناك العديد من طرق إرسال البيانات عبر هذا البروتوكول ولكن أكثر الطرق استخداما ً هو نداء الإجراء البعيد أو نداء الإجراء البعيد وهذه الطريقة تعتمد على قيام جهاز واحد (العميل (بالإنجليزية: Client) على إرسال إشارة طلب (بالإنجليزية: Request) ليقوم جهاز آخر - المـَستقبل للطلب - (الخادم (بالإنجليزية: Server) بإرسال إشارة للجهاز الآخر - العميل - بهذا الطلب (بالإنجليزية: Response). وحيث أن لغة لغة الترميز القابلة للامتداد هي من اللغات المتعارف عليها من قِبل جميع أنظمة التشغيل وكذلك هي الوسيلة المعتمدة لكتابة/نقل البيانات بين الأجهزة عبر الشبكة لذلك فبروتوكول صوب هو البروتوكول المساعد في عملية نقل هذه البيانات بين الأجهزة خاصة إذا كانت التطبيقات التي تتطلب نقل بيانات تقوم بذلك عبر تطبيقات خدمات الشبكة العنكبوتية (بالإنجليزية Web services).[4][5] [6]
نشأته وتاريخه
عدلوضعت شركة مايكروسوفت هذا البروتوكول في سنة 1999 ليحوله بعدها مجمع ال دبل يو ثري سي (W3C) إلى بروتوكول قياسي ويمكن تلخيص التغييرات التي خضع لها كما يلي:
النسخة | تاريخ الإصدار | الكاتب أو الناشر |
---|---|---|
0.9 | سبتمبر 1999 | مايكروسوفت |
1.0 | نوفمبر 1999 | آي إي تي آف |
1.1 | أبريل 2000 | أي بي آم |
1.2 | سبتمبر 2000 إلى ماي 2002 | دبل ثري سي (إعادة كتابة النسخة 1.1) |
بنية الرسائل المتبادلة عبر صوب
عدلتتكون الرسائل المتبادلة عبر بروتوكول SOAP من جزأين:
الغلاف
عدليحتوي على معلومات عن الرسالة نفسها للسماح بتوجيهها ومعالجتها.
العنوان
عدل(غير إجباري) يحتوي على معلومات العنوان مثل معلومات عن المصادقة والصفقة.
المحتوى أو الكتلة
عدليحتوي على معلومات حول النداء والإجابة.
المرفقات
عدلوهي غير اجبارية مثل الرسوم الهندسية، أو الوثائق القانونية، أو غيرها.
كيف يشتغل صوب
عدلمن جانب الزبون
عدليرسل الزبون إلى الموزع رسائله من نوع صوب–إكس أم أل ملفوفة في ظروف طلبات من نوع بروتوكول نقل النص التشعبي.
من جانب الموزع
عدلبالمقابل يرد الموزع بإجابة من نوع بروتوكول نقل النص التشعبي تتضمن ردا صوب–إكس أم أل. فمثلا إذا كان الموزع موزع تطبيقات من نوع طومكات أو ويبسفير فتتطلب معالجة رسائل الزبون وجود استماع في انتظار وصول رسائل الزبون لمعالجتها. ويتم ذلك عبر تنفيذ مستمع (Listener) مثلا بواسطة servlet سيرفلت ينفذ في موزع التطبيقات. وتتلخص مهمته في استخراج رسالة SOAP-XML من النداء بروتوكول نقل النص التشعبي ومعالجتها.
فوائد صوب
عدلما لفائدة من استعمال صوب؟ يطرح هذا السؤال نفسه لأن تطبيقات الكائنات يمكنها استعمال آر بي سي أو نداء الطرق المتباعدة (RPC) دون اللجوء لبروتوكول أيش تي تي بي والجواب أن أجهزة حماية شبكات المعلومات تمنع مرور ال آر بي سي الذي يتطلب فتح منافذ (Ports) اتصالات عديدة مما يعرض أمن وسلامة المعلومات إلى الخطر بيد أن استعمال بروتوكول أيش تي تي بي لنقل الرسائل يوفر سلامة أفضل باستعمال الشهادات الرقمية كما أنه قابل للتشغيل عبر كل متصفحات الشبكة العنكبوتية ومختلف الموزعات على غرار اختلاف أنظمة تشغيلها.
مميزات ونقائص صوب
عدلالمميزات
عدلمفتوح ولديه خاصية التكيف مع غيره من بروتوكولات النقل
استعمال بروتوكول نقل النص التشعبي يسمح لصوب باجتياز أجهزة حماية الشبكات عبر المنافذ المتاحة
مستقل تماما عن لغة البرمجة أو أرضية التنفيذ
استعمال لغة إكس آم أل القريبة من لغة الإنسان يسهل فهم الرسائل ومن ثم تصحيح الأخطاء التي قد تقع في الرسائل
مؤهل لإدماج تطبيقات وأنظمة معلومات متباعدة
النقائص
عدلكثرة المعلومات التي تفرض استعمالها لغة إكس أم أل يثقل بدوره المبادلات خاصة إذا كان حجم المعلومات المتداولة كبيرا
يعتبر بعض المنتقدين لصوب أنه لا يضيف توظيفات كثيرة بالنسبة لما يستطيع تقديمه بروتوكول نقل النص التشعبي وإكس أم أل صوب يصف الطريقة التي تتصل التطبيقات بعضها ببعض مما يؤدي إلى توثيق تزاوج قوي بين الخادم والموزع عكس ما يسمح به نمط الهندسة الموجهة نحو الموارد مثل ريست Rest
المراجع
عدل- ^ Hirsch, Frederick; Kemp, John; Ilkka, Jani (2007-01-11). Mobile Web Services: Architecture and Implementation. John Wiley & Sons (published 2007). p. 27. ISBN 978-0-470-03259-6. Retrieved 2014-09-15. Simple Object Access Protocol (SOAP) defines a messaging envelope structure designed to carry application payload in one portion of the envelope (the message body) and control information in another (the message header).
- ^ "SOAP Version 1.2 Part 1: Messaging Framework (Second Edition)". W3C. April 27, 2007. Retrieved 2012-06-15. Note: In previous versions of this specification the SOAP name was an acronym. This is no longer the case. (Underneath section 1. Introduction)
- ^ "Evaluating SOAP for High Performance Business Applications: Real-Time Trading Systems". Tenermerx Pty Ltd University of Technology, Sydney. 2011-11-30. Retrieved 2013-03-14.
- ^ ر. س. هولاند، ر. س. هولاند ((1987)). المعجم المصور للميكروإلكترونيات والميكروكمبيوتر.
{{استشهاد بكتاب}}
: تحقق من التاريخ في:|سنة=
و|تاريخ=
(مساعدة)صيانة الاستشهاد: التاريخ والسنة (link) - ^ محمد فريد غنايم، محمد فريد غنايم (1986). قاموس الكومبيوتر العربي (بالعربية والإنجليزية)، مراجعة: طاهر أبو النجا. دالاس: دار النشر العالمية المحدودة،.
{{استشهاد بكتاب}}
: صيانة الاستشهاد: التاريخ والسنة (link) - ^ تيسير الكيلاني؛، مازن الكيلاني ((2001)). معجم الكيلاني لمصطلحات الحاسب الإلكتروني: إنجليزي-إنجليزي-عربي موضح بالرسوم (بالعربية والإنجليزية) (ط. 2). بيروت: مكتبة لبنان ناشرون.
{{استشهاد بكتاب}}
: تحقق من التاريخ في:|تاريخ=
(مساعدة)صيانة الاستشهاد: التاريخ والسنة (link)
- https://www.w3.org/2002/07/soap-translation/soap12-part0.html
- https://www.w3schools.com/xml/xml_soap.asp
- https://www.w3schools.com/xml/xml_soap.asp
- https://www.journaldunet.fr/web-tech/developpement/1202749-soap-vs-rest-les-principales-differences/
- https://www.w3.org/TR/soap12-part1/#terminology