ป้องกัน LOOP บน LAYER 2 ด้วย SPANNING-TREE PROTOCOL (STP)

Loop คือ สถานะที่อุปกรณ์ส่งข้อมูลออกไปบนระบบ แล้วเกิดการวนแบบไม่มีที่สิ้นสุด
เมื่อมีการต่อใช้งานระบบเครือข่ายผ่าน Switch โดยมีเส้นทางเดียวจากต้นทางไปยังปลายทาง  ถ้า Link ระหว่าง Switch ทั้งสองตัวเกิดมีปัญหาขึ้นมา ก็ทำให้ระบบไม่สามารถใช้งานได้ ดังรูปด้านล่าง
เราจึงต้องมีการเพิ่ม Switch ขึ้นมาอีกหนึ่งตัว เพื่อให้มีเส้นทางสำรอง เมื่อ Link ระหว่าง Switch เดิมมีปัญหา ระบบจะยังสามารถใช้งานต่อได้ ผ่านไปทาง Switch อีกตัว ดังรูปด้านล่างนี้
แต่ในสภาวะปกติ ที่ Link ไม่มีปัญหา Switch ทั้ง 3 ตัว ต่อกันแบบ Loop ทำให้ข้อมูลที่ส่งไป เกิดการส่งวนไปวนมาได้ แบบไม่มีที่สิ้นสุด ดังรูปด้านล่างนี้ เราเรียกปัญหานี้ว่า Layer 2 Loop
เมื่อมี Loop จะทำให้เกิดปัญหา ที่เกิดขึ้นตามมา 3 อย่างหลักๆ คือ


1.Broadcast Storm โดยปกติบน Layer 2 เอง Switch จะมีการ Broadcast อยู่แล้ว คือ flood ออกทุกพอร์ต ดังนั้น เมื่อเกิด Loop ขึ้น broadcast traffic จะถูกส่งต่อวนไปเรื่อยๆ แบบไม่มีที่สิ้นสุด เกิดเป็นพายุ broadcast ขึ้น ทำให้ CPU ของ Switch นั้นพุ่งขึ้นสูงและทำงานไม่ได้ในที่สุด

2.Multiple Frame Transmissions คือการที่เครื่องปลายทางได้รับข้อมูล (frame) เข้ามาซ้ำ ทำให้เสียเวลาในการประมวลผลไปอีก

3.MAC Database Instability เมื่อเกิด Loop ทำให้ Switch ได้รับ MAC address ของอุปกรณ์เดียว เข้ามาหลายทาง ทำให้ Switch เกิดการเรียนรู้ MAC address ที่ผิดเพี้ยนไปในการส่งต่อ

ซึ่งบน Layer 3 จะมีค่า TTL เพื่อไว้ป้องกัน Loop ได้ แต่บน Layer 2 ไม่มีค่า TTL เหมือน Layer 3 จึงต้องมี protocol เข้ามาช่วยในการป้องกัน Loop ที่เกิดขึ้นบน Layer 2 นั่นคือ Spanning-Tree Protocol (STP)

Spanning-Tree Protocol (STP) เป็น protocol ที่ใช้ป้องกัน Loop บน Layer 2 ตามมาตรฐานกลาง IEEE 802.1D โดยมันจะทำการเปลี่ยนสถานะของ port นึง ให้เป็น blocking เพื่อไม่ให้รับส่งข้อมูลได้ชั่วคราว จนกว่าเส้นทางหลักที่ใช้งานจะมีปัญหา port ? blocking ไว้ ก็จะกลับขึ้นมาใช้งานและส่งข้อมูลได้

อ้างอิงที่มา :
http://netprime-system.com/stp-part1/

แชร์บทความ / ข่าวสาร