شرح TCP/IP Layers (الجزء الأول)
بروتوكول Tcp/Ip
فى الموضوع السابق لشرح مراحل osi كنا قد تحدثنا عن ان ال Osi هو موديل تعليمى للفهم وبروتوكول tcp/ip هو الذى يتم تنفيذه فى الواقع العملى والان سوف تنطرق الى هذا البروتوكول.
بروتوكول Tcp/Ip: هو اختصار ل Transmission Control Protocol/Internet Protocol
بروتوكول IP (Internet Protocol : هو بروتوكول الانترنت وهو الذى يعطى لكل جهاز عنوان ليربطك بالشبكة وكل جهاز ياخذ عنوان يختلف عن بقية الأجهزة , IPV4 مكون من 32 بت , 4octets , وكل octet مكونة من 8بت , (ولكى تفهمه بشكل جيد فهو يحتاج لموضوع مستقل )
بروتوكول TCP (Transmission Communication Protocol): هو بروتوكول نقل الاتصال اى يقوم بنقل البيانات عبر الشبكة
هذا البروتوكول من الممكن تشبيهه باللغة الانجليزية فهى اللغة الاساسية حاليا للتخاطب بين البشر فى العالم وايضا هذا البروتوكول هو البروتوكول الرئيسى للتخاطب بين انظمة التشغيل المختلفة واستمد هذا البروتوكول Tcp/Ip أهميته من كونه يستطيع ان يربط بين كل انواع الاجهزة والشبكات وانظمة التشغيل وليتصلوا ببعض عبر شبكة الانترنت و فى الأساس صمم هذا البروتوكول خصيصا لوزارة الدفاع الامريكية DOD ثم اصبح بعد ذلك هو بروتوكول الانترنت الرئيسى , ولابد ان تعلم ايضا ان هذا البروتوكول يتكون من العديد من البروتوكولات.
تتكون TCP/IP Layer من اربعه طبقات تمر من خلالها البيانات ,وفى كل طبقة تعمل مجموعة من البروتوكولات التى تخدم عمل هذه الطبقة , فعلى سبيل المثال فى طبقة التطبيقات لدى مجموعة من البروتوكولات الخدمية التى تساعدنى على استخدام برامج معينة مثل ftpm,smtp,rdp,pop3,http,dns
وفى طبقة النقل توجد بروتوكولات نقل البيانات tcp, udp.
وفى طبقة الانترنت( او ماتسمى طبقة الشبكة فى osi) فبها يعمل بروتوكولين ال ip الذى يخدم عليه العديد من البروتوكولات( icmp,igmp,arp,rarp) وايضا بروتوكول Nat وهدفهم انشاء الاتصال مع الاجهزة والشبكات.
واخيرا طبقة ال network Interface ويعمل بها بروتوكول مثل ال mac , arp ,IPSec ,وهى الطبقة الاولى التى تتعامل مع البيانات المرسلة لها من الطرف الأخر ولهذا تم بدأ الترقيم من عندها .
- شرح مراحل Tcp/Ip
4- Application layer
- طبقة التطبيقات فى TCP/IP Layer تشمل ( طبقة التطبيقات و Presentation و Session فى ال osi layer ) ويمكنك مراجعه الموضوع السابق لشرح osi لتعرف وظيفته الثلاثة بالتفصيل , ففيها يقوم المستخدم بفتح البرنامج المطلوب حسب البروتوكول الخاص به وهذا وظيفته الطبقة الاساسية وهو التعامل المباشر للمستخدم مع البرنامج ثم تتم عملية تهيئة البيانات وتشفيرها وضغطها كما كان تقوم به طبقة ال Presentation ثم فتح قناة اتصال كما كانت تقوم به طبقة السيشن فى osi layer , وهذه هى باختصار ماتقوم به طبقة التطبيقات فى TCP/IP Layer.
- البروتوكولات : http – ftp – tftp- smtp-snmp-dns-telnet.
3- Transport layer
- أهم وظيفة لهذه الطبقة هو نقل البيانات , ومن ثم تحديد البروتوكول المستخدم فى عملية نقل البيانات فبعض البيانات تستخدم (TCP Connection oriented protocol) فهو بروتوكول يقوم بعملية ارسال البيانات ويتأكد من سلامة وصولها او لا , او يستخدم (UDP Connectionless) فهو بروتوكول يقوم بعملية نقل البيانات دون التأكد من وصولها مثال على ذلك ملفات الفيديو او محطات الاذاعة والتلفزيون على النت.
- البروتوكولات : TCP – UDP
- معظم البروتوكولات تستخدم بروتوكول TCP ماعدا مثلا TFTP, SNMP,RIP فيستخدم UDP , ولدى بروتوكول DNS فهو يستخدم الاثنين معا .
- § TCP
- وهى اختصار ل Transmission Communication Protocol.
- يقوم بروتوكول TCP بعمل ارسال البيانات وايضا التأكد من وصولها وذلك بالتحكم فى تدفق البيانات واكتشاف الاخطاء فى البيانات وهذا مايختلف به عن UDP الذى يرسل الداتا بدون التأكد ولكن هنا سوف يكون هنا عامل فرق فى السرعة يتفوق فيه UDP عن TCP, وليس لأى احد منه ميزة عن الاخر فلكل منه المهام التى يستخدم فيها وبروتوكولاته الخاصه.
طريقة عمل بروتوكول TCP؟
- قبل عملية ارسال الداتا ولكى يتم التأكد ان الطرف الاخر على اتصال تتم عملية Three-Way Handshake وهدفها التأكد ان الجهاز المستقبل للداتا على اتصال وتتم هذه العملية على ثلاث خطوات , وهناك بعض القيم الاساسية التى سيتم استخدامها فى الاتصال :
- SYN: وهى اختصار ل Synchronize sequence numbers وهو الرقم المتسلسل المتتابع الذى سيوضع للحزم المرسلة للتحكم فى ارسال البيانات.
- ACK: وهى اختصار ل Acknowledge وهو رقم يعبر عن استلام الحزم المرسلة فمثلا الرقم 10 نعرف به الجهاز الهدف انى استلمت الحزمة 9 ومطلوب 10.
مراحل العملية:
1- يقوم الجهاز A بإرسال SYN الى الجهاز B.
2- بعد استلام الجهاز B ال SYN يقوم بإرسال حزمة اخرى SYN-ACK إلى الجهاز A .
3- بعد استلام الجهاز A ال SYN-ACK يقوم بإرسال حزمة اخيرة ACK ... وعندها يكون تم التأكد من وجود اتصال بين الجهازين ثم يبدأ فى ارسال البيانات المطلوبة ارسالها .
وانهاء الاتصال ايضا يتم على ثلاث خطوات بنفس العمل تقريباً ما عدا أن إشارة SYN تستبدل بإشارة FIN. .
من مزايا طريقة three-way handshake كذلك أنها تمكّن الجهازين من إنشاء عدة قنوات إتصال فيما بينهما في نفس الوقت، وكل واحدة منها مستقلة في حالتها state ومختلفة في القيم parameters التي يتم الإتفاق عليها.
مما يتكون TCP عندما ترسل عبر الشبكة؟ وهذا مايظهر فى الشكل التالى
- تتكون ال Tcp Segmentمن العديد من القيم التى تساعد على التحكم فى ارسال الداتا والتأكد من وصولها سليمة ام لا :-
1- Source port: وهو المقصود به المنفذ الذى يخرج منه الباكت من جهازى لترسل عبر الشبكة
2- Destination Port: وهو المنفذ للجهاز الهدف الذى تدخل منه الداتا ليستلمها الطرف الأخر,
وكما ذكرت فى شرح OSI Layer
هناك نوعين من البورتات :-
- المنافذ المعروفة Well Known Port: (0 to 1023) هى البورتات المحجوزة لتطبيقات معينة وهو يستخدم للدخول من خلاله على الجهاز الاخر .
- اما البورتات الاخرى: (1024 to 65535) وتستخدم هذه البورتات من قبل التطبيقات لكى يخرج منها التطبيق الى الشبكة ثم يصل الى الجهاز الاخر ليدخل من البورتات السابقة.
3- Sequence numbers: وهو الرقم المتسلسل المتتابع الذى يوضع للحزم للتحكم فى ارسال البيانات.
4- Acknowledge Number: وهو رقم يعبر عن استلام البيانات فمثلا Ack 10 كماقلت سابقا هو يعبر عن استلام Ack9 و مطلوب ارسال ACK 10.
5- Window: هو رقم يعبر عن حجم الباكت المتفق على إرسالها بين الطرفين وذلك لكى يستطيع الجهاز المستقبل استيعاب الداتا المرسلة له ولايحدث عنده أى مشاكل .
6- Code bits: هى مجموعة من الكود تعرفنى ماهو نوع باكت ال TCP المرسلة فعلى سبيل المثال الباكت من نوع SYN TCP فهى تعنى ارقام التتابع المرسلة على الباكت و الكود FIN TCP تعنى انه لاتوجد أى بيانات مرسلة اخرى و الكود ACK TCP تعنى انه تم استلام الباكت السابقة ومطلوب التالية .
7- Reserved: وهى محجوزة للاستخدامات المستقبلية.
8- Header Length (4bit) : وهى تعبر عن طول هيدر الباكت فلو نظرنا الى الرسمه السابقة لوجدنا انها 20 ولكن ليس من الضرورى فى كل مرة يتم ارسال كل هذه البيانات فعلى سبيل المثال اول حزمه يتم ارسالها لتأسيس الاتصال يكون فيها seq number ولا يكون فيها Ack لهذا يختلف حجم الباكت فى كل مرة عن الاخرى
9- Urgent: وهى خاصة بحالة الكود URG المذكورة فى Code Bits.
10- Checksum : هى تقوم ب error detection بمعنى بإكتشاف الاخطاء الموجودة فى الداتا
- § UDP
- وهى اختصار ل User Datagram Protocol
- يقوم بروتوكول UDP بعمل إرسال البيانات بدون التأكد من الوصول (لهذا ليس به Sequence Number – Ack - window) وهذا يفيد فى سرعة الارسال وهى تستخدم فى المحادثات والبث التلفزيونى او الاذاعى على الانترنت .
- البورتات تم شرحها سابقا
- اما بخصوص ال Checksum فهى تقوم بإكتشاف الاخطاء الموجوده فى الهيدر وليس الداتا .
مصادر تم الاستعانة بها:-
شرخ كل من محمد سمير وياسر رمزى ومحمود سرحان
مدونة حواديت شبكات
http://support.microsoft.com
MCTS Self-Paced Training Kit ..Exam 70-642
يتبع ..............................
تعليقات 12
بالفعل سوف اضعها ولكن انتظر لو هناك اراء لكى اضيفها قبل وضع الملف
جميل جمــيل جميـــــــــــــــــــــــــــــــــــــــــل :)
عاش اهل الاردن
جزاك الله خير
couche reseau (internet)).j
couche materielle
شرحت الطبقات 3 و 4 فقط
إرسال تعليق
Cancel