개인활동/잡동사니팁들

CSMA/CD

무늬만엄마 2015. 8. 19. 15:59

CSMA/CD : Carrier Sense Multiple Access/Collision Detection

TCP/IP 네트워크 상의 기본 데이터 전송 알고리즘

네트워크 상에 충돌(Collision)을 감지하면 Packet을 Drop 하고 기다림 -> 지연 발생

- 데이터 전송 전 네트워크 상에 다른 누가 데이터를 보내고 있는지를 확인(Carrier Sense)
- 각 단말들은 데이터 전송 시작(Multiple Access)
- 최소 Frame size(slot time, window size) 전송 후 충돌 여부 확인(Collision Detection)
- 충돌 발생 시 즉시 전송을 중단하고, jam signal를 32bit time 동안 보냄.
   충돌감지는 Thick/Thin은 전압의 변화로 확인. UTP를 사용하는 10Base-T는 송신중에 수신으로 확인.
- Jam signal이 전송되면 네트워크 상의 모든 단말들은 Inter Frame Gap time 인 96bit time 동안 대기.
- 충돌을 감지했던 단말들은 Backoff 알고리즘을 따라서 재전송을 시도.   
   충돌 비감지 단말들은 IFG 후에 바로 데이터 전송 가능.

- 충돌발생으로 인한 재전송은 총 15회 가능. 이후에는 Drop.
- Window size(10M/100M:64byte, 1000M:512byte) 이후 충돌 발생 시(late collision), 모두 전송
- Window size 이내에 충돌이 발생 시 수신 데이터는 버리고, 
  송신된 window size보다 작은 frame은 Runt frame이 되면서 FCS error를 발생 시킴.
- Window size 이후에 충돌이 발생하면, Tx/Rx data 모두 FCS error 발생.