Lecture 3 - OSI Layers

مقدمه
  • في أبسط شكل، عندك جهازين (end-points) متصلين ببعضهم بكابل LAN (Network Media) و connectors (RJ45) بيشاركوا بيانات عن طريق الـ NICs.
  • المشكلة: لو جهاز شغال Windows والتاني شغال MAC OS، هما هيتكلموا مع بعض ازاي وكل واحد ليه نظام مختلف؟
  • عشان نحل المشكلة دي، الـ ISO (International Organization for Standardization) طرح في 1984 نموذج اسمه OSI Model (Open System Interconnection Model).
  • الـ OSI Model هو reference tool بنفهم بيه ازاي البيانات بتتنقل بين أي نظامين متصلين بالشبكة.
  • بيقسم عمليات الاتصال لـ 7 layers (طبقات).
  • كل layer ليها وظائف محددة عشان تخدم اللي فوقها وتستقبل خدمات من اللي تحتها.
  • الـ 3 layers الي تحت شغلها تمرير البيانات عبر الشبكة للـ end system.
  • الـ 4 layers الي فوق شغلها في الـ end system عشان تكمل عملية الاتصال.

Application Layer :

  • بيحدد ايه البروتوكول الي بيدعم الـ action الي انته بتعمله وبيوفره.
    • بروتوكولات زي HTTP , HTTPs , FTP , SMTP , DNS.
  • بيوفر خدمة Network Virtual Terminal (NVT) بيسمح للمستخدم يعمل login على host بعيد (زي SSH/Telnet)
  • بيوفر خدمة File Transfer Access and Management (FTAM) والي بتخلينا قادرين نوصل للملفات ونديرها على جهاز بعيد
  • بيوفر خدمات البريد الإلكتروني (Mail Services) زي SMTP , POP3 , IMAP.

“hover-notes-images/screenshot-01KS0123H6VY831CMB8H8JA0Z1.png” could not be found.
00:01:31

Presentation Layer :

  • بيحول الداتا من حروف وارقام الي binary ← العملية دي اسمها Translation
  • بيضغط الملفات عشان يقلل حجمها ← Data compression
  • بيعمل تشفير للداتا قبل ما تتبعت (Encryption ), والشخص الي بيستقبل البيانات بيفك التشفير ده (Decryption) ( بروتوكولات TLS/SSL بتشتغل هنا)

“hover-notes-images/screenshot-01KS017G2PSBXW5M66ZZY4T50R.png” could not be found.
00:02:36

Session Layer :

  • مسؤول عن إدارة الجلسات (Session Management) بين الأجهزة :
    • مسؤول عن إنشاء واستمرار وإنهاء الجلسات (Session Establishment, Maintenance & Termination) بين الجهازين.
  • بيسمح بالتواصل (Transmission ) بين الأجهزة سواء هو Simplex ولا Half-Duplex ولا Full-Duplex.
  • مسؤول انه يتحقق من الصلاحيات (Authentication & Authorization).
  • بيعمل (Synchronization) عن طريق إضافة Checkpoints في البيانات عشان لو حصل انقطاع يكمل من آخر نقطة.
  • بيتحكم في الحوار بين الأنظمة (Dialog Controller) وبيسمح بالتواصل سواء Half-Duplex او Full-Duplex.

“hover-notes-images/screenshot-01KS01JWYGFFQX5MD042RFM1G8.png” could not be found.
00:04:00


Transport Layer :

  • مسؤوله عن نقل البيانات
    • بيعمل Segmentation (بيقسم الداتا لاجزاء صغيره)
    • كل segment بيبقي ليه port number عشان يحدد التطبيق اللي هيستقبل البيانات.
    • كمان كل segment بيبقي ليه sequence number عشان يحدد ترتيب الـ segment
  • بيعمل Flow control (بيتحكم في الـ transfer rate بحيث سرعة الإرسال والاستقبال تكون مناسبة للطرفين.
  • بيحدد نوع البروتوكول الي هنستخدمه في نقل البيانات حسب الاكشن الي اليوزر بيعمله اما هيستخدم
    • الـ TCP (دقيق لكن مش سريع اوي)
    • او الـ UDP (مش دقيق لكن سريع جدا) وبنستخدمه في الـ streaming زي مثلا الفيديوهات او الالعاب
  • بتوفر Service Point Addressing عن طريق إضافة الـ Source Port والـ Destination Port في الـ Header عشان البيانات توصل للـ Process الصح.
  • بتدعم بروتوكولات زي NetBIOS و PPTP المستخدمة في بعض خدمات الشبكات والاتصالات.
  • مسؤولة عن نقل البيانات (Data Transfer) بين الأجهزة.

“hover-notes-images/screenshot-01KS021WQM1T8YZVWGTJ9WT61A.png” could not be found.
00:07:40


Network Layer :

  • بتعمل Logical Addressing
    • بتاخد الـ Segments من ال Transport layer وتضيف عليهم الـ IP Address بتاعة الـ sender , receiver عشان تكون Packets
  • بتعمل routing وهي عملية اختيار افضل مسار الداتا هتمشي فيه

“hover-notes-images/screenshot-01KS026YJ82CTS1N7KYXVQ78W7.png” could not be found.
00:08:40


Data Link Layer :

  • بتستقبل الـ Packets من الـ Network Layer وبتحولها لـ Frames عشان تبعتها على الشبكة.
  • بتعمل Physical Addressing عن طريق إضافة الـ MAC Address بتاع الـ Sender والـ Receiver داخل الـ Frame.
    • وبتستخدم بروتوكول ARP عشان تجيب الـ MAC Address المقابل للـ IP Address.
  • بتعمل Framing عن طريق إضافة Header و Trailer للبيانات.
    • وكمان بتحط Special Bit Patterns في بداية ونهاية الـ Frame عشان تحدد حدود الـ Frame بشكل صحيح.
  • بتعمل Flow Control لضمان إن سرعة الـ Sender والـ Receiver تكون متقاربة ومناسبة لبعض.
  • بتعمل Error Detection & Error Control لاكتشاف الأخطاء في الـ Frames.
    • ولو الـ Frame حصلها Damage أو Lost بيتم إعادة إرسالها (Retransmission).
  • الأجهزة اللي بتشتغل في الـ Data Link Layer :
    • Switches
    • Bridges

“hover-notes-images/screenshot-01KS02KJQZ7STHZS022SYE9V26.png” could not be found.
00:09:45

“hover-notes-images/screenshot-01KS02M83CS5CA027PDJT0RRCW.png” could not be found.
00:12:17


Physical Layer :

  • بتحول البيانات (Bits) إلى Signals عشان تقدر تنتقل عبر الوسط الفيزيائي.
    • ممكن تكون Electrical Signals
    • أو Optical Signals
    • أو Radio Signals
  • بتوفر Bit Synchronization عن طريق توفير Clock يزامن بين الـ Sender والـ Receiver على مستوى الـ Bits.
  • بتحدد معدل نقل البيانات (Bit Rate Control) يعني عدد الـ Bits اللي بتتبعت في الثانية.
  • بتحدد شكل الشبكة الفيزيائي (Physical Topologies) زي:
    • Bus
    • Star
    • Mesh
  • بتحدد طريقة تدفق البيانات (Transmission Mode) هل هي:
    • Simplex
    • Half-Duplex
    • Full-Duplex
  • الأجهزة اللي بتشتغل في الـ Physical Layer تشمل:
    • Hub
    • Repeater
    • Modem
    • Cables

“hover-notes-images/screenshot-01KS02SKEX66ZS18GVTQJWRQTS.png” could not be found.
00:17:28


مثال كامل :

“hover-notes-images/screenshot-01KS02TZWEKHBCRMJ9MT3VFQHY.png” could not be found.
00:19:53

مثال عن Email Data Flow من أول ما تكتب الإيميل لحد ما يوصل:

  • جهاز المرسل (Device A) — Encapsulation:
    • ا Application Layer بيكتب الإيميل في التطبيق وبيتضاف HTTP/SMTP header
    • ا Presentation Layer: البيانات بتتشفر وتتضغط عشان تبقى جاهزة للنقل
    • ا Session Layer: الاتصال بيتأسس بين الجهازين
    • ا Transport Layer: البيانات بتتقطع Segments وبيتضاف Source/Destination Port Number و Sequence Number
    • ا Network Layer: الـ Segments بتتغلف في Packets وبيتضاف Source/Destination IP Address
    • ا Data Link Layer: الـ Packets بتتغلف في Frames وبيتضاف Source/Destination MAC Address
    • ا Physical Layer: الـ Frames بتتحول لـ Bits (إشارات كهربائية/ضوئية/راديوية) وبتتبعت على الشبكة
  • جهاز المستقبل (Device B) — De-encapsulation:
    • ا Physical Layer: بيستقبل الإشارات ويحولها لـ Bits ويوديها للـ Data Link
    • ا Data Link Layer: بيشيل MAC header ويتأكد من إن الـ Frame مفيهاش أخطاء (Error Detection)
    • ا Network Layer: بيشيل IP header ويشوف الـ destination عشان يعرف يوصل الـ Packet لمين
    • ا Transport Layer: بيشيل TCP/UDP header ويعمل Reassembly للـ Segments ويعرف إيه التطبيق اللي محتاج البيانات من Port Number
    • ا Session/Presentation/Application: يفك التشفير ويظهر الإيميل للمستخدم

Nour Eldeen mahmoud