Squid พาเรนต์หลายตัวเป็นทางเลือก ไม่ใช่ห่วงโซ่แบบต่อเนื่อง
รายการ peer ให้ทางเลือกแก่ Squid เส้นทางต่อเนื่อง A → B → C ต้องเลือกฮอปถัดไปในแต่ละอินสแตนซ์ที่ส่งต่อ
สองบรรทัด cache_peer ไม่ได้หมายความว่า “ผ่านพร็อกซีตัวแรกก่อน แล้วจึงผ่านตัวที่สอง” แต่กำหนด peer ที่ 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 การชนแคชภายในเครื่องอาจหลีกเลี่ยงการเชื่อมต่อต้นน้ำใหม่ได้ทั้งหมด ดังนั้นการไม่มีทราฟฟิกพาเรนต์สำหรับคำขอหนึ่งรายการจึงไม่ใช่หลักฐานที่เพียงพอว่าห่วงโซ่ขาด