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

CSMA/CD: Carrier Sense Multiple Access with Collision Detection


คืออะไร?

CSMA/CD เป็นโปรโตคอลเครือข่าย ทำงานที่ชั้น MAC ฟัง Channel ว่าว่างหรือไม่ ว่างแล้วค่อยส่ง ตรวจจับ Collision โดยการฟังการส่งจากสถานีอื่น

เจอ Collision → หยุดส่ง ส่ง Jam Signal รอ Random Time → ส่งใหม่

อัลกอริทึมหลัก

  1. เฟรมพร้อม → ตรวจสอบ Channel
  2. Busy → รอจนว่าง
  3. Idle → เริ่มส่ง และ Monitor Channel ตลอดเวลา เพื่อ Detect Collision
  4. เจอ Collision → เริ่ม Collision Resolution Algorithm
  5. Reset Retransmission Counters → ส่งเฟรมให้เสร็จ

Collision Resolution Algorithm

  1. ส่ง Frame ค้างอยู่พร้อม Jam Signal เวลาระบุ → ให้ทุกสถานีรู้ Collision
  2. เพิ่ม Retransmission Counter
  3. ถึง Max Attempts → Abort
  4. มิฉะนั้น รอ Backoff Period (ขึ้นกับจำนวน Collision) → เริ่มอัลกอริทึมหลักใหม่

CSMA/CD: Carrier Sense Multiple Access with Collision Detection

ข้อจำกัด

  • ตรวจจับ Collision ได้ แต่ ไม่ลดจำนวน Collision
  • ไม่เหมาะ Large Networks – ประสิทธิภาพตก exponentially เมื่อเพิ่มสถานี