بروتوكول مخطط المستخدم

فهم UDP وكيف يكون مختلفًا عن TCP

تم إدخال بروتوكول مخطط بيانات المستخدم (UDP) في عام 1980 وهو واحد من أقدم بروتوكولات الشبكات الموجودة. إنه بروتوكول طبقة نقل OSI بسيط لتطبيقات شبكة العميل / الخادم ، يعتمد على بروتوكول الإنترنت (IP) ، وهو البديل الرئيسي لبرنامج التعاون الفني .

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

غالبًا ما يُستخدم بروتوكول UDP (يشار إليه أحيانًا بـ UDP / IP) في تطبيقات مؤتمرات الفيديو أو ألعاب الكمبيوتر المصممة خصيصًا للأداء في الوقت الفعلي. لتحقيق أداء أعلى ، يسمح البروتوكول بإسقاط الحزم الفردية (بدون إعادة المحاولة) واستلام حزم UDP بترتيب مختلف عن تلك التي تم إرسالها ، وفقًا لما يمليه التطبيق.

تسمح طريقة الإرسال هذه ، عند مقارنتها بـ TCP ، بتخفيض حجم البيانات والتأخير. نظرًا لأنه يتم إرسال الحزم بغض النظر عن ذلك ، ولا يوجد أي خطأ في التحقق ، فإن ذلك يؤدي إلى استخدام نطاق ترددي أقل.

هل UDP أفضل من TCP؟

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

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

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

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

كل من TCP و UDP في الطبقة 4 من نموذج OSI والعمل مع خدمات مثل TFTP و RTSP و DNS .

UDP Datagrams

تعمل حركة مرور UDP من خلال ما يسمى بـ datagrams ، مع كل مخطط بيانات يتكون من وحدة رسائل مفردة. يتم تخزين تفاصيل الرأس في الثمانية البايتات الأولى ، ولكن الباقي هو ما يحمل الرسالة الفعلية.

كل جزء من رأس مخطط بيانات UDP ، المسرود هنا ، هو وحدتي بايت :

تسمح أرقام منافذ UDP بتطبيقات مختلفة للحفاظ على قنواتها الخاصة للبيانات ، على غرار TCP. رؤوس منفذ UDP هي وحدتا بايت؛ لذلك ، تتراوح أرقام منافذ UDP الصالحة من 0 إلى 65535.

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

يختلف حجم مخططات البيانات وفقًا لبيئة التشغيل ، ولكن يبلغ الحد الأقصى لها 65535 بايت.

تعمل مخرجات UDP على حماية بيانات الرسائل من العبث. تمثل قيمة المجموع الاختباري تشفيرًا لبيانات مخطط البيانات المحسوبة أولاً بواسطة المرسل ومن قبل المستقبِل. في حالة تلاعب أو تلف وحدة بيانات فردية أثناء الإرسال ، يكتشف بروتوكول UDP عدم تطابق حساب المجموع الاختباري.

في UDP ، يكون checksoging اختياريًا ، على عكس TCP حيث تكون checksums إلزامية.