개요
CSMA/CD CSMA with Collision Detection는 CSMA의 충돌 검출 시나리오를 추가한 것이다. 다중 접속 프로토콜에 충돌 검출을 추가하면, 쓸모없는 손상된 프레임을 모두 전송하지 않아도 되므로 프로토콜의 성능을 확실히 향상시킬 수 있게 된다.
처리 과정
- 어댑터는 네트워크 계층으로부터 데이터그램을 받아서 링크 계층 프레임을 만든후에 그 프레임을 어댑터의 버퍼에 저장한다.
- 만약 채널이 유휴하면 프레임 전송을 한다.
- 전송하는 동안 어댑터는 브로드캐스트 채널을 사용하는 다른 어댑터로부터의 신호가 있는지 감시한다.
- 프레임 정체를 전송하는 동안 다른 어댑터로부터의 신호가 감지되지 않으면 성공 아니면 실패로 간주한다.
- 전송이 취소되면 임의의 시간동안 기다린후 단계 2로 돌아간다.
이진 지수적 백오프 알고리즘
대부분의 CSMA/CD 는 대기 시간을 정할때 충돌이 커지면 자신이 기다리는 시간을 증가시킨다. binary exponential backoff 알고리즘은 백오프를 수행할때 연속된 충돌에 대해서 기다리는 시간을 {0, 1, 2, ... 2^n}의 집합중에 랜덤으로 선택하여 기다리게 한다. 이때 충돌을 n 번 경험하면 확률적으로 기다리는 시간이 증가하여 충돌 가능성을 줄이게 된다. 그러나 노드들이 새프레임을 전송할 경우에는 최근 발생했던 충돌을 고려하지 않는다. 따라서 전체 네트워크의 가용능력은 떨어지지 않는다.