سؤال

لقد أجريت مناقشة مع أحد المطورين في وقت سابق اليوم بشأن تحديد حزم TCP التي تخرج على واجهة معينة بنفس الحمولة.أخبرني أن احتمال العثور على حزمة TCP ذات حمولة متساوية (حتى لو تم إرسال نفس البيانات عدة مرات) منخفض جدًا نظرًا للطريقة التي يتم بها إنشاء حزم TCP على مستوى النظام.كنت أدرك أن هذا قد يكون هو الحال بسبب إعدادات وحدة الإرسال الكبرى (MTU) للنظام (عادةً 1500 بايت) وما إلى ذلك، ولكن ما نوع الإحصائيات الاحتمالية التي أنظر إليها حقًا؟هل هناك أي بروتوكولات محددة من شأنها أن تسهل تحديد الحمولات المطابقة؟

هل كانت مفيدة؟

المحلول

يحرر:آسف، فكرتي الأصلية كانت سخيفة.

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

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

نصائح أخرى

إن البروتوكول الذي يعمل عبر TCP هو الذي يحدد تفرد الحمولة، وليس بروتوكول TCP نفسه.

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

وبالمثل، إذا تم إنشاء الاستجابة ديناميكيًا، فقد تحتوي على رأس تاريخ:

تاريخ:الجمعة 12 سبتمبر 2008 الساعة 10:44:27 بتوقيت جرينتش

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

ضع في اعتبارك أن الحزم الفعلية ستكون مختلفة بسبب اختلاف أرقام التسلسل، والتي من المفترض أن تكون متزايدة وعشوائية زائفة.

كريس على حق.وبشكل أكثر تحديدًا، يجب أن تكون قطعتان أو ثلاث معلومات في رأس الحزمة مختلفة:

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

من المحتمل أن يكون إرسال نفس PAYLOAD أمرًا شائعًا إلى حد ما (خاصة إذا كنت تقوم بتشغيل نوع من خدمة الشبكة).إذا كنت تقصد إرسال نفس مقطع TCP (الرأس وكل شيء) أو حزمة الشبكة بأكملها (IP وما فوق)، فسيتم تقليل الاحتمال بشكل كبير.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top