مدونة هشام حسين


ما هي البرتوكولات وعلاقة الشبكات بالبرمجة

هشام حسين | Hesham Hussain


11/12/2021 القراءات: 1067  


كان جيلي محظوظ في عالم التقنية فمعه ظهر الدوس DOS على يد بيل جيتس، وبالمناسبة فهو ليس من قام ببرمجته بل فقط اشتراه من تيم باترسون، بعد ذلك قام بيل بتطويره إلى الويندوز بعد تأسيس مايكروسوفت. كما ظهر مع جيلي الهاتف المحمول وبدايته كانت بما يسمى البيجر Pager، ومع هذا الجيل أيضا بدأ الذكاء الاصطناعي مع ظهور Deep Blue، والآن بدأ ظهور واجهة الدماغ والحاسوب BCI والخطر الكبير من تحقق فيلم الماتريكس ليس كما هو تماما ولكن بشكل مشابه له، ولكن ما أود التركيز عليه في هذا المقال هو الشبكات والبرتكولات وعلاقتهما بالبرمجة. كانت بدايات معرفتي للشبكات منذ سنة 2003 وسبقها معرفة البرمجة، كانت الشبكات Networks ترتكز على ما يسمى OSI Model، وكانت دراسته مشكلة بالنسبة لي فقد كان يتم شرح أن الشبكات تعتمد على سبع طبقات، ولم أكن أفهم ما هي هذه الطبقات ولكن فقط كنت احفظ، ومع الوقت بدأت أفهم ما فائدتها، فقد كانت تعبر عن البرتوكولات المستخدمة في الشبكات، البرتوكولات بمفهومه العام هو عبارة عن مجموعة من القواعد المتبعة والثابتة لإنجاز عمل ما. البرتكول في مجال الحاسبات والشبكات له أمثلة كثيرة نسمع عنها مثل HTTPS و FTP وهما في منتهى الشهرة ويستخدمان لعملية نقل البيانات على الإنترنت وهما يخضعان لأحد الطبقات السبعة، يوجد أيضا برتكولي TCP و IP وهما مرتبطان ويخضعان لطبقة أخرى من طبقات الشبكات السبعةـ ولفهم البرتوكولات والطبقات يجب معرفة بداية الموضوع. تبدأ القصة عندما يتم إرسال بيانات من حاسوب إلى حاسوب آخر عبر الأجهزة المتعددة على شبكة الإنترنت، فعندما تكون في بيتك ولديك ADSL متصل بحاسبك فسوف تقوم في البداية مثلا من خلال برنامج شات بكتابة بعض الكلمات والجمل ثم تضغط ارسال، هذه الجمل يتم تحويلها إلى قطع صغيرة من البيانات تسمى بكت Packets، كل بكت صغير له بداية يوضع فيه عنوان المرسل له، تماما كأنك ترسل خطابا بريدي وتكتب عنوان المرسل له، ولكن لماذا يتم تقسيم البيانات إلى قطع صغيرة؟ السبب أنه لا يمكن فتح قناة إتصال دائمة ما بينك وبين صديقك في الطرف الآخر من الكرة الأرضية وإلا لانتظر كل واحد منا حتى تفرغ من الحديث ثم يقوم التالي بالتواصل مع من يريد، في عالم الاتصالات تشبه هذه العملية الـ Sampling وهي عملية تقطيع الإشارة وفي البيانات يمكن تقطيع البيانات إلى أجزاء كمثال كل كلمة في بكت منفرد له رأس Header يحتوي على العديد من المعلومات منها العنوان المرسل له ووضع الكلمة في الجملة وغيرها من المعلومات. يتم الإرسال بداية من المتصفح الذي يستخدم برتكول HTTPS وهو برتكول يتم وضعه من ضمن طبقة تسمى الطبقة السابعة Application Layer، وفيها يتم وضع رأس للبكت ثم ينتقل البكت من خلال برتكول آخر في الطبقة السادسة Presentation Layer ثم من خلال الطبقة الخامسة Session وبرتكولاتها ثم الرابعة Transport وبرتكولاتها واشهرها TCP و UDP ثم الثالثة Network واشهر برتكولاتها IP ثم طبقة Data Link Layer ثم طبقة واحد physical Layer، في كل طبقة يتم إضافة رأس جديدة بمعلومات جديدة للبكت Packet حتى يمكن الوصول إلى الهدف وهو الحاسوب الآخر لاحظ البكت يمر من خلال روتر Router وهو يخضع للبرتكولات الطبقة الثالثة ومن خلال سويتش أو مبدل Switch وهو يخضع لبرتكولات الطبقة الثانية وهكذا. ولكن ما علاقة البرمجة بهذه البرتكولات؟ البرتكول ما هو إلى برنامج مكتوب بلغة برمجية، بدأت كتابة البرتوكولات بلغة السي وتطورت مع الوقت لكثير من اللغات البرمجية. ختاما، هذا مجرد تلخيص سريع للشبكات والبرمجة وبحتاج بالطبع للتوسع، فمعرفة الشبكات والبرمجة تحتاج إلى وقت وقراءة وتنفيذ وبالتوفيق لكم دائما.


برتكول، شبكات، حاسبات، برمجة


يجب تسجيل الدخول للمشاركة في اثراء الموضوع