010 : BGP Route Reflectors

iBGP มีกลไกในการป้องกัน Loop ที่จะเกิดขึ้น โดยมีกฎอยู่ว่า หากได้รับ Routing Information มาจาก IBGP ด้วยกัน จะไม่ทำการประกาศข้อมูลนี้ต่อให้กับ Router iBGP ตัวอื่นๆ

IBGP เลยจำเป็นต้องการ full mesh ไปยังระหว่าง BGP-speaking routers ทุกๆตัว
-จำนวน Sessions ของ TCP ก็จะเยอะมาก
-การ Update Routing อาจจะซ้ำกันโดยไม่จำเป็น
-การตั้งค่า Configuration จะเยอะมาก เพราะต้องตั้งค่า Peer ไปหา IBGP Router ทุกๆตัว

Solutions:
-ใช้ Route reflectors เพื่อแก้ไขกฎ IBGP split-horizon
-ใช้ BGP confederations เพื่อแก้ไข IBGP AS path processing

Classic IBGP:
ด้วยกฎของ Split-Horizon สำหรับ Route ที่รับมาจาก IBGP peer จะไม่ถูกเผยแพร่ไปยัง IBGP peer ตัวอื่นๆ Full mesh สำหรับ IBGP peers จึงเป็นสิ่งที่ต้องนำมาใช้ เพื่อให้ Route ถูกเผยแพร่ถึงกันทุกๆตัว

Route reflector จะสามารถเผยแพร่ Route ของ IBGP ไปยัง IBGP อื่นๆได้ ดังนั้น Full mesh สำหรับ IBGP peers จึงไม่จำเป็นอีกต่อไป ถ้าหากเรามี Route reflector ซึ่ง Route reflector จะมีทั้ง Network ของ Route Reflector และ Route ของ Client

Route reflectors
-Router ใน iBGP ต่างๆจะถูกแบ่งออกเป็น Route Reflector, Route Reflector Client และ Non-Client
-สำหรับ Routing Information จาก eBGP ที่ได้รับมาจาก Client จะถูกส่งไปยัง Route Reflector และก็จะถูกสะท้อน หรือ Reflect โดย Route Reflector ไปยัง Client อื่นๆ รวมทั้ง Non-Client ด้วย
-หาก Route Reflector ได้รับ Routing Information มาจากเพื่อนบ้านที่เป็น Non-Client ก็จะสามารถส่งต่อได้เฉพาะ Client ของตัวเอง และ เพื่อนบ้านที่เป็น eBGP Peer เท่านั้น ไม่ส่งต่อไปยัง Non-Client อื่นๆ ด้วยกฎในการป้องกันลูปของ iBGP
-Client หากได้รับ Routing Information มาจาก iBGP จะสามารถส่งให้ eBGP เท่านั้น

Redundant Route Reflectors
ถ้าหาก Client มีการสร้าง Session ของ IBGP ไปยัง Route Reflector เพียงตัวเดียว เมื่อ Route Reflector Fails ลงก็ไม่สามารถมารถ Update อะไรออกไปได้ Client จึงควรจะสร้าง Session ของ IBGP ไปยัง Route Reflector อย่างน้อย 2 ตัว และทั้ง 2 Device (Route Reflector) และ Link ที่เชื่อมต่อกันก็ควรอยู่คนละ Physical กัน

การมี Redundant reflectors จะมาช่วยในเรื่องของ high-availability ซึ่งจะต้องตั้งค่า Clusters เพิ่มภายในตัว Route Reflector เพื่อป้องกัน Routing Loop เกิดขึ้นระหว่าง Route Reflectors

Route Reflector ในแต่ละกลุ่ม Cluster จะมี cluster ID ที่แตกต่างกัน เมื่อ Route ถูก Reflected ออกไป จะมีค่า cluster ID ถูกเพิ่มเข้าไปด้วยใน BGP attribute หากได้รับ Route ที่มี cluster ID ในกลุ่มของตัวเอง เพื่อป้องกัน Route Loop ที่จะเกิดขึ้น Route นี้ก็จะไม่ถูก Reflected หรือสะท้อนออกไป

  • Facebook
  • Twitter
  • YouTube
  • Tumblr Social Icon
  • Instagram

Tel. 087-449-6954, 094-417-8544 | Email : sale@9huatraining.com | Facebook : 9HUA Training