Squid 7 وhalf_closed_clients: التعامل مع إغلاق جهة الكتابة لدى العميل
فسّر EOF المبكر من عميل TCP خام باستخدام سياسة half_closed_clients في Squid 7.
يمكن لعميل TCP أن ينتهي من إرسال الطلب ويغلق جهة الكتابة لديه مع استمراره في انتظار الرد. سياسة Squid لهذه الحالة مهمة عند مقارنة اختبار TCP خام صغير بعميل HTTP.
بالنسبة إلى Squid 7، القيمة الافتراضية الموثقة هي:
half_closed_clients off
بهذه السياسة، يغلق Squid اتصال العميل عندما تُبلغ عملية القراءة عن عدم وصول مزيد من البيانات. وعند تفعيل الخيار، يمكنه إبقاء الاتصال حتى تصادف القراءة أو الكتابة خطأ. وتوصي الوثائق بسياسة الإيقاف الافتراضية للتشغيل العادي للوكيل الأمامي.
سجّل متى يشير عميل الاختبار إلى نهاية الإدخال. قد يتصرف خط أنابيب يصل إلى EOF في stdin بشكل مختلف عن عميل يبقي جهة الإرسال مفتوحة أثناء قراءة الرد، حتى لو أرسل كلاهما البايتات نفسها لطلب HTTP.
إذا انتهى عميل الاختبار تمامًا، فلن يستطيع قراءة رد يصل بعد ذلك. ولا يمكن لإعداد الإغلاق النصفي على جانب الخادم أن يغيّر عمر تلك العملية العميلة.
اختر سلوك EOF لدى العميل وسياسة الوكيل معًا للاختبار المقصود. تفترض سياسة الإغلاق النصفي أيضًا رسالة HTTP بتأطير صالح؛ فهي لا توفر جسم طلب ناقصًا ولا تصلح كتلة رؤوس غير مكتملة.