الرئيسيةعريقبحث

طبقات الجلسة والتقديم والتطبيقات


☰ جدول المحتويات


طبقة الجلسه


وظائف طبقة الحاسب والتي تشمل مايلي: - التحكم بالحوار - إدارة الجلسة الطبقة الخامسة من معيار OSI هي طبقة الجلسة والتي تصنف كطبقة أولى من الطبقات الموجودة في جهة المستخدم ( User Layers). تسمح هذه الطبقة لبرنامجين موجودين على حاسبين مختلفين أن يؤسسا اتصال بينهما يسمى "جلسة Session". يتم ذلك باستخدام آليات تساعد على تأسيس جلسة بين الجهاز المرسل والجهاز المستقبل ومن ثم المحافظة على استمرارية هذه الجلسة. كما تقوم هذه الطبقة أيضا بضبط عملية التزامن بينهما وذلك بوضع علامات محددة (Checkpoints) في البيانات المرسلة بحيث إذا تعطلت الشبكة فسيتم إعادة إرسال البيانات بداء من تلك العلامات. إضافة إلى ذلك تقوم هذه الطبقة بالتحكم بنوعية الحوار (Dialog Control) الموجودة بينهما. تستخدم هذه الطبقة عدد من الطرق للتأكد من ذلك منها ما يلي:

وظيفة التحكم بالحوار

هناك ثلاث أنواع من الحوارات التي يمكن تأسيسها بين الجهاز المرسل والجهاز المستقبل والتي تعرف اتجاه نقل البيانات وهي كما يلي:

  • الحوار باتجاه واحد

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

  • الحوار المبني على التناوب من الجهتين

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

  • الحوار المبني على التزامن من الجهتين

في هذا النوع يمكن لأي من الجهازين أن يرسل ويستقبل في نفس الوقت. يحتاج هذا النوع إلى قناتي اتصال، الأولى تستخدم للإرسال والأخرى للاستقبال، من أمثلة هذا النوع نظام الهاتف. أهم مميزاته إمكانية الإرسال والاستقبال في نفس الوقت. أكبر عيوبه غلاء ثمنه مقارنة بالنوعين السابقين إضافة إلى الحاجة إلى قناتي اتصال.

إدارة الجلسه

كما ذكرنا سابقا، طبقة الجلسة تسهل الاتصال بين حاسب آلي وحاسب آلي آخر مربوطين على الشبكة وذلك بتأسيس أو فتح جلسة بينهما ومن ثم المحافظة على استمراريتها. يمكن تقسيم الجلسة إلى ثلاث مراحل :

  • تأسيس الاتصال

تشمل هذه المرحلة جميع المهام الواجب تنفيذها لجعل الجهاز المرسل والجهاز المستقبل يتعرفا على بعضهما البعض ويسمحا بالاتصال. هذه المهام تشمل

  1. التأكد من صحة اسم المستخدم وكلمة المرور المستخدمة
  2. إنشاء رقم لهذا الاتصال ( Connection Identification Number)
  3. تحديد البرنامج الذي سوف يتم الاتصال عليه في الحاسب الآلي الآخر
  4. تحديد أي من الطرفين يبدأ بالإرسال
  5. التنسيق في عملية إعادة الإرسال واستلام الإشعارات
  • نقل البيانات

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

  • إنهاء الجلسة

في هذه المرحلة يتم إنهاء الجلسة حسب موافقة الطرفين أو عندما ينقطع الاتصال بسبب ضياع رقم الاتصال (Connection Identification Number).

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

طبقة التقديم

في هذه الوحدة سوف نركز باختصار على أهم الوظائف التي التي تقوم بها طبقة التقديم مع معرفة التقنيات لتي تستخدم فيها. في نهاية هذه الوحدة سوف تكون قادرا على معرفة وظائف طبقة التقديم والتي تشمل مايلي:

  1. الترجمة
  2. تشفير البيانات
  3. ضغط البيانات

الطبقة السادسة من معيار OSI هي طبقة التقديم والتي تصنف كطبقة ثانية من الطبقات الموجودة في جهة المستخدم (User Layers). تعتبر هذه الطبقة مترجم الشبكة حيث تقوم بتحويل شكل البيانات الموجودة في الجهاز المرسل إلى شكل آخر يفهمه الجهاز المستقبل وبالعكس. يمكن لهذه الطبقة أيضا أن تقوم بضغط البيانات (Data Compression) وتشفيرها (Data Encryption). من التقنيات التي تعمل في هذه الطبقة تقنية "إعادة التوجيه Redirector" والتي تقوم بتوجيه عمليات قراءة وكتابة الملفات من جهاز العميل إلى جهاز الخادم بحيث يستطيع المستخدم أن يصل إلى الأسطوانة الصلبة الموجودة في جهاز الخادم من خلال جهاز العميل .

وظيفة الترجمة

تستخدم الحاسبات الآلية الأرقام الثنائية ( الأصفار والآحاد I's and 0's)لتمثيل البيانات. الشركات المصنعة لأجهزة الحاسب الالي قد تضع قواعد متعارضة لعملية تمثيل بيانات وبالتالي عند الحاجة لعمل اتصال بين حاسبين آليين يستخدمان طرق مختلفة لتمثيل البيانات فإنه يجب عمل ترجمة بين طرق تمثيل البيانات في الجهازين. هناك عدة أنواع من الترجمة منها مايلي:

  • الترجمة بتحديد اتجاه القراءة على مستوى البت Bit Order Translation : يتم تمثيل الأرقام والحروف والصور على شكل سلسلة من الأرقام الثنائية (0 و 1). في نظام الآسكي يتم استخدام 7 بت لتمثيل البيانات بينما في نظام EBCEDIC يتم استخدام 8 بت عند إرسال بيانات من حاسب آلي يعمل بنظم الآسكي مثل الحاسبات الشخصية من شركة IBM. فإنه يجب تحديد اتجاه القراءة بحيث يتم قراءة سلسلة الأرقام الثنائية من اليمين إلى اليسار أو من اليسار إلى اليمين وفقا للنظام المستخدم.
  • الترجمة بتحديد اتجاه القراءة على مستوى البايت Byte Order Translation:

في الحاسبات الشخصية المبنية على وحدة المعالجة المركزية من شركة أنتل يتم تمثيل الأرقام بحيث أول بت هو البت صاحب أقل قيمة عدديه ( Least Significant Bit-MSB) بينما في الحاسبات الشخصية المبنية على وحدة المعالجة المركزية من شركة موتورولا يكون أول بت هو صاحب أعلى قيمة عددية (Most Significant Bit-MSB) لكي يتم اتصال بين حاسب آلي من شركة أنتل مع حاسب آلي من شركة موتورولا يجب أن يتم عمل ترجمة من طبقة التقديم.

  • ترجمة النظام المستخدم لتمثيل الحروف : من الممكن أن يتم تمثيل البيانات باستخدام نظام الآسكي المكون من 7 بت لكل حرف أو نظام الإيسيديك (EBCEDIC) المكون من 8 بت لكل حرف وبالتالي يجب أن تقوم طبقة التقديم بالترجمة بين النظامين عند الحاجة لعمل اتصال بين حاسبين يستخدمان نظامين مختلفين لتمثيل الحروف.
  • ترجمة نظام الملفات : أي جهاز حاسب آلي يستخدم نوع معين من أنظمة التشغيل. كل نظام تشغيل يعرف نظام ملفات ( File System) خاص به يحدد لكل ملف : أقصى عدد من الحرف في اسم الملف. خصائصه. الصلاحيات (مثل قراءة وكتابة وتعديل وحذف وغير ذلك). كيفية تخزين الملف على وسط التخزين...الخ. لكي يتم اتصال بين جهازين يستخدمان نظامي تشغيل مختلفين يجب عمل ترجمة بين نظامي الملفات وذلك في طبقة التقديم.

تشفير البيانات

المبدأ الأساسي لعملية التشفير. يتم إدخال رسالة غير مشفرة إلى آلية أو عملية التشفير فينتج عنها رسالة مشفرة. تتم هذه العملية بواسطة مفتاح التشفير (Encryption Key). في الجهاز المستقبل تتم العملية العكسية حيث يستخدم نفس مفتاح التشفير لفك الرسالة المشفرة وتحويلها إلى رسالة غير مشفرة. التحدي الكبير في هذه العملية هو كيفية نقل مفتاح التشفير إلى الجهاز المستقبل بطريقة آمنة. إذا كان المستقبل في الغرفة المجاورة أو في نفس المبنى. فيمكن ارساله إليه بطريقة آمنة .ولكن عندما يكون الجهازالمستقبل في مدينة أو قارة أخرى. فهنا يكمن التحدي. أنواع التشفير: تاريخيا يمكن تصنيف طرق التشفير التقليدية إلى نوعين:

  • التشفير الإبدالي

في هذا النوع من التشفير يتم إحلال حرف أو عدة حروف بحرف أو عدة حروف أخرى. في أول طريقة من هذا النوع . تسمى تشفير Caesar. يتم إحلال الحرف a بالحرف D والحرف b بالحرف E والحرف C بالحرف F وهكذا حتى الحرف Z بالحرف C. أي أن هناك إزاحة لموقع الحرف بالعدد 3. فمثلا الكلمة attack يتم تشفيرها بحيث ترسل DWWDFN. بعد ذلك تم تحسين طريقة Caesar بحيث تكون الإزاحة أي عدد K. هذا العدد يسمى مفتاح التشفير(Encryption Key). التحسين التالي هو وضع حرف مقابل كل حرف من حروف الهجاء.

  • التشفير الموضعي

في هذا النوع من التشفير يتم تغيير موضع كل حرف من الحروف الموجودة في الرسالة المراد تشفيرها. أي أن الحرف المراد إرساله لا يتم تغييره بحرف آخر كما في طريقة التشفير الإبدالي. ولكن فقط يتم تغيير مكانه أو موقعة في الرسالة. الشكل العام لهذا النوع كما يلي: يتم استخدام كلمة معينة كمفتاح تشفير بحيث لاتحتوي على أي حرف متكرر مثل كلمة MEGABUCK. يتم كتابة كلمة التشفير، وتحت كل حرف فيها يتم وضع رقم يوضح ترتيبه في الأبجدية أو أقرب موضع بحيث تكون الحروف متسلسلة، فالحرف A له الرقم 1, والحرف B له الرقم 2, والحرف C له الرقم 3, والحرف E له الرقم 4 (أقرب موقع بعد حرف C) والحرف G له الرقم 5, وهكذا.بعد ذلك يتم كتابة الرسالة المراد تشفيرها وهي: This is my credit card number 5432 6600 4522 it is master card بدأ من العمود الأول من اليسار بحيث كل حرف من الرسالة يتم وضعه في خلية، لتشفير الرسالة يتم إرسالها بحيث يتم قراءة العمود الأول رأسيا ( أي العمود الذي له الرقم 1 أو A). ثم العمود الثاني ثم الثالث وهكذا. الرسالة المشفرة تكون كالتالي: SDU29SAIIM64MRMCE02SHRD46TRIEN39ICYAR02TTCR53IESTB65ED لاحظ أنه لم يتم تغيير الحروف الموجودة في الرسالة الأصلية ولكن فقط تم تغيير مكان الحرف. وهكذا عكس النوع السابق والذي تم فيه تغيير حروف الرسالة الأصلية وإبدالها بحروف أخرى.

معايير تشفير البيانات

في الطرق التقليدية لتشفير عادة يتم استخدام طريقة سهلة وسرية لآلية التشفير (Simple and secrete Algorithm) ولكن باستخدام مفتاح تشفير طويل بحيث تصبح عملية اكتشاف النص المشفر صعبة، بوجود الحاسب الآلي أصح هناك معايير حديثة للتشفير تعتمد اعتمادا كليا على استخدام طريق معقدة للتشفير (Complicated Algorithm) ولكنها غير سرية حيث أن آلية التشفير منشورة على شبكة الإنترنت كما أنها موجودة في معظم لغات البرمجة. لكن التغيير الجديد مقارنة بالطرق القديمة هو استخدام مفتاح تشفير طويل جدا بحيث يصعب على أجهزة الحاسب الآلي محاولة جميع الاحتمالات الممكنة لمعرفة مفتاح التشفير. من أهم هذه المعايير هو معيار –DES(Data Encryption Standard) والذي تم اختراعه بواسطة شركة IBM في عام1977م حيث تبنته الحكومة الأمريكية كمعيار محلي لتشفير البيانات باستخدام الدوائر المتكاملة. واجه معيار DES الكثير من الجدل على إمكانية فك شفرته وبالتالي تم تبني معيار آخر هو 3DES حيث يستخدم DES ثلاث مرات بمفتاحي أو ثلاثة مفاتيح تشفير بطول 112 بت و 168بت. من المعايير الجديدة أيضا معيار (International Data Encryption IDEA Algorithm) والذي تم اختراعه بواسطة عالمين سويسريين. يستخدم هذا المعيار مفتاح تشفير بطول 128بت.

ضغط البيانات

سعة القناة (Channel Bandwidth) تعتبر مورد حيوي يجب استخدامه بعناية. تقوم شركات الاتصالات بمحاسبة الزبائن على كمية الوقت وكمية المعلومات التي يتم نقلها عبر القناة. لذا جاء الاهتمام بعملية تقليل البيانات التي يتم نقلها وذلك بضغط تلك البيانات قدر المستطاع. أيضا يوفر ضغط البيانات حماية للبيانات حيث يصعب قراءتها. من أهم الطرق المستخدمة لضغط البيانات هو ترميز هوفمان. في حروف الهجاء الإنجليزية، وبعد عمل دراسات إحصائية وجدوا أن ظهور الحروف في أي نص له احتمالات مختلفة. حيث أن أكثر الحروف ظهورا في أي رسالة هو حرف e ثم حرف t ثم حرف q وأقل الحروف ظهورا هو حرف z . أيضا هناك حرفان يظهران أكثر من غيرهما. فمثلا الحرف th يظهر أكثر من الحرفين in والذي بدوره أكثر ظهورا من الحرفين er. أيضا هناك كلمات تظهر أكثر من غيرها . فمثلا الكلمةThe . تعتبر من أكثر الكلمات ظهورا يليها كلمة ing ثم and ثم ion الخ. لذا إذا تم ترميز الحروف والكلمات الأكثر ظهورا بعدد قليل من البت وبالتالي فان العدد الكلي من البت الذي نحتاجه لترميز الرسالة كلها سوف يقل وبالتالي أمكن ضغط البيانات.

طبقة التطبيق

في هذه الوحدة سنركز باختصار على أهم الوظائف التي تقوم بها طبقة التطبيق مع معرفة التقنيات التي تستخدم فيها. في نهاية هذه الوحدة سوف تكون قادرا على معرفة وظائف طبقة التقديم والتي تشمل ما يلي:

  1. الإعلان عن الخدمات
  2. طرق استخدام الخدمات.

الطبقة السابعة والأخيرة من معيار OSI هي طبقة التطبيقات والتي تصنف كطبقة ثالثة من الطبقات الموجودة في جهة المستخدم (User Layers). تقوم هذه الطبقة بتقديم خدمات الشبكة (Network Serviecs) التي تم شرحها في الوحدة الأولى من الفصل الثاني وهي خدمات : الملفات، الطباعة, الرسائل، التطبيقات, وقواعد البيانات (لا تشمل وظائف هذه الطبقة البرامج الخاصة بالمستخدم مثل برامج معالجة النصوص والجداول الإلكترونية). يجب الإعلان عن الخدمات الموجودة في هذه الطبقة ومن ثم تحديد طريقة لاستخدامها، سيتم شرح ذلك في ما يلي:

الإعلان عن الخدمات

عادة يتم تقديم خدمات الشبكة من أجهزة حاسب آلي تعرف بالخادم (Server). عادة يقوم هذا الخادم بالإعلان الدوري عن خدمات الشبكة المتوفرة في الوقت الحالي. يتم ذلك باستخدام عنوان الخدمة أو رقم المنفذ (Service Address/Port Number) والذي تم شرحه في طبقة النقل. هناك عدة طرق للإعلان عن خدمات الشبكة المتوفرة في خادم معين وهي كما يلي:

  • الإعلان غير النشط

في هذه الطريقة يقوم الخادم بتسجيل جميع خدمات الشبكة وعناوينها في دليل (Directory). عندما يريد أي جهاز عميل (Clients) أن يحدد أي من خدمات الشبكة متوفرة الآن فإنه يقوم بسؤال الدليلز بعد ذلك يقوم الدليل بإرسال عنوان الخدمة إلى العميل.

  • الإعلان النشط

في هذه الطريقة يقوم الخادم بإرسال رسالة دورية (Periodic Message) تشتمل على عنوان الخدمة، لتعلن عن توفر خدمة معينة من خدمات الشبكة. يمكن أيضا لأجهزة العميل المرتبطة بالشبكة أن تقوم بسؤال جهاز معين مثل الطابعة عن توفر خدمة الطباعة . باستخدام الرسائل الصادرة من الخادم تقوم أجهزة العميل ببناء جدول نشط يحتوي على جميع خدمات الشبكة التي تم الإعلان عنها وبالتالي هي متوفرة في الوقت الحالي. عادة يتم تحديد فترة زمنية محددة لتوفر أي خدمة من خدمات الشبكة. إذا انتهت هذه الفترة فإن أجهزة العميل تقوم بإلغاء خدمة الشبكة من الجدول وتعتبرها غير متوفرة حتى يتم الإعلان عنها مرة أخرى.

طرق استخدام الخدمات

بعد معرفة توفر خدمة شبكة معينة عن طريق الإعلان عنها يمكن الآن استخدامها. ولكن قبل استخدامها يجب أن تكون متوفرة لنظام التشغيل المحلي الخاص بجهاز العميل. هناك عدة طرق لعمل ذلك وهي كما يلي:

  • اعتراض أمر نداء نظام التشغيل

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

  • العمل عن بعد

في هذه الطريقة، نظام التشغيل الموجود في جهاز العميل مدرك تماما لوجود خدمات الشبكة وبالتالي هو مسئول عن إرسال الأمر إلى خدمة الشبكة الموجودة على جهاز الخادم. الخادم غير مدرك لوجود أجهزة العملاء وبالتالي بالنسبة له فان جميع أوامر طلب الخدمة تبدو له نفس الشيء سواء كان الأمر صادرا من العميل أو داخليا. نظام ويندوز إن تي يعمل بهذه الطريقة.

  • المعالجة التعاونية

في هذه الطريقة، نظام التشغيل الموجود في جهاز العميل مدرك تماما لوجود خدمات الشبكة في جهاز الخادم، والخادم مدرك تماما لوجود أجهزة العملاء وبالتالي يعملان مع بعضهما البعض لتنسيق استخدام خدمة معينة من خدمات الشبكة. الشبكة مجموعات العمل (Peer-to- Peer Network) تعمل بهذه الطريقة.

المراجع

كتاب المدخل إلى شبكات الحاسب الآلي .
د.م ناصر بن زيد المشاري .