Squid 7 half_closed_clients: διαχείριση του κλεισίματος της πλευράς εγγραφής του πελάτη
Ερμηνεύστε ένα πρώιμο EOF από πελάτη δοκιμής ακατέργαστου TCP με την πολιτική half_closed_clients του Squid 7.
Ένας πελάτης TCP μπορεί να ολοκληρώσει την αποστολή ενός αιτήματος και να κλείσει την πλευρά εγγραφής του ενώ συνεχίζει να περιμένει την απάντηση. Η πολιτική του Squid για αυτή την κατάσταση έχει σημασία όταν συγκρίνετε μια μικρή δοκιμή ακατέργαστου TCP με έναν πελάτη HTTP.
Για το Squid 7, η τεκμηριωμένη προεπιλογή είναι:
half_closed_clients off
Με αυτή την πολιτική, το Squid κλείνει τη σύνδεση του πελάτη όταν μια ανάγνωση αναφέρει ότι δεν φτάνουν άλλα δεδομένα. Με ενεργή την επιλογή, μπορεί να κρατήσει τη σύνδεση έως ότου η ανάγνωση ή η εγγραφή συναντήσει σφάλμα. Η τεκμηρίωση συνιστά την προεπιλεγμένη πολιτική off για τη συνήθη λειτουργία forward proxy.
Καταγράψτε πότε ο πελάτης δοκιμής σηματοδοτεί το τέλος της εισόδου. Ένας αγωγός που φτάνει σε EOF του stdin μπορεί να συμπεριφερθεί διαφορετικά από έναν πελάτη που κρατά ανοιχτή την πλευρά αποστολής του ενώ διαβάζει την απάντηση, ακόμη και όταν και οι δύο έστειλαν τα ίδια byte αιτήματος HTTP.
Αν ο πελάτης δοκιμής τερματιστεί εντελώς, δεν μπορεί να διαβάσει μια απάντηση που φτάνει αργότερα. Μια ρύθμιση μισού κλεισίματος στην πλευρά του διακομιστή δεν μπορεί να αλλάξει τη διάρκεια ζωής αυτής της διεργασίας πελάτη.
Επιλέξτε μαζί τη συμπεριφορά EOF του πελάτη και την πολιτική του proxy για τη δοκιμή που θέλετε. Η πολιτική μισού κλεισίματος προϋποθέτει επίσης μήνυμα HTTP με έγκυρη κατάτμηση· δεν παρέχει σώμα αιτήματος που λείπει ούτε επισκευάζει ένα ημιτελές μπλοκ κεφαλίδων.