ดังนั้นเริ่มต้นด้วยโทโพโลยีง่ายๆเพื่อแสดงให้เห็นว่า Spanning Tree ทำงานอย่างไร
ทำไมคุณต้องใช้ Spanning Tree ในเครือข่ายสวิตช์
ดังนั้นในโทโพโลยีนี้เรามีโฮสต์ A ที่เชื่อมต่อกับสวิตช์ 1 สวิตช์
1 ในทางกลับกันจะเชื่อมต่อกับสวิตช์ 2 และสวิตช์ 2 มีโฮสต์ B เชื่อมต่ออยู่
โทโพโลยีที่ง่ายมาก
ตอนนี้ถ้าลิงก์ของคุณลดลงระหว่างสวิตช์ 1 และสวิตช์ 2
โฮสต์ A จะไม่สามารถสื่อสารกับโฮสต์ B และกลับกันได้
ดังนั้นคุณอาจต้องการใช้ความซ้ำซ้อนบางอย่างระหว่างสวิตช์เหล่านั้นโดยเพิ่มลิงก์เพิ่มเติม
มันเยี่ยมมากเพราะตอนนี้คุณมีความซ้ำซ้อนของเครือข่ายในกรณีที่ลิงค์ใดลิงก์หนึ่งลงอย่างไรก็ตามแนะนำปัญหาในสภาพแวดล้อมของสวิตช์
ขอแนะนำโดยทั่วไปในเครือข่ายวันนี้ว่าคุณต้องใช้ความซ้ำซ้อนบางประเภท
ดังนั้นในตัวอย่างนี้คุณมี 2 ลิงค์ระหว่างสวิตช์ 2
ตัวของคุณ แต่นั่นจะแนะนำปัญหาเพิ่มเติมซึ่งเราจะพูดถึง
สมมติว่าสวิทช์เพิ่งบูทขึ้นและที่อยู่ MAC
หรือตารางลูกเบี้ยวของมันว่างเปล่าและเพื่อช่วยอธิบายปัญหานี้ให้เพิ่มตารางที่อยู่ MAC ลงในทอพอโลยีเพื่อให้คุณสามารถดูว่าตารางที่อยู่ MAC
นั้นถูกอัพเดตอย่างไรเมื่อการรับส่งข้อมูล
ถูกส่งจาก 1 โฮสต์ไปยังอีกโฮสต์หนึ่ง
ดังนั้นสมมติว่าในโทโพโลยีนี้สวิตช์เพิ่งเกิดขึ้นในคำอื่น ๆ พวกเขาได้รับการรีบูตหรือเปิดใช้งานและตารางที่อยู่ MAC
หรือตาราง
CAM นั้นว่างเปล่าบนสวิตช์ 2
ตอนนี้เมื่อ A ส่งเฟรมไปที่ B ที่อยู่ปลายทางบนเฟรมจะเป็น B และที่อยู่ต้นทางจะเป็น A
ดังนั้น
A กำลังส่งเฟรมไปที่ B และเมื่อมาถึงที่สวิตช์ 1
สวิตช์ 1 จะอ่านที่อยู่ MAC
ของเฟรม และสวิตช์จะเห็นว่าแหล่งที่อยู่คือ A
สวิตช์จะอัปเดตตารางที่อยู่ MAC เพื่อระบุว่า A สามารถพบได้บนพอร์ต 1
อย่างไรก็ตามที่อยู่ MAC B ไม่ได้อยู่ในตารางที่อยู่ MAC
ดังนั้นสวิตช์จะท่วมเฟรมออกจากพอร์ตทั้งหมดยกเว้นบนพอร์ตที่จะมาถึง
ดังนั้นในตัวอย่างนี้เฟรมจะออกพอร์ต 2 และพอร์ต 3
มันเป็นเช่นนั้นเพราะมันไม่รู้ว่าที่อยู่ MAC B อยู่ที่ไหน
ตอนนี้เห็นได้ชัดว่าเป็นโครงสร้างที่ง่ายมาก
ในตัวอย่างนี้เฟรมจะถูกส่งจาก 2 พอร์ตของสวิตช์เท่านั้น
อย่างไรก็ตามหากสวิตช์มีหลายพอร์ตสมมติว่า 96 พอร์ตเฟรมที่เข้ามาใน
1 พอร์ตสามารถทำซ้ำได้จาก 90 พอร์ตบนสวิตช์นั้น
นั่นเป็นการเพิ่มปริมาณการรับส่งข้อมูลในเครือข่ายของคุณอย่างมาก
ดังนั้นในโทโพโลยีนี้สวิตช์ 2 ทำอะไรกับเฟรมที่ได้รับในพอร์ต 1
ที่อยู่ต้นทางอีกครั้งคือ A และที่อยู่ปลายทางคือ B
สวิตช์จะทำอะไรกับเฟรม
ก่อนอื่นมันจะอัปเดตตารางที่อยู่ MAC เพื่อระบุว่า
A สามารถพบได้ในพอร์ต
1 แล้วมันจะทำให้เฟรมหลุดออกจากพอร์ตทั้งหมด
ดังนั้นพวกเขาจะล้นออกมาจากพอร์ต 2 เช่นเดียวกับพอร์ต 3
ดังนั้นในตัวอย่างนี้โฮสต์ B จะรับเฟรมจากโฮสต์ A
อย่างไรก็ตามสวิตช์ยังรับเฟรมที่พอร์ต 3 และนี่คือจุดที่ทำให้เกิดความสับสนเล็กน้อยโดยที่ A
จากสวิตช์มุมมองอยู่ที่พอร์ต
1 หรือ อยู่ที่พอร์ต 3 หรือไม่?
ดังนั้นในตัวอย่างนี้มันจะอัปเดตตารางที่อยู่ MAC เพื่อระบุว่า
A อยู่ในพอร์ต
3 เพราะเฟรมของพวกเขาในตัวอย่างของเรามาถึงพอร์ต 3 แต่หลังจากนั้นบนพอร์ต 1 ดังนั้นมันจะอัปเดตรายการตารางที่อยู่
MAC พร้อมใช้งานบนพอร์ต 3
แล้ว
สวิตช์จะทำให้เฟรมเต็มออกจากพอร์ตทุกพอร์ตดังนั้นมันจะท่วมกรอบออกจากพอร์ต 1 และพอร์ต
ดังนั้นตอนนี้โฮสต์ B ได้รับเฟรมสองครั้งจากเฟรมดั้งเดิมที่มาถึงพอร์ต
1 ที่ส่งไปยังโฮสต์ B และอันดับที่สองสำหรับเฟรมที่มาถึงพอร์ต
ดังนั้นสิ่งนี้อาจสร้างความสับสนให้กับอุปกรณ์ใด ๆ
เพราะพวกเขาได้รับเฟรมเดียวกันหลายครั้ง
ตารางที่อยู่ MAC กำลังเปลี่ยนเฟรมแรกที่มาถึงบนพอร์ต 1
อนุญาตให้สวิตช์นี้อัปเดตเป็นตารางที่อยู่ MAC เพื่อระบุว่า
A
สามารถพบได้บนพอร์ต 1 อย่างไรก็ตามเฟรมที่มาถึงพอร์ต 3 ในขณะนี้บ่งบอกถึงสวิตช์ สามารถพบได้บนพอร์ต
3 ดังนั้นสวิตช์จำเป็นต้องอัปเดตตารางที่อยู่ MAC เพื่อระบุว่าสามารถพบ
A บนพอร์ต
3 ได้แล้ว
ดังนั้นสิ่งนี้จะแนะนำความไม่แน่นอนในตารางที่อยู่ MAC
ดังนั้นเราจึงมีอุปกรณ์ปลายทางที่รับเฟรมหลายครั้งและเรามีความไม่แน่นอนของที่อยู่ MAC เนื่องจากสวิตช์คิดว่า A
พร้อมใช้งานบนพอร์ต 1
แต่ตอนนี้เห็นว่ามันพร้อมใช้งานบนพอร์ต 3
แต่แย่ที่สุดเมื่อเฟรมมาถึงพอร์ต 1
สวิตช์ที่อัพเดต ตารางที่อยู่ MAC
เพื่อระบุว่า A สามารถพบได้บนพอร์ต 1
แต่ก็ทำให้เฟรมเต็มทั้งพอร์ต 2 และพอร์ต 3 ในทอพอโลยีนี้
โฮสต์ B
ได้รับเฟรม แต่นอกจากนี้เฟรมยังถูกส่งกลับไปยังสวิตช์ 1
ดังนั้นสวิตช์ 1 ได้รับเฟรมที่ถูกส่งไปยังสวิตช์ 2
และสวิตช์ 1 ในขณะนี้อัพเดตตารางที่อยู่ MAC เพื่อระบุว่า A พร้อมใช้งานบนพอร์ต 3
ตอนนี้เมื่อสวิตช์ 1 ได้รับเฟรมมันไม่เพียง แต่อัพเดทตารางที่อยู่
MAC ของมัน แต่มันยังทำให้เฟรมออกจากพอร์ตทั้งหมดยกเว้นพอร์ตที่มา
ดังนั้นเฟรมมาถึงพอร์ต 3 น้ำท่วมจากพอร์ต 1 และพอร์ต
จึงสับสนสำหรับโฮสต์ A เพราะมันได้รับเฟรมที่ส่งมา
แต่ไม่เพียงเป็นการรับเฟรมที่ส่งสวิตช์ 1 ไปยังส่งเฟรมเดียวกันกลับไปที่สวิตช์
2 และสวิตช์ 2
จะทำอะไรกับเฟรม
มันจะท่วมมันดังนั้นมันจะส่งสำเนาไปยังโฮสต์ B โฮสต์ B
ได้รับเฟรมเดียวกัน 3
ครั้ง แต่มันจะส่งเฟรมกลับไปที่สวิตช์ 1 เช่นเดียวกับการอัปเดตตารางที่อยู่
MAC เพื่อระบุว่า A เปิดอยู่ พอร์ต 1
ตอนแรกเมื่อได้รับเฟรมแรกมันคิดว่า A อยู่บนพอร์ต 1 จากนั้นเมื่อได้รับเฟรมที่พอร์ต 3
ก็คิดว่า A อยู่บนพอร์ต 3
และตอนนี้ก็คิดว่า A อยู่บนพอร์ต 1
ดังนั้นเราจึง ความไม่แน่นอนของที่อยู่ MAC จำนวนมากในตารางที่อยู่ MAC
โฮสต์ B ได้รับเฟรมเดียวกันหลายครั้ง
แต่ปัญหาที่ใหญ่ที่สุดที่นี่คือเฟรมที่ถูกส่งกลับไปที่สวิทช์ 1 ถูกน้ำท่วมอีกครั้งถูกส่งกลับไปที่สวิทช์
2 และกระบวนการนี้ดำเนินต่อ
เรามีลูปในโทโพโลยีนี้โดยเฟรมจะมีการทำซ้ำและส่งแบบกลมและกลมและกลมระหว่างสวิตช์ทั้งสอง