Mai mulți părinți Squid sunt alternative, nu un lanț serial
O listă de peer îi oferă Squid opțiuni. O rută serială A → B → C necesită selectarea următorului salt la fiecare instanță de redirecționare.
Două linii cache_peer nu înseamnă „treci mai întâi prin primul proxy, apoi prin al doilea”. Ele definesc peers pe care Squid îi poate selecta. Cererile round-robin pot alterna între părinți fără a trece vreodată prin ambele.
O rută serială este distribuită între instanțe:
client → A → B → C → origin
- A alege B ca următorul său salt.
- B alege C.
- C deschide conexiunea către origine.
Fiecare receptor trebuie să autorizeze peer-ul său imediat din aval. Fiecare instanță are nevoie și de o politică de acces direct compatibilă dacă este interzis să-și sară următorul salt.
În versiunile care le acceptă, cache_peer definește un peer, cache_peer_access limitează selecția, iar never_direct interzice redirecționarea directă pentru traficul selectat. Doar definirea peer-ului nu stabilește niciuna dintre celelalte două politici.
Verificați decizia la fiecare salt. Jurnalul lui A care selectează B nu poate dovedi că B a selectat C. O lovitură în cache-ul local poate evita complet o nouă conexiune în amonte, așa că absența traficului părinte pentru o cerere nu este o dovadă suficientă a unui lanț rupt.