Thaiadmin

icp_port ใน squid หมายถึง port อะไรครับ

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ alcapon

  • *
  • 39
  • 0
  • TH@min Membership
icp_port ใน squid หมายถึง port อะไรครับ
« เมื่อ: 4 มิถุนายน 2006, 23:21:36 »
icp_port ใน squid หมายถึง port อะไรครับ อ่านในเวบ squid แล้วยังงงอะครับ
กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ
อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ
จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน
ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย

nip

Re: icp_port ใน squid หมายถึง port อะไรครับ
« ตอบกลับ #1 เมื่อ: 5 มิถุนายน 2006, 09:08:46 »
icp_port ใน squid หมายถึง port อะไรครับ อ่านในเวบ squid แล้วยังงงอะครับ
ตัวแปล icp_port คือ port ที่เครื่อง cache server ใช้แลกข้อมูลระหว่างกัน ค่า 31130 เป็นค่ามาตรฐาน
อ้างถึง
ICP คืออะไร
ICP (Internet Cache Protocol) เป็นโปรโตคอลที่ใช้สำหรับการสื่อสารระหว่าง web caches เป็น lightweight protocol ที่อยู่ในส่วนบนของ UDP  โดย ICP จะถูกใช้เพื่อหาตำแหน่งของ web object ใน cache ที่อยู่ข้างเคียง (neighboring caches)  การถ่ายโอน object ระหว่าง cache ส่วนใหญ่จะทำด้วย TCP-based HTTP protocol แต่การตัดสินว่าจะดึง object จากที่ไหนนั้นต้องใช้วิธีการที่ง่ายและรวดเร็ว

ใน cache หนึ่ง ๆ การหาตำแหน่งที่ดีที่สุดที่จะดาวน์โหลด object  ตัว cache จะส่ง ICP request packet ไปยัง sibling cache และ parent cache ทุกตัว แล้ว cache เหล่านี้ก็จะ ส่ง ICP ตอบกลับมาด้วย HIT code หรือ MISS code ซึ่ง HIT หมายถึง cache ตัวนี้มี object และตกลงที่จะให้บริการ  ส่วน MISS หมายถึงไม่มี object ที่ต้องการ  ดังนั้น cache ตัวที่เป็นผู้ร้องขอก็จะรูว่าใครมี object ที่ตัวเองต้องการและมันจะเอาข้อมูลนี้รวมกับตัวประกอบอื่น ๆ เช่น  round-trip time หรือการตอบสนองในแต่ละครั้ง  เพื่อที่จะเลือกได้ว่าจะร้องขอผ่าน HTTP ไปยัง cache ตัวไหน  ถ้า cache ตอบกลับมาเป็น MISS packet ตัว cache ที่เป็นผู้ร้องขอก็จะทำการร้องขอ document จาก parent cache  กระบวนการร้องขอและตอบกลับ ICP (ICP request/reply exchange) ควรจะเกิดขึ้นในช่วงสั้น ๆ มิฉะนั้นจะทำให้เพิ่มเวลาแฝง (latency time) ให้กับ browser แต่เวลาตรงนี้ผู้ใช้มักจะไม่สามารถสังเกตได้

ถ้า object ที่ได้ร้องขอผ่าน ICP มีขนาดเล็กเพียงพอ object นี้ก็สามารถถูกรวมอยู่ใน  ICP HIT reply  เหมือนกับ HTTP redirect แต่การทำแบบนี้ไม่ค่อยมีกันมากนัก  การใช้งาน ICP ที่กล่าวมานี้จะใช้เมื่อระบบเครือข่ายเป็นแบบ multi-level cache ที่ประกอบด้วย sibling cache และ parent cache เท่านั้น  ซึ่งการใช้งาน ICP ไม่มีความจำเป็นสำหรับเครือข่ายในรูปที่ 1 และ 2  ในกรณีที่มี cache เพียงตัวเดียวหรือในกรณีที่ cache มีการร้องขอ document จาก higher-lever cache ที่เหมือนกัน  สิ่งที่ ICP ไม่ต้องการก็เฉพาะ overhead เท่านั้น

การทำ Multi-level Web Caching บน Squid
บน Squid เราสามารถทำ Multi-level Web Caching ได้ด้วยการคอนฟิกที่ไฟล์ /etc/squid/squid.conf  โดยค่าที่ต้องเซ็ตมีชื่อว่า "cache_peer" ซึ่ง การทำ cache_peer มี 2 แบบคือ

          1. Parent Cache เป็น cache ที่สามารถ get เอกสารจาก cache ตัวอื่นที่อยู่ในลำดับสูงกว่าได้หรือสามารถ get เอกสารจากต้นทาง (source) ได้  ซึ่งการที่จะดึงจาก cache ตัวไหนหรือจาก source จริง  ๆ เลยหรือเปล่านั้นจะขึ้นอยู่กับว่าเครือข่ายมี Parent cache กี่ตัว หรือมี cache ที่อยู่ในระดับเดียวกัน (neighbor) หรือไม่  การใช้งาน cache ชนิดนี้ควรจะถูกใช้เมื่อไม่มีโอกาสที่จะ get เอกสารจาก cache ที่อยู่ในระดับเดียวกันได้แล้ว

          2. Sibling Cache (อาจจะเรียกว่า neighbor) เป็น cache ที่ให้บริการเฉพาะเอกสารที่มีอยู่ในเครื่องตัวเองเท่านั้น นั่นคือ ถ้าเอกสารที่ถูกร้องขอไม่มีในเครื่องตังเองก็ใช้ไม่สามารถให้บริการได้

โดยรูปแบบการใช้คำสั่ง cache_peer จะเป็นดังนี้:
cache_peer  hostname   type   http_port    icp_port

ตัวอย่างการใช้งานเช่น

cache_peer    parent.foo.net     parent   3128    3130    [proxy-only]
cache_peer    sib1.foo.net         sibling   3128    3130    [proxy-only]
cache_peer    sib2.foo.net         sibling   3128    3130    [proxy-only]

อ้างถึง
http://www.david-guerrero.com/papers/squid/squid.htm