Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

CSMA พร้อมการตรวจจับการชนกัน (CSMA/CD)


Carrier Sense Multiple Access พร้อม Collision Detection (CSMA/CD) เป็นโปรโตคอลเครือข่ายสำหรับการส่งข้อมูลของผู้ให้บริการที่ทำงานในเลเยอร์ Medium Access Control (MAC) รับรู้หรือรับฟังว่าช่องสัญญาณที่ใช้ร่วมกันสำหรับการส่งสัญญาณไม่ว่างหรือไม่ และเลื่อนการส่งสัญญาณออกไปจนกว่าช่องสัญญาณจะว่าง เทคโนโลยีการตรวจจับการชนจะตรวจจับการชนโดยการตรวจจับการส่งสัญญาณจากสถานีอื่น เมื่อตรวจพบการชน สถานีจะหยุดส่งสัญญาณ ส่งสัญญาณติดขัด จากนั้นรอช่วงเวลาสุ่มก่อนที่จะส่งสัญญาณซ้ำ

อัลกอริทึม

อัลกอริทึมของ CSMA/CD คือ:

  • เมื่อเฟรมพร้อม สถานีส่งสัญญาณจะตรวจสอบว่าช่องไม่ได้ใช้งานหรือไม่ว่าง

  • หากช่องไม่ว่าง สถานีจะรอจนกว่าช่องจะไม่ได้ใช้งาน

  • หากช่องไม่ได้ใช้งาน สถานีจะเริ่มส่งสัญญาณและตรวจสอบช่องอย่างต่อเนื่องเพื่อตรวจจับการชน

  • หากตรวจพบการชน สถานีจะเริ่มอัลกอริทึมการแก้ปัญหาการชน

  • สถานีจะรีเซ็ตตัวนับการส่งสัญญาณซ้ำและสิ้นสุดการส่งเฟรม

อัลกอริทึมของ Collision Resolution คือ:

  • สถานีจะส่งสัญญาณเฟรมปัจจุบันต่อไปตามเวลาที่กำหนดพร้อมกับสัญญาณติดขัด เพื่อให้แน่ใจว่าสถานีอื่นๆ ทั้งหมดตรวจพบการชนกัน

  • สถานีจะเพิ่มตัวนับการส่งสัญญาณซ้ำ

  • หากพยายามส่งสัญญาณซ้ำถึงจำนวนสูงสุด สถานีจะยกเลิกการส่งสัญญาณ

  • มิฉะนั้น สถานีจะรอช่วงถอยกลับ ซึ่งโดยทั่วไปแล้วจะเป็นหน้าที่ของจำนวนการชนกันและรีสตาร์ทอัลกอริทึมหลัก

ผังงานต่อไปนี้สรุปอัลกอริทึม:

CSMA พร้อมการตรวจจับการชนกัน (CSMA/CD)


  • แม้ว่าอัลกอริธึมนี้จะตรวจจับการชนกัน แต่ก็ไม่ได้ลดจำนวนการชนกัน

  • ไม่เหมาะสมกับประสิทธิภาพของเครือข่ายขนาดใหญ่ที่ลดลงอย่างทวีคูณเมื่อมีการเพิ่มสถานีมากขึ้น