כמה אבות Squid הם חלופות, לא שרשרת סדרתית
רשימת peer נותנת ל-Squid אפשרויות. מסלול סדרתי A → B → C דורש בחירת הקפיצה הבאה בכל מופע העברה.
שתי שורות cache_peer אינן אומרות «עבור קודם דרך ה-proxy הראשון ואחר כך דרך השני». הן מגדירות peers ש-Squid יכול לבחור. בקשות round-robin יכולות להתחלף בין האבות בלי לעבור דרך שניהם.
מסלול סדרתי מתחלק בין המופעים:
client → A → B → C → origin
- A בוחר את B כקפיצה הבאה שלו.
- B בוחר את C.
- C פותח את החיבור למקור.
כל מקבל חייב להרשות את ה-peer הזורם מטה שלידו. כל מופע זקוק גם למדיניות גישה ישירה תואמת אם אסור לדלג על הקפיצה הבאה שלו.
בגרסאות שתומכות בהן, cache_peer מגדיר peer, cache_peer_access מגביל את הבחירה ו-never_direct אוסר העברה ישירה עבור תעבורה נבחרת. הגדרת peer לבדה אינה מבססת אף אחת משתי המדיניות האחרות.
אמת את ההחלטה בכל קפיצה. היומן של A שבוחר את B אינו יכול להוכיח ש-B בחר את C. פגיעת מטמון מקומי יכולה למנוע לחלוטין חיבור במעלה הזרם, לכן היעדר תעבורת אב לבקשה אחת אינו הוכחה מספקת לשרשרת שבורה.