반송파 감지 다중 접속 및 충돌 탐지

(CSMA/CA에서 넘어옴)

반송파 감지 다중 접속 및 충돌탐지(영어: carrier sense multiple access with collision detection, CSMA/CD)는 컴퓨터 네트워크 분야에서 성능개선을 위해 기존의 반송파 감지 다중 접속 방식(CSMA)을 일정 부분 수정한 방식이다. 이 충돌 조건이 감지되면 스테이션은 해당 프레임 전송을 중단하고 잼 시그널(jam signal)을 전송한 다음 임의의 시간 간격 동안 대기하다가 프레임 다시 보내기를 시도한다.[1]

CSMA/CD 방식의 순서도

CSMA/CD 특징 편집

  • 반송파를 감지하는 기법을 사용한다.
  • 데이터를 보내고자 하는 송신자 'A'는 수신자 'B' 가 이미 다른 송신자 'C' 와 통신 중임을 감지하면 즉시 통신을 중단하고 정체신호 (Jam Signal)을 보낸다. 그리고 임의의 시간 동안 대기하면서 재전송할 준비를 한다.

일단, 정체 신호가 발생하면 송신자 'A' 뿐만 아니라, 수신자 'B' 로 데이터를 보내고자 하는 네트워크 상의 모든 노드 들에게 전달된다. 이로써 불필요한 전송을 사전에 차단시켜 트래픽을 줄인다.

CSMA/CD 방식은 OSI 계층에서 2계층에 속하지만, OSI 7계층 모델의 프로토콜은 아니다.

세부사항 편집

CSMA/CD 방식에서 송신자는 다음과 같은 가정을 거치게 된다.

주요 절차 편집

  1. 전송을 위한 프레임을 준비한다.
  2. 매체가 사용이 가능한가? 만일 아니라면, 사용이 가능할 때까지 대기한다.
  3. 전송을 시작한다.
  4. 충돌이 일어났는지 확인하고 만일 그렇다면, 충돌 탐지 절차로 이동한다.
  5. 재전송 계수기를 초기화 하고 프레임 전송을 종료한다.

충돌 탐지 시 절차 편집

  1. 정체 신호가 전체 송신자에게 전달되도록 하기 위해 최소 패킷전송시간까지 전송을 계속한다.
  2. 재전송 계수기의 재전송 시도횟수를 증가시킨다.
  3. 임의의 시간동안 대기한다.
  4. 첫 번째 단계부터 반복한다.

충돌 탐지 방법은 매체에 의존한다. 그러나 이전 버전의 이더넷과 같은 전자적인 버스에서, 충돌은 송신자가 보낸 데이터와 수신자가 받은 데이터를 비교해봄으로써 탐지가 가능하다. 만일 두 가지가 다르다면 다른 송신자 측에서 보낸 데이터를 덮어씌웠다는 것을 의미한다. 프레임 전송 중에 충돌을 감지했다면, 전송은 즉시 중단된다. 대신 정체신호를 네트워크 상에 있는 전체 노드들에게 전송하면서 충돌 여부를 확정하게 된다.

적용 편집

이더넷은 CSMA/CD를 적용한 고전적인 방식이다. 그러나 CSMA/CD는 10기가비트 이더넷의 규격에서는 더 이상 사용되지 않는다. 그 이유는 기존 장비를 대체할 스위치 장비의 요구사항 때문이다. 이와 비슷하게, 반이중 상태에서 CSMA/CD의 운용은 기가비트 이더넷의 규격에 정의되어 있으나 실질적으로 적용되지는 않는다. 전이중 상태에서도 데이터의 송수신이 별도로 이루어지며 또한 각 세그먼트 별로 스위치 장비에 직접 연결되기 때문에 CSMA/CD는 사용되지 않는다.

각주 편집

  1. “Carrier Sense Multiple Access Collision Detect (CSMA/CD) Explained”. 《learn-networking.com》. 2008년 1월 29일. 2011년 7월 23일에 원본 문서에서 보존된 문서. 2011년 7월 29일에 확인함.