Due righe cache_peer non significano «passa prima dal primo proxy, poi dal secondo». Definiscono peer che Squid può selezionare. Le richieste round-robin possono alternarsi tra i parent senza mai attraversarli entrambi.

Una rotta seriale è distribuita tra le istanze:

client → A → B → C → origin
  • A sceglie B come hop successivo.
  • B sceglie C.
  • C apre la connessione all'origine.

Ogni destinatario deve autorizzare il proprio peer immediatamente a valle. Ogni istanza necessita anche di una politica di accesso diretto compatibile se è vietato saltare il proprio hop successivo.

Nelle versioni che li supportano, cache_peer definisce un peer, cache_peer_access limita la selezione e never_direct vieta l'inoltro diretto per il traffico selezionato. La sola definizione del peer non stabilisce nessuna delle altre due politiche.

Verifica la decisione a ogni hop. Il log di A che seleziona B non può provare che B abbia selezionato C. Un hit nella cache locale può evitare del tutto una nuova connessione a monte, quindi l'assenza di traffico parent per una richiesta non è prova sufficiente di una catena interrotta.

Articoli correlati