أساسيات الشبكات

أساسيات برمجة الشبكات: بروتوكولات TCP و UDP والمنافذ.

تتصل أجهزة الكمبيوتر التي تعمل على الإنترنت ببعضها البعض عن طريق الشبكات باستخدام إما بروتوكول التحكم في الإرسال (TCP) أو بروتوكول مخطط بيانات المستخدم (UDP).

عندما تكتب برامج Java التي تتصل عبر الشبكة، فأنت تقوم بالبرمجة في طبقة التطبيق من نموذج الشبكات OSI. عادةً، لا داعي للقلق بشأن طبقات TCP و UDP. بدلاً من ذلك، يمكنك استخدام الفئات الموجودة في حزمة java.net.

حيث توفر هذه الفئات اتصال شبكة مستقل عن النظام. ومع ذلك، لتحديد فئات Java التي يجب أن تستخدمها برامجك، فأنت بحاجة إلى فهم كيفية اختلاف TCP و UDP.


بروتوكول TCP.

بروتوكول التحكم في الإرسال (TCP – Transmission Control Protocol) هو بروتوكول قائم على الاتصال يوفر تدفقًا موثوقًا للبيانات بين جهازي كمبيوتر.

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

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

يعد بروتوكول نقل النص التشعبي (HTTP) وبروتوكول نقل الملفات (FTP) و Telnet كلها أمثلة على التطبيقات التي تتطلب قناة اتصال موثوقة. يعد الترتيب الذي يتم به إرسال البيانات واستلامها عبر الشبكة أمرًا بالغ الأهمية لنجاح هذه التطبيقات.

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


بروتوكول UDP.

بروتوكول مخطط بيانات المستخدم (UDP – User Datagram Protocol) هو بروتوكول يرسل حزم بيانات مستقلة، تسمى مخططات البيانات، من كمبيوتر إلى آخر خلال الشبكات دون أي ضمانات حول الوصول.

لا يعتمد بروتوكول UDP على الاتصال مثل بروتوكول TCP. يوفر بروتوكول UDP اتصالاً غير مضمون بين تطبيقين على الشبكة. لا يعتمد UDP على الاتصال مثل TCP. بدلاً من ذلك، فإنه يرسل حزم بيانات مستقلة، تسمى مخططات البيانات، من تطبيق إلى آخر.

يشبه إرسال مخططات البيانات إلى حد كبير إرسال رسالة عبر الخدمة البريدية: ترتيب التسليم ليس مهمًا وغير مضمون، وكل رسالة مستقلة عن أي رسالة أخرى.

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

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

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

إقرأ أيضاً… برمجة الشبكات باستخدام الجافا.


المنافذ Ports.

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

البيانات المنقولة عبر الإنترنت تكون مصحوبة بمعلومات عنونة تحدد الكمبيوتر والمنفذ المخصص له. يتم التعرف على الكمبيوتر من خلال عنوان IP الخاص به 32 بت، والذي يستخدمه IP لتوصيل البيانات إلى الكمبيوتر الصحيح على الشبكات. يتم تحديد المنافذ برقم 16 بت، والذي يستخدمه TCP و UDP لتسليم البيانات إلى التطبيق الصحيح.

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

مقالات مرتبطة...

  • ما هو موزع (USB Hub)؟

    منذ منتصف التسعينيات، شهدنا ولادة ونمو تقنية ربط تسمى Universal Serial Bus (USB)، تم تصميمها في الأصل لتوصيل أجهزة الكمبيوتر ومعدات الاتصالات، وأصبحت الوسيلة الأساسية لتوصيل مجموعة كاملة من الأجهزة الأخرى وقدم مساهمات كبيرة في عالم تكنولوجيا المعلومات اليوم، وعندما لا تكون كافية، يمكنك الآن استخدام موزع USB Hub. إن العدد الهائل من منتجات USB…

  • أمازون AWS: العملاق السحابي الذي غيّر وجه التكنولوجيا

    في العقدين الأخيرين، أصبحت الخدمات السحابية محور كل تطور تقني. ومن بين الشركات الرائدة في هذا المجال، تبرز أمازون AWS (Amazon Web Services) كأكبر مزود للخدمات السحابية في العالم. مقدمة مجموعة واسعة من الخدمات التي تساعد الشركات والأفراد على إدارة بياناتهم، تشغيل التطبيقات، وتحقيق التوسع السريع دون الحاجة إلى بنية تحتية تقليدية مكلفة. في هذا…

  • ما هي أسباب مواء القطط؟

    المواء عند القطط هو شكل من أشكال التواصل، هذا ما تعنيه قطتك بالمواء، لكن ما هي أسباب مواء القطط؟ وما الذي يمكن أن تطلبه منك عن طريق فعل ذلك؟ نحن هنا لمساعدتك في ترجمة لغة القطط السرية. تابع القراءة لمعرفة ما يقوله خبراء الحيوانات الأليفة هو أهم أسباب مواء القطط. أسباب مواء القطط؟ ماذا يعني…

  • ما هو المقصود بـ(بيانات التدريب)؟

    بيانات التدريب هي مجموعة بيانات كبيرة للغاية يتم استخدامها لتعليم نموذج التعلم الآلي. يتم استخدام بيانات التدريب لتعليم نماذج التنبؤ التي تستخدم خوارزميات التعلم الآلي كيفية استخراج الميزات ذات الصلة بأهداف عمل محددة. بالنسبة لنماذج التعلم الآلي الخاضعة للإشراف، يتم تصنيفه هذه البيانات. لا يتم تصنيف البيانات المستخدمة لتدريب نماذج التعلم الآلي غير الخاضعة للإشراف….

  • لماذا يكون البحر مالح؟

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

  • ما هو المحول الرقمي التناظري (DAC)؟

    سنتعرف على المحول الرقمي إلى التناظري ويُنطق غالبًا (DAC). نظرًا لأن أجهزة الكمبيوتر تتعرف فقط على المعلومات الرقمية، فإن المخرجات التي تنتجها أجهزة الكمبيوتر تكون عادةً بتنسيق رقمي. ومع ذلك، فإن بعض أجهزة الإخراج تقبل فقط الإدخال التناظري، مما يعني أنه يجب استخدام محول رقمي إلى تناظري، أو DAC. الاستخدام الأكثر شيوعًا لـ DAC هو…